Подключение Телеграм бота к Гугл табличкам gs3

Содержание
Еще по теме:  Как восстановить доступ к Telegram аккаунту

не знаю программист вы или только начинаете раз не увидели такую ошибку, ниже в коде я ещё закоментировал некоторые строки знаками //, вот можете их убрать если они вам нужны будут строки эти и сделать дальше как вам нужно. Также можете попробовать всё гораздо грамотней оформить, разделить теже уровни и клавиатуры функциями чтоб выглядело ещё красиее, удачи 🙂

function doPost(e) < var contents = JSON.parse(e.postData.contents); var ssId = «ВАША ТАБЛИЦА»; var sheet = SpreadsheetApp.openById(ssId).getSheetByName(«Лист1»); var keyBoard2 = < «inline_keyboard» : [ [], [], [], [], [], [], [] ]>; if (contents.callback_query) < var var data = contents.callback_query.data; if (data == «first») < //скорей всего после return программа завершается return sendMessage(id, «Выберите день недели.», keyBoard2); // else if (data == «tuesday») < // var first_tuesday = sheet.getDataRange().getCell(3,2).getValue(); // return sendMessage(id, first_tuesday)>// else if (data == «wednesday») < // var first_wednesday = sheet.getDataRange().getCell(3,3).getValue(); // return sendMessage(id, first_wednesday)>// else if (data == «thursday») < // var first_thursday = sheet.getDataRange().getCell(3,4).getValue(); // return sendMessage(id, first_thursday)>// else if (data == «friday») < // var first_friday = sheet.getDataRange().getCell(3,5).getValue(); // return sendMessage(id, first_friday)>// else if (data == «wednesday») < // var first_wednesday = sheet.getDataRange().getCell(3,6).getValue(); // return sendMessage(id, first_wednesday)>// else if (data == «saturday») < // var first_saturday = sheet.getDataRange().getCell(3,7).getValue(); // return sendMessage(id, first_saturday)>> else if (data == «second») < //var second = sheet.getDataRange().getCell(5,1).getValue(); //return sendMessage(id, second); var tt = «ahalai»; return sendMessage(id, tt); >else if (data == «third») < var third = sheet.getDataRange().getCell(9,1).getValue(); return sendMessage(id, third); >else if (data == «fourth») < var fourth = sheet.getDataRange().getCell(13,1).getValue(); return sendMessage(id, fourth); >if (data == «monday») < var first_monday = sheet.getDataRange().getCell(3,1).getValue(); return sendMessage(id, first_monday); >> else if (contents.message) < var //не используется у вас нигде //var text = contents.message.text; var keyBoard = < «inline_keyboard» : [ [], [], [], [] ]>; return sendMessage(id, «Добро пожаловать в бот расписаний! Выберите группу.», keyBoard); > >

Источник: ru.stackoverflow.com

Добавляем Google Таблицу к Telegram боту и создаем регистрацию на мероприятие через Условия

Получение в google таблицу данных из telegram бота (под ключ)

Как в эксель перенести данные из телеграмма

Сегодня продолжение статьи о мониторинге цен с помощью гугл таблиц и создании бота в телеграм для отправки информации. В первой части мы настроили гугл-таблицы на сбор данных, а сегодня будем делать бота и программировать его (немножко).

3. Создаем нового бота в телеграм

Начинаем чат с BotFather командой » /start » и далее следуем подсказкам бота:

Отправляем команду » /newbot » и отвечаем, как мы хотим назвать наш бот и какой у него будет юзернейм. В ответ Телеграм пришлет ссылку на бота и токен для работы с ботом из других приложений. Этот токен фактически дает полные права на управление ботом, так что держите его в тайне.

Бот создан. С помощью Крестного Бота можно отредактировать его, добавив информацию, юзерпик и др. — оставлю это на ваше усмотрение 🙂

Бот не может инициировать диалог, пользователь должен начать диалог сам и послать команду » /start «, а бот, получив эту команду, должен сохранить параметр chat_id , чтобы потом писать этому пользователю. Делать все это мы будем с помощью того же языка скриптов в гугл таблице. Возращаемся в нашу таблицу и запускаем редактор скриптов.

Еще по теме:  Как на ПК в Телеграмме перевезти голосовые на видео

Для начала, сохраним значение токена, чтобы потом его можно было использовать. В редакторе скриптов идем в меню » Файл -> Свойства проекта «

И в закладке «Свойства скрипта» добавляем строку » OPENAPI_TOKEN » со значением токена, которое прислал Крестный Бот. Сохраняем.

В начале скрипта добавляем строки:

Создадим также новую функцию FetchMessages — она будет:

  1. Подключаться к серверу Телеграм по API
  2. Запрашивать список обновлений у бота
  3. Сохранять chat_id для новых пользователей
  4. Очищать список обновлений на сервере

Если бы мы писали этого бота, как полноценный продукт, нужно было бы проверить список chat_id на дубликаты, а также запрашивать от каждого пользователя свои ссылку (или ссылки), по которым он хочет получать оповещения. Но у нас больше образовательно-демонстрационный проект, поэтому эти моменты я пропущу.

Добавляем триггер на запрос обновлений каждый час, и можно приступать к следующей части.

Напишем еще несколько функций:

  1. Функция MakeChart — делает график из данных по ценам в виде картинки
  2. Функция SendPhoto — отправляет картинку с комментарием на указанный chat_id
  3. Функция SendMessage — с помощью функции MakeChart готовит картинку и для каждого chat_id с помощюу функции sendPhoto отправляет картинку в телеграм.

Добавляем вызов функции SendMessage в функцию GetPrice, чтобы она выполнялась после получения цен.

6. Тестируем

Вручную запустим функцию SendMessage — выберем ее на панели инструментов и нажмем запуск:

Всем ку
Комбинация из ТЛГ и ГТ, простота подключения КМК делает из ГТ офигенный инструмент автоматизации.
Тайм-менеджмент, таск-менеджмент, учёт финансов, объявления, пересылка событий — всё это создается и довольно быстро настраивается. Главное — это становится полезным не только в бизнесе, но и для обычных чатлан.
Пост ориентирован прежде всего на людей, которые только познают ГТ и на первых порах не требует знания гугл скриптов. В этом посте будет только первичная настройка и подключение. В следующих постах рассмотрю всё что описал выше (как трекать время, задачи, финансы и т.д. и как это настроить под себя).

Подключение телеграм бота к гугл табличкам (GS3) Телега, Google, Бот, Длиннопост

Дальше нам нужна пустая ГТ. Создаем, заходим в Инструменты / Редактор скриптов.
Скрин для английской версии.

Подключение телеграм бота к гугл табличкам (GS3) Телега, Google, Бот, Длиннопост

Выделенное жирным:
1 — ID гугл таблицы, находится после /d/ :

Подключение телеграм бота к гугл табличкам (GS3) Телега, Google, Бот, Длиннопост

2 — АПИ токен гугл бота, который мы доставали выше.

Подключение телеграм бота к гугл табличкам (GS3) Телега, Google, Бот, Длиннопост

Подключение телеграм бота к гугл табличкам (GS3) Телега, Google, Бот, Длиннопост

Важно — поставить доступ для анонимов и для каждой новой версии выставлять Project version новый или new.
При деплое оно запросит разрешение — даём, после чего получаем заветную ссылку:

Подключение телеграм бота к гугл табличкам (GS3) Телега, Google, Бот, Длиннопост

Подключение телеграм бота к гугл табличкам (GS3) Телега, Google, Бот, Длиннопост

Подключение телеграм бота к гугл табличкам (GS3) Телега, Google, Бот, Длиннопост

Подключение бота к табличке успешно произведено.

ЗЫ Бота я удалил, так что этот АПИ-токен уже не действует.

MS, Libreoffice пост — отстой», это оскорбление автора и будет наказываться баном.

Делал я как-то своего бота в телеге.

Иллюстрация к комментарию

эх, есть идея. Запись на ноготочки в телеге. Размечаем лист с интервалами 15мин, в телеге бот выдает свободное время на 1/2 недели вперед, юзер оставляет коммент и номер телефона.

Супер, жду очень часть с финансами.
Идея такая : что бы с женой можно было вести совместную таблицу доходов и затрат.
«внутренний хомяк ликует»

Огромное спасибо за подробную инструкцию!
А возможно ли, чтобы бот автоматически отправлял записанную инфу в другой чат?

Например Заказчик отвечает в боте на вопросы. А в другой чат прилетает готовая оформленная для исполнителя заявка (Имя, Ссылка, Ответы на вопросы). Эдакая автоматизированная система приёма заявок 🙂

А какой язык в этом коде? Мне очень понравилось то что вы делаете, я бы хотел тоже научиться помогать своим ребятам автоматизировать процессы. С кода бот-табличка сейчас делаю реестр, чтобы менеджеры, которые пользуются такси, для офис-менеджера закидывали инфу куда и зачем (по какому проекту) они ездили. Будет поудобнее, чем она потом ходит за месяц с табличкой и заставляет всех вспоминать/объяснять.

Привет, а возможно подключить xlsx файл к телеграмм?

Добрый вечер! Интересный материал, решил собрать согласно инструкции. Бот не отвечает(( Возможно я допустил ошибки. Просьба проверить скриншоты. Отправил файлы в Телеграмм.

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

А если сделать запись из Телеграм бота в гугл таблицу, есть ли решения ?

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

по вашему примеру у меня все работает, магия))) а как адаптировать код, чтобы данные из чата ТЛГ от нескольких пользователей переносились, в хронологическом порядке в ГТ? так можно же?

Ну и заполнение ГТ Post-запросами очень хочется)

Сделал всё как в посте, вебхук успешно зарегистрировал, но бот никак не реагирует. В чем может быть проблема?

Уважаемый автор! Всё шикарно, всё заработало. Отличная штука.
Есть один вопрос: я меняю текст скрипта, сохраняю, но ничего не меняется у бота.
Его один раз опубликовал и всё ?
Спасибо.

Где можно научится этому всему?

так сфера применения какая? где мне это пригодится ?

объясните, почему таблицу называют табличкой?

Источник: kompyutery-programmy.ru

Как передавать данные из бота в Google приложения

Сервис Integromat сменил адрес сайта, дизайн и название на Make. Возможности интеграций остались такими же, но дизайн может отличаться от скриншотов, приведенных в статье.

Передавайте данные потенциальных клиентов, собранные в цепочках чат-бота Telegram, Facebook Messenger с помощью вебхука, в другие приложения и сервисы, чтобы ими управлять.

Рассмотрим, как фильтровать полученные данные контакта в зависимости от переменных. Вы узнаете, как сохранять данные в Google таблицы, создавать событие в Google календаре, создавать CSV файл и сохранять его на Google диск и как отправлять себе email уведомления после любого выполненного блока.

В статье рассматривается интеграция с таблицами Google с помощью Make (Integromat), но вы также можете получать данные из таблиц напрямую, используя только инструменты Google Sheets API и SendPulse. Читайте в статье: «Как получить данные из таблицы Google в чат-ботах».

Содержание

Как начать работу

Для реализации задач по передаче данных в другие сервисы мы будем делать связку SendPulse с сервисом, который поддерживает обработку входящих вебхуков и дальнейшую работу с данными из вебхука.

Ниже описан способ связки SendPulse и Integromat. Мы выбрали этот сервис, потому что он включает в себя наибольшее количество приложений и сервисов из разряда CRM, CMS, почтовые сервисы, календари, вложения, карты, списки. Он позволяет фильтровать и редактировать данные. На бесплатном тарифе можно отправлять до 1 000 различных операций, а также он включает в себя нужные нам вебхуки.

Войдите в свою учетную запись в Integromat, нажмите “Create a new scenario”, чтобы начать создавать сценарий.

Вы можете сразу выбрать, какие сервисы подключить, используя поиск, или находить и добавлять их непосредственно в самом конструкторе. Нажмите “Continue” в правом верхнем углу.

Как создать Вебхук

Нажмите на блок с вопросом по центру экрана и выберите блок “Webhooks” — это будет стартовый блок, который запустит цепочку.

Вам необходимо создать сам вебхук, на который будут отправляться данные с вашей цепочки по чат-боту. Из раскрывающегося списка выберите блок “Custom webhook”.

Нажмите “Add”, чтобы создать новый вебхук.

Введите имя для вебхука и нажмите “Save”.

Ваш вебхук создан. Скопируйте ссылку — ее нужно вставить в цепочку вашего чат-бота.

Теперь Integromat ожидает первого полученного вебхука, чтобы определить структуру данных, с которыми ему нужно будет работать.

Как добавить ссылку на вебхук в цепочку

Войдите в личный кабинет SendPulse. Выберите нужного вам бота, откройте режим редактирования созданной цепочки.

Вы можете настроить отправку запроса через блок «Действие: отправить вебхук» (в таком случае передаваемые данные генерируются автоматически) или через «Запрос API» и создать свой формат запроса с переменными.

Через блок «Действие: отправить вебхук»

Добавьте и разместите блок «Действие» сразу за блоком, после которого нужно отправлять вебхук. Введите название вебхука и URL, скопированный из Integromat.

На нашем примере ниже показана возможная цепочка записи в ветеринарную клинику. Событием в ней является подтверждение заполненных данных.

Через блок «Запрос API»

Добавьте и разместите блок «Запрос API» сразу за блоком, после которого нужно отправлять вебхук. Выберите тип запроса «POST» и введите URL, скопированный из Integromat.

Добавьте тело вашего кастомного запроса в JSON. В запросе можете использовать переменные вашего чат-бота.

Сохраните цепочку, отправьте себе тест в мессенджер и пройдитесь по цепочке до первого вебхука (или прохождение блока «Запрос API»), чтобы запрос отправился в Integromat.

Когда Integromat получит вебхук, в своем аккаунте Integromat вы увидите сообщение “Successfully determined”.

Теперь можно добавлять другие блоки.

Как добавить запись в Google таблицу

Нажмите на “Add another module” возле блока “Webhooks”.

Выберите “Google Sheets”.

Выберите действие “Add a Row”.

Чтобы авторизоваться и подключить свой Google аккаунт, нажмите “Add”.

Выберите, какой аккаунт подключить и дайте разрешение на доступ к вашему Google аккаунту для чтения и записи данных.

Выберите документ и лист, в который необходимо записать данные.

Отметьте, какие переменные в какие ячейки таблицы добавлять. Помимо переменных, вы также можете добавлять свой текст, корректировать его и задавать условия.

Нажмите “Ок” для сохранения параметров.

Сохранение и запуск

Перед сохранением и выходом необходимо проверить, корректно ли все работает. Нажмите “Run once” и запустите цепочку в которой вы настроили вебхук. Если вы все настроили верно, под блоками “Webhook” и “Google Sheet” отобразятся зеленые галочки.

А в нашей Google таблице появилась строка с данными, которые заполняли.

Теперь можно сохранять цепочку. Нажмите на иконку панели управления снизу для сохранения.

Чтобы активировать сценарий, переведите тумблер в положение “ON”.

Выберите частоту срабатывания сценария. Для нашего случая выберем срабатывание каждый раз, как получаем вебхук — “Immediately”.

Дополнительные возможности

В Integromat также доступны разные инструменты для автоматизации процессов. Рассмотрим дополнительные функции и блоки.

Как добавить фильтр данных по переменным

Integromat позволяет фильтровать все данные. Вы можете добавить фильтр по всем переменным, которые получаете по вебхуку и распределять данные по разным таблицам.

Чтобы распределять данные, вам понадобится инструмент «Router». Вы найдете его в панели инструментов снизу. Выберите этот инструмент и соедините его с блоком «Webhooks».

После блока “Router” добавьте блоки с Google таблицей согласно инструкции выше. Теперь нажмите на линию между “Router” и таблицей для установления фильтра.

Введите название фильтра, затем выберите переменную, по значению которой будут фильтроваться данные, и оператор условия.

Введите значение переменной, к которой будут применяться условия.

Вы можете добавить несколько условий, объединяя их операторами “и” и “или”. В нашем примере мы фильтруем по вопросам, с которыми обратился клиент, чтобы добавить его в таблицу к соответствующему ветврачу.

Также примером может быть фильтр уже по определенному врачу, если вы в цепочке настроили добавление этой переменной. Можно также установить фильтр по породе, по определенному электронному адресу, если необходимо отследить конкретного клиента.

Как добавить событие в Google календарь

Так же как добавить запись в таблицу, вы можете добавить событие в календарь. К примеру, клиент записался на определенное число и вам необходимо добавить запись на эту дату.

Добавьте блок “Google Calendar”. Выберите действие “Create an event”. Введите название события — можете добавлять переменные в него.

При заполнении даты события важно добавить функцию форматирования даты, чтобы запись отработала. В полях “Start date” и “End date” перейдите на вкладку “Date and time”, выберите функцию “formatDate”.

Затем выберите переменную, которая у вас отвечает за нужную дату, и переместите ее внутрь скобок, как показано на скриншоте.

Нажмите “Ок” и ваш сценарий записи события в календарь готов.

Как отправить уведомление с данными себе на почту

Вы можете добавить блок “Email”, чтобы отправить себе письмо после любого события. К примеру, каждый раз, когда добавляется новая запись в Google таблицу, определенное количество строк или определенная переменная.

Выберите блок “Email” и действие “Send an email” вслед за блоком, после исполнения которого нужно отправить письмо.

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

Также вы можете добавлять вложения в письмо, нажав на “Attachments” и выбрав файл, который был сохранен ранее в цепочке.

Как просмотреть историю работы сценария

Перейдите в нужный вам сценарий. Вам будет доступна диаграмма всех блоков с историей выполнения блоков. Кликните по нужному блоку, чтобы просмотреть информацию по нему.

Вам будет доступна вся информация по блоку: какие значения принял и передал дальше.

Если какой-то из блоков не выполнился, он подсветится красным и при нажатии отобразится причина ошибки и подсказка, как ее исправить. Обратите внимание, что до устранения ошибки весь сценарий может приостановится и не выполнятся; операции будут становиться в очередь.

Если возникнут вопросы по настройке или сбоям сценария, можете обратится в службу поддержки Integromat.

На этом возможности сервиса не заканчиваются, вы можете придумать еще больше разнообразных связок и способов передачи и использования информации с помощью вебхуков.

Настраивайте интеграцию, если планируете создавать бота для записи к ветеринару, записи к мастеру в салон красоты. Если вам нужно оставить отзыв по событию в Google документы, записать номер телефона, чтобы передать в документы отделу продаж, заказать блюда в службе доставки, чтобы можно было планировать закупку.

Источник: sendpulse.com

Рейтинг
( Пока оценок нет )
Загрузка ...