Дорошкевич Антон | Руководитель проектов | ООО ЦБР "ИнфоСофт"

«Опыт реализации проекта по BlockChain на 1С в реальном бизнесе»

Зачем он нужен корпоративному бизнесу? Технические подробности реализации для большого объёма данных. Почему бы просто не использовать РБД или шифровать данных в исходной базе и всё? Что с безопасностью передаваемых в BlockChain дынных? Влияние BlockChain на общую производительность системы. Вектора применения технологии BlockChain в будущем.

Внешняя компонента для подключения 1С к телефонии Asterisk

Программирование - Внешние компоненты

Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод звонков, набор телефона и т. д.)

Описание

Данная компонента предназначена для работы из программных продуктов 1С Предприятия 8.х
(Windows x86, x64) с телефонной станцией Asterisk. Соединение осуществляется посредством TCP
протокола. Чтение событий и запись команд происходит асинхронно. Данный интерфейс является
очень мощным инструментом взаимодействия между 1С и телефонной станцией. Позволяет
решать разнообразные задачи от простого определения номера звонящего до организации call
центов.

Данная компонента саморегистрирующаяся (Native API). Прав администратора не требуется для ее
установки.

Для демонстрации возможностей компоненты можете воспользоваться конфигурацией 1С Управление телефонией (для платформа 8.3.11 и выше) для FreePBX 13 (совместима для других АТС на платформе Asterisk). В конфигурации файл компоненты загружен в справочник "Внешние компоненты". При начале работы необходимо в настройках пользователя и настройках подключения прописать корректные значения для доступа к Вашей АТС. Данная конфигурация показывает лишь базовый функционал (получение информацию об экстейшенах, АОН, набор номера, перевод звонка, подслушивание и пр.) и не учитывает многих особенностей, например многоканальности.
По гиперссылке Отладка включается режима записи в логфайл информации от АТС.

Состав дистрибутива

Файл архива компоненты: PBX_X_X_X_X.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

Состав дистрибутива одинаковый для демонстрационной и коммерческой версии. Для коммерческой версии высылается дополнительно ключи продукта.

Требования

Компонента тестировалась на версиях платформы 1С 8.2.19.130 - 8.3.11.2867 (возможно 7.7)
MS Visual C++ 2012-2017 (идет в составе платформы на 8.3)
MS Windows 7, Windows 10, для 32 и 64 битных систем.
 

Подготовка 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С.

Способы подключения внешней компоненты

Подключение файла компоненты

Попытка
    ПодключитьВнешнююКомпоненту ("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С по одному определенному
номеру. Указывается в формате "SIP/107". Если значение не указано, то компонента отправляет
полную информацию.
Значение по умолчанию: нет
Чтение и Запись

Шифрование – использует передачу пароля в зашифрованном виде. Поскольку авторизация
сопровождается с передачей и обработкой токена, то обязательно использование метода
Авторизация().
Значение по умолчанию: Истина
Чтение и Запись

Подключен – Если компонента успешно подключилась к серверу Asterisk, то принимает булевное
значение Истина.
Чтение

Идентификатор – идентификационный номер компоненты. Уникальный ключ для каждого компьютера.
Чтение

КлючПродукта – регистрационный ключ продукта.
Чтение и Запись

Методы компоненты

Подключиться (server, port) – метод устанавливает подключение к телефонной станции Asterisk
по TCP протоколу.
Парметры:
server – имя или IP адрес сервера. Обязательное указание.
port – порт подключения. Указывается значение из раздела «Подготовка Asterisk». Значение по
умолчанию 5038.

Авторизация(ИмяПользователя, Пароль) - метод осуществляет авторизацию с учетом использования шифрования MD5
ИмяПользователя - логин пользователя Asterisk AMI
пароль - пароль пользователя Asterisk AMI

Прослушать(Истина) – метод запускает прослушивание порта для дальнейшей обработки и
передачи информации в 1С Предприятие.

Разъеденить() – метод останавливает прослушивание и закрывает подключение к станции.

 

Использование компоненты в 1С Предприятие

Пример реализации подключения к серверу

Процедура ТелефонияСоединение()

  Если глТелефония.Подключен Тогда
     Возврат;
  КонецЕсли;

  Если НЕ глТелефония.Подключиться("server", "5038") Тогда
     Сообщить ("Ошибка подключения");
     Возврат;
  КонецЕсли;

  глТелефония.Шифрование = Истина;
  глТелефония.ФильтрНомер ("SIP/107");
  глТелефония.Прослушать (Истина);
  глТелефония.Авторизация ("admin", "password");

КонецПроцедуры

Получение информации от внешней компоненты.

Обработка данных должна вестись согласно документации к своей телефонной станции wiki.asterisk.org 

Процедура ВнешнееСобытие(Источник, Событие, Данные)

  Если Источник="PBX" Тогда
  //обработка данных
  КонецЕсли;

КонецПроцедуры

 

Ограничения демонстрационной версии:

На чтение (получение) информации от АТС ограничений НЕТ. например, можно определять какой номер вам звонит и сопоставлять со справочником Контрагентов.

Невозможно отправлять команды в телефонную станцию через некоторое время после подключения.

Гарантия возврата денег

Гарантия возврата денег

ООО "Инфостарт" гарантирует Вам 100% возврат оплаты, если программа не соответствует заявленному функционалу из описания. Деньги можно вернуть в полном объеме, если вы заявите об этом течение 14-ти дней со дня поступления денег на наш счет.

Программа настолько проверена в работе, что мы с полной уверенностью можем дать такую гарантию. Мы хотим, чтобы все наши покупатели оставались довольны покупкой.

Для возврата оплаты просто свяжитесь с нами.

Внешняя компонента

Наименование Файл Версия Размер
Внешняя компонента для подключения 1С к Asterisk
.zip 41,04Mb
04.05.18
4
.zip 1.0.3.2 41,04Mb 4 Скачать

Лицензии

Наименование Файл Версия Размер
04.05.2018
1.0.3.2 1 1000 руб.

Моментальная
доставка

Все

Наименование Файл Версия Размер
04.05.2018
1000 руб.


Новый вопрос

E-mail*
Тема (вопрос)*

См. также