Diseño de un bot de Telegram con Google Apps Script

google apps ascriptjavascriptTelegram chatBot

Oscar Trujillo

Diseño de Bot

Diseño de un bot de Telegram con Google Apps Script

Oscar Trujillo Morales

Resumen del tutorial que podeís encontrar en Telegram Bot Tutorial: How to connect your Telegram Bot to a Google Spreadsheet (Apps Script)

Definición de constantes

Obtener el token de tu bot, la dirección de la App Web que se despliega y la ID de la hoja de cálculo

var token = `BOT TOKEN`; //
var telegramUrl = `https://api.telegram.org/bot` + token;

var webAppUrl = `https://script.google.com/macros/s/GOOGLE WEB APP ADDRESS/exec`;
var ssId = `ID OF YOUR SPREADSHEET`;

Conectar nuestro Script de Google con el bot Telegram

function getMe() {
  var url = telegramUrl + `/getMe`;
  var response = UrlFetchApp.fetch(url);
  Logger.log(response.getContentText());
}

Establecer Webhook

function setWebhook() {
  var url = telegramUrl + `/setWebhook?url=` + webAppUrl;
  var response = UrlFetchApp.fetch(url);
}

Función para enviar contenido a Telegram

function sendText(chatId, text, keyBoard) {
  var data = {
    method: `post`,
    payload: {
      method: `sendMessage`,
      chat_id: String(chatId),
      text: text,
      parse_mode: `HTML`,
      reply_markup: JSON.stringify(keyBoard),
    },
  };
  UrlFetchApp.fetch
    (`https://api.telegram.org/bot` + token + `/`, data);
}

Respuesta básica a mensajes del usuario

function doPost(e) {
  return HTMLService.createHtmlOutput(`Hola!`);
}