Есть астериск версии 1.8.
Есть очереди. Не могу разобраться в параметрах таблицы "queue_member_table".
Вот поля, которые в ней есть:
uniqueid int(10) unsigned
membername varchar(40)
queue_name varchar(128)
interface varchar(128)
penalty int(11)
paused int(11)
num varchar(10)
Интересует значение полей penalty и paused.
По пенальти я ещё что-то нашёл, а вот по параметру paused не могу.
Для чего он? В каких случаях он срабатывает?
По идее, как я понял, он приостанавливает агента на заданное в этом поле количество секунд. Если так, то у меня не работает.
Параметр называется "передышка". В течение скоьких секунд после окончания разговора не кидать оператору следующий звонок.
Устанвите freePBX, там всё наглядно расписано для каждого параметра, со всплавающими подсказками.
Хм, freePBX этот параметр использует более продуктивно, видать через переменнную, в которой забивается время в секундах.
Передышка: Время в секундах, через которое будет послан следующий звонок из очереди после успешного звонка тому же оператору.(по умолчанию - 0, то есть - без передышки)
Sure? Не может быть!
Я столько лет обманывался сам, и обманывал клиентов?
Там все параметры очереди просты и понятны, не требуют настройки Realtime, инаяе бы было уведомление, типа - "Этот параметр работает только в режитме реального времени! Обратитесь к интегратору за подробностями!"
в обычной конфигурации когда агент на паузе храниться ХЗ где, а в реалтайм конфе в БД
это позволяет использовать одни и те же очереди на разных "нодах"
wrapuptime - "передышка", но это параметр очереди, а не агента
Просто стоит такая задача:
Звонок поступает в очередь. Очередь обслуживают, например, 3 агента (3 члена очереди). Стратегия "ringall".
Надо сделать такую цепочку:
1. Звонок клиента попал в очередь.
2. Если в течении 30 секунд нахождения в очереди он не получает ответа от этих 3 агентов (допустим они уже разговаривают), подключаются ещё 2 агента (так же ringall).
3. Если и подключенные 2 агента не ответили, но уже в течении дополнительных 20 секунд к первым 30 секундам, то подключается ещё 1 агент.
4. Ответа последнего агента звонок клиента должен ждать 10 секунд.
P.S. При этом, если к обслуживанию очереди подключились дополнительные агенты (пункт 2 и пункт 3), и кто-то из первых трех агентов освободился, то звонок должен раздаваться у всех свободных (их в общей сложности - 6). Освободившийся агент должен подключаться к обслуживанию звонка.
Первое, что мне пришло в голову, это перескоки из одной очереди в другую:
1. Сначала звонок идет в первую очередь на 30 секунд, где работают 3 агента.
2. После 30 секунд звонок перескакивает в следующую очередь, куда включены первые 3 агента и дополнительные 2, но уже на 20 секунд.
3. После 20 секунд звонок попадает в последнюю очередь, в которой есть все агенты из 1-ой и 2-ой очереди плюс один новый агент.
Я уверен, что это можно реализовать средствами одной очереди, но не понимаю как. Параметр penalty не катит, ибо он просто говорит, на сколько я понимаю, подключать агента с большим значением пенальти, если все предыдущие агенты уже заняты.
использовать penalty, при этом нужно научить агентов регистрироваться в очереди и уходить из неё
тогда все будет нормально без всяких перескоков и таймаутов
Vlad1983 писал(а):использовать penalty, при этом нужно научить агентов регистрироваться в очереди и уходить из неё
тогда все будет нормально без всяких перескоков и таймаутов
А если не секрет, то как?
Какие конфигурационные параметры за это отвечают (регистрация в очереди и уход из неё)?
Я пролистал сейчас инфу про агентов... не совсем подходит.
Там нужно с телефона регистрироваться, либо так же выходить. Поправите, если не прав.
А нам нужно всё на автомате - 30 секунд - 20 секунд - 10 секунд.
Последний раз редактировалось guvijur 25 апр 2012, 10:47, всего редактировалось 1 раз.