ДокументацияВоронки и рассылки
Перенос воронок из Salebot
Бот из Salebot переезжает по частям: сам бот и его подписчики — в разделе «Боты», воронки — импортом в «Сценариях». Импорт собирает листы воронок из файла выгрузки, а всё, что перенести нельзя или что работает у нас иначе, называет в отчёте «Не перенесено».
Как перенести
- В Salebot выгрузите бота: «Скачать схему» (файл
project_…_schema.json) или «Инструменты» → «Скачать файл бэкапом» (project_…_current.sbk). Из бэкапа TERVIO берёт только схему бота — настройки проекта и ключи оплаты не читает и не хранит. Файл — до 20 МБ. - «Сценарии» → кнопка «Импорт» над списком листов → поле «Файл выгрузки» → выберите файл.
- «Проверить файл» — TERVIO разберёт выгрузку и покажет «Что перенесётся»: листы с числом блоков и стрелок, — и «Не перенесено»: что осталось за бортом и почему, с примерами. На этом шаге ничего не создаётся.
- «Создать листы» — кнопка работает только после проверки. Каждый лист бота становится отдельным листом воронки, большой — несколькими, все созданные листы выключены.
- Пройдите по отчёту «Не перенесено», поправьте листы, проверьте воронку на себе (Как проверить воронку на себе) и включите листы переключателем.
Импорт переносит черновик, а не запускает рассылку: пока лист выключен, клиенты по нему не идут. Лист, который не прошёл проверку схемы, не создаётся вовсе — он будет в отчёте, его переносят руками. Импортировать файл может администратор.
Что переносится
- Листы — каждый лист Salebot — свой лист воронки; в названии — имя файла и имя листа через «·». На лист помещается до 500 блоков и 1000 стрелок. Блоков после переноса больше, чем в Salebot: входы по словам и вычисления становятся отдельными блоками.
- Большой лист — не помещается на один — TERVIO делит его на несколько листов «… — часть 1», «… — часть 2». Независимые ветки ложатся в части целиком. Ветку, которой мало одного листа, TERVIO режет там, где между кусками меньше всего стрелок: стрелка в блок другой части ведёт в блок «Перейти к блоку» с этим листом и блоком — клиент переходит туда с теми же переменными и дальше отвечает уже там. Сколько переходов между частями, пишет отчёт. Включайте части вместе: в выключенную часть клиент не перейдёт.
- Служебный старт части — часть без своего входа получает старт «Внешнее событие (вебхук)» с ключом вида
служебный_вход_части_2и подписью «Служебный старт: сам не срабатывает…». Такое событие никто не присылает, клиенты приходят в часть переходами. Не удаляйте этот старт: лист без старта не сохраняется. - Тексты — переменные
#{имя}становятся{имя}, оформление текста сохраняется. - Кнопки — ряды и порядок кнопок, ссылки. Кнопка с callback становится «Callback-кнопкой»: в воронку уходит то же слово.
- Вычисления блока — переносятся блоком «Вычислить» перед сообщением — текст видит их результат. В одном блоке до 20 строк, длинный калькулятор встаёт цепочкой блоков.
- Блок без текста — картинка без подписи или развилка становится пустым сообщением: клиенту оно ничего не отправляет, а стрелки из него остаются на месте. Файл загрузите заново блоком «Медиа».
- «Не состояние» — блоки «не состояние» Salebot становятся сообщениями с включённым тумблером «Не состояние» (как он работает): сообщение приходит поверх, и клиент дальше отвечает на прежний вопрос. Так переезжает отбивка вроде «Вы ввели некорректное значение».
- Заметки на холсте — становятся блоками «Комментарий».
Входы: «/start», команды и слова
Условие блока Salebot становится стартом на листе. Какой это старт, зависит от слов в условии и от того, «не состояние» ли блок.
- «/start» — старт «Запуск бота (/start)». Полное совпадение «/start» — запуск без метки, «/start promo» — запуск с меткой promo, «содержит» «/start» — любой запуск бота.
- Команда «/…» — обычный старт «Кодовое слово» с «Где срабатывает» — «В боте»: команды TERVIO разбирает раньше ответа на вопрос воронки.
- Слово стартового условия — старт «Кодовое слово» с «Не состояние» и «В боте», а за ним блок «Перейти к блоку». Слово срабатывает, даже пока клиент отвечает на вопрос другой ветки, и переводит его в этот блок — дальше он отвечает уже там. Так же переносится любой блок-состояние с условием.
- Слово у блока «не состояние» — тот же старт, но сразу в блок, без перехода: сообщение приходит поверх, клиент остаётся на своём шаге.
- Сравнение и условие — «полное совпадение», «по ключевым словам» или «регулярное выражение», как было в Salebot. Условие по переменной блока становится условием запуска старта.
- «Отвечать один раз» — у блока с этой галкой входы получают «Повторный запуск» «Только один раз»: по своему условию блок срабатывает у человека однажды, а по стрелкам в него попадают сколько угодно, как в Salebot.
- Колбек — блок-колбек Salebot становится стартом «Внешнее событие (вебхук)»: ключ события — слово колбека, «Повторный запуск» — «При каждом событии». Отчёт называет ключ каждого колбека — перенастройте сервис, который присылал колбек в Salebot: пусть присылает в TERVIO событие с этим ключом (Запуск воронки из внешнего сервиса).
- Колбек GetCourse — блок с условием
getcourse buykursстановится стартом «Событие из GetCourse: buykurs» с «Любым аккаунтом»; большие буквы и лишние пробелы в условии не мешают. Блок «не состояние» в Salebot (типы 5 и 6) даёт старт «Не состояние», остальные блоки дают обычный старт: текущая воронка клиента останавливается. Два блока на одну команду дают два старта, и срабатывают оба, как в Salebot. В процессе GetCourse замените вызов Salebot на адрес из «Сценарии» → «Подключения» → GetCourse. - Колбек оплаты — колбек вида
ключ_success 4900становится стартом на событие «оплата» с условием запуска «сумма == 4900»,ключ_fail 4900— на «оплата_не_прошла». Эти события присылает Эквайринг TERVIO, когда клиент платит по кнопке «Оплата». Если в выгрузке колбеки двух платёжек или сумма сравнивалась «по словам», колбек оплаты переносится обычным «Внешним событием», и отчёт объясняет почему. - Вход у блока-состояния и у «не состояния» — старт события у блока-состояния — обычный: клиент переходит в этот блок, прежняя воронка останавливается. У блока «не состояние» — с «Не состояние»: сообщение приходит поверх.
Переходы
- Без условия и таймера — «Ждать ответа» → «любой ответ»: воронка ждёт ответа клиента и только потом идёт дальше. «Сохранить ответ в переменную» переносится вместе с ней.
- Условие на ответ — «Ждать ответа» с «полное совпадение», «по ключевым словам» или «регулярка» — как было в Salebot.
- Число в ответе — условие вида
question > -101 and question < 101становится регуляркой ответа: подходят целые числа из этого промежутка, остальные ответы уходят в запасную ветку. - Приоритет — переносится в «Приоритет»: больший проверяется раньше, по умолчанию 10. Запасная ветка с приоритетом 9 или 5 срабатывает, если ответ не подошёл к основной. «Любой ответ» у нас проверяется после веток по словам.
- Запасная ветка — стрелка без условия, у которой приоритет не выше, чем у веток с условием, переносится как «Иначе»: на схеме видно, куда идут все остальные, и порядок больше не зависит от приоритета. Если же стрелка без условия стоит выше условной, в Salebot условная не срабатывала никогда — переносим как было и пишем об этом в отчёт.
- Таймер — «Через время». Месяцы в Salebot переносятся по 30 дней.
- Время отправки — «на следующий день в чч:мм» — в «Отправить в конкретное время».
- Условие по переменной — переносится на стрелку.
Что доделать руками
Всё это TERVIO пишет в отчёт «Не перенесено» — с числом мест и примерами, чтобы их можно было найти поиском по листам.
- Кнопка оплаты — кнопка остаётся, но оплата Salebot не переносится. Смените тип кнопки на «Оплата» и выберите товар или цену — см. Эквайринг.
- Вход по колбеку — колбек, который сравнивался регулярным выражением, или слово колбека длиннее 100 знаков переносится без входа: соберите старт «Внешнее событие (вебхук)» с ключом, который будет присылать сервис.
- Колбек оплаты на стрелке — стрелка, по которой клиент уходил после оплаты, не переносится: оплата у нас приходит событием, а не ответом клиента. Поставьте у блока, куда она вела, старт на событие «оплата» с условием на сумму — отчёт называет его.
- Callback-кнопка — слово длиннее 64 байт, с «,» или «;» или такое же, как у соседней кнопки, — кнопка перенесена обычной. Задайте ей короткое уникальное слово.
- Кнопка-ссылка с переменной — адрес собирался из переменной — подставьте его руками.
- HTTP-запрос блока — переносите блоком «Действия» → «Вебхук»: адрес, заголовки и тело вслепую не переносятся — в них бывают ключи доступа.
- Вложения — файлы лежат в Salebot — загрузите их в блоки «Медиа» заново.
- Списки Salebot — таблиц-списков в TERVIO нет — замените их переменными.
- Строки калькулятора и условия — то, что «Вычислить» и разбор условий не понимают, не переносится; строки, которые пишут в переменную, занятую TERVIO (например «тег»), тоже. Стрелка с таким условием не переносится вовсе, чтобы не сработать всегда, — блок за ней останется без входа, это видно на холсте.
- Текст ответа (question) — в TERVIO нет переменной с последним сообщением клиента: условия на текст ответа, кроме сравнения с числами, не переносятся, а в текстах и вычислениях сохраните ответ в переменную на стрелке и подставьте её.
- Регулярка ответа — регулярка длиннее 200 знаков или с вложенными повторами вроде
(a+)+не переносится — перепишите её. - Дата и время из переменной — дата из переменной не переносится, время остаётся — дату задайте сами. Стрелка со временем из переменной не переносится.
- Таймер у стрелки с ответом — стрелка у нас или ждёт ответа, или идёт по времени — перенесено ожидание ответа без таймера.
- Таймер, который переживает ответ — в Salebot такой таймер срабатывал, даже если клиент уже ответил и ушёл дальше. У нас таймер живёт, только пока клиент стоит в этом блоке.
- Переход «сразу дальше» рядом с другими — у блока были ожидание ответа и переход с нулевым таймером — перенесены только ветки по ответу. Был переход с нулевым таймером и таймер — перенесён переход без задержки.
- Вход по регулярному выражению — у старта по кодовому слову регулярок нет — перечислите слова через «;».
- Ожидание ответа после блока без сообщения — ждать ответа может только блок, который что-то отправил — соберите развилку от предыдущего сообщения.
- Вход «не состояние», за которым ждут ответа — такой вход ждать ответа не может — соберите ветку отдельной воронкой с тем же словом.
- Стрелки после блока «не состояние» — после него клиент остаётся ждать в прежнем блоке, и стрелки из самого блока не сработают — цепочку напоминаний соберите стрелками «Через время» от блока, где клиент ждёт ответа.
- «Не состояние» с вычислениями — когда в такой блок приходят из ожидания ответа, он только шлёт сообщение поверх, а вычисления не выполняются — перенесите их в блок, откуда идёт стрелка. Блок без сообщения переносится обычным.
- Вход сделан обычным стартом — на листе нужен хотя бы один обычный старт; если все входы срабатывали поверх, первый становится обычным и, пока клиент ждёт ответа в другой воронке, не сработает.
После импорта
- Бот — подключите его в разделе «Боты»: TERVIO заберёт бота у Salebot, чтобы клиент не получал два ответа. Поэтому к этому моменту воронки уже должны быть собраны и проверены.
- Подписчики — базу с сегментами и переменными загружают там же: «Импорт с другой платформы» → «Клиенты в бота».
- Проверка — листы выключены, но «Продолжить» в карточке сценария своего чата проходит и через выключенные листы — так воронку можно пройти до включения.