Перейти к основному содержимому

$context

Структура, которая представляет текущий контекст обработки запроса.

подсказка
Объект $context содержит ссылки на все остальные встроенные переменные с таким же именем, но без префикса $:
$context.parseTree = $parseTree
$context.client = $client

Дополнительные поля

  • currentState — путь текущего стейта, в котором выполняется скрипт.
  • contextPath — текущий путь контекста. Может отличаться от currentState в случае, если используется флаг noContext.
  • testContext — контекст выполнения тестов. Объект определен только в режиме тестов и не подлежит изменению.

При использовании NLU также доступны поля:

  • intent — интент, активированный в стейте.
  • entities — сущности, найденные во фразе.
  • nluResults — массив результатов работы NLU-ядра.

Примеры использования

  • Очистка сессионных и клиентских данных в начале диалога.
state: Welcome
q!: $regex</start>
a: Привет! Я ваш электронный помощник.
script:
$context.session = {};
$context.client = {};
go!: /ChooseCity
  • Сохранение пути к последнему сработавшему стейту в обработчике postProcess.
init:
bind("postProcess", function($context) {
$context.session.lastState = $context.currentState;
});