Спросить ИИ
Русский RU
Перейти в Watbot

Сообщения и переходы

Эти функции решают, что контакт увидит и куда сценарий пойдёт после кода. Сообщения и переход выполняются после того, как код завершился без ошибки, — в том порядке, в каком их вызвали.

sendMessage

sendMessage(text)

Отправляет контакту текстовое сообщение.

Параметр Тип Что передать
text Строка Текст сообщения. Число превратится в строку

Ничего не возвращает.

Пустая строка не отправляется. Текст уходит как есть: автоподстановки {{ ... }} в нём не выполняются — нужные значения вставьте в строку кодом.

За один запуск можно отправить до 10 сообщений. Уже одиннадцатый вызов завершит код с ошибкой, и не отправится ни одно сообщение.

var bouquet = getContactVariable('букет');
var price = Number(getContactVariable('цена') || 0);

sendMessage('Ваш заказ: ' + bouquet + '.');
sendMessage('К оплате: ' + price + ' ₽.');

goToBlock

goToBlock(id)

Переводит контакта в блок сценария: бот выполнит этот блок так же, как если бы к нему вела связь.

Параметр Тип Что передать
id Число ID блока этого же бота. Он виден в настройках блока

Ничего не возвращает.

Вызвать функцию можно один раз за запуск — второй вызов завершит код с ошибкой. Если блока с таким ID у бота нет, перехода не будет, а ошибки в логе не появится — проверьте ID.

goToBlock не отменяет связь «Продолжить»: без disableContinue() бот выполнит и указанный блок, и тот, что подключён к «Продолжить».

var sum = Number(getContactVariable('сумма_заказа') || 0);

if (sum >= 5000) {
    goToBlock(12345);
    disableContinue();
}

Вместо 12345 подставьте ID нужного блока.

disableContinue

disableContinue()

Отключает связь «Продолжить» у блока на этот запуск: сценарий не пойдёт дальше по ней. В следующий раз связь снова работает, пока код опять не вызовет disableContinue().

Параметров нет.

Ничего не возвращает.

Так код сам решает, идти ли сценарию дальше: например, остановиться, пока контакт не заполнил адрес.

var address = getContactVariable('адрес_доставки');

if (!address) {
    sendMessage('Напишите адрес доставки, и мы продолжим оформление.');
    disableContinue();
}