Функционал модуля CallerID Lookup Sources позволяет устанавливать некие источники для преобразования номерных идентификаторов входящих вызовов CID (caller ID) в имена. После чего, можно привязать входящий маршрут к специальному источнику CID. Таким образом, любой входящий вызов будет сперва проверен на соответствие номера и имени по заданному источнику и, если такое соответствие будет найдено, то вместо длинного номера, на экране Вашего телефона отобразится знакомое имя вызывающего абонента. Можно также создать небольшой список соответствия имен и номеров в модуле Phonebook.
Настройка модуля
Перейдём к настройке. Для того чтобы попасть в модуль CallerID Lookup Sources, с главной страницы, переходим по следующему пути: Admin -> CallerID Lookup Sources. Обратите внимание на предупреждение, которое открывается при входе в модуль. Процесс поиска имени входящего абонента (name lookup), который запускает данный модуль, может замедлить работу Вашей IP-АТС.
По умолчанию, в модуле уже есть один источник – сервис определения CallerID Name - OpenCNAM. Мы не будем подробно рассматривать данный вариант, поскольку, чтобы им воспользоваться, необходимо иметь аккаунт в OpenCNAM.
Рассмотрим, какие ещё источники предлагает данный модуль. Для этого нажмите Add CIDLookup Source, откроется окно добавления нового источника
- В поле Source Description предлагается написать краткое описание нового источника.
- В поле Source type выбирается тип источника. От того, какой тип будет выбран на данном этапе, будет зависеть то, где система будет искать соответствие CID входящих вызовов. Рассмотрим каждый тип:
- internal - Для поиска имени используется база astdb, а для её заполнения – модуль Asterisk Phonebook
- ENUM - Поиск осуществляется по DNS в соответствии с конфигурационным файлом enum.conf
- HTTP - Выполняет HTTP GET - запрос , передавая номер звонящего в качестве аргумента, чтобы получить правильное имя
- Host - IP-адрес или доменное имя сервера, куда будет отправлен запрос GET
- Port - Порт, который прослушивает сервер (по умолчанию - 80)
- Username - Логин для HTTP аутентификации
- Password - Пароль для HTTP аутентификации
- Path - Путь к файлу для запроса GET. Например, /cidlookup.php
- Query - Строка запроса, специальный токен [NUMBER], в котором будет заменен на номер необходимого абонента. Например,
number=[NUMBER]&source=crm
. - MySQL - Поиск имени звонящего осуществляется по базе MySQL
Рассмотрим каждое из полей, которое необходимо заполнить при выборе данного источника:
В случае выбора в качестве источника для поиска сервера HTTPS всё остаётся прежним, за исключением порта. По умолчанию используется порт 443.
- Рассмотрим каждое из полей, которое необходимо заполнить при выборе данного источника:
- Host - Имя сервера MySQL
- Database - Имя базы данных MySQL
- Query - Строка запроса, где специальный токен [NUMBER], будет заменен на номер необходимого абонента. Например,
SELECT name FROM phonebook WHERE number LIKE '%[NUMBER]%'
- Username и Password для авторизации на сервере MySQL
- Character Set - Набор символов MySQL. Чтобы оставить набор символов по умолчанию, оставьте это поле пустым
Пример работы Internal
Для демонстрации примера работы данного модуля, создадим тестовый источник - test_internal.
Поиск в нем будет осуществляться по базе astdb, которая заполняется при помощи модуля Asterisk Phonebook. Перейдём в данный модуль и создадим тестовую запись.
Теперь, необходимо зайти в модуль Inbound Routes и добавить туда правило проверки входящих CID по ранее созданному источнику test_internal.
Готово, теперь, если на номер данного входящего маршрута позвонит 456123789, то на экране нашего телефона мы увидим имя John Doe.
Если вы хотите подробнее узнать о настройке входящих маршрутов, почитайте соответствующую статью в нашей Базе Знаний.