Zunächst benötigst Du einen Telegram Bot. Dies erfährst Du hier.
Zum Konfigurieren des Node-RED Nodes benötigst Du die Credentials:
- GROUP_ID=“xxxxxxx“
- BOT_TOKEN=“yyyyyyyyy:zzzzzzzzzzzzzzzzzzzzzzzzzzzz“
Nun installierst Du das Telegram Feature in Node-RED indem Du „Settings“ – „Manage palette“ anklickst und dann den Reiter „Install“ wählst. Dort suchst Du nach „node-red-contrib-telegrambot“ und installierst diese Contribution.
Die neuen Nodes sind nun erreichbar und unter „telegram“ kategorisiert.
Nun kannst Du den Sender nehmen und bei dessen Konfiguration deinen neuen Bot hinzufügen.
- Bot-Name: Namen deines Bots
- Token: Der Token
Mittels Funktions-Node kannst DU den Telegram Bot dann speisen:
msg.payload={
"chatId": GROUP_ID,
"type": "message",
"content": "Test message"
};
return msg;
Der gesamte Workflow:
[
{
"id":"8634224e.88efd",
"type":"function",
"z":"81c96d82.c4f73",
"name":"Prepare",
"func":"msg.payload={\n \"chatId\": 1563753398,\n \"type\": \"message\",\n \"content\": \"Test message\"\n};\n\nreturn msg;",
"outputs":1,
"noerr":0,
"initialize":"",
"finalize":"",
"x":320,
"y":360,
"wires":[
[
"982f4566.eef018"
]
]
},
{
"id":"982f4566.eef018",
"type":"telegram sender",
"z":"81c96d82.c4f73",
"name":"Send Telegram",
"bot":"437c9291.4a34fc",
"haserroroutput":true,
"outputs":2,
"x":500,
"y":360,
"wires":[
[
"f77b52b5.b7f58"
],
[
"658010f.94fb8f"
]
]
},
{
"id":"d8a21e93.c5f8b",
"type":"inject",
"z":"81c96d82.c4f73",
"name":"Test telegram",
"props":[
{
"p":"payload"
},
{
"p":"topic",
"vt":"str"
}
],
"repeat":"",
"crontab":"",
"once":false,
"onceDelay":0.1,
"topic":"",
"payload":"",
"payloadType":"date",
"x":160,
"y":360,
"wires":[
[
"8634224e.88efd"
]
]
},
{
"id":"437c9291.4a34fc",
"type":"telegram bot",
"botname":"nodered_alarm_bot",
"usernames":"",
"chatids":"",
"baseapiurl":"",
"updatemode":"polling",
"pollinterval":"300",
"usesocks":false,
"sockshost":"",
"socksport":"6667",
"socksusername":"anonymous",
"sockspassword":"",
"bothost":"",
"botpath":"",
"localbotport":"8443",
"publicbotport":"8443",
"privatekey":"",
"certificate":"",
"useselfsignedcertificate":false,
"sslterminated":false,
"verboselogging":false
}
]