На время настройки сценариев чат-бота или на время проверки его работы может быть полезным включить
отправку отладочных сообщений в чат для анализа работы чат-бота в конкретном диалоге.
Содержание статьи:
Что такое отладочные сообщения (отладка)?
Отладочные сообщения (отладка) - это системные сообщения, отправляемые чат-ботом прямо в чат вместе с обычными сообщениями, отправляемыми по заданному сценарию.
Такие сообщения содержат отладочную информацию о работе чат-бота и позволяют увидеть, какие действия он выполняет, а какие не выполняет и проанализировать причины, по которым сценарий отработал так или иначе.
Отладочные сообщения отправляются как системные, поэтому их видят только сотрудники компании (оператор/менеджер/...), а клиент их не видит.
Как включить отладку?
Чтобы включить отладку, перейдите в Настройки -> Прочее.
Включите параметр "Включить отладку в диалогах".
Теперь, при выполнении каждого узла чат-бот будет выводить отладочную информацию вместе с выполнением действий узла.
Где искать отладочные сообщения?
Посмотреть отладочные сообщения можно
в самом диалоге с клиентом/пользователем в Битрикс24 или в
истории диалога.
Пример отладочных сообщений при просмотре диалога.
Отладочные сообщения в диалоге не имеют фона с рамкой.
Пример отладочных сообщений при просмотре истории.
В истории отладочные сообщения помечаются специальной иконкой "i", вместо стандартного фото чат-бота.
Структура отладочного сообщения
Отладочное сообщение содержит информацию сразу по нескольким действиям бота.
Действия отображаются по порядку их обработки чат-ботом.
Отладочное сообщение содержит 3 столбца:
В первом столбце указывается тип и название действия.
Во втором столбце название узла действия.
В третьем столбце результат выполнения:
- Выполнилось - всё прошло нормально.
- Не выполнилось по условию - условие действия оказалось ложное
- Не выполнилось из-за ошибки - действие прошло по условию, но в процессе что-то пошло не так (ниже будет указана причина)
Как и где найти и открыть диалог?
Найти любой диалог можно в Списке диалогов в Контакт-центре вашего Битрикс24.
Перейдите в Контакт-центр -> Список диалогов. Найдите нужный вам диалог и в меню выберите либо "История", либо "Открыть диалог".
Примеры работы с отладкой
Предположим, что к диалогу ещё не привязан лид. Но мы этого не учли и уже пытаемся записать в его поле какое-либо значение.
Обратите внимание на результат. Первое действие выполнилось, но у второго произошла ошибка, потому что нужной сущности нет.
Добавим условие для действий.
И видим, что первое действие не выполнилось по условию, потому что лида нет.
Если у действия есть условие, то ниже в отладочной информации выводится список всех условий и результат их выполнения.
Второе действие выполнилось.
Обратите внимание, что условие проверяет наличие лида, т.к. лида нет, то условие не выполнилось. Но ко всему блоку условий было применено отрицание и об этом написано в заголовке таблице.
Если же отрицание использовалось только для одного условия, то в результате будет примечание в скобках "использовалось отрицание условия", а сам результат будет указан уже с учётом отрицания.
Добавим три действие, используя все типы отрицаний.
Первое действие выполнилось. У него одно условие без отрицаний "сущность не установлена" и оно выполнилось.
Второе действие тоже выполнилось. У него одно условие без отрицания "определён лид" и оно не выполнилось, но т.к. отрицание применено ко всему блоку, то результат действия противоположный ему.
И третье действие выполнилось. У него два условия. Условие "Определен лид" на этот раз выполнилось, потому что к нему применено отрицание и это указано в скобках рядом с результатом. Условие "Переменная string заполнена" тоже выполнилось, но без отрицания. Так же в примечании указано, какое на данный момент переменная имеет значение.
Попросим телефон у пользователя, если он ещё не указан в лиде.
Действие выполнилось.
В условии поле "Телефон" сравнивается с пустой строкой, т.к. лида нет, то поле считается по умолчанию пустым, поэтому условие выполнилось.
В названии условия указывается и название поля и его ID в квадратных скобках. Сущности нет, поэтому вместо ID написано, что лид "не найден".
Также в примечании указано, что лида нет, а поле соответственно не заполнено.
Теперь, когда у нас привязан лид к диалогу, попробуем снова заполнить поле случайной строкой. И выведем значения в случае успеха.
На этот раз ошибки при попытке заполнить поле не возникло и действие выполнилось, т.к. сущность уже существует.
Действие с выводом значений тоже выполнилось, т.к. поле теперь не пустое.
Обратите внимание, что теперь в условии лид - ссылка на сущность в которой проверялось поле, а в квадратных скобках указан его ID.
Так же т.к. это пользовательское поле, то оно тоже в виде ссылки на его форму редактирования.
А в примечании указано текущее значение поля.