Схемный трафик: взаимодействие Keitaro и PuzzleBot для создания автоворонки


Материал из Блога Адама 

Предыстория

Еще год-полтора назад появилось такое понятие как "Схемный трафик" и изначально им пользовались исключительно гемблисты. Позже этим же способом начали лить бинарки, крипту, нутру и все прочее. Сейчас схемный находится в топе, все больше аффов адаптируют свои классические воронки под работу с мессенджерами в связке с чат-операторами. 

Мне было интересно взяться за подобное и посмотреть на устройство этого изобретения изнутри, ну и конечно же придумать пару технических штук для упрощения работы операторов и команды в целом. 

О чем эта статья

Сегодня речь пойдет об автоворонке и ее реализации с помощью сервиса PuzzleBot. Кто не в курсе, Puzzle - это no-code конструктор чат ботов Telegram, обладающий практически неограниченными возможностями.

Почему я выбрал именно PuzzleBot? 

  • Стабильность
  • Наличие входящего и исходящего API 
  • Наличие сценариев / постинга
  • Возможность интеграции WebApp в бота

Сразу скажу, в данной статье я не буду разбирать конкретные примеры воронок (текст, визуал), а лишь покажу возможности, которые открываются при использовании связки партнерки + трекера + пазла. Для кого-то информация изложенная внизу может показаться банальной, для кого-то это будет откровением. 

Чтобы было проще понять о чем идет речь, я сделал пример такого бота специально для вас: ➡️ https://t.me/scheme_traffic_bot ⬅️. Потыкайтесь и вернитесь в статью. 

Немного о минусах и плюсах

Для начала стоит перечислить минусы использования ботов в схемном трафике. Глупо было бы ожидать, что все будет идеально, ведь если крупные команды прямо сейчас заливают на каналы, значит не все так гладко, ну либо они слишком ленивы и не хотят заниматься продумыванием структуры ботов. 

Главный и самый существенный минус бота - это неумение аудитории пользоваться кнопками и прочим функицоналом ТГ. Среди всего прочего, этот минус выделяется и бьет по шарам. Тем не менее, этот "острый угол" можно сгладить с помощью сценариев / событий / контента внутри бота.

Плюсы бота: 

  • Полный трекинг всего что можно оттрекать
  • Сигментирование аудитории на всех этапах
  • Сохранение контактов юзера, если они регнулись через ссылку на бота из канала (вместо прямых ссылок, размещаем ссылки на бота в канале и юзеры делают регу через него)
  • Скрытость воронки (контента) от посторонних глаз
  • Процент отписки (блокировки) от бота ~25% от общего числа подписавшихся за счет персонализированного контента. Тогда как в канале этот процент может достигать 55-60%.
  • Автоматическая работа с юзером на основе S2S постбэков из Keitaro \ Binom
  • Возможность встраивания WebApp (сайт) прямо внутрь бота
  • Возможность использования Conversion API Facebook для трекинга различных событий

Минусы бота: 

  • Отсутствие соц. подтверждения в виде количества подписчиков на канале \ количестве просмотров и лайков на постах
  • Безграмотность аудитории и не понимание как работать с ботом (зависит от гео и от вашего поясняющего этот момент контента)
  • Не у всех партнерок есть настройка постбэков в трекер на каждое из событий

Как сделать подобное

Если вы протыкали все кнопки в тестовом боте и дошли до этой главы, то вы готовы немного напрячь мозги и сделать красиво. Ниже будет приведена пошаговая инструкция для реализации. Сразу скажу, для того чтобы пройтись по руководству и нигде не ошибиться, нужно ознакомиться хотя бы с базой функционала вашего трекера и сервиса PuzzleBot. Без этого фундамента вряд ли у вас получится собрать "пазл" воедино и получить что-то рабочее на выходе. 

Бот, который был приведен в примере выше, собран в связке ПП + Keitaro + PuzzleBot. Соответственно, все, что приведено ниже, будет сделано на примере Keitaro. Если у вас Binom - курите их доку.

Из тех знаний, которые пригодятся в работе: 

Я не буду рассказывать, как работает тот или иной сервис / как подцепить бота в Puzzle или как добавить в бота ресурс (канал или чат). Читайте их доку / смотрите поясняющие видосы на их Youtube-канале. Там все / обо всем подробно расписано. 

Настроим PuzzleBot

1. После подключения бота и нужных ресурсов в него зайдем в раздел Модерация и создадим следующие категории: 

  • Зарегистрирован
  • Сделал Sale
  • Сделал Rebill 

В моем примере они указаны так. Вы, конечно же, можете назвать их как вам заблагорассудится. Главное, чтобы эти категории отображали смысл полученного постбэка от трекера (lead/sale/rebill).

автоворонка PuzzleBot

Категории будут присваиваться юзерам автоматически (если это настроено в конструкторе) после прохождения определенных команд в боте (рега, деп, редеп). Далее мы сможем смотреть стату, "разбивать" их по статусам и пр. Создавать категории можно не только под постбэки, но и под любые другие действия в боте - тут все зависит от ваших целей. 

2. Зайдем в Конструктор Puzzle и создадим 3 базовые команды, которые будут вызываться по API PuzzleBot с помощью настроеного S2S постбэка в кампании Keitaro. У меня эти действия называются registred, deposited, redeposited. Вы же можете назвать их как вам угодно, главное чтобы было понимание, что это названия команд, в дальнейшем необходимо будет указывать при обращении к апи паззла. 

автоворонка PuzzleBot

Так выглядит базовая конструкция бота для работы с постбэками из Keitaro TDS. От этих 3х действий можно строить дальнейшие логические цепочки и планировать воронку.

Рассмотрим подробнее, как выглядят эти команды внутри:

автоворонка PuzzleBot

Остальные действия deposited, rediposited настроены аналогичным образом, как на скриншоте выше, но категории там присваиваются юзеру уже совсем другие, которые отвечают отработке постбэков на sale / rebill.

В каждой команде я поставил доп. действие при срабатывании команды. Первое, что мы делаем - меняем категорию для юзера, у которого сработала команда registred. По желанию делаем уведомление в спец. группу о переходе юзера из одной категории в другую. Это уже по желанию, но мне так удобнее, потому что я и моя команда всегда видим кто/что/когда сделал и можем по одному клику найти этот диалог в тг.

3. Создадим токен от нашего Puzzle бота для доступа к внешнему API и сохраним его к себе в блокнотик. Он нам пригодится, когда будем настраивать S2S внутри кампании KT.

автоворонка PuzzleBot

Созданные токены всегда доступны в настройках бота, в разделе "Интеграции". 

На этом настройка базы для автобота завершена. После настройки других компонентов (пп, трекера) этого большого пазла можно будет вернуться и "обвесить" этот каркас контентом и пр. лабудой. 

Настройка партнерской сети

Практически в каждом трекере уже имеются готовые шаблоны для прокидывания постбэков из ПП. Все, что вам надо сделать, зайти в раздел Партнерские сети (/admin/#!/affiliate_networks/) в трекере, нажать на кнопку "Создать" и выбрать готовый шаблон постбэка. Далее вам выпадет готовая ссылка для вставки в настройки партнерской сети. Мы ее копируем, идем в настройки нашей ПП и вставляем в настройки постбэков.

автоворонка PuzzleBot

Но что делать, если среди шаблонов не оказалось нужной ПП? Не отчаиваться и запастись терпением. Для начала рекомендую прочесть FAQ от КТ по созданию Партнерской сети в трекере

Для успешного создания своей ПП в Keitaro необходимо знать 1 фундаментальную вещь: все данные синхронизируются с помощью subid (в биноме это clickid) трекера. Сабайди - это уникальный идентификатор клика, который у каждого юзера при каждом заходе на ссылку кампании разный. Я специально выделил жирным, что это именно ссылка кампании, а не прямая на лендинг, т.к. subid попросту не присваивается юзеру, если вы заливаете напрямую ссылку на ленд! Этот subid мы обязаны передать в партнерку, чтобы в дальнейшем, после целевого действия юзера, партнерка смогла забрать этот subid из своей БД и отправить постбэк в трекер. Звучит сложно, но на самом деле все гораздо проще, чем кажется. 

Mindmap с объяснением взаимодействия ПП и трекара и роли Subid в этом взаимодействии:

автоворонка PuzzleBot

Еще одна важная деталь состоит в том, что для каждого события свой статус. В кейтаро есть 3 основных статуса: lead (конверсия), sale (продажа), rebill (на самом деле sale + tid, но в БД КТ это пишется как rebill - допродажа). 

Хвост постбэка на lead:

postback/?subid={subid}&status=lead&payout={payout}

Хвост постбэка на sale:

postback/?subid={subid}&status=sale&payout={payout}

Хвост постбэка на rebill:

postback/?subid={subid}&status=sale&payout={payout}&tid={tid}

По поводу статуса lead все понятно. Но есть некоторая путаница по поводу sale & rebill. Смотрите, если мы отправляем постбэк только с 3 метками subid / status / payout - то все это считается продажей, но если к этому хвосту добавить tid (transaction id) - то этот постбэк будет считаться допродажей. По этой логике можно быстро собирать свои постбэки для любого из событий, для любой из ПП, где есть возможность настраивать постбэки.

Настроим источник в Keitaro

Зайдем в "Источники" (/admin/#!/traffic_sources/) в трекере и выберем источник, с которого будем заливать схемный трафик, в моем случае это Facebook. Пропишем метку, в которую будет записываться chat_id (уникальный идентификатор пользователя Telegram). По этому параметру в дальнейшем будет происходить синхронизация с ботом юзера. Если не передать chat_id, мы не сможем сделать S2S запрос на API PuzzleBot с названием команды для ее запуска у юзера. 

Поэтому настраиваем либо как на скрине, либо в таком порядке: 

Моя метка (Название метки для отображения в стате) | my_metka | {my_metka} (в виде макроса). 

Далее необходимо прожать галку в левом нижнем углу "Обновить в кампаниях" и сохранить. Опять же, если вы льете не только схемный, но и другие вертикали, необходимо вручную удалить источник из кампании со схемным и снова его туда проставить, а затем сохранить, чтобы все измененные метки из источника подятнулись и проставились в раздел параметров внутри кампании. 

автоворонка PuzzleBot

Так выглядит у меня настройка кампании. Остальные метки замазаны. Вы можете проставить свои метки в ближайшее свободное поле

автоворонка PuzzleBot

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

Настройка S2S постбэков внутри кампании Keitaro

Вот тут-то нам и пригодится созданный токен от PuzzleBot и их дока. Из их руководства следует: Для того чтобы вызвать команду у конкретного пользователя, мы обязаны сделать запрос с указанием его chat_id Telegram и названием запускаемой команды: 

method: sendCommand

params:

 command_name - string, name of command ot condition

 tg_chat_id - number, Telegram id of resource or user

success result: code = 0, data = "ok"

URL для запуска команды registred в моем случае будет выглядеть вот так:

https://api.puzzlebot.top/?token=LF4cRL0ZXmV2S6SXUCMYJmkVHIZ&method=sendCommand&command_name=registred&tg_chat_id={sub_id_9}

Я скопировал заранее созданный api-ключ из сервиса PuzzleBot и подставил его в метку token=. Затем в метку command_name= прописал название команды так, как она называется у меня в конструкторе внутри PuzzleBot. Ну и конечно же вставил метку от трекера, в которой у меня хранится chat_id человека, который совершил целевое действие на моей ссылке кампании. 

Небольшая путаница возникает у людей, когда они сталкиваются с настройкой S2S в КТ. Почему я поставил макрос с названием {sub_id_9} вместо {chat_id}? - Все просто: Для БД трекера "chat_id" - это лишь пользовательское название метки sub_id_№ с порядковым номером 9. Если вы поставите в S2S ваше пользовательское название (у меня это chat_id), то трекер попросту не найдет такой метки, не сможет испольнить макрос и получить значение из БД. 

Найти свой порядковый номер sub_id_ очень легко. Достаточно зайти в кампанию и посчитать сверху вниз по нарастающей, как указано это на скриншоте снизу:

автоворонка PuzzleBot

Исходя из этой логики, нужное мне значение лежит в метке sub_id_9

1. С собранной ссылкой для S2S идем во вкладку S2S Postback внутри настраиваемой кампании, создаем перый наш постбэк для события lead и вписываем собранную ссылку в поле URL:

2. Далее я создаю еще один постбэк с помощью кнопки "Добавить", заменяю в URL в метке command_name= значение на следующую мою пользовательскую команду из конструктора PuzzleBot - у меня это deposited: 

автоворонка PuzzleBot

3. Те же действия проделываем с 3им постбэком: создаем, заменяем на соответствующу/ команду (у меня это redeposited) и снимаем галки, как показано на скрине:

автоворонка PuzzleBot

Проставляем ссылки в бот

Копируем ссылку из кампании, убираем все ненужные метки из ссылки, оставляем только те, что действительно нужны (chat_id). Можете, конечно, и не убирать, но те же макросы от Facebook тут работать не будут (вообще лучше создать отдельный источник в КТ и проставить кастом параметры там).

В метку, где будет храниться наш chat_id, пишем внутренний макрос PuzzleBot в виде chat_id={{USER_ID_TEXT}}: 

автоворонка PuzzleBot

Поздравляю, с этого момента, любое целевое действие, совершенное пользователем на нашей трекинговой ссылке КТ, будет передаваться по API в Puzzle и для пользователя будет запускаться команда, указанная в command_name=. 

Подитог

С виду все выглядит невероятно сложно, но если разобраться в этом всего лишь один раз - можно будет творить все, что придет в голову. Возможности современных сервисов это позволяют. 

На описанный выше "каркас" можно навешать любой контент. В общем можно все это оформить интуитивно для пользователя и вывести для себя идеальную формулу автобота. Ну а если аудитория безграмотная, можно наполнить бот визуалом, объясняющим как с ним взаимодействовать (прямо показывать, что можно тыкать на кнопки в видео). 

В таком сетапе Латам у нас шел замечательно, а вот Индия в дикий минус, потому что индусы не очень грамотные и очень ленивые, тупо не хотят разбираться с тем как это работает. В общем все зависит от гео и от вашего подхода / инструкций в визуале. 

О чем будет следующая статья

В следующей теме я разберу возможности пролива на канал и регистрации юзеров через бот, а также создание персональных ботов для каждого обработчика и снятие 50% существующих головняков у команд. 

С помощью регистрации юзеров через бота, мне удалось выстроить систему, при которой обработчики могут записывать юзеров пришедших им в личку просто переслав сообщение этого юзера в свой персональный бот (красное выделение). 

Так же за счет интеграции персональных ботов с трекером у обработчика появляется возможность смотреть свою стату с подсчетом их заработка даже не заходя в трекер (синее выделение):



Комментарии