Oktell AMI Adapter — различия между версиями

Материал из Oktell
Перейти к: навигация, поиск
Строка 14: Строка 14:
  
  
[[Файл:AmiAdapter-010.png|center|600px]]
+
[[Файл:AmiAdapter-010.png|center]]
  
  

Версия 10:24, 21 марта 2014

Наверх

Введение

Oktell AMI Adapter - это служба для интеграции Внешних программ и Oktell по протоколу AMI. Взаимодействие происходит путем обмена сообщениями интерфейса AMI по постоянному установившемуся TCP-каналу.

Протокол AMI часто используют для интеграции с бизнес-процессами и системами, программным обеспечением CRM. Он также может применяться для разнообразных приложений, таких как программы автоматического набора номера и системы click-to-call (звонок-по-щелчку).

Работа адаптера заключается в приеме запросов, поступающих на определенный tcp-порт и передача их на порты Web-сервера Oktell. При поступлении запроса в Oktell запускается определенный служебный сценарий, который анализирует сообщение и генерирует ответ обратно в адаптер. Для удобства разбора сообщения, Oktell AMI Adapter может преобразовывать запрос в XML-формат.

ВНИМАНИЕ: Для работы требуется предустановленный .NET Framework v4.5 ([Скачать]).


AmiAdapter-010.png


Подготовка Oktell

Настройте способ соединения Oktell и Oktell AMI Adapter:

  • Перейдите в Администрирование - Общие настройки - Web-интеграция с CRM.
  • Выберите следующие настройки
  • Способ соединения с сервером CRM - CRM к Oktell (WebSocket)
  • Порт WebSocket Oktell для CRM - выберите порт для WebSocket-соединения. В примере, 4067
  • Авторизация - Без авторизации
  • Нажмите "Сохранить"


AmiAdapter-002.png


Установка Oktell AMI Adapter

Шаг 1. Регистрация службы Oktell.AMI.Adapter. Для этого необходимо воспользоваться программой InstallUtil по адресу C:\Windows\Microsoft.NET\Framework\v4.0.30319 (на ОС Windows 7).

В командной строке заходим в папку с программой и выполняем команду (в примере Oktell.AMI.Adapter.Svc.exe находится в папке C:\AMI_Adapter).

C:\Windows\Microsoft.NET\Framework\v4.0.30319\InstallUtil.exe C:\AMI_Adapter\Oktell.AMI.Adapter.Svc.exe


AmiAdapter-001.png


Шаг 2. Редактирование конфигурационного файла Oktell AMI Adapter. Откройте файл Oktell.AMI.Adapter.Svc.exe.config.

Для работы Oktell AMI Adapter:

  • Введите адрес для подключения к web-серверу Oktell:
<add key="OktellWebSocketUrl" value="ws://127.0.0.1:4067" />
  • Введите интерфейс и порт слушателя:
<add key="TcpListenerEndPoint" value="127.0.0.1:8888" />
  • Введите название сценария обработки запросов:
<add key="OktellScriptName" value="AMI_ADAPTER_Script" />


Шаг 3. Запуск службы Oktell.AMI.Adapter.

  • Откройте "Управление службами" (Мой компьютер "правой кнопкой" -> Управление -> Службы и приложения -> Службы).
  • Запустите службу Oktell.AMI.Adapter.


AmiAdapter-003.png


Настройка сценария обработки запросов

Все запросы, поступающие в Oktell AMI Adapter, пересылаются в Oktell. При этом запускается сценарий (параметр конфигурационного файла OktellScriptName), на вход которого передается текст сообщения в XML-формате. Преобразование сообщение в XML-формат задается в конфигурационном файле в параметре ConvertAmiToXml.

Действия сценария при получении запроса:

  1. Разбор и анализ поступившего сообщения
  2. Выполнение действий и формирование ответа
  3. Отправка сообщения в Oktell AMI Adapter


Создайте сценарий с названием, которое прописано в конфигурационном файле. В примере, AMI_ADAPTER_Script.


AmiAdapter-004.png


Простейший сценарий выглядит следующим образом.


AmiAdapter-005.png


Сценарий разбирает запросы Login, Logoff и Originate, формирует и отправляет ответы. При запросе Originate коммутирует абонентов указанных в полях Exten и Channel.

Компонент "Старт 1". В качестве параметра запуска переменная xml (строковая) содержит текст запроса в XML-виде.

Компонент "Анализ action". Разбирает xml структуру, определяет параметр Action и записывает в соответствующую переменную Action(строковая). Переход осуществляется к следующему элементу как по основной ветке, так и по ветке "Ошибка" (тогда в переменной Action будет пустая строка).


AmiAdapter-006.png


Компонент "Текст action". Отладочное уведомление, выводит текст переменной Action.

Компонент "action?". Меню, в зависимости от параметра Action формирует ответ и совершает необходимые действия.

Компонент "Success". Формирует ответ на запрос. В переменную answer записывается строка (с переносом строки)

Response: Success
Message: Authentication accepted

Аналогично настраивается компонент "Goodbye". Формат ответа:

Response: Goodbye
Message: Thanks for all the fish.

Формат ответа на Originate

Response: Success
Message: Originate successfully queued

Компоненты "Callerid" и "Exten" . Разбирают структуру запроса и выделяют поля Callerid и Exten. Далее с помощью компонента "Коммутация 1" данные абоненты коммутируются.

Компонент "Отправка ответа". Отправляет ответ в Oktell AMI Adapter с помощью компонента "Действие/карточка в Plugin или WebCRM".

  • "Модуль, действие" - WebCRM - SendAMIMessage.
  • "Свойства" - для выходной переменной модуля message выберите переменную сценария answer.


AmiAdapter-008.png


Проверка работы

Для проверки работы вы можете использовать компонент Windows "клиент telnet". Подключение осуществляется в командной строке:

telnet 192.168.0.82 8888

После входа, введите запрос и нажмите два раза клавишу ввода.

Action: Login

Вам должен прийти ответ от Oktell AMI Adapter.


AmiAdapter-009.png


Конфигурационный файл

Откройте папку с Oktell AMI Adapter. Конфигурационный файл Oktell.AMI.Adapter.Svc.exe.config находится в корне папки, открывается с помощью блокнота (рекомендуется использовать notepad++).

Конфигурационный файл имеет следующие параметры:

  • OktellWebSocketUrl - адрес для web-socket подключения к серверу Oktell. По умолчанию, «ws://192.168.0.82:4067».
  • OktellWebSocketUrl_2 - адрес для web-socket подключения к другому серверу Oktell. Используется для обеспечения отказоустойчивости системы.
  • OktellWebSocketUrl_3 - адрес для web-socket подключения к третьему серверу Oktell. Используется для обеспечения отказоустойчивости системы.
  • TcpListenerEndPoint - интерфейс и порт слушателя tcp-подключений. По умолчанию, «127.0.0.1:8888».
  • OktellScriptName - название сценария обработки запросов. По умолчанию, «some_script».
  • EnableAdapterLog - логирование работы адаптера. «0» - не активно, «1» - активно. По умолчанию, «1».
  • EnableAMIConnectionLog - логирование подключений. «0» - не активно, «1» - активно. По умолчанию, «1».
  • EnableOktellConnectionLog - логирование соединений с сервером Oktell. «0» - не активно, «1» - активно. По умолчанию, «1».
  • ConvertAmiToXml - преобразование сообщения на языке AMI протокола в XML для удобства парсинга. «0» - не активно, «1» - активно. По умолчанию, «1».