Интерфейс Parlay X
В сервере CommuniGate Pro реализован интерфейс Parlay X для работы с сигналами реального времени, автоматическими правилами, тарификацией и другими функциями. Parlay X является протоколом на базе HTTP/XML. Он используется при обращении через модуль HTTP User CommuniGate Pro к разделу /ParlayX/.
Все HTTP запросы Parlay X должны быть аутентифицированы.
Поддерживается интерфейс Parlay X версии 2 и версии 3.
Управление звонками третьей стороной
Управление звонками третьей стороной через интерфейс ParlayX позволяет клиентскому приложению:
инициировать звонок между двумя сторонами,
читать статус инициированного звонка,
прервать инициированный звонок,
закончить инициированный звонок.
При получении запроса на «установление звонка», CommuniGate Pro запускает от имени аутентифицированного пользователя приложение parlayMakeCall из среды приложений реального времени.
Параметры приложения являются параметрами запроса: адреса вызывающей и вызываемой стороны и, при необходимости, параметр charging.
Возвращаемый callIdentifier является идентификатором задачи запущенного приложения.
Запросы «прервать звонок» и «закончить звонок» отправляются в запущенное приложение как события cancelCall и endCall.
Запрос «прочитать статус» возвращает содержимое словаря «статус приложения», устанавливаемого запущенным приложением.
Запросы «добавить участника» и «удалить участника» отправляются в запущенное приложение как события addCallPeer и delCallPeer; в параметрах события содержится URI участника, указанное в запросе.
Запросы «переключить участника» отправляются в запущенное приложения как два события.
Первым отправляется событие transferTarget. Его параметры содержат идентификатор задачи для сессии, в которую должен быть передан участник.
Затем отправляется событие transferCallPeer. Его параметры содержит URI участника, указанного в запросе.
Приложение не завершает свою работу немедленно в случае аварийного завершения или прекращения звонка. Приложение продолжат работать ещё некоторое время (по умолчанию около 30 секунд), обрабатывая запросы "прочитать статус" для завершения звонка / сессии.
Уведомление о звонках
Интерфейс ParlayX для обработки звонков позволяет клиентским приложениям задавать сигнальные правила для пользователя. Эти правила включают в себя специальные действия Parlay, в которых реализованы команды "направление звонка" ("CallDirection") и «уведомление о звонке» (""CallNotification"") интерфейса Parlay.
Аутентифицированные пользователи могут изменять собственные сигнальные правила, если у них заданы соответствующие установки пользователя.
Аутентифицированные пользователи могут читать и изменять сигнальные правила других пользователей, если им предоставлены права администратора домена.
Обратите внимание: запросы stopCallNotification и stopCallDirectionNotification должны содержать части addresses и criteria, а значение части correlator игнорируется.
Это необходимо по причине того, что правила задаются индивидуально для каждого пользователя, а данные correlator не позволяют серверу направить запрос на удаление правила для нужного пользователя.
Обратите внимание: сообщения handleXxxxResponse могут задавать действия “подключить” вместо действия “перенаправить к”. Адрес, указанный в части routingAddress добавляется в набор AOR-сигнала, но активным остаётся текущий набор AOR.
Платежи
Интерфейс для платежей ParlayX позволяет клиентскому приложению взаимодействовать с менеджером тарификации CommuniGate Pro.
Обратите внимание: пользователь CommuniGate Pro может иметь несколько остатков. Все запросы на платежи ParlayX должны включать элемент типа xsd:string balanceType, задающий имя остатка пользователя.
Управление пользователем
Интерфейс для управления пользователем ParlayX позволяет клиентскому приложению взаимодействовать с менеджером тарификации CommuniGate Pro.
Обработка звонков
Интерфес ParlayX для обработки звонков позволяет клиентским приложениям:
задавать сигнальные правила для пользователя,
прочитать сигнальные правила, заданные для пользователя.
Аутентифицированные пользователи могут изменять собственные сигнальные правила, если у них заданы соответствующие установки пользователя.
Аутентифицированные пользователи могут читать и изменять сигнальные правила других пользователей, если им предоставлены права администратора домена.
Все элементы acceptList Parlay X преобразовываются в одно сигнальное правило.
Все элементы blockList Parlay X преобразовываются в одно сигнальное правило.
Элемент forward и каждый элемент forwardList Parlay X преобразовываются в три сигнальных правила.