Запись в группу(экскурсия, автобус, групповое занятие)
Данная статья опишет процесс создания бота от регистрации систематически повторяющееся событие с большим количеством участников.(экскурсия, тренинг, вебинар)
Инструкция по работе с функцией записи на экскурсию (событие)
Пример схемы: 9110(мы можем ее вам скопировать в проект)
Пример используемой таблицы: https://docs.google.com/spreadsheets/d/1w3bUY6vry4dMNJYodTZDtKHkaQ84adUpACmhfg0M6GY/edit#gid=1305033855
Открываем вашу таблицу, справа вверху выбираем Настройки доступа и выставляем права доступа для редактирования по ссылке:
Копируем идентификатор:
Переходим на salebot в настройки проекта и в переменные проекта добавляем переменную sheet_id:
Примерная схема может выглядеть так

Работает следующим образом в первой части до блоков "Успешная запись" и "Уже существует", вы собираете необходимую информацию, дату поездки, направление, имя и телефон. Затем в блоке #{order} происходит вызов функции со следующими параметрами:
{
"id": "#{sheet_id}",
"data_reisa": "#{data_reisa}",
"name": "#{client_name}",
"phone":"#{client_phone}",
"group": "#{group}",
"mesta": "#{mesta}
}
При этом функция обращается к таблице и если есть лист с введенной датой, то записывает данные клиента в таблицу. Если листа нет, то функция создает лист с нужной датой и записывает туда данные клиента.
Далее подробнее по схеме:
Первые два блока предназначены для входа в тестовую схему из них идет переход с задержкой на блок ввода даты
Затем в стрелке сохраняем введенную дату в переменную data_reisa:
Далее идет блок выбора направления или группы из него выходят стрелки с условием
для выбора направления:
Следующий блок - блок запроса количества требуемых мест

В этих блоках мы запрашиваем количество требуемых мест. Также мы сохраняем присваиваем переменной group значение a или b соответственно.
Затем в стрелке сохраняем введенное количество мест в переменную mesta:
Затем в следующем блоке запрашиваем имя клиента и в стрелке сохраняем его в переменную client_name:
В следующем блоке запрашиваем номер телефона клиента и в стрелке сохраняем его в переменную client_phone. Кроме этого в этой же стрелке мы ставим условие регулярное выражени е, чтобы пропускать только номера телефонов. Также дополнительно делаем петлю в этом блоке для возврата на ввод телефона если пользователь ввел некорректные данные.
Далее в следующем блоке мы вызываем функцию со всеми собранными параметрами:
Параметры вызова:
{
"id": "#{sheet_id}",
"data_reisa": "#{data_reisa}",
"name": "#{client_name}",
"phone":"#{client_phone}",
"group": "#{group}",
"mesta": "#{mesta}"
}
id - это id вашей гугл таблицы.
Сохраняемые значения:
status -> status;
client_row -> client_row
status - может быть success и client exist (клиент уже записан на этот день)
client_row - номер строки в таблице
Далее от этого блока делаем разветвление в зависимости от статуса выводим сообщение.
Далее если вам необходимо получить подтверждение от клиента. вы в отдельном блоке вызываете данную функцию со следующими параметрами.
Для получения подтверждения вы можете направить клиента в блок стрелкой с указанием времени (например, поставить таймер в 2 дня), отправить в этот блок рассылкой (при клике на блок выбрать Создать рассылку) или перейти по ключевому слову (в шаблоне указано слово ЗАПРОС)
В случае успешного подтверждения:
{
"id": "#{sheet_id}",
"data_reisa": "#{data_reisa}",
"name": "#{client_name}",
"phone":"#{client_phone}",
"group": "#{group}",
"mesta": "#{mesta}",
"accept": "Да"
}
в случае отказа:
{
"id": "#{sheet_id}",
"data_reisa": "#{data_reisa}",
"name": "#{client_name}",
"phone":"#{client_phone}",
"group": "#{group}",
"mesta": "#{mesta}",
"accept": "Нет"
}
При этом функция осуществляет поиск клиента в таблице по номеру телефона и проставляет в столбец подтверждения данные из переданного параметра accept.

Last modified 2yr ago