Сбор данных от собеседника | Слот Slot Filling
Слот Slot filling – слот, позволяющий собирать ответы Собеседника на вопросы бота и сохранять эти ответы в пользовательские контекстные переменные. В отличие от связки слотов «Text – Wait For Reaction – Memory», слот Slot Filling позволяет собрать несколько ответов Собеседника на несколько вопросов Бота с использованием только одного слота.

- 1.NAMEー название слота, которое будет отображено в Сценарии. Максимальная длина значения поля — 40 символов.
- 2.FIELDSー массив пар Answer variable — Question.
- 1.Answer variable — имя Пользовательской контекстной переменной, в которую запишется ответ пользователя на текст из поля Question. Если соответствующей переменной нет в контексте Агента, то она будет создана, если такая Пользовательские контекстные переменные уже есть в контексте — она будет обновлена. Важно: при указании Answer variable обратите внимание на требования к именам Пользовательских контекстных переменных. При неправильном указании переменной произойдет ошибка Валидации сценария.
- 2.Questionー поле, содержащее текст, который Агент отправит Собеседнику.
В Слоте Slot Filling допустимо использование Выражений и Управляющих конструкций в поле Question. Подробнее: Переход на новый синтаксис
Пример:
Управляющая конструкция
{% set some_var = … %}
создаёт локальную Контекстную переменную, которую можно использовать в шаблоне (в Контексте Чата эта Контекстная переменная не сохраняется).При выполнении слота Slot Filling:
- 1.Агент отправляет Собеседнику текстовое сообщение из поля Question и становится в режим ожидания.
- 2.Собеседник отправляет сообщение в ответ.
- 3.Ответ Собеседника записывается в Пользовательскe. контекстнe. переменнe., название которой указано в поле Answer variable для этого Question.