Здравствуйте уважаемые!
По необходимости организации связи появился вопрос как расширить параметры queue. Суть в том, чтобы было например 3 группы номеров с таймаутом, группы: (101,102),(103,104),(105,106). Вызов падает в очередь, сначала звонят агенты 101,102, через таймаут 101,102,103,104, через таймаут 101,102,103,104,105,106. Читал про Penalty - не подходит, первая группа агентов может быть не занята и не отвечать. Думаю что можно как то организовать через PauseQueueMember(queuename|agent), т.е поставить на паузу сначала 103-106, потом через таймаут снять 103,104, потом через таймаут снять 105,106. Используем trixbox и aster 1.4, подскажите в какую сторону копать.
Перенаправление из очереди в очередь - не подходит, т.к. MOH будет прерываться, и будут лишние hangup.
extensions.ael:
context dial_delay {
_666XXXXX => {
Wait(${EXTEN:3:2});
Dial(Sip/${EXTEN:5});
}
}
queues.conf:
...
member => Local/66610201@dial_delay
member => Local/66615202@dial_delay
member => Local/66620203@dial_delay
...
Ну или можно заморочиться с патчем пенальти (https://issues.asterisk.org/view.php?id=16722), не совсем уверен, но вроде заставляет penaltychange в queuerules.conf вести себя адекватно, т.е. изменение пенальти отрабатывает независимо от состояния операторов группы.
Если я правильно понял идею, то проще всего ето реализовать без изпользования Queue, а с помощью Local channels и цмд Wait().
[context]
exten => 1,Dial(Local/group1@delay&Local/group2@delay&Local/group3@delay)
exten => n,Hangup()
[delay]
exten => group1,1,Dial(SIP/101&SIP/102,%timeout%)
exten => group1,n,Hangup()
exten => group2,1,Wait(%ждем 10 sec%)
exten => group2,n,Dial(SIP/101&SIP/102&SIP/103&SIP/104,%timeout%)
exten => group3,1,Wait(%ждем 20 sec%)
exten => group3,n,Dial(SIP/101&SIP/102&SIP/103&SIP/104&SIP/105&SIP/106,%timeout%)
Почему заморачиваюсь с очередями - так это потому, что при одновременно пришедших в группу 2х звонках - один отваливается, т.к. все абоненты заняты, а в очереди такого нету
Mihail1810 ( 2012-07-30 11:49:38 +0400 )редактироватьЗадан: 2012-07-30 09:32:25 +0400
Просмотрен: 1,226 раз
Обновлен: Apr 25 '14
Проект компании "АТС Дизайн"
Asterisk® и Digium® являются зарегистрированными торговыми марками компании
Digium, Inc., США.
IP АТС Asterisk распространяется под лицензией
GNU GPL.
Используйте пенальти и автопаузу.
zzuz ( 2012-07-30 10:25:46 +0400 )редактироватьКак где? Сделать самому.
zzuz ( 2012-07-30 10:59:29 +0400 )редактироватьАвтопауза же удаляет из очереди агентов которые не берут трубки, а мне надо наоборот их снимать. Или вначале всех ставить на паузу, а потом убирать по таймауту
Mihail1810 ( 2012-07-30 11:04:47 +0400 )редактироватьНу так , Вам и придумывать , как реализовать Автопаузу. Можете автоматически и ставить на паузу , и снимать , и даже удалять агентов из очереди (только непонятно зачем?).
zzuz ( 2012-07-30 11:16:56 +0400 )редактироватьну как не понятно, есть город - в городе несколько офисов, в каждом офисе - несколько менеджеров, так вот клиент когда звонит в один офис - а там тупые манагеры не берут трубки, звонок продалжается в этом офисе, и потом подключается 2й, 3й офисы, чтоб не потерять клиента.
Mihail1810 ( 2012-07-30 11:21:17 +0400 )редактировать