FreePBX уведомление разных пользователей
Добавлено: 28 янв 2020, 14:54
Здравствуйте! Подскажите пожалуйста, хочу уведомлять о пропущенных звонках разных пользователей.
Есть Freepbx12 , есть три очереди, к примеру 309, 310 и 311 .
Для пропущенных звонков в каждую очередь нужно уведомлять разных юзеров user1 ,2 ,3
Сначала я настроил уведомления из любой очереди, в extensions_override_freepbx.conf было добавлено следующее
exten => h,n,ExecIf($["${CDR(dstchannel)}"=""]?System(/usr/local/bin/sendEmail.pl -f asterisk@example.ru -t user1@example.ru -u "Клиент ${CALLERID(num)} не дождался ответа в очереди ${NODEST}" -m "После ${CDR(duration)} сек ожидания Клиент ${CALLERID(num)} сбросил вызов в очереди ${NODEST} . ${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)}." -o message-charset=UTF-8 tls=no))
exten => h,n,Macro(hangupcall,)
Этот скрипт работает на все очереди без исключения.
Для того, чтобы уведомлять разных пользователей, в скрипте было изменено
exten => h,1,ExecIf($["${QID}" = "309"]?Set(MAILTO=user1@example.ru))
exten => h,n,ExecIf($["${QID}" = "310"]?Set(MAILTO=user2@example.ru))
exten => h,n,ExecIf($["${QID}" = "311"]?Set(MAILTO=user3@example.ru))
exten => h,n,ExecIf($["${CDR(dstchannel)}"=""]?System(/usr/local/bin/sendEmail.pl -f asterisk@example.ru -t ${MAILTO} -u "Клиент ${CALLERID(num)} не дождался ответа в очереди ${NODEST}" -m "После ${CDR(duration)} сек ожидания Клиент ${CALLERID(num)} сбросил вызов в очереди ${NODEST} . ${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)}." -o message-charset=UTF-8 tls=no))
exten => h,n,Macro(hangupcall,)
Но в QID нужно передать номер очереди, вопрос в том, как ее передать и где прописать на каждую очередь примерно такое:
[q-exten]
exten => _X.,1,Set(QID=309)
exten => _X.,n,Queue(....)
Есть Freepbx12 , есть три очереди, к примеру 309, 310 и 311 .
Для пропущенных звонков в каждую очередь нужно уведомлять разных юзеров user1 ,2 ,3
Сначала я настроил уведомления из любой очереди, в extensions_override_freepbx.conf было добавлено следующее
exten => h,n,ExecIf($["${CDR(dstchannel)}"=""]?System(/usr/local/bin/sendEmail.pl -f asterisk@example.ru -t user1@example.ru -u "Клиент ${CALLERID(num)} не дождался ответа в очереди ${NODEST}" -m "После ${CDR(duration)} сек ожидания Клиент ${CALLERID(num)} сбросил вызов в очереди ${NODEST} . ${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)}." -o message-charset=UTF-8 tls=no))
exten => h,n,Macro(hangupcall,)
Этот скрипт работает на все очереди без исключения.
Для того, чтобы уведомлять разных пользователей, в скрипте было изменено
exten => h,1,ExecIf($["${QID}" = "309"]?Set(MAILTO=user1@example.ru))
exten => h,n,ExecIf($["${QID}" = "310"]?Set(MAILTO=user2@example.ru))
exten => h,n,ExecIf($["${QID}" = "311"]?Set(MAILTO=user3@example.ru))
exten => h,n,ExecIf($["${CDR(dstchannel)}"=""]?System(/usr/local/bin/sendEmail.pl -f asterisk@example.ru -t ${MAILTO} -u "Клиент ${CALLERID(num)} не дождался ответа в очереди ${NODEST}" -m "После ${CDR(duration)} сек ожидания Клиент ${CALLERID(num)} сбросил вызов в очереди ${NODEST} . ${STRFTIME(${EPOCH},,%Y-%m-%d %H:%M:%S)}." -o message-charset=UTF-8 tls=no))
exten => h,n,Macro(hangupcall,)
Но в QID нужно передать номер очереди, вопрос в том, как ее передать и где прописать на каждую очередь примерно такое:
[q-exten]
exten => _X.,1,Set(QID=309)
exten => _X.,n,Queue(....)