По ком звонит колокол

Внимание! Данная механика создаст дополнительную и возможно весьма ощутимую нагрузку на ваш web-сервер.
В общих чертах: вам нужно чтобы кто-то обращался к вызову askozianum или asterisk RemoteAPI, например askoziaintro. После чего можно плавно переходить к настройке самой нотификации. Делается это при помощи следующих опций alter.ini:

;Включает всю эту конструкцию
FWTBT_ENABLED=1
;Еще больше увеличивает стрессовость этой механики для вашего веб-сервера показывая нотификации на всех модулях.
FWTBT_ANYWHERE=1
;Здесь можно перечислить логины администраторов которым следует показывать уведомления через запятую. 
;Также можно оставить пустым, для показа виджета всем администраторам. Да у них также должно быть право "FWTBT". 
FWTBT_ADMINS=""
;Интервал переопроса состояния актуальных звонков с бекенда в секундах.
FWTBT_INTERVAL=7
;Таймаут присутствия нотификации в секундах.
FWTBT_TIMER=10
;Использовать нативные десктопные нотификации? Опция работает в Mozzila, в остальных браузерах требуется HTTPS
FWTBT_DESKTOP=1

В результате в случае если в текущую минуту происходят/происходили входящие звонки вы должны получать уведомления следующего вида:

Как это все работает? При включении FWTBT_ENABLED для пользователей имеющих право FWTBT либо только перечисленных в опции FWTBT_ADMINS при нахождении в модуле «Панель задач» либо любом другом в случае включенности опции FWTBT_ANYWHERE будет создан динамический виджет-фронтенд опрашивающий каждые FWTBT_INTERVAL секунд бекенд в лице модуля fwtbt на предмет наличия актуальных записей о входящих звонках. В случае если такие есть - нотифицирует администратора, если нету - просто молчит.

Данные для всех администраторов кэшируются на время установленное в FWTBT_INTERVAL и обновляются только по истечению этого таймаута с целью минимизировать накладные операции на рендер ответов о происходящих звонках. В следствии этого рекомендуется использовать нормальное хранилище кэша а именно memcached или redis.

fwtbt.txt · Последние изменения: 2019/01/14 13:28 — pautina
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии: CC Attribution-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki