Альтернативное решение получения заявок с сайта в 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: будет ваш айдишник.