Блокировка исходящих звонков на определенные номера или номера из заданного списка в FreePBX 14

Содержание статьи:

От коллеги по цеху поступила просьба помочь с реализацией интересной задачи, которая заключается во исполнении №152-ФЗ (Федеральный закон «О персональных данных») по которому необходимо блокировать исходящие звонки на номера клиентов, который дали отказ на них.

 

Но нужно не просто блокировать исходящий звонок на определенный номер, но перед этим необходимо оператору проиграть сообщение и если после или в процессе сообщения нажать кнопку 1, то все же совершить звонок клиенту.

 

Я увидел решение задачи несколькими способами, рассмотрим этим варианты реализации.

 

Исходные данные:

  • Debian 9 Strech
  • Asterisk 16 + FreePBX 14
  • Номерная маска операторов — _146XX

 

Вариант #1

В файл конфигурации /etc/asterisk/extensions_custom.conf добавляем следующую обработку:

 

После добавления обработки, необходимо перечитать dialplan, выполним команду:

 

Теперь при звонке с маской номера 146XX на номер клиента 89858887766, будет проигрываться сообщение оператору и в случае если оператор нажмет 1, то звонок к клиенту будет совершен, иначе вызов завершится.

 

В этом способе я вижу минус который кроется в универсальности, так чтобы внести новый номер в обработку необходимо каждый раз править файл /etc/asterisk/extensions_custom.conf и перечитывать dialplan.

 

Вариант #2

Второй вариант более гибкий в плане обработки запрещенных номеров. К примеру можно разместить в расшаренной папке текстовый файл с номерами и предоставить доступ к нему из системы с FreePBX,  далее при совершении вызова с номерной маски прим. _146XXX проверять исходящий номер на наличие его в списке блокировки. При необходимости можно в просто добавить новый номер в текстовый файл и он сразу же включится в обработку, без необходимости перечитывать dialplan.

 

Реализовать данный механизм можно легко при помощи модуля phpagi подключаемого к AGI интерфейсу. Как настроить подключение phpagi к AGI интерфейсу смотрим в этой статье.

 

В файле конфигурации /etc/asterisk/extensions_custom.conf добавляем следующую обработку:

 

Создаем PHP скрипт и назначаем на него права доступа:

 

В созданный PHP скрипт вставляем следующий код:

ПРИМЕЧАНИЕ. В приведенном выше коде указал подробные комментарии, при помощи который будет легко понять что и как я описал и по возможности можно легко модифицировать его под свои нужды. 

 

Для применения изменений, необходимо перечитать dialplan, выполним команду:

 

Теперь создаем текстовый файл с необходимыми номерами (номера указываем по одному на строку) и проверяем работу.

 

 

ПОНРАВИЛАСЬ ИЛИ ОКАЗАЛАСЬ ПОЛЕЗНОЙ СТАТЬЯ, ПОБЛАГОДАРИ АВТОРА

 

БесполезноСлабоватоПриемлемоОтличноПревосходно (Еще нет оценок)
Загрузка...

Оставить ответ

три + 16 =

© IT-блог Жаконды All Rights Reserved.
Яндекс.Метрика