Техническая база знаний
Интерфейсы взаимодействия
Asterisk
Сервер Asterisk имеет интерфейсы взаимодействия с внешними системами. Интерфейсы AMI и AJAM можно использовать для вызова команд и работы с информацией о событиях на сервере телефонии в оперативном режиме. Для запроса архивной информации, которая была обработана ранее, необходимо использовать либо непосредственный запрос в СУБД сервера телефонии (используется MySQL), либо WEB-сервисы, разработанные нашей компанией.
AMI
Данный интерфейс предполагает обмен информацией между системами по TCP сокету и протоколу ASTERISK MANAGER API.
- подключение к TCP сокету;
- авторизация по паре логин/пароль;
- передача текстовых блоков информации - команд;
- приём и обработка текстовых блоков информации - событий.
AJAM
Данный интерфейс является "фронт эндом" для интерфейса AMI, т.к. предполагает обмен информацией между системами по HTTP протоколу, авторизация и передача команд осуществляется GET запросами, вывод событий осуществляется текстом по протоколу ASTERISK MANAGER API.
WEB сервисы
Запрос статистики
В частности, для запроса истории соединений у нас имеется WEB сервис, который принимает запросы HTTP POST с информацией о вызывающем и вызываемом номере и возвращает список соединений в формате JSON. Сервис довольно тривиален, и может быть адаптирован под вашу задачу. В таком случае система 1C должна будет сформировать HTTP POST запрос с CLIENT_ID и N, а в ответ будет получен список соединений из статистики в формате JSON.
СУБД
В случае подключения к СУБД, система 1С должна будет осуществить SQL запрос в таблицу статистики сервера телефонии. Описание таблицы (логическую и физическую модель) мы можем вам направить, а также поможем составить SQL запрос, если это потребуется.
Сервер 1C
Со стороны системы 1C для вызова команды инициализации звонка может использоваться как прямое TCP соединение с последующей работой по сокету, так и последовательность HTTP GET запросов, а также можно использовать любую внешнюю компоненту, типа ROM-Asterisk, упрощающую эти действия. В частности, одни наши клиенты успешно используют именно ROM-Asterisk для глубокой интеграции 1С с Asterisk (детальное отслеживание звонков). На сколько мне известно, библиотека предоставляет избыточное количество методов.