В конпании мы используем SLACK для общения.
И очень удобным оказалось использование Incoming Webhooks в slack для приема вообщений со сторонних сервисов.
В данном примере разберем как можно получать мгновеноее сообщение о пропущенном звонке из очереди в канал slack.
1-для начала необходимо создать конфигурацию, для этого используем «Add Configuration»
2-в окне настройки вебхука указываем в какой канал мы хотим получать сообщения в данном случае мы выбираем #general так как по умолчанию сообщения этого канала видны всем пользователям компании.
3-в настройках webhook копируем пример curl запроса (example) — далее он потребуеться для отправки сообщения о пропущенном звонке
4-Вам осталось поставить вызов curl запроса в нужном месте .
Ниже пример переписанного /etc/asterisk/extensions_override_freepbx.conf для отправки уведомления при пропущенном вызове в очереди
[ext-queues]
exten => h,1,NoOP(${CDR(dstchannel)});
exten => h,n,GotoIf($[«${CDR(dstchannel)}» != «»]?skip)
exten => h,n,Set(MISSED=${SHELL(curl -X POST —data-urlencode ‘payload={«channel»: «#general», «username»: «CRMBot», «text»: «MISSED CALL from ${CALLERID(name)} ${FROMEXTEN}», «icon_emoji»: «:sos:»}’ https://hooks.slack.com/services/qwdewfffew/fijfirfjreifjog)})
exten => h,n,NoOp(=========MISSSED CALL=====)
exten => h,n(skip),Macro(hangupcall,)
;—== end of [ext-queues] ==—;