Уважаемые пользователи Голос!
Сайт доступен в режиме «чтение» до сентября 2020 года. Операции с токенами Golos, Cyber можно проводить, используя альтернативные клиенты или через эксплорер Cyberway. Подробности здесь: https://golos.io/@goloscore/operacii-s-tokenami-golos-cyber-1594822432061
С уважением, команда “Голос”
GOLOS
RU
EN
UA
armanibadboy
6 лет назад

Telegram bot + бесплатный(free) webhook

Добрый день.

Сегодня в этой статье я вам покажу как создать своего телеграмм бота + поднять свой webhook(и) бесплатно на мощностях google.
Для начало создайте новую таблицу в google
Примерно это будет выглядет так.

для начало нужно переименовать лист в config
и создать новый лист названием telegramm
и переименовать собственно саму таблицу как вам угодна я например назвал его TELEBOTGOLOS
вот примерно как это будет выглядет

теперь в листе config сделаем пару манипуляции
В ячейке

  • A1 пишем следующее API TOKEN
  • A2 пишем следующее Ваша ссылка от Гугл
  • A3 пишем следующее Ваша ссылка для активаций Вэбхуки
  • B3 поставим след формулу =CONCATENATE("https://api.telegram.org/bot";B1;"/setWebHook?url=";B2)

и необходимо сделать перенос текста по словам во вкладке формат
и у вас получиться след

Заполнять данные будем в конце
теперь необходим перейти в инструменты >> редактор скриптов

после чего у вас в браузере появиться новая вкладка и она будет выглядить так

все очищаете и вставляете след код
///////////////////
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet1 = ss.getSheetByName("config");
var rite = ss.getSheetByName("telegramm")

var token = sheet1.getRange("B1").getValue();
var telegramUrl = "https://api.telegram.org/bot" + token;

function getMe() {
var url = telegramUrl + "/getMe";
var response = UrlFetchApp.fetch(url);
Logger.log(response.getContentText());
}
///вэбхуки
function setWebhook() {
var url = telegramUrl + "/setWebhook?url=" + webAppUrl;
var response = UrlFetchApp.fetch(url);
Logger.log(response.getContentText());
}
//отправить ответное сообшение
function sendText(id,text) {
var url = telegramUrl + "/sendMessage?chat_id=" + id + "&text=" + text;
var response = UrlFetchApp.fetch(url);
Logger.log(response.getContentText());
}
//проверка вэбхуки
function doGet(e) {
return HtmlService.createHtmlOutput("Вэбхуки работает специально для golos io");
}
//входяшие сообщения
function doPost(e) {
var data = JSON.parse(e.postData.contents);
var text = data.message.text;
var id = data.message.chat.id;
var name = data.message.chat.first_name + " " + data.message.chat.last_name;
if (text!="")
{
text="Ваш ID telegramma = "+id+ " и вы отправили след текст = "+text;
sendText(id,text)
}
rite.appendRow([new Date(),id,name,text,answer]);
if(/^@/.test(text)) {
var sheetName = text.slice(1).split(" ")[0];
var comment = text.split(" ").slice(1).join(" ");
rite.appendRow([new Date(),id,name,comment,answer]);
}
}
////////////////////////
сохраняете и даете проекту любое имя
вот как все будет выклядить

теперь
делаете следующее
переходите по вкладке публикация >> развернуть как вэб приложение
вот как это будет выклядет

после того как вы нажмете на развернуть как вэб приложение
перед вами появиться след окошко

в этом окне вы изменяете только одно значение
а именно Кто имеет доступ к приложению:
вы выбираете все, включая анонимных пользователей
и нажимаете кнопку** развернуть **
после чего он потребует у вас авторизации

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

Выбирате свою учетную запись
после чего вам покажет окно предупреждения о том что Приложение не проверено

Это нормально
нажимаете кнопку Дополнительные настройки

нажимаете на кнопку снизу
Перейти на страницу "telebot" (небезопасно) у вас будет в названии ваше название приложения
после чего появиться окно разрешении

Нажимаете на кнопку разрешить
и у вас появиться след окошко

здесь вам необходимо скопировать ссылку
Текущий URL веб-приложения:
и вставит его в таблицу в листе config
в ячейку B2
вот как это будет выклядить

Далее нам необходим токен api
для этого создадим бота в телеграмме
для этого перейдем в телеграмме на @BotFather
и нажмем /start

нажмем на команду создание бота /newbot
он попросить ввести имя бота
я назаву его golos io
после чего он попросить его слитное название с окончанием bot
и я назвал его @bestGolosIoBot
и в ответ если нету совпадении он дал мне api токен бота

этот токен я скопирую и вставлю в google таблицу в листе config в ячейку B1
вот как это будет выклядет

теперь копируем ссылку в ячейке B2 и перейдем по ней
вот что мы должны увидет

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

теперь перейдем к боту и что нибуд напишем
@bestGolosIoBot
как мы видим бот отправляет нам наш ид и текст которым мы ему написали

и все это бесплатно
можно пощаманить с командами и сделать бота для общения для показа товара и м д
на этом все всем удачи

146
0.072 GOLOS
На Golos с July 2018
Комментарии (3)
Сортировать по:
Сначала старые