Twin LiveDemo
Данный кейс поддерживается телеграм ботом LiveDemo - уникальный айди этого кейса: 128713162.
В некоторых случаях может потребоваться пропустить вопрос, если клиент уже дал ответ на него преждевременно.
Разберем этот кейс на примере: после фразы приветствия клиент может сам представиться боту, и в таком случае не нужно будет спрашивать его имя.
Пример фрагмента сценария
Параметры блоков и стрелок
1) В самом начале сценария нам потребуется добавить блок результата, и в нем задать переменные, значения которых могут быть получены преждевременно, и не присваивать им значения. В данном примере задана переменная name с пустым значением, куда далее будет записано имя клиента.
2) Далее установим блок вопроса. В этом примере это вопрос с текстом "Здравствуйте!", и ответ клиента на него не важен, но если клиент решит поздороваться и назовет свое имя, нужно будет сохранить его, для того чтобы потом не спрашивать как его зовут. Для этого используем NLU. Если у вас еще нет подготовленного агента, то необходимо используя руководство В начале пути. Что такое сущности зайти в базового агента, отметить галочками необходимые системные сущности, или создать собственные, а затем нажать на кнопку Обучить.
Далее уже в сценарии в стрелке после блока вопроса - выбираем агента, в данном случае базового агента Base, добавляем Любое намерение, и добавляем сущность, переменная и тип которой соответствуют необходимой нам информации - в данном случае это будет переменная name, и тип human-name. Необходимо убрать галочку "Обязательная" рядом с типом сущности - в таком случае робот сможет продолжить двигаться по данной стрелке, даже если не получит информацию, соответствующую сущности.
3) Затем добавим блок условия с двумя ветками, одна из которых идет на уточняющий вопрос, а другая его пропускает и идет далее по сценарию. В ветке, которая пропускает вопрос, нам необходимо узнать, было ли получено значение переменной уточняющего вопроса ранее, для этого нужно установить Условие "И", и добавить условие, в котором мы сравним значение переменной с пустой строкой с помощью операции !=. В данном случае получается условие {name} != .
4) В стрелке, которая идет на уточняющий вопрос, укажем тип "По умолчанию".
5) Параметры стрелки после блока уточняющего вопроса аналогичны параметрам стрелки из шага №2, за исключением галочки Обязательная, она должна быть активна.
Таким образом можно пропустить вопрос, если ответ на него был дан ранее.
Пример работы фрагмента сценария