Страница 1 из 1

Сообщение оператору при уходе из очереди

Добавлено: 14 авг 2013, 14:12
murr
Asterisk 10
FreePBX 2.10

Есть очередь, в которой естественно бывают клиенты, которые не дожидаются ответа оператора.
Задача сделать так, чтобы, если клиент кладет трубку ранее, чем ему ответили, то на софтфон отсылается сообщение с номером позвонившего.

Сделал так: в extension_override_freepbx.conf добавил

Код: Выделить всё

[ext-queues-custom]
;exten => _.,n,GotoIf($[${DIALSTATUS} = NOANSWER]?1)
;exten => _.,1,Set(MESSAGE(from)= Сервер)
;exten => _.,2,Set(MESSAGE(to)= Call-Center)
;exten => _.,3,Set(MESSAGE(body)= Пропущен звонок)
;exten => _.,4,MessageSend(sip:100)
Сообщение на номер 100 отсылается, однако при всех (и удачных и неудачных) соединениях.
Правлю диалплан первый раз - подскажите, пожалуйста.

Re: Сообщение оператору при уходе из очереди

Добавлено: 14 авг 2013, 14:20
ded
Статус NOANSWER получает звонок, у которого вышло установленное время ожидания.
У вас такого нету, но можно поставить для очереди (Время нахождения в очереди - например 30 минут) тогда указать перенаправление по неответу - например, Групповая голосовая почта.
Но если клиент кладет трубку ранее, чем ему ответили, то нет никакого статуса NOANSWER. Там прибежит CANCEL & BYE с его стороны, и тогда надо делать кастомную обработку в очереди для
exten => h,1,Set(MESSAGE(from)= Сервер)
exten => h,n,Set(MESSAGE(to)= Call-Center)
exten => h,n,Set(MESSAGE(body)= Пропущен звонок)
exten => h,n,MessageSend(sip:100)

Re: Сообщение оператору при уходе из очереди

Добавлено: 15 авг 2013, 12:36
SVoy
в логику еще нужно будет добавить переменную для отфильтровки принятых звонков (которые тоже заканчиваются hangup)