Diferència entre revisions de la pàgina «Un exemple d'us de Telegram amb el NodeRed»

De Wiki d'en Jordi Binefa
Dreceres ràpides: navegació, cerca
m
m (Transmissió)
 
(Hi ha 5 revisions intermèdies del mateix usuari que no es mostren)
Línia 1: Línia 1:
 +
[[File:00nodeRedTelegram.png|caption]]
 +
 +
= Instal·lació =
 +
 
Un cop ja teniu el vostre [[Bot de Telegram]], instal·leu el paquet [https://flows.nodered.org/node/node-red-contrib-telegrambot node-red-contrib-telegrambot]:
 
Un cop ja teniu el vostre [[Bot de Telegram]], instal·leu el paquet [https://flows.nodered.org/node/node-red-contrib-telegrambot node-red-contrib-telegrambot]:
 
  npm install node-red-contrib-telegrambot
 
  npm install node-red-contrib-telegrambot
 +
 +
= Recepció =
  
 
Configureu el node '''receiver''' de NodeRed indicant en la configuració el seu nom d'usuari ('''Bot-Name''') i el seu identificador únic d'accés ('''Token''').
 
Configureu el node '''receiver''' de NodeRed indicant en la configuració el seu nom d'usuari ('''Bot-Name''') i el seu identificador únic d'accés ('''Token''').
  
01_receiverTelegramNodeSettings.png
+
 
 +
[[File:01receiverTelegramNodeSettings.png|caption]]
  
 
A la sortida superior del node '''receiver''' connecteu-hi un node de depuració per a visualitzar els missatges que us arriben des del vostre bot de Telegram.
 
A la sortida superior del node '''receiver''' connecteu-hi un node de depuració per a visualitzar els missatges que us arriben des del vostre bot de Telegram.
  
02_nodeRedReceiver.png
+
[[File:02nodeRedReceiver.png|caption]]
 +
 
 +
= Transmissió =
 +
 
 +
Per a trametre per Telegram cal injectar un text (''string'') i fer un JSON per a trametre-ho a un node '''sender'''.
 +
 
 +
msg.payload = {
 +
  "content": msg.payload,
 +
  "chatId" : 00000000,
 +
  "type" : "message"
 +
}
 +
return msg;
  
---
+
El chatID el podem saber emprant Telegram per web i/o trametent missatges des del grup a on es membre el bot. El chatID del bot acostuma a no tenir signe negatiu, a diferència dels grups.
  
Per a trametre per Telegram
+
Exemple de creació de JSON destinat a un grup:
  
aconseguir ChatID
+
msg.payload = {
 +
  "content": msg.payload,
 +
  "chatId" : -000000000,
 +
  "type" : "message"
 +
}
 +
return msg;
  
format JSON per a trametre
+
= Gestió d'ordres trameses per Telegram =
  
ChatID dels grups a on es membre el bot
+
A la recepció podem filtrar les ordres amb el node ''switch''. En aquest exemple es filtra l'ordre ''/estat'':
  
-----
+
[[File:03nodeSwitch.png|caption]]
Gestió d'ordres
 

Revisió de 12:56, 23 nov 2018

caption

Instal·lació

Un cop ja teniu el vostre Bot de Telegram, instal·leu el paquet node-red-contrib-telegrambot:

npm install node-red-contrib-telegrambot

Recepció

Configureu el node receiver de NodeRed indicant en la configuració el seu nom d'usuari (Bot-Name) i el seu identificador únic d'accés (Token).


caption

A la sortida superior del node receiver connecteu-hi un node de depuració per a visualitzar els missatges que us arriben des del vostre bot de Telegram.

caption

Transmissió

Per a trametre per Telegram cal injectar un text (string) i fer un JSON per a trametre-ho a un node sender.

msg.payload = {
  "content": msg.payload,
  "chatId" : 00000000,
  "type" : "message"
}
return msg;

El chatID el podem saber emprant Telegram per web i/o trametent missatges des del grup a on es membre el bot. El chatID del bot acostuma a no tenir signe negatiu, a diferència dels grups.

Exemple de creació de JSON destinat a un grup:

msg.payload = {
  "content": msg.payload,
  "chatId" : -000000000,
  "type" : "message"
}
return msg;

Gestió d'ordres trameses per Telegram

A la recepció podem filtrar les ordres amb el node switch. En aquest exemple es filtra l'ordre /estat:

caption