Enviar mensajes a un canal de Telegram automáticamente con un bot

Si tienes una audiencia a la que le guste recibir actualizaciones de tu sitio y utilizan Telegram, es posible hacerlo de forma automática, aquí describo de forma general lo que se requiere para ello:

  1. Crear el canal. Para ello se hace desde Telegram ya sea en el celular o desde web, como te sea más cómodo - https://telegram.org/faq_channels/es
  2. Crear un bot. - https://telegram.org/faq/es#p-cmo-creo-un-bot
  3. Añadir como administrador de tu canal a tu bot (básico).

En el segundo paso, al crear el bot nos genera un token, que será nuestra llave para cualquier petición. Se puede solicitar en cualquier momento un nuevo token o cancelarlo, al @BotFather.

Una vez que tenemos la llave, que hemos añadido a nuestro bot como administrador del canal, enviamos el mensaje:

curl -s -X POST https://api.telegram.org/botTOKENDELBOT/sendMessage -d text="Soy un robotito que anda por la vida" -d [email protected]

donde TOKENDELBOT es la llave que mencionamos antes y @NOMBRECANAL es el canal creado. Listo, con eso enviamos el mensaje :-).

¡Eso es todo!, más fácil imposible.

Actualización mayo 2017:

Para ver los últimos mensajes que le han sido enviados (o ha leído) el bot (hay que tener el modo privado activado con @BotFather):

curl -s -X POST https://api.telegram.org/botTOKENDELBOT/getUpdates | python -m json.tool

#devolverá algo como:

{

"ok": true,

"result": [

{

"message": {

"chat": {

"first_name": "Jorge",

"id": 93289893289238392,

"last_name": "M",

"type": "private",

"username": "toritoesinocente"

},

"date": 1494459488,

"from": {

"first_name": "Jorge",

"id": 93289893289238392,

"last_name": "M",

"username": "toritoesinocente"

},

"message_id": 4,

"text": "mensaje de prueba"

},

"update_id": 752218617321

}

]

}

# lo importante es el chat_id

Actualización agosto 2017:

Si requieres obtener el chat_id de un usuario o de un canal, puedes reenviar el mensaje a tu bot, luego obtener las actualizaciones con el método getUpdates de arriba y en forward_from_chat.id estará el id (chat_id) del mensaje reenviado.

+ fotos

Almacenado en Telegram, Bots, Bots

por Jorge Martínez Mauricio :)

¿Algo que comentar?


Suscríbete por correo electrónico, recibirás los nuevos escritos antes que nadie y es gratis 😊

Relacionadas

    blog / fotos / archivo

    Fotografías de

    Enviar mensajes a un canal de Telegram automáticamente con un bot

    tar.mx es un blog sobre fotografía, tecnología y otras chunches