Перейти к содержанию

Управление выполнением

В скриптах есть возможность управлять некоторыми параметрами выполнения сценариев бота. Текущие активные сценарии доступны через свойство доступны через поле context.input.scenarios. А сами настройки выполнения доступны через поле context.output.settings.

Входные данные

Все входные данные доступны через поле context.input.

Текущие сценарии

Текущие активные сценарии доступны через поле context.input.scenarios. Сценарии представлены структурой ScriptInputScenarioBag. Стек сценариев доступен через поле context.input.scenarios.stack.

В следующем примере показывается, как определить, что пользователь находится в корневом сценарии:

TypeScript
1
2
3
4
5
if (context.input.scenarios.stack.length <= 1) {
    // Пользователь находится в корневом сценарии бота.
} else {
    // Пользователь находится в одном из о дочерних сценариев.
}

Выходные настройки

Все выходные настроки доступны через поле context.ouput.settings. Настройки представлены структурой ScriptExecutionOutputSettings.

intentProcessed

Настройка доступна через поле context.ouput.settings.intentProcessed. Поле указывает на то, обработан ли текущий интент и стоит ли прервать обработку последующих триггеров.

TypeScript
// Последующие триггеры интентов обрабатываться на будут.
context.ouput.settings.intentProcessed = true;

activityProcessed

Настройка доступна через поле context.ouput.settings.activityProcessed. Поле указывает на то, обработана ли текущая активность и стоит ли прервать дальнейшую ее обработку.

TypeScript
// Дальнейшая обработка активности прекращена.
context.ouput.settings.activityProcessed = true;

allowInterruption

Настройка доступна через поле context.ouput.settings.allowInterruption. Поле указывает на то, разрешено ли триггерам прерывать работу текущего сценария.

TypeScript
// Триггерам разрешается прерывать работу текущего сценария.
context.ouput.settings.allowInterruption = true;