Сообщения и переходы
Эти функции решают, что контакт увидит и куда сценарий пойдёт после кода. Сообщения и переход выполняются после того, как код завершился без ошибки, — в том порядке, в каком их вызвали.
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();
}