Заявки с сайта в Telegram с помощью Google Tag Manager (метод doPost)

27.03.2024

Альтернативное решение получения заявок с сайта в Telegram с помощью Google Tag Manager методом doPost.

Все вы наверное знаете уже эту реализацию от Якова, статья подробно все описывает и есть видео. Реализация Якова использует тег Пользовательское изображение и как по мне не всегда удобно прописывать переменные, не всегда приходят данные в телегу. В моей реализации все делаем почти тоже самое, что в статье от Якова, только у меня код вставляем в тег Пользовательский HTML:

<script type="text/javascript">

if (document.location.href.indexOf('gtm-msr.appspot.com/render2') === -1) {

var webhookUrl = "веб хук который вы получите в google sheets";

var params = {

"name": 'test', //(jsonData.name)

"email": 'test2', //(jsonData.email)

"phone": 'test3', //(jsonData.phone)

"date": 'test4', //(jsonData.date)

};

fetch(webhookUrl, {

method: 'POST',

headers: {

"Content-Type": "application/json"

},

mode: 'no-cors',

body: JSON.stringify(params)

})

.then(function(response) {

console.log("Запрос на ТГ выполнен успешно");

})

.catch(function(error) {

console.error("Ошибка выполнения запроса:", error);

});

}

</script>

Думаю, вам не стоит объяснять что делает этот код) просто вставьте.

А в Google Sheets (метод doPost) где нужно вставить скрипт и сформировать нужный вам response выглядит так:

function sendToTelegram(text) {

  var botId = 'token bot';

  var chatId = 'айди чата или канала или чего хотите';

  var payload = {

    method: 'post',

    contentType: 'application/json',

    headers: {

      'Access-Control-Allow-Origin': '*'

    },

    payload: JSON.stringify({

      chat_id: chatId,

      parse_mode: 'HTML',

      text: text,

    }),

  };

  UrlFetchApp.fetch('https://api.telegram.org/bot' + botId + '/sendMessage', payload);

}

function doPost(e) {

  var jsonString = e.postData.getDataAsString();

  var jsonData = JSON.parse(jsonString);


  var response ='🎄 Новый профит у (НИК)\n' +

  '🎁 Покупка ' + jsonData.name + '\n' +

  '❄️ Процент ' + jsonData.email + '\n' +

  '💰 Выплата ' + jsonData.phone + '\n' +

  '⭐️ Домен ' + jsonData.date;


  sendToTelegram(response);

}

В коде пример текста, вы можете делать какой вам нужен после var response = (ваш текст) После этого создаем веб-приложение, по факту веб хук и вставляем его в тег.

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

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

Категории:
Веб-аналитика
Виктор Кончишин
Виктор Кончишин

Веб-Аналитик - Эксперт по GTM (Web и Server Side), автор курса по sGTM. Делал аналитику для 200+ e-commerce и 500+ landing page. Спец: GA4, Я.Метрика, Pixel (FB/IG, VK, TikTok)

Добавить комментарий