Telegram mit Debmatic

Debian/Ubuntu basierte CCU

Moderator: Co-Administratoren

Antworten
deifel
Beiträge: 256
Registriert: 27.05.2014, 11:10
Hat sich bedankt: 7 Mal

Telegram mit Debmatic

Beitrag von deifel » 14.05.2019, 15:47

Hallo zusammen,

nachdem ich nach einer Lösung suche, aus Debmatic Nachrichten zu versenden (da das Email-Addon bislang noch nicht umgesetzt ist), habe ich versucht, Telegram einzubinden. Auf meinem Nuc in der VM über Proxmox (x86-Installation) klappt das einwandfrei und ich kann über ein Sript Nachrichten versenden.
Beispiel:

string message = "Dies ist eine Testnachricht.";
string chatid = "-232434533"; ! chat_id des Empfängers
string botAPI = "626775655:AAFCOdsfsfsdfgdsrfgdfgdfhghftrztrj"; ! API des eingerichteten Bots
dom.GetObject("CUxD.CUX2801001:6.CMD_EXEC").State("extra/curl -s -k https://api.telegram.org/bot"#botAPI#"/sendMessage -d text='"#message#"' -d chat_id="#chatid);

Selbes Script läuft unter Debmatic leider nicht. Kann mir jemand sagen, warum bzw. was ich beachten oder installieren muss, damit das klappt?
Cux-D ist aktiv und läuft.
Die Konfiguration von den Telegram-APIs stimmt, sonst würde es aus pivccu3 unter der x86-Variante auch nicht klappen.

Danke Euch vielmals!
Frank

Benutzeravatar
deimos
Beiträge: 5383
Registriert: 20.06.2017, 10:38
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leimersheim
Hat sich bedankt: 121 Mal
Danksagung erhalten: 950 Mal
Kontaktdaten:

Re: Telegram mit Debmatic

Beitrag von deimos » 14.05.2019, 15:53

Hi,

eine Möglichkeit: du hast beim Befehl keinen absoluten Pfad angegeben, sondern nur den relativen Pfad "extra/curl".
Versuch mal den vollständigen Pfad "/usr/local/addons/cuxd/extra/curl".

Viele Grüße
Alex

deifel
Beiträge: 256
Registriert: 27.05.2014, 11:10
Hat sich bedankt: 7 Mal

Re: Telegram mit Debmatic

Beitrag von deifel » 14.05.2019, 16:01

Hallo Alex,

danke für Deine Hilfe und den Lösungsansatz.
Leider aber funktioniert es mit folgendem Script auch nicht:

string message = "Dies ist eine Testnachricht.";
string chatid = "-232434533"; ! chat_id des Empfängers
string botAPI = "626775655:AAFCOdsfsfsdfgdsrfgdfgdfhghftrztrj"; ! API des eingerichteten Bots
dom.GetObject("CUxD.CUX2801001:6.CMD_EXEC").State("/usr/local/addons/cuxd/extra/curl -s -k https://api.telegram.org/bot"#botAPI#"/sendMessage -d text='"#message#"' -d chat_id="#chatid);

Sonst noch eine Idee, woran das liegen könnte?

Benutzeravatar
deimos
Beiträge: 5383
Registriert: 20.06.2017, 10:38
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leimersheim
Hat sich bedankt: 121 Mal
Danksagung erhalten: 950 Mal
Kontaktdaten:

Re: Telegram mit Debmatic

Beitrag von deimos » 14.05.2019, 16:05

Hi,

systematisches Vorgehen: Funktioniert der Aufruf von curl, wenn du ihn per SSH ausführst?

Viele Grüße
Alex

Benutzeravatar
FritzRe
Beiträge: 352
Registriert: 09.12.2016, 03:46
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 16 Mal
Danksagung erhalten: 12 Mal

Re: Telegram mit Debmatic

Beitrag von FritzRe » 14.05.2019, 18:57

Hallo
bei mir funktioniert folgendes Script:

Code: Alles auswählen

string stderr;
string stdout;
string url="\"https://api.telegram.org/[botnummr hier eintrtegen]/sendMessage?chat_id=[Nummer oder so]text=Es wurde an der Wohnungstuer geklingelt\"";
system.Exec("wget --no-check-certificate -q -O - "#url, &stdout, &stderr);
Zwischen den eckingen Klammern deine "Botnummer" und den ChatID eintagren.

Läuft bei mir ohne CuxD und sonstiges Addon.

Wenn man XML-API läuft bin ich sofort bei debMatic und stelle meine CCU2 in Rente :D Tolles System!!! Danke Alex
MfG
Fritz

Benutzeravatar
blackhole
Beiträge: 3718
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 586 Mal

Re: Telegram mit Debmatic

Beitrag von blackhole » 14.05.2019, 19:32

Beide Varianten in den Beiträgen zuvor sind suboptimal bis ziemlich bedenklich.

Die eine Variante kann so nicht funktionieren und benötigt -wenn richtig gemacht- ein Addon, welches unnötigerweise Abhängigkeiten schafft.
Die andere Variante kann so -wie oben zusammengeskriptet- sehr schnell zu starken Verzögerungen bis hin zum völligen Stillstand der ReGa führen.

Hier beispielhaft die vereinfachten Zusammenfassungen der Lösungen, ähnlich wie ich sie selbst verwende:


Das funktioniert auf der CCU3/piVCCU3 mit aktueller, offizieller Firmware und -wie ich deimos Arbeit einschätze- sicherlich auch unter debmatic.

Anders als im Beispiel (Teil 1), gebe ich den zu sendenden Text natürlich nicht im Skript mit, sondern ziehe ihn aus einer Sysvar, so dass das Skript nur ein einziges mal auf meiner CCU3 vorhanden ist. Das WebUI-Programm, welches das Skript beinhaltet, löst dann bei Veränderung der Sysvar aus und verschickt deren Inhalt.

Benutzeravatar
deimos
Beiträge: 5383
Registriert: 20.06.2017, 10:38
System: Alternative CCU (auf Basis OCCU)
Wohnort: Leimersheim
Hat sich bedankt: 121 Mal
Danksagung erhalten: 950 Mal
Kontaktdaten:

Re: Telegram mit Debmatic

Beitrag von deimos » 14.05.2019, 22:59

Hi,

neben den (tollen) Anmerkungen von blackhole habe ich jetzt vermutlich den Grund rausgefunden, warum das Skript von deifel nicht läuft: Das curl Binary vom cuxd ist hoffnungslos veraltet und gegen ebenso alte Libs kompiliert, welche auf einem aktuellen Debian oder Ubuntu System nicht mehr existieren.
Aber es gibt eine einfache Lösung: Einfach curl per apt nachinstallieren und dann dieses verwenden und nicht die Version aus cuxd.

Viele Grüße
Alex

Benutzeravatar
FritzRe
Beiträge: 352
Registriert: 09.12.2016, 03:46
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 16 Mal
Danksagung erhalten: 12 Mal

Re: Telegram mit Debmatic

Beitrag von FritzRe » 15.05.2019, 07:05

blackhole hat geschrieben:
14.05.2019, 19:32
Das funktioniert auf der CCU3/piVCCU3 mit aktueller, offizieller Firmware
Hallo
habe das Script auf einer CCU2 laufen, kann deine Varianten das auch oder nur auf der CCU3?
MfG
Fritz

deifel
Beiträge: 256
Registriert: 27.05.2014, 11:10
Hat sich bedankt: 7 Mal

Re: Telegram mit Debmatic

Beitrag von deifel » 15.05.2019, 08:52

Hallo zusammen und danke für Eure Hilfe,

Alex hat Recht - daran lag es:) Habe es gestern Abend noch direkt über Putty/SSH versucht und hat nicht geklappt. Nach der Installation von apt install curl läuft die Sache wieder wie sie soll.

Vielen Dank!

Auch danke für die tollen Tipps von Blackhole - werde ich mir anschauen und ggfls. umstellen...

LG
Frank

Benutzeravatar
blackhole
Beiträge: 3718
Registriert: 21.07.2015, 14:03
System: CCU
Hat sich bedankt: 184 Mal
Danksagung erhalten: 586 Mal

Re: Telegram mit Debmatic

Beitrag von blackhole » 15.05.2019, 09:48

FritzRe hat geschrieben:
15.05.2019, 07:05
CCU2
Ich selbst habe meiner alten CCU2 vor Monaten ein neues Leben als LAN-Gateway geschenkt und habe daher keinerlei Überblick, was da bei der aktuellen 2er-Firmware mitgeliefert wird. Es interessiert mich aber auch einfach nicht mehr. Ob das Skript ohne Anpassungen auf der CCU2 läuft hängt davon ab, ob cURL mitgeliefert wird, ob das Binary im Suchpfad liegt und ob eine aktuelle ReGa am Start ist (funktionales Starten von Systemaufrufen und Shellskripten im Hintergrund).

Ich würde den Umstieg auf die CCU3 mit offizieller Firmware nicht länger hinauszögern. Die CCU2 gerät immer mehr aus dem Fokus von immer mehr Helfern und Entwicklern. Es gibt aber sicherlich auch Leute die gerade das als Vorteil ansehen - oder dieses nicht wahrhaben wollen. :mrgreen:

Antworten

Zurück zu „debmatic“