Подключение телеграм бота к гугл таблицам
Это мой первый пост на этой площадке, целью которого является погружение в коммьюнити для обратной связи и полезных ремарок относительно этой статьи. Также буду рада, если эта статья станет полезной для начинающих свой путь в написании ботов людей 🙂
За последний год я узнала об интересном способе автоматизации бизнес-процессов, которая достигается комбинацией гугл-таблиц и телеграма. Такие задачи как учет финансов, тайм-менеджмент, пересылка событий, сообщений, уведомлений и т.п. легко решаются с помощью бесплатного инструментария гугла и телеги.
Далее речь пойдет о создании первого бота и написании скрипта в Apps Script. Поехали!
Создание телеграм-бота
Откуда вообще берутся боты в телеграме? Опытному пользователю можно пропустить это пункт, ну а новичкам настало время познакомится с @BOTFATHER
Находим отца всех ботов в поиске телеги и видим, что этот бот вообще из себя представляет.

После старта этого бота мы увидим список команд.

Здесь нам нужна команда /newbot, чтобы создать нашего первого бота.
Порядок действий незамысловатый: создаем бота помандой /newbot, даем ему вменяемое имя и задать ему username с обязательным окончанием bot. В результате получаем API токен нашего бота, который и будем дальше использовать.

Можете проверить работоспособность созданного бота перейдя по следующему URL:
https://api.telegram.org/bot2011183802:AAEW7ZNRVvlr1TG1N0DNkRB9G4FmvkBUUUU/getMe
выделенное жирным замените на апи своего бота
Запрос вернет примерно это:
Подключение гугл-таблицы
Переходим к гугл табличкам и создаем новый док.
Нам нужен пункт меню Инструменты/Tools -> Редактор скриптов/ Script editor.
Должно получиться вот это:

Затрем скрипт и напишем свой на языке JavaScript. Дополнительно в скрипте могут быть использованы инструменты гугла (классы, методы и т.п.), что мы далее и рассмотрим.
Начнем с объявления глобальных переменных. У нас их будет только две — API бота и App_link.
Напомню, что АПИ бота мы получили в диалоге с botfather.
Далее напишем функцию send, которая будет отправляет сообщение в чат с нашим ботом.
Функция send() отправляет запрос для общения со строними приложениями, в нашем случае — с телегой. Подробнее в документации Class UrlFetchApp.
Аргументы функции — текст отправляемого сообщения и ид чата, в которое это сообщение отправляется.
Далее нужно предусмотреть механизм запуска функции send() . Осуществим это из тела другой функции doPost():
Это стандартная функция при работе с телеграм ботами, в которую зашиваются ответные действия от бота при отправке сообщения в чат с ним.
Здесь мы сравниваем текст полученного ботом сообщения с текстом «/hello» и вызываем функцию send() при совпадении. Это все действия нашего бота.
Сначала сохраним скрипт и задеплоим проект. Кликаем на кнопку Deploy -> New deployment.

В результате откроется окно New deployment, где нужно кликнуть по шестеренке и выбрать Web app.

В поле Who has access выбираем Anyone, что позволит другим пользователям вносить правки в проект и деплоить без вашего участия.

И кликаем Deploy.
При первом запуске приложение попросит авторизации. Проделываем это упражнение.

Здесь нам нужен URL в самом конце. Копируем его по кнопке Copy и вставляем в качестве значения глобальной переменной App_link, значение для которой мы оставили изначально пустым.
Создадим функцию установки вебхука для получения обновлений от нашего бота.
Добавим следующий код к нашему скрипту:
function api_connector () < UrlFetchApp.fetch("https://api.telegram.org/bot"+API+"/setWebHook?url full-width ">

Если функция выполнилась без ошибок, идем проверять работу нашего бота непосредственно в телеге.

Сообщение «/hello» успешно распознано, на что наш бот ответил «Hello world».
Как отправить таблицы с помощью Telegram Bot API?

Вы можете использовать разметку HTML или Уценка, чтобы отправить что-то вроде <pre> в HTML. Прямо как этот пример.
или он может преобразовать таблицу в изображение.
Установите для параметра Telegram API parse_mode значение HTML. и заверните сообщение в <pre></pre> , но помните, что API Telegram не поддерживает вложенные теги.
Результат в мессенджере Telegram:

Обновлено. Как преобразовать таблицы на картинке
На маленьких экранах смартфонов будет проблема. Так что этот метод не годится. Единственный вариант — преобразовать таблицы на картинке и отправить:
Как в телеграмм закрепить таблицу
Очень нравится работать с Мажордомо через Телеграм. Спасибо Eraser’у за чудесный модуль, один из моих любимых, не вызывающий никаких нареканий.
Давно хотелось получать сводную инфу о состоянии всего дома разом, а не продираться через систему многоуровневых меню до нужного элемента.
Тут и статейка Удобный просмотр данных сенсоров через телеграмм от directmann подоспела с нужными решениями.
Но отображение всех датчиков по-строчно в виде клавиатуры как-то не зашло((
Решил сделать лист отчета с выводом инфы по комнатам. Внешний вид — на картинке к блогу.
По-моему, наглядно.
Итак, скрипт:
Основная фишка статьи — получение псевдотаблицы ограниченными средствами форматирования телеграма.
Это сделано с помощью имитации табуляции моноширинного шрифта телеграма:
эта строка делает первую колонку с именами комнат шириной в 12 символов, чтобы следующая колонка выводилась ровненьким столбиком, так же фоматируется температура и влажность.
строка
Создаем для Телеграм таблицу рекламных закупов
Как создать для Телеграм таблицу рекламных закупов, снизить времязатраты и получить дополнительный источник дохода — расскажу в сегодняшней статье.

Зачем нужна таблица
Каждый администратор, работающий с мессенджером, время от времени покупает рекламу, и чем больше каналов и расходов, тем выше необходимость систематизации и снижения времязатрат.
Именно для этого и необходимы таблицы, в них легко вносить данные и использовать для быстрого мониторинга результатов и эффективности рекламы. Подойдет Exсel, но я рекомендую воспользоваться более эффективными решениями, а именно таблицами Google.
Уголок Админа — авторский блог о Телеграм. Только качественная и полезная информация о продвижении и развитии Телеграм-каналов.
Где создавать таблицу
В Телеграм таблицу создать не получится, воспользуемся Excel или Google таблицами. У таблиц от гугл больше преимуществ, их легко редактировать и смотреть с разных устройств, есть возможность дать к ним доступ по ссылке.
Для создания Google таблицы:
1. Переходим в гугл аккаунт (или регистрируем его при отсутствии).
2. Кликаем на приложения в правом углу и выбираем «Документы».

3. Выбираем тип «Таблицы» и создаем новую.

Создаем таблицу и приступаем к ее заполнению.
Создаем и заполняем таблицу рекламных закупов
Я уже создал и заполнил примерный образец таблицы в Excel, по такому же типу ее легко создать в Google таблицах.
Разберу по порядку все нужные для работы и первичного анализа данные, которые вносим в таблицу:
- Дата. В этом столбце указываем время выхода купленной рекламы. Например, вы купили рекламное место на 1 января 2021 года, вносим данные в таблицу (01.01.21).
- Название и линк. В этом столбце указываем название канала где была куплена реклама и его юзернейм. Например, вы купили рекламу в Канале Приколы с линком @prikol, вносим данные в таблицу ( Приколы, @prikol).
- Цена. Здесь указываем стоимость купленной рекламы.
- Время и формат. В этом столбце указываем время выхода рекламы и ее формат. Например, вы купили рекламное размещение на 19:00 в формате 2/48 (2 часа топа и 48 часов в ленте). Вносим данные (19:00, 2/48).
- Было/стало. В этих столбцах вносим число подписчиков канала до выхода рекламы и после окончания рекламы. Например, у вас было 1000 подписчиков, купили рекламу, после нее на канале стало 1200. Вносим данные (было 1000, стало 1200).
- Прирост. Вносим чистый прирост подписчиков от рекламы. Было 1000, стало 1200, прирост 200 человек.
- Цена подписчика. Делим цену рекламы на прирост. Заплатили за рекламу 1000 руб., с нее получили прирост в 200 человек. 1000/200 = 5 руб. Значит получили с рекламного размещения одного подписчика в канал по цене в 5 рублей.
- Контакты. В этом столбце вносим контакты админа (имя и юзернейм) у которого купили рекламу. Например, Админ, @admin.
- Примечание. Здесь вносим дополнительную важную информацию. Например, какой тип рекламного поста использовался, качество площадки где брали рекламу. То есть вносим полезные заметки, для ясности.
Теперь импортирую готовую Excel таблицу в Google таблицу. Для этого в новой Гугл таблице выбираю вкладку «Файл», затем «Импортировать» и выбираю файл Excel.

Все готово, таблица перенесена .
Преимущества использования
Создав для Телеграм таблицу рекламных закупов, важно постоянно обновлять ее. Со временем, накопив материал, ей будет очень удобно пользоваться. Как пользуюсь я.
Если мне необходимо купить рекламу, я сначала открываю таблицу и смотрю результаты предыдущих закупов (лучшие результаты обычно отмечены цветом). Отобрав подходящие каналы, уже показавшие прекрасный результат, я проверяю их в Телеметре (смотрю прирост и активность). Если вижу, что канал обновился и развивается, пишу админу и снова беру рекламу. Причем прошу скидку, так как беру второй раз (обычно ее дают). Получаю хороший результат и не переживаю что мне придут боты.
В итоге неплохо экономится время (не нужно искать и пересматривать горы новых каналов), да и возможно рассчитывать на скидку.
Если вы часто покупаете рекламу и постоянно вносите данные в таблицу, со временем в ней накопится много полезного материала. Этот материал возможно продавать рекламодателям. Накрученных каналов в Телеграм все больше, а подписчик дороже. Поэтому, некоторые люди охотно заплатят за качественную информацию о лучших проверенных каналах с высокой отдачей.
Заключение
Обязательно создавайте для Телеграм таблицу рекламных закупов сразу, как только начали покупать рекламу. Это поможет сэкономить время и даже получить определенный доход.
Надеюсь, статья была для вас полезной. Всегда рад видеть ваши комментарии. Подписывайтесь на канал для админов в Телеграм и рассылку, делитесь статьей.
Успехов вам! До новых встреч в следующих статьях. С уважением, Дмитрий Толстой.