telegram - grupos - ¿Cómo agrego mi bot a un canal?
telegram api (4)
¿Está utilizando el chat_id correcto e incluye el token de su bot después de "bot" en la dirección? (api.telegram.org/bot token / sendMessage)
Esta página explica algunas cosas sobre el envío (abajo en la sección "sendMessage") - cosas básicas, pero a menudo olvido lo básico.
Citar:
Para usar el método sendMessage necesitamos usar el chat_id apropiado.
Lo primero es lo primero, enviemos el comando / start a nuestro bot a través de un cliente Telegram.
Después de enviar este comando, realicemos los comandos getUpdates.
curl -s /
-X POST / https://api.telegram.org/bot<token>/getUpdates / | jq .
La respuesta será como la siguiente
{ "result": [
{
"message": {
"text": "/start",
"date": 1435176541,
"chat": {
"username": "yourusername",
"first_name": "yourfirstname",
"id": 65535
},
"from": {
"username": "yourusername",
"first_name": "yourfirstname",
"id": 65535
},
"message_id": 1
},
"update_id": 714636917
} ], "ok": true }
Estamos interesados en la propiedad result.message [0] .chat.id, guarde esta información en otro lugar.
Tenga en cuenta que esto es solo un ejemplo, es posible que desee configurar algún automatismo para manejar esas informaciones. Ahora, ¿cómo podemos enviar un mensaje? Es simple echemos un vistazo a este fragmento.
curl -s /
-X POST / https://api.telegram.org/bot<token>/sendMessage /
-d text="A message from your bot" /
-d chat_id=65535 / | jq .
Donde chat_id es la información guardada anteriormente.
Espero que eso ayude.
Estoy usando mi bot para contar noticias importantes, pero cuando uso
sendMessage
al canal recibo el siguiente error:
{"ok":false,"error_code":403,"description":"Error: Forbidden: bot is not a participant of the channel"}
En el Registro de cambios , mencionan que no es posible enviar un mensaje a un canal a través del cliente, pero ¿cuál es la otra forma de hacerlo?
Entonces, la pregunta es, ¿cómo agregar mi bot al canal?
A partir de ahora:
- Solo el creador del canal puede agregar un bot.
- Otros administradores no pueden agregar bots a los canales.
- El canal puede ser público o privado (no importa)
- los bots solo se pueden agregar como administradores, no como miembros. *
Para agregar el bot a tu canal:
* En algunas plataformas como Mac Native Telegram Client, puede parecer que puede agregar bot como miembro, pero al final no funcionará.
** el bot no necesita estar en tu lista de contactos.
Ahora todos los clientes permiten hacerlo, pero no es bastante simple.
En cualquier cliente de Telegram:
- Abrir información del canal (en el título de la aplicación)
-
Elegir
Administrators
- Agregar administrador
- No habrá bots en la lista de contactos, por lo que debe buscarlo. Ingrese el nombre de usuario de su bot
- Al hacer clic en él, lo haces como administrador.
Así es como agregué un bot a mi canal y configuré notificaciones:
- Asegúrate de que el canal sea público (puedes configurarlo como privado más adelante)
- Agregar administradores> Escriba el nombre de usuario del bot y conviértalo en administrador
- Tu bot se unirá a tu canal
- establecer una identificación de canal configurando la URL del canal como
telegram.me/ whateverIWantAndAvailable
el id del canal será @whateverIWantAndAvailable
Ahora configure su bot para enviar notificaciones al poner los mensajes aquí:
https://api.telegram.org/botTOKENOFTHEBOT/sendMessage?chat_id= @whateverIWantAndAvailable & text = Test
el mensaje que notificará el bot es: Prueba
Recomiendo encarecidamente un urlencode del mensaje como
https://api.telegram.org/botTOKENOFTHEBOT/sendMessage?chat_id= @whateverIWantAndAvailable & text = Testing% 20if% 20this% 20works
en php puedes usar urlencode ("Prueba si esto funciona"); en js puede codificarURIComponent ("Probar si esto funciona");
Espero que ayude