Настройка интеграции с IP-АТС Asterisk

Центральным звеном, обеспечивающим интеграцию системы Итилиум с АТС Asterisk, является компонента, установка которой осуществляется с помощью разворачивания образа docker.

Возможности подсистемы интеграции

Подсистема интеграции IP-АТС Asterisk с системой Итилиум предоставляет следующие возможности.

  • Регистрация входящих звонков в системе Итилиум.
  • Регистрация обращения на основании входящего звонка.
  • Выполнение исходящих звонков из системы Итилиум «в один клик».
  • Связывание звонков с документами «Обращение» и «Наряд».
  • Хранение истории звонков.
  • Фиксация пропущенных вызовов.
Внимание!
В системе Итилиум происходит только сбор информации о звонках. Для выполнения звонков требуется аппаратные либо программные IP-телефоны.

Схема интеграции

Центральным звеном, обеспечивающим интеграцию системы «Итилиум» с АТС Asterisk, является компонента, установка которой осуществляется с помощью разворачивания образа docker.

 

Внимание!
При использовании аппаратной защиты для подключения системы интеграции с IP-АТС Asterisk потребуется перепрошивка ключей CodeMeter, которые были поставлены совместно с системой Итилиум версии 4.3.3.0 и ниже. Описание процедуры перепрошивки предоставляется по запросу на форуме поддержки системы Итилиум.

Схема интеграции системы Итилиум с IP-АТС Asterisk

01

Назначение компоненты Asterisk на docker:

  • прослушивание событий от АТС, получаемых по протоколу ARI для входящих вызовов и AMI для исходящих;
  • отбор необходимых событий и передача этих событий посредством HTTP-запроса в конфигурацию Итилиум (в настоящее время поддерживаются возможности совершения вызова и прикрепления записи разговора к документу «Звонок»).

Настройка со стороны Asterisk

1. В телефонии должен быть подключен модуль ARI.

2. В разделе «Общие настройки — Дополнительные настройки» необходимо настроить пользователя Asterisk manager для AMI.

3. Установить флаги Asterisk REST interface и Pretty Print JSON Responses.

02

4. Добавить пользователя в Asterisk REST Users с аналогичным именем пользователя и паролем Asterisk manager из пункта 2.

03
04

Настройка со стороны сервера, где развернут docker

1. Если у вас есть доступ по RDP или VNC к установленной Ubuntu, то всё описанное можно сделать через графический интерфейс. Чаще всего системные администраторы предоставляют доступ по SSH к установленной Ubuntu. Рассмотрим этот случай.

2. Подключимся по SSH к Ubuntu. Откроем «WinSCP — Новое соединение», укажем параметры соединения и подключимся. Параметры соединения можно взять у вашего системного администратора.

3. Заходим в домашнюю папку пользователя — вак правило, это /home/.

4. Создаем там пустую папку и копируем в эту папку архив Asterisk.zip. Далее будем считать, что файл Asterisk.zip находится по пути /home/Asterisk.zip.

5. Далее открываем SSH Терминал. Для этого установим Putty. В «WinSCP — Команды — Открыть в Putty» введем пароль пользователя и нажмем Enter.

6. Установим Unzip. В Putty вводим: sudo apt install unzip.

7. Переходим в папку с архивом cd/home/Asterisk.

8. Разархивируем наш файл Asterisk.zip командой unzip Asterisk.zip.

9. Удалим наш архив командой rm/home/Asterisk.zip.

10. Переходим в нашу папку cd/home/Asterisk.

11. Теперь можно приступить к установке ПО Docker. Если оно установлено — этот шаг можно пропустить. Подробности установки можно прочитать здесь.

sudo apt-get update

sudo apt-get install \

ca-certificates \
curl \
gnupg \
lsb-release

sudo mkdir -p /etc/apt/keyrings

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg]
https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

12. Проверим, что всё установилось, можно командой sudo docker run hello-world. Если вывод будет «Hello from docker!» или что-нибудь подобное — то установка завершена успешно.

13. Создадим образ Docker командой: sudo docker build -t asterisk-itilium. Точка в конце должна быть указана обязательно, иначе будет ошибка.

14. Запустим наш сервис командой: sudo docker run --mount type=volume,source=home,target=/data -i -t -d -p 8083:8080 asterisk -itilium

Настройка со стороны системы Итилиум

1. В «Параметрах системы» на вкладке «Общие — Прочие» установим флаг «Использовать docker-версию Asterisk».

05

2. В карточке сотрудника установим профиль Asterisk.

06
3. Выполним настройки профиля.
07
  • 1 – адрес сервера, где развернут docker с компонентой;
  • 2 – настройки подключения к серверу телефонии;
  • 3 – настройки подключения к базе Итилиум;

Контекст для внутренних звонков устанавливается на сервере телефонии для внутренних номеров. Контекст для внешних устанавливается на сервере телефонии для внешнего номера, на который поступают звонки извне. Директория хранения файлов разговора — путь к расшаренной папке с сервера телефонии, в которой лежат файлы разговоров.

4. Подключимся к компоненте. Для проверки доступности сервиса необходимо нажать кнопку «Проверить доступность сервера компоненты» в настройках профиля Asterisk. Если всё настроено правильно, то ответом будет сообщение «Сервер доступен».

08

Нажмем на кнопку «Подключиться». При корректной настройке появится сообщение «Компонента подключена».

10

Чтобы убедиться, что всё работает, нужно нажать на кнопку «Проверить статус компоненты». Должно так же появиться сообщение о том, что компонента подключена.

09

5. Выполним звонок. Для этого необходимо нажать кнопку «Позвонить» и выбрать внутренний номер с указанной учетной записью Asterisk.

11