Как передавать пользовательские переменные при подписке на чат-бота
Интеграция SendPulse с мессенджерами позволяет передавать пользовательские переменные в аккаунт SendPulse при подписке через виджет на сайте или при переходе на бот по ссылке. Используйте эту функцию, чтобы автоматически обновлять значения для существующих переменных в разделе Аудитория чат-бота.
Вы также можете передавать UTM-метки при подписке. Значения меток для каждого подписчика сохраняются в соответствующей переменной в Аудитории чат-бота.
Передача данных при подписке на чат-бота поддерживается в нескольких каналах, но условия могут отличаться:
- Онлайн-чат, Facebook, Telegram, Instagram — поддерживают передачу переменных как через виджет на сайте, так и через ссылку.
- WhatsApp поддерживает передачу переменных только при подписке по ссылке и при условии, что пользователь вручную отправил заданный вами текст. Один только переход не срабатывает.
- Viber поддерживает передачу переменных, если пользователь перешёл к боту через приложение.
При подписке через онлайн-чат или виджет на сайте
JS-скрипт онлайн-чата и виджета подписки может автоматически определять и сохранять UTM-метки.
Если пользователь переходит на ваш сайт по ссылке с UTM-метками, где параметры разделены с помощью ? и &, — эти метки автоматически сохранятся в профиле пользователя после подписки.
Если вы хотите передать другие метки или дополнительные переменные, вы можете использовать один из двух способов ниже.
Обратите внимание, что для передачи переменных их необходимо предварительно создать в аудитории чат-бота. Отправка данных в несуществующие поля будет игнорироваться.
Названия переменных — например, {{name}} и {{city}} — должны точно соответствовать тем, что используются в коде, включая регистр. Переменные {{phone}} и {{email}} являются системными, поэтому их создавать отдельно не нужно.
Способ 1. Через скрипт window.oSpP
После подключения онлайн-чата или виджета подписки, можно использовать скрипт для автоматической передачи переменных при подписке. Пример кода:
<script type="text/javascript">
window.oSpP = {
phone: '+123123123',
email: 'username@example.com',
name: "Olga",
city: "Odessa"
}
</script>
Например, если на сайт поступают данные посетителя, и он подписывается на чат-бота, подключённого к сайту, эти данные (имя, город, email, телефон) автоматически передаются в соответствующие переменные чат-бота при подписке.
Если пользователи подписались на бот через виджет или онлайн-чат, а затем для этих пользователей появились переменные {{phone}}, {{email}}, {{city}} и {{name}} — их данные не будут переданы в аккаунт SendPulse.
Чтобы передать имя подписчика в онлайн-чат SendPulse, чтобы оно автоматически отображалось в диалогах, укажите параметр window.oSpP.full_name, например, так:
<script> window.oSpP = { full_name: "Olga Petrenko", city: "Odesa" } </script>
Контакт с заданным именем сразу будет отображаться в разделах Диалоги и Аудитория.
Если вы подключали дополнительный сбор переменных для подписчиков web push-уведомлений с помощью window.oSpP, виджет для сбора дополнительных переменных чат-бота может не сработать из-за конфликта. Используйте второй способ.
Способ 2. Через скрытые поля ввода
Метод актуален для виджета подписки.
Добавьте на сайт дополнительные поля input с классом sp_push_custom_data:
<input type="hidden" name="email" class="sp_push_custom_data" value="username@example.com">
<input type="hidden" name="phone" class="sp_push_custom_data" value="+123123123">
<input type="hidden" name="name" class="sp_push_custom_data" value="Olga">
<input type="hidden" name="city" class="sp_push_custom_data" value="Odessa">
Оба способа универсальны для сайтов на любых CMS.
При подписке по ссылке
Вы также можете передавать переменные при подписке на бот, добавляя в ссылку переменные через разделители, указанные ниже. Все параметры в примерах необязательные.
Таким способом можно передавать utm-метки, email, телефон или другие переменные. При переходе по ссылке и начале диалога значения переменных записываются для конкретного подписчика в аудитории чат-бота.
Вы можете скопировать пример ссылки прямо в сервисе. Подробнее читайте: Запуск бота по ссылке или QR-коду.
Например, для ссылки Telegram-чат-бота необходимо добавить промежуточный домен tg.pulse.is, так как Telegram имеет ограничения по формату и размеру передаваемых данных. Ссылка будет выглядеть так:
https://tg.pulse.is/{bot_name}?start={flow_id}&var1_name=value1&var2_name=value2&utm_campaign=summer_sale&utm_medium=banner
Где bot_name — имя бота, flow_id — ID цепочки, var_name — имя переменной в аудитории бота, value — значение переменной, utm_campaign= и utm_medium= — параметры меток.
Для ссылки WhatsApp-чат-бота необходимо добавить промежуточный домен wa.pulse.is, и запуск цепочки сработает только для контактов, которые отправят заранее заданный текст (по умолчанию это "Start" или другой, указанный вами). Ссылка будет выглядеть так:
https://wa.pulse.is/{bot_owner_phone_number}?start={chain_id}&text=Start&var1_name=value1&var2_name=value2&utm_campaign=summer_sale&utm_medium=banner
Параметр text= обязателен — без него ссылка не сработает.
Ссылка для Facebook-чат-бота с передачей дополнительных переменных будет выглядеть так:
https://m.me/{page_id}?ref={flow_id}__var1_name=value1__var2_name=value2__utm_campaign=summer_sale__utm_medium=banner
Ссылка для Instagram-чат-бота с передачей переменных будет выглядеть так:
https://ig.me/{bot_name}?ref={flow_id}__var1_name=value1__var2_name=value2__utm_campaign=summer_sale__utm_medium=banner
Для Viber-чат-бота ссылка сработает только на устройстве с установленным приложением и будет такой:
viber://pa?chatURI={bot_name}&context={flow_id}|var1_name=value1|var2_name=value2|utm_source=summer_sale|utm_medium=banner
При отправке формы на сайте
Перенаправьте пользователя в бота после заполнения формы на сайте, созданной с помощью конструктора SendPulse, и отправьте данные в аудиторию чат-бота.
Перейдите в чат-бот, нажмите на три точки и скопируйте ссылку на цепочку — именно её нужно указать как URL-адрес в настройках формы.
Переменные в аудитории вашего чат-бота должны совпадать с названиями полей формы.
Читайте также: Настройка подтверждения: Переход на страницу.
Обновлено: 08.08.2025
или