Ответ из предустановленного списка


Откройте узел для редактирования и перейдите к разделу "Ответ пользователя".
Укажите тип ответа "Ожидать ответ из предустановленного списка".

Появится блок с настройкой списка и реакции бота на неправильный ответ.



Выбрать из:
  • Списочное свойство - вывеси список вариантов из поля сущности CRM, которое имеет тип "список".


    Для этого нужно указать:
    Сущности CRM - тип crm-сущности (контакт, компания, лид, сделка) у которой есть списочное поле.
    Свойство - поле с типом "список" из указанной crm-сущности, либо предустановленное поле со списком (такие как источник, стадия сделки и т.п.).

  • Список на инфоблоках - вывести список элементов из списка Битрикс24.



    Для этого нужно указать:
    Список - список Битрикс24 из которого чат-бот будет брать данные.
    Отображаемое поле - поле из указанного списка Битрикс24, которое чат-бот выведет в сообщении (у списка много полей разных типов, поэтому для удобства выбирается только одно поле, например "Название").

Количество элементов на странице:
Сколько элементов списка отобразить в одном сообщении. Если список длинный - лучше разбить его для удобства. Чат-бот оставить кнопки для навигации по списку. Также стоит учитывать особенности вашего коннектора/мессенджера. У некоторых мессенджеров есть ограничение на количество символов в одном сообщении, это значит, что весь список может не убраться. Если это происходит - уменьшите количество элементов на странице.



Записать в переменную:
Сохраняет ответ пользователя в указанную переменную. Обратите внимание, что тип переменной должен соответствовать типу списка. Если вы выбрали "списочное свойство", то переменная должна иметь тип "Привязка к значению свойства типа Список", если же вы выбрали "список на инфоблоках", то переменная должна иметь тип "Привязка к элементу списка".



При ответе не по списку:
Если пользователь вводит ответ вручную (например, если ваш мессенджер не поддерживает кнопки) - он может ошибиться и написать то, что нет в предложенном списке. Для этого предусмотрены следующие варианты:
  • Продолжить отработку без ожидания выбора - бот ничего не запишет в переменную и продолжит выполнять сценарий дальше.
  • Игнорировать и дождаться ответа по списку - бот будет молча ждать корректный ответ пользователя.
  • Отправить сообщение и дождаться ответа по списку - бот будет отправлять сообщение после каждого некорректного ответа пользователя.
  • Запустить отработку неизвестных команд - бот перейдёт к узлу обработки неизвестных команд.
  • Запустить другой сценарий/узел - узел к которому перейдёт бот после некорректного ответа пользователя.





Например, есть задача - вывести список мероприятий и при выборе конкретного мероприятия из этого списка - отобразить его описание.

Предположим, у нас есть список на инфоблоках "Мероприятия".

У этого списка два нужных нам поля, NAME - Название и PREVIEW_TEXT - Описание.



Создаём узел и указываем тип ответа "Ожидать ответ из предустановленного списка".

Выбрать из - список на инфоблоках.
Список - указываем наш список "Мероприятия".
Отображаемое поле - Название (т.к. описание, как правило, содержит много текста, а для удобного выбора из списка нужно выводить короткие названия).
Фильтр элементов - оставляем пустым, потому что нам нужно отобразить все мероприятия.
Количество элементов на странице - оставляем по умолчанию.
Запись в переменную - выбираем переменную с типом "Привязка к элементу списка".
При ответе не по списку - отправляем текст.



Ниже, в разделе "действия бота после ответа" запускаем другой узел. Этот блок выполнится только после успешного выбора из списка.



В другом узле в действии "Отправить текст" выводим описание выбранного клиентом мероприятия.
Для этого в меню выберите "Переменные", найдите там переменную, которую вы указывали в первом узле в параметре "Записать в переменную".
При наведении на неё откроется дополнительное меню с полями списка - выберите "Описание". После этого в текст добавится код переменной с дополнительными параметрами.





В итоге получаем два узла - вывод списка с мероприятиями и вывод описания выбранного клиентом мероприятия.




Так данный список будет выглядеть в диалоге.
Обратите внимание, что кроме поля "Названия" чат-бот пронумеровал каждый элемент списка. Если ваш мессенджер не поддерживает клавиатуру, то это позволит клиенту выбрать нужный вариант, просто указав цифру. Ему не придётся писать весь текст.



Предположим, клиент написал не полный вариант. Тогда чат-бот его не поймёт и попросит выбрать ещё раз.



На этот раз клиент выбрал вариант из списка и чат-бот отправил ему описание мероприятия.



Аналогично работает выбор с указанием цифры.




Содержание главы: