Обзор
Служебные сценарии служат для обработки данных и событий. Является самым общим типом сценариев обширного применения, поэтому не имеет специализированных компонентов.
Запуск производится:
- при поступлении HTTP-запроса к проектному API;
- при поступлении веб-хука в канал интеграции;
- при инициации запуска из активных обработчиков сценариев компонентом Запуск сценария в асинхронном режиме;
- по расписанию служебной задачей;
- в виде контекстного сценария звонка для обработки событий звонка – запускается при поступлении звонка и может быть активным вплоть до его завершения;
- сервисом управления звонками с целью инициации исходящих вызовов от SIP-UAC IVR;
- в различных точках бизнес-процессов, предполагающих проектную кастомизацию – стратегии.
Алгоритм работы каждого сценария описываются сущностью svcscript. Создаются в веб-приложении "Редактор сценариев" или могут управляться через API.
Служебный сценарий имеет основную ветвь и ветви пост-обработки. Основная ветвь активна только одновременно с активностью процесса-владельца, а при его завершении выполнение основной ветви сценария прерывается. При этом его работа может быть продолжена на ветке пост-обработки.
Служебный сценарий, обслуживающий поступивший внешний запрос, должен оперативно завершиться, сохранив значение в переменную с именем result
.
Исполняется ролью svc на одном из сайтов, обслуживающих домен.
Сценарий может быть запущен вручную, по таймеру (меню Задачи приложения Настройки) и внешней системой при помощи REST API интерфейса.
Управление микросервисами из SVC
Компонент Вызов микросервиса продуктового слоя позволяет управлять микросервисами.
![](/images/3/3d/%D0%92%D1%8B%D0%B7%D0%BE%D0%B2_%D0%BC%D0%B8%D0%BA%D1%80%D0%BE%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%B0.png)
Запустите Исходящую кампанию из служебного сценария
- Микросервис — callcenter.HolderService,
- Метод —Campaign_start,
- Аргументы — id кампании
Остановите Исходящую кампанию из служебного сценария
- Микросервис — callcenter.HolderService,
- Метод —Campaign_stop,
- Аргументы — id кампании
Полный перечень микросервисов продуктового слоя можно получить в приложении Builder, меню «Мониторинг» — «ServiceInstances».
https://{ERAURL}/app/builder_admin/#/ui/platform/services/ServiceInstances
Запросы операций из SVC сценариев
Используйте служебные (SVC) или голосовые (IVR) сценарии для выполнения запросов к различным классам платформы. Создайте сценарий и выберите компонент «Операция».
Подробная документация по компоненту Операция https://vendor.era-platform.ru/docs/era/latest/scripts/component_types/common/145.html
1. Работа с колл-листом
Укажите логин пользователя для выполнения запроса с необходимыми правами (обязательное поле). Прочтите коллекцию callcenter/outbound/SimpleContragents (список контрагентов из всех колл-листов). Полученные значение (в формате JSON) выведете в качестве уведомления или в лог-журнал.
Скачайте SVC-сценарий (svcscript_GetCalllist.zip) для изучения примера.
2. Получение общего количество свободных операторов во всех очередях
![](/images/thumb/5/56/%D0%9A%D0%BE%D0%BC%D0%BF%D0%BE%D0%BD%D0%B5%D0%BD%D1%82_%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D1%8F.png/300px-%D0%9A%D0%BE%D0%BC%D0%BF%D0%BE%D0%BD%D0%B5%D0%BD%D1%82_%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D1%8F.png)
Воспользуйтесь запросом к служебному классу callcenter/acd/CurrentACDQueueStats. Найдите при помощи фильтра ["==",["property","acdQueue_code"],["const","total"]] запись total.
Получите значение в формате JSON
[ { "acdQueue_code":"total", "acdQueue_id":null, "acdQueue_name":"Итого", "callsCount":0, "callsWaiting":0, "firstCallTime":null, "id":"fbb44b44-8741-5b13-4bce-9c790a27fe5e", "operatorsBusy":0, "operatorsCount":2, "operatorsNotReady":0, "operatorsReady":2, "orderIndex":6, "percentLost":null, "serviceLevel":null } ]
При помощи компонента «Парсер» получите интересующее значение /0/operatorsReady (где 0 — это первая запись в массиве JSON, operatorsReady — интересующее нас значение). Выведите значение на экран при помощи компонента «Уведомление».
![](/images/thumb/a/a1/%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80_%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%B8_.png/300px-%D0%9F%D1%80%D0%B8%D0%BC%D0%B5%D1%80_%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%B8_.png)
Скачайте SVC сценарий (svcscript_acd_params.zip) для изучения примера.