Dieses Blog durchsuchen

Homematic Nachrichten per Telegram UPDATE

Update: bei mir war auch die Pfadangabe zum "curl" Befehl das Problem. Mit Angabe des "pseudo" absoluten Pfades zum Befehl wurde er nicht mehr gefunden. Siehe unten:

es genügt, den curl Befehl direkt aufzurufen, also anstelle von : ....State("extra/curl -s -k https://api.telegram.org/bot"#botAPI#"/sendMessage.....
die Pfadangabe "extra/" entfernen, je nach CCU Variante und Cuxd Version, also:  ...... State("curl -s -k https://api.telegram.org/bot"#botAPI#"/sendMessage .....

Wer sich nicht sicher ist, wo das Commando liegt, am besten im cuxd oder über SSH nachsehen...
Update Ende.


In den Kommentaren zum Beitrag "Nachrichten pushen mit Telegram" wurde mehrfach darauf hingewiesen, dass die Pushnachrichten nicht mehr gesendet werden. Zuerst dachte ich es gibt irgendwelche grundlegende Änderungen bei der Telegram Api. Aber dem war nicht so. Also habe ich noch einmal ein Skript zusammengebastelt. Um zu debuggen, habe ich einen gesamten String aus einzelnen Teilen zusammengebaut. Das ist zwar alles andere als schön, aber es lässt sich leichter nachvollziehen was funktioniert oder eben nicht. Auch den Pfad zum curl-Kommando habe ich vollständig angegeben. Mit dem folgenden Beispiel Skript funktioniert bei mir die Textausgabe wieder:

 string msg = "Hallo Telegram";  
 string chatid = "123456789";                     
 string botAPI = "987654321:AABBCCDDEEFFGGGHHIIJJKKLLMMNNOOPPQQ";   
 string request;  
 string command1 = "/usr/local/addons/cuxd/curl -s -k https://api.telegram.org/bot"; !#botAPI#   
 string command2 = "/sendMessage -F text="; !#msg#   
 string command3 = " -F chat_id="; !#chatid#  
 request = command1+botAPI+command2+msg+command3+chatid;  
 dom.GetObject("CUxD.CUX2801001:1.CMD_EXEC").State(request);  

Dann sollte alles wieder klappen....