
Asterisk API: интеграция 1С с телефонной станцией Asterisk
Интеграция 1С с Asterisk через Native API
Asterisk API — это мощная внешняя компонента для интеграции 1С с телефонными станциями Asterisk. Он обеспечивает надежное управление звонками, определение номеров и перевод звонков, подключаясь к Asterisk через AMI интерфейс. Простота установки и автоматическая регистрация делают его идеальным выбором для предприятий любого размера, включая call-центры и офисы. Поддерживает современные операционные системы и подходит для тех, кто хочет оптимизировать свои бизнес-процессы.
Кому подойдет решение
Менеджерам по IT
Организация колл-центра для отдела продаж позволяет эффективно передавать звонки и вести подробный учёт вызовов, что значительно упрощает управление процессами и повышает продуктивность команды.
Руководителям колл-центров
Определение номера звонящего клиента в бухгалтерии обеспечивает быструю обработку заказов и запросов, что позволяет сократить время ожидания и повысить уровень обслуживания клиентов.
Специалистам по разработке
Управление вызовами для технической поддержки с установкой фильтров приставки помогает избежать больших потерь при увеличении входящих вызовов, что позволяет сосредоточиться на решении более сложных задач.
Основной функционал программы
Работа с Asterisk
Компонента предназначена для работы с телефонной станцией Asterisk через TCP протокол.
Асинхронное взаимодействие
Чтение событий и запись команд происходит асинхронно, что позволяет эффективно обрабатывать данные.
Определение номера звонящего
Позволяет определять номер звонящего, что упрощает взаимодействие с клиентами.
Организация call-центров
Компонента может использоваться для организации call-центров, что улучшает управление звонками.
Подключение без прав администратора
Компонента саморегистрирующаяся, установка не требует прав администратора.
Поддержка различных версий 1С
Тестировалась на версиях платформы 1С 8.2.19.130 - 8.3.11.2867.
Методы подключения
Предоставляет методы для подключения к Asterisk и авторизации пользователей.
Прослушивание порта
Метод запускает прослушивание порта для дальнейшей обработки информации в 1С.
Фильтрация сообщений
Позволяет устанавливать фильтр на вывод сообщений по определенному номеру.
Шифрование пароля
Использует передачу пароля в зашифрованном виде для повышения безопасности.
Техническая поддержка
Предоставляет бесплатный период техподдержки и обновлений после покупки.
Технические требования
-
Управление телефонией (для платформа 8.3.11 и выше) (совместима для других АТС на платформе Asterisk)
Состав поставки
После покупки Вы получаете на почту zip архив, в котором содержится:
- INFO.XML - Требуется для авторегистрации в конфигурациях 1С Предприятия 8.3 и выше
- MANIFEST.XML - Описание компоненты для автоматической установки
- PBX.dll - Файл внешней компоненты для 32 разрядной ОС Windows
- PBX64.dll - Файл внешней компоненты для 64 разрядной ОС Windows
- asterisk.dt для платформы 1С 8.3 не ниже 8.3.11 настроено для работы с FreePBX 13
- Ключи продукта (для коммерческой версии)
- Инструкция/документация:
- Документация к своей телефонной станции: https://wiki.asterisk.org/wiki/display/AST/Home
Способы подключения внешней компоненты
Подключение файла компоненты
Попытка ПодключитьВнешнююКомпоненту ("D:\PBX\PBX.dll", "PBX", ТипВнешнейКомпоненты.Native); глТелефония = Новый ("AddIn.PBX.AsteriskAMI"); Исключение Сообщить ("Ошибка! "+ОписаниеОшибки()); КонецПопытки;
Подключение с помощью шаблона
Предпочтительный способ использования компоненты на предприятии, поскольку компонента
будет установлена автоматически пользователю и будет выбрана автоматически разрядность
компоненты.
В конфигурации требуется создать Общий макет. Тип макета «Внешняя компонента»
Загрузить в нее поставляемый zip файл
Процедура ТелефонияИнициализация() Экспорт Попытка ПодключитьВнешнююКомпоненту("ОбщийМакет.ВК_Телефония", "PBX", ТипВнешнейКомпоненты.Native) Исключение УстановитьВнешнююКомпоненту("ОбщийМакет.ВК_Телефония"); ПодключитьВнешнююКомпоненту("ОбщийМакет.ВК_Телефония", "PBX", ТипВнешнейКомпоненты.Native); КонецПопытки; Попытка глТелефония = Новый("AddIn.PBX.AsteriskAMI"); Исключение Сообщить("Не удалось установить внешнюю компоненту."); КонецПопытки; КонецПроцедуры
После использования метода УстановитьВнешнююКомпоненту() файл компоненты (PBX.dll) будет
размещен в каталоге C:\Users\[ИмяПользователя]\AppData\Roaming\1C\1Cv82\ExtCompT
Отзывы клиентов
Техническая поддержка и обновления
Бесплатный период техподдержки — 1 месяц со дня покупки. Бесплатные обновления — 1 месяц. Далее — по платной подписке.
Создать обращение (тикет)
Заполнить данные
Контакты, номер заказа, подробное описание вопроса. Для ошибок — порядок действий + видео/скриншоты/отчеты. Укажите точные версии конфигураций.
Дождаться ответа
Срок реакции — до 24 часов в рабочие дни.
Внимание! В отдельных случаях может потребоваться платная диагностика с удаленным доступом (стоимость уточняется индивидуально).
Интеграция Asterisk AMI
Настройка AMI в Asterisk и подключение внешней компоненты в 1С: установка, свойства, методы и примеры использования
1. Подготовка Asterisk
Для доступа к интерфейсу AMI требуется открыть доступ в Asterisk. Делается это редактированием файла
/etc/asterisk/manager.conf через CLI или через WEB-интерфейс АТС.
enabled=yes ; возможность работать с AMI (по-умолчанию no)
port=5038 ; на порту TCP 5038
bindaddr=192.168.1.0/24 ; принимать соединения в лок. сети (0.0.0.0 - все)
timestampevents = no ; Отправлять в пакетах событий временную метку
displayconnects = yes ; Отображать факт подключения пользователя к AMI
allowmultiplelogin = yes ; Разрешить несколько подключений с одним именем
Рекомендации:
- Обязательно ограничивайте подсети, из которых доступен AMI интерфейс.
- Если работа с АТС из нескольких подсетей — создайте разных пользователей AMI.
- Ограничьте доступ к логину и паролю AMI в программе 1С.
2. Способы подключения внешней компоненты
Подключение файла компоненты
Попытка
ПодключитьВнешнююКомпоненту ("D:\PBX\PBX.dll", "PBX", ТипВнешнейКомпоненты.Native);
глТелефония = Новый ("AddIn.PBX.AsteriskAMI");
Исключение
Сообщить ("Ошибка! "+ОписаниеОшибки());
КонецПопытки;
Подключение с помощью шаблона
Предпочтительный способ использования компоненты на предприятии: компонента будет установлена автоматически пользователю и будет выбрана автоматически разрядность компоненты.
В конфигурации требуется создать Общий макет. Тип макета — «Внешняя компонента». Загрузить в нее поставляемый zip файл.
Процедура ТелефонияИнициализация() Экспорт
Попытка
ПодключитьВнешнююКомпоненту("ОбщийМакет.ВК_Телефония", "PBX", ТипВнешнейКомпоненты.Native)
Исключение
УстановитьВнешнююКомпоненту("ОбщийМакет.ВК_Телефония");
ПодключитьВнешнююКомпоненту("ОбщийМакет.ВК_Телефония", "PBX", ТипВнешнейКомпоненты.Native);
КонецПопытки;
Попытка
глТелефония = Новый("AddIn.PBX.AsteriskAMI");
Исключение
Сообщить("Не удалось установить внешнюю компоненту.");
КонецПопытки;
КонецПроцедуры
После использования метода УстановитьВнешнююКомпоненту() файл компоненты (PBX.dll) будет размещен в каталоге
C:\Users\[ИмяПользователя]\AppData\Roaming\1C\1Cv82\ExtCompT
3. Свойства компоненты
Версия — отображает информацию о текущей версии компоненты.
Значение по умолчанию: нет.
Чтение.
ФильтрНомер — устанавливает фильтр на вывод сообщений в 1С по одному определенному номеру. Указывается в формате "SIP/107". Если значение не указано — компонента отправляет полную информацию.
Значение по умолчанию: нет.
Чтение и запись.
Шифрование — использует передачу пароля в зашифрованном виде. Поскольку авторизация сопровождается передачей и обработкой токена, обязательно использование метода Авторизация().
Значение по умолчанию: Истина.
Чтение и запись.
Подключен — если компонента успешно подключилась к серверу Asterisk, принимает значение Истина.
Чтение.
Идентификатор — идентификационный номер компоненты. Уникальный ключ для каждого компьютера.
Чтение.
КлючПродукта — регистрационный ключ продукта.
Чтение и запись.
4. Методы компоненты
Подключиться(server, port) — устанавливает подключение к телефонной станции Asterisk по TCP протоколу.
- server — имя или IP адрес сервера (обязательный параметр).
- port — порт подключения (по умолчанию 5038, соответствует настройкам AMI).
Авторизация(ИмяПользователя, Пароль) — осуществляет авторизацию с учетом использования шифрования MD5.
- ИмяПользователя — логин пользователя Asterisk AMI.
- Пароль — пароль пользователя Asterisk AMI.
Прослушать(Истина) — запускает прослушивание порта для дальнейшей обработки и передачи информации в 1С.
Разъеденить() — останавливает прослушивание и закрывает подключение к станции.
5. Использование компоненты в 1С Предприятие
Пример реализации подключения к серверу
Процедура ТелефонияСоединение()
Если глТелефония.Подключен Тогда
Возврат;
КонецЕсли;
Если НЕ глТелефония.Подключиться("server", "5038") Тогда
Сообщить ("Ошибка подключения");
Возврат;
КонецЕсли;
глТелефония.Шифрование = Истина;
глТелефония.ФильтрНомер ("SIP/107");
глТелефония.Прослушать (Истина);
глТелефония.Авторизация ("admin", "password");
КонецПроцедуры
Получение информации от внешней компоненты
Обработка данных должна вестись согласно документации к своей телефонной станции wiki.asterisk.org.
Процедура ВнешнееСобытие(Источник, Событие, Данные)
Если Источник="PBX" Тогда
//обработка данных
КонецЕсли;
КонецПроцедуры
6. Ограничения демонстрационной версии
На чтение (получение) информации от АТС ограничений НЕТ. Например, можно определять какой номер вам звонит и сопоставлять со справочником Контрагентов.
Невозможно отправлять команды в телефонную станцию через некоторое время после подключения.
Остались вопросы?
Для получения дополнительной информации и помощи в настройке модуля под нужды вашего бизнеса — оставьте заявку
