January 29, 2023

Бот обратной связи без хостинга: Google Apps Script + Telegram Bot API

Статья написана cпециально для БАЛАКЛАВА Project

Развертывание бота на площадке Google Apps Script

Начнем с простого действия, перейдем по ссылке https://sheet.new - если вы авторизованы в Google, то вы перейдете на новую созданную таблицу.

У таблицы необходимо получить ее id - он находится в адресной строке, далее пропишем его в настройках бота в параметре sheet

Сразу же переименуем лист таблицы в Users, в нем будет хранится информация о пользователях

Перейдем: Расширения > Apps Script

Откроется страница нового проекта "Проект без названия" (можете переименовать)

Заменим все что находится в файле Код.gs (открыт по умолчанию), на содержимое из нашего кода

В коде из нашего кода в настройках бота укажем id таблицы (sheet), данные бота (токен, username), ваш id (botAdmin) как владельца бота.

Сохраняем все это дело, можно использовать быстрые клавиши CTRL + S, запустим новое развертывание - это большая синяя кнопка справа вверху "Начать развертывание"

Откроется диалоговое окно, нажимаем на иконку "Шестеренка", выбираем "Веб-приложение"

Заполните поля и нажмите кнопку Начать развертывание

  1. Описание - название развертывания​
  2. Запуск от имени - выберите От моего имени​
  3. У кого есть доступ - укажите Все, иначе Телеграм не сможет направить данные​

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

Подробнее о предоставлении прав можно почитать в документации

В отображенном списке выберите аккаунт, который вы указали в поле Запуск от имени в настройках развертывания пару шагов назад

Google выдаст предупреждение, о том что указанное вами приложение не проверенное и будет остерегать вас давать разрешения, но это же ваш аккаунт и ваше приложение - предлагаю рискнуть и продолжить ... жмите Advanced - или на каком у вас там языке будет ссылка (зависит от выбранного вами языка интерфейса - у меня выдало on English)

Выдаст еще одно предупреждение - жмите Go to ......

В отображенной форме нажимайте кнопку Allow

Все, развертывание создано, из данных показанных в окне, нам нужно ссылка (URL) на веб-приложение, скопируйте ее, далее нужно будет ее добавить в настройки бота

Не забудьте сохранить изменения кода CTRL + S, после сохранения нужно запустить установку webHook, используя уже готовую функцию. Для этого выберите в списке функцию под названием setWebHook() и нажмите кнопку Выполнить

В идеале мы должны получить примерно вот такой ответ от Телеграм

Можно запустить еще одну функцию: getWebHookInfo() - она выведет информацию о текущем состоянии настроенного webHook

Бот готов к использованию!
Открывайте его нажимайте Старт (/start)

Старт бота от имени обычного пользователя​

На этом думаю, что все, больше добавить нечего. С вас если не сложно предложения и комментарии, получилось ли у вас запустить этот пример бота.​

ФАЙЛ С КОДОМ - https://drive.google.com/file/d/1--8VcZGhH3La_I_FaIYULOo6x6M2LGLH/view?usp=share_link