Дополнительные действия
AZykov (обсуждение | вклад) |
AZykov (обсуждение | вклад) |
||
Строка 23: | Строка 23: | ||
= Запуск служебного сценария с помощью вебхука = | = Запуск служебного сценария с помощью вебхука = | ||
[[Файл:Канал интеграции.png|мини|Канал интеграции]] | |||
Служебные сценарии могут использоваться для обработки запросов (HTTP и WS) в '''каналах интеграции'''. | |||
Каналы интеграции доступны в приложении Настройки, в разделе Прочее. | |||
Детальную информацию о работе каналов интеграции можно найти на [https://vendor.era-platform.ru/docs/era/latest/entities/service/integration_point.html ресурсе Vendor]. | |||
Канал интеграции в основном определяет точку обработки HTTP(s) веб-хуков, поступающих из внешних систем, а также точку для websocket подключения с предопределенными правами. | |||
В отдельных случаях канал интеграции определяет URL внешней системы для отправки в нее HTTP запросов из сценариев. | |||
Поддерживает потоковую асинхронную обработку сообщений, поступающих из websocket-подключений, и отправку в них ответных сообщений, а также событий. | |||
Поддерживает создание проектных API с помощью служебных сценариев. | |||
Websocket-подключение к каналу интеграции производится с указанием token_local непосредственно в URL или в заголовке Authorization. Подробнее. | |||
Http(s)-подключение к каналу интеграции производится с указанием token_local. Используется для обращения к проектным API, а также для скачивания записей разговоров, вебхуков от мессенджеров. | |||
Могут быть постоянными и временными. Для временных необходимо задать дату и время до которого канал интеграции будет активен. При превышении даты активности система автоматически переведет канал интеграции в состояние просрочен. | |||
Поведение канала интеграции определяется его типом | |||
{| class="wikitable" | |||
|+Типы канала интеграции | |||
!Значение | |||
!Описание | |||
|- | |||
|Общий (public) | |||
|Канал интеграции общего назначения. Применяется при: | |||
* отправке HTTP-запросов из сценариев в доменах с типами, имеющими ограничения по выбору URL в компоненте ''"Веб-запрос"''. Конечный URL вычисляется путем сцепления значения поля ''url'' выбранного канала интеграции, символа <code>/</code> и указанной страницы. | |||
* получении входящих HTTP-запросов от произвольных отправителей с использованием ''token_local''. В этом случае запускается сценарий ''recv_svcscriptcode''. В частности при получении сообщений для чат-сессий. | |||
* создании собственного внутреннего API в служебных сценариях на протоколах HTTP и websocket. Применяются значения полей ''recv_svcscriptcode'', ''recv_svcscriptcode_ws'', ''url'' и ''token_local'', а также компонента ''"Отправка вебсокет-сообщения"''. | |||
* отправки сообщений из сценариев чат-ботов в канал. Применяются поля ''send_svcscriptcode'', ''send_svcscriptcode_ws''. | |||
|- | |||
|Подписчик (subscr) | |||
|Канал интеграции для подписчиков на события системы. | |||
Поддерживает подписку по протоколам HTTP и Websocket. | |||
В первом случае отправка событий производится веб-хуками по адресу, указанному в запросе подписки, либо по адресу ''url''. | |||
Во втором случае отправка событий производится обратно в websocket-подключение. | |||
В каждый канал интеграции вне зависимости от количества подключений и подписок, каждое событие отправляется не более 1 раза. | |||
Поля ''recv_svcscriptcode'', ''recv_svcscriptcode_ws'', ''send_svcscriptcode'' и ''send_svcscriptcode_ws'' не используются. | |||
|- | |||
|Мессенджер (im) | |||
|Канал интеграции для вебхуков из мессенджеров. Поступающие сообщения на страницу веб-сервера '/api/im/v1/:TOKEN' пересылаются в сервис обслуживания im-аккаунтов. | |||
Поля ''url'', ''recv_svcscriptcode'', ''recv_svcscriptcode_ws'', ''send_svcscriptcode'' и ''send_svcscriptcode_ws'' не используются. | |||
|} | |||
Для использования служебных сценариев необходимо использовать '''общий режим'''. | |||
Для каждого канала интеграции доступен выбор 4 служебных сценариев: | |||
* Обработка входящего HTTP запроса (Входящий HTTP) | |||
* Обработка входящего WS запроса (Входящий WS) | |||
* Обработка исходящего HTTP запроса (Исходящий HTTP) | |||
* Обработка исходящего WS запроса (Исходящий WS) | |||
= Запуск служебного сценария по расписанию = | = Запуск служебного сценария по расписанию = |
Версия от 12:34, 24 февраля 2025
Предыдущая статья курса: Компоненты работы с данными
Общая информация
Запуск служебных сценариев может производится:
- при поступлении HTTP-запроса к проектному API (использование сервисов)
- из кода приложений
- при поступлении веб-хука в канал интеграции;
- компонентом Запуск сценария из других служебных и IVR сценариев;
- по расписанию служебной задачей;
- в виде контекстного сценария звонка для обработки событий звонка – запускается при поступлении звонка и может быть активным вплоть до его завершения;
- сервисом управления звонками с целью инициации исходящих вызовов от SIP-UAC IVR;
- в различных точках бизнес-процессов, предполагающих проектную кастомизацию – стратегии.
Алгоритм работы каждого сценария описываются сущностью svcscript.
Исполняется ролью svc на одном из сайтов, обслуживающих домен.
Запуск служебного сценария из кода
Запуск служебного сценария через API
Запуск служебного сценария с помощью вебхука

Служебные сценарии могут использоваться для обработки запросов (HTTP и WS) в каналах интеграции.
Каналы интеграции доступны в приложении Настройки, в разделе Прочее.
Детальную информацию о работе каналов интеграции можно найти на ресурсе Vendor.
Канал интеграции в основном определяет точку обработки HTTP(s) веб-хуков, поступающих из внешних систем, а также точку для websocket подключения с предопределенными правами.
В отдельных случаях канал интеграции определяет URL внешней системы для отправки в нее HTTP запросов из сценариев.
Поддерживает потоковую асинхронную обработку сообщений, поступающих из websocket-подключений, и отправку в них ответных сообщений, а также событий.
Поддерживает создание проектных API с помощью служебных сценариев.
Websocket-подключение к каналу интеграции производится с указанием token_local непосредственно в URL или в заголовке Authorization. Подробнее.
Http(s)-подключение к каналу интеграции производится с указанием token_local. Используется для обращения к проектным API, а также для скачивания записей разговоров, вебхуков от мессенджеров.
Могут быть постоянными и временными. Для временных необходимо задать дату и время до которого канал интеграции будет активен. При превышении даты активности система автоматически переведет канал интеграции в состояние просрочен.
Поведение канала интеграции определяется его типом
Значение | Описание |
---|---|
Общий (public) | Канал интеграции общего назначения. Применяется при:
|
Подписчик (subscr) | Канал интеграции для подписчиков на события системы.
Поддерживает подписку по протоколам HTTP и Websocket. В первом случае отправка событий производится веб-хуками по адресу, указанному в запросе подписки, либо по адресу url. Во втором случае отправка событий производится обратно в websocket-подключение. В каждый канал интеграции вне зависимости от количества подключений и подписок, каждое событие отправляется не более 1 раза. Поля recv_svcscriptcode, recv_svcscriptcode_ws, send_svcscriptcode и send_svcscriptcode_ws не используются. |
Мессенджер (im) | Канал интеграции для вебхуков из мессенджеров. Поступающие сообщения на страницу веб-сервера '/api/im/v1/:TOKEN' пересылаются в сервис обслуживания im-аккаунтов.
Поля url, recv_svcscriptcode, recv_svcscriptcode_ws, send_svcscriptcode и send_svcscriptcode_ws не используются. |
Для использования служебных сценариев необходимо использовать общий режим.
Для каждого канала интеграции доступен выбор 4 служебных сценариев:
- Обработка входящего HTTP запроса (Входящий HTTP)
- Обработка входящего WS запроса (Входящий WS)
- Обработка исходящего HTTP запроса (Исходящий HTTP)
- Обработка исходящего WS запроса (Исходящий WS)
Запуск служебного сценария по расписанию
Для запуска служебных сценариев по расписанию служит специальная сущность - Служебная задача.

Служебные задачи доступны в приложении Настройки, в разделе Сценарии.
Каждая задача хранит в себе параметры запуска сценариев:
- Признак активности (включена)
- Код служебного сценария для запуска
- Режим обслуживания на сайтах (при распределенной архитектуре)
- Список допустимых сайтов (опционально, при распределенной архитектуре)
- Режим запуска (однократный, регулярный)
- Разрешить параллельное выполнение
- Интервал запуска
- Начало и окончание периода активности
- Время действия (всегда, рабочее/нерабочее время, расписание)
- Расписание времени действия
Если задача активна, то сценарий будет запускаться автоматически с заданным интервалом, на всех или выбранных сайтах, в выбранное время действия.
Запуск служебного сценария для обработки событий звонка
Запуск служебного сценария для инициализации исходящих вызовов
Следующая статья курса: Задание 7. Создание служебного сценария
Предыдущая статья курса: Компоненты работы с данными