Desarrollo de bots para Telegram: Obtener Mensajes

Antes de que termine el año publicaré el segundo tutorial donde veremos como obtener los mensajes que los usuarios envian a nuestro bot.

Como dije en el Artículo pasado, las peticiones se hacen via HTTP, un ejemplo simple de URL puede ser el siguiente.

https://api.telegram.org/bot821820754:AAFvz0O4_W2j0Vh13Ro8P-eglN0okONIa1o/getUpdates

La URL se forma con tres partes.

  • https://api.telegram.org/bot (En amarillo)
  • TOKEN (En azul)
  • Método (En verde)

Con esta url obtendremos todos los mensajes que puede recibir nuestro bot, esto nos devolverá un json como el siguiente.

Este es el ejemplo más básico del método que veremos hoy, getUpdates, el cual se encarga de recibir los mensajes que ha recibido, este método acepta algunos parámetros adicionales.

  • offset: mostrará los mensajes a partir del id de la actualización que se coloque, en el json que se recibe, este es el campo update_id, la URL sería algo como https://api.telegram.org/bot821820754:AAFvz0O4_W2j0Vh13Ro8P-eglN0okONIa1o/getUpdates?offset=797917643
  • limit: establece la cantidad máxima de mensajes que se van a recibir, el valor puede ser entre 1 y 100, por defecto obtendrá 100 entradas, una URL de ejemplo sería https://api.telegram.org/bot821820754:AAFvz0O4_W2j0Vh13Ro8P-eglN0okONIa1o/getUpdates?limit=25
  • timeout: indica el tiempo máximo en segundos que tardará obteniendo las nuevas actualizaciones, el valor por defecto es 0, una URL de ejemplo puede ser https://api.telegram.org/bot821820754:AAFvz0O4_W2j0Vh13Ro8P-eglN0okONIa1o/getUpdates?timeout=30.
  • allowed_updates: esta opción indica que tipos de actualizacones vamos a traernos, este será un array que puede traer los siguientes tipos.
    • message
    • edited_message
    • channel_post
    • edited_channel_post
    • inline_query
    • chosen_inline_query
    • callback_query

    En un futuro veremos la función de cada uno, una url de ejemplo sería https://api.telegram.org/bot821820754:AAFvz0O4_W2j0Vh13Ro8P-eglN0okONIa1o/getUpdates?allowed_update=[“message”,”channel_post”,”inline_query”]

A continuación un ejemplo muy simple escrito en PHP de un bot que solo escuche las actualizaciones que reciba.

Y listo, simplemente debe ejecutarse desde el terminal con el comando

y comenzar a escribir en el chat del bot para ir recibiendo las actualizaciones.

Deja un comentario

A %d blogueros les gusta esto: