Интеграция Сейлбот с Геткурс
Настройки на стороне GetCourse
Проверка работоспособности интеграции при создании и оплате заказа
Создание заказа через бот и калькулятор
Настройки на стороне GetCourse
1. Создаем дополнительное поле пользователя.
Для этого переходим во вкладку Ученики - Пользователи - Дополнительные поля.
Создать - Строка, ввести название. В примерах sb_id. А я использую другое - sid
Интеграция GetCourse и Salebot основана как раз на этом дополнительном поле и любые действия, которые нам нужны (выдача ссылки на оплату, создание заказа) будут передаваться из GetCourse в Salebot.
В это поле запишется уникальный идентификатор salebot. Благодаря этому salebot будет сопоставлять пользователя и этот идентификатор, который будем отправлять и будет находить нужного пользователя.
2. Далее нам нужно протестировать данное поле.
Раздел Сайт - Страницы - Добавить страницу - Пустая страница.
Название страницы “Проверка интеграции”.
На странице создадим простейшую форму, и проверим работу дополнительного поля и самого скрипта. Переходим Все блоки - Форма - Обычная форма.
Нажимаем на +, Добавляем поле пользователя - выбираем созданное “sb_id” (в моем случае поле зовется sid). Далее копируем название и вставляем в “css класс элемента”, чтобы прописывался идентификатор. Нажимаем Сохранить и закрыть.
Далее нужен javascript-код или коротко JS.
Есть разные пути. Можно добавлять JS прямо в самой форме или странице.
Для этого нажимаем на + , Вставка - javascript-код - вставляем код:
$(document).ready(function(){ var regex = new RegExp('[\\?&]sid=([^&#]+)'); var match = regex.exec(window.location.href); if (match && match.length) { $('.sb_id input').val(decodeURIComponent(match[1])); } });
НЕ включаем “заменять переменные пользователя” в настройках блока.
Нажимаем Сохранить.
Публикуем страницу, нажав на “Опубликовать”.
Эта интеграция из ссылки будет записывать уникальный идентификатор пользователя в Salebot прямо в это дополнительное поле.
Чтобы скрыть это поле, ему нужно либо присвоить класс hide, либо выбрать "Не отображать" в настройках поля в форме.
Для записи utm меток в доп.поля я больше люблю использовать другой скрипт.
Он описан тут: Скрипты сбора меток и других данных в доп.поля
3. Далее переходим в проект в Salebot - в блок первостепенной проверкой условия.
Создаем блок - первостепенная проверка условия - Условие укажем “тест”.
В тексте прописываем: скопированную ссылку страницы, на которой у нас форма в Геткурс и пишем ?sid=#{client_id}
Нажимаем Сохранить и закрыть и идем проверять как все запишется. Вставляем ссылку с доп.параметрами в бота.
И отправляем это сообщение себе. Получаем ссылку с вшитим в нее нашим id пользователя.
В форме, которую тестируем, делаем доп.поле с sb_id видимым, чтобы проверить, как id встанет из ссылки в это доп.поле.
Переходим по этой ссылке и проверяем, чтобы id записался в дополнительное поле sb_id
Возвращаемся, в форме скрываем дополнительное поле - нажимаем на его настройки и в css класс прописываем тег «hide» или ставим галочку в "скрывать поле". Мы его скрываем, но само значение у нас прописывается.
Первая часть интеграции настроена. Ссылку с этим параметром даем всем везде и всегда, чтобы ID пользователя Salebot всегда записывалось в доп. поле.
Теперь нам нужно соединить Salebot и GetCourse.
Настройки на стороне Salebot
1. Перейти в настройки проекта.
Настройки проекта- изменить переменные.
2. Добавить в константы проекта следующие переменные:
getcourse_account_name — имя аккаунта
getcourse_secret — ключ API аккаунта
Данные для этих переменных можно взять, если у вас есть права настройки аккаунта в ГК.
Достаточно перейти в раздел Настройки аккаунта и заменить в строке браузера "show" на "api" , чтобы была ссылка такого вида как на скрине:
3. Ниже, на странице с настройками, генерируем ключ API у самого Salebot, и сохраняем его себе.
Проверка работоспособности интеграции при создании и оплате заказа:
1. Создать форму с дополнительным полем и скриптом.
2. Добавить предложение и оформить заказ.
3. Собрать процесс по заказам:
Задача - процессы - создать процесс.
Рекомендую под каждый продукт создавать отдельный процесс.
Но сейчас на примере покажу универсальный процесс для всех новых заказов:
в настройках Периодическая проверка, проверка условия: принадлежит пользователю, значение поле — sb_id задано + заказ со статусом "НОВЫЙ" и нажимаем “Сохранить”.
Переходим к процессу: т.к. процесс с периодической проверкой, он начинает работать не сразу, обычно через минут 5-10 мин. Ставим блок- условие для проверки статуса “новый”.
Если заказ не новый, идем в блок “завершение процесса”.
Если “новый” - операция - вызвать url (тем самым отправляем вебхук).
метод POST
ссылка для вебхука —
https://chatter.salebot.pro/getcourse_webhook/<апи_ключ_сейлбота>?client_id={object.user.sb_id}&callback_text=<условие_запуска_бота>&payment_link={object.payment_link}
<апи_ключ_сейлбота> - вставляем из настроек проекта в salebot
<условие_запуска_бота> - текст, который указан в условиях запуска без getcourse
4. Настраиваем блок в Salebot, который будет запускаться по процессу. В условиях прописываем текст из переменной callback_text нашего вебхука, в текст записываем переменные, которые хотим выводить, к примеру #{payment_link}
В итоге у нас должна отправиться ссылка на заказ и записаться id в поле того пользователя, который заполнил форму и создал заказ.
Это простая интеграция между Getcourse и Salebot.
Создание заказа через бот и калькулятор
1. Для создания заказа обязательно запрашивать почту.
2. В настройках предложения, на которое мы хотим настроить интеграцию, записываем уникальный код предложения.
3. В блоке, в котором мы хотим создавать заказ, прописываем в калькуляторе следующее
getcourse_add_deal('#{email}', '', 'код_предложения', 'стоимость', '{"addfields":{"sb_id":"#{client_id}"}}')
'код_предложения' - test
стоимость - 1500
Благодаря тому, что мы сразу записываем SB_ID в доп. поле, мы сможем потом запустить процесс по пользователю и, к примеру, напоминать ему об оплате, и т.д.
4. После создания заказа в переменную в Salebot getcourse_payment_link запишется ссылка на заказ и мы сможем ее выдавать в сообщении.