Блок «Выбор диалога» позволяет выбрать уже существующий чат для того, чтобы дальнейшее выполнение сценария происходило именно в нём.
Он может использоваться как в вебхук-сценариях, так и в диалоговых сценариях — например, если нужно временно перейти к другому чату, выполнить в нём действия, а затем вернуться к исходному.
Блок содержит поля:
ChatID — номер телефона, username или e-mail адресата. В это поле можно ввести переменную, если идентификатор передаётся из другого блока, например, из входящего вебхука или рассылки.
Линия — линия, в рамках которой будет выполняться поиск чата.
Мессенджер — мессенджер, в котором нужно найти чат.
Если в ходе выполнения блока в диалоговом сценарии указанный чат не найден в API, блок вернёт ошибку «чат не найден». В этом случае лог выполнения блока можно увидеть в логах чата, где выполняется сценарий. Последующие блоки будут выполняться в текущем сценарии.
Если чат найден, то дальнейшие блоки будут выполняться в найденном диалоге. Лог выполнения блока «Выбор диалога» отображается в чате, в котором был выполнен.
Важно: логи выполнения в вебхук-сценариях появятся в журнале событий в логах чата только после успешно найденного существующего чата или создания нового чата блоком Отправка сообщения*.
В отличие от блока «Отправка сообщения*», блок «Выбор диалога» не отправляет сообщение, а только ищет и выбирает существующий чат для дальнейших действий.
Пример использования
С блоком «Входящий webhook»
В сценарии с входящим вебхуком блок «Выбор диалога» используется, если нужно найти существующий чат клиента по номеру телефона, переданному через параметры вебхука.
Например, при изменении карточки в CRM можно автоматически передавать chatID клиента, чтобы блок нашел нужный чат и выполнение сценария продолжалось в нём.
Если чат найден — сценарий продолжит выполняться в выбранном диалоге.
Если чат не найден — блок завершится с ошибкой, и выполнение продолжится по ветке с результатом False.
Результаты блока
Логи с результатами выполнения блока отображаются в журнале событий в случае успешного выполнения:
и в случае, если чат не найден:
Диалоговый сценарий: если чат не найден, лог ошибки отобразится в текущем диалоге, из которого выполнялся сценарий.
Входящий webhook: если чат не найден, то логи блока в журнале не появятся до момента выбора существующего чата или создания нового чата блоком Отправка сообщения*.