Telegram instant messaging TelegramBot - Empfangen und Senden per FHEM

Begonnen von viegener, 20 Juni 2015, 18:59:41

Vorheriges Thema - Nächstes Thema

bjoernbo

Hallo zusammen,

ich habe jetzt die ersten Seiten mal durchgelesen, konnte aber für mich ein wichtige Sache nicht finden. Mit Telgram kann ich Befehle an FEHM senden und bekomme dann darüber entsprechende Rückmeldung, wie z.B. die Heizungstemperatur etc.

Ist es auch möglich, dass wenn bspw. die Temperatur im Kühlschrank über 10° Grad ist, dass ich automatische eine Nachtricht in Telegram angezeigt bekomme? Ode rmuss ich, wenn ich diese Info haben möchte das ganze erst aus "Telegram" heraus antriggern?
Raspberry Pi 3 - FB6490C - Synology NAS DS916+ - NETATMO - HUE - SIEMENS G-Tag'S - FTUI - EchoDOT -

juergen012

Hallo, ich sende eine Nachricht, wenn die Temperatur über 10 Grad ist..


Fridge:on set Telegrambot message Achtung - Der Kühlschrank ist ausgefallen!!!!


..gibt auch ein Beispiel..mal nach Fridge suchen..

Gruß
Jürgen K.
Fhem unter Proxmox

viegener

Zitat von: bjoernbo am 20 Juli 2016, 10:13:56
Hallo zusammen,

ich habe jetzt die ersten Seiten mal durchgelesen, konnte aber für mich ein wichtige Sache nicht finden. Mit Telgram kann ich Befehle an FEHM senden und bekomme dann darüber entsprechende Rückmeldung, wie z.B. die Heizungstemperatur etc.

Ist es auch möglich, dass wenn bspw. die Temperatur im Kühlschrank über 10° Grad ist, dass ich automatische eine Nachtricht in Telegram angezeigt bekomme? Ode rmuss ich, wenn ich diese Info haben möchte das ganze erst aus "Telegram" heraus antriggern?

Vielleicht habe ich die frage missverstanden, aber das senden einer nachricht bei eintritt eines bestimmten zustandes/ereignisses lässt sich jederzeit über die fhem mittel (z.b doif oder notify) machen. Im aktionsteil kannst du dann auch eine nachricht mit beliebiger info über telegram absenden.

Aber wie gesagt, vielleicht habe ich etwas missverstanden.
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

bjoernbo

Ne, alles richtig Verstanden. Stimmt, doif gibt es ja auch noch. Danke für eure schnelle Rückmeldung!
Raspberry Pi 3 - FB6490C - Synology NAS DS916+ - NETATMO - HUE - SIEMENS G-Tag'S - FTUI - EchoDOT -

Kamik

Hallo zusammen,

mich würde interessieren ob es möglich ist Logdateien via Telegram zu versenden. Um es noch interessanter zu machen, würden mich bspw. die FHEM Logdatei gefiltert auf den letzten Tag oder andere Tage interessieren.

Was denkt ihr darüber?

viegener

Zitat von: Kamik am 26 Juli 2016, 22:09:53
Hallo zusammen,

mich würde interessieren ob es möglich ist Logdateien via Telegram zu versenden. Um es noch interessanter zu machen, würden mich bspw. die FHEM Logdatei gefiltert auf den letzten Tag oder andere Tage interessieren.

Was denkt ihr darüber?

Generell ist das sicher möglich, denn FileLogs lassen sich über ein get auslesen (siehe commandref) und die Rückgabe kann als Message mit Telegram verschickt werden. Es könnte sein, dass man etwas perl drumherumbraucht, aber generell ist das wohl möglich.

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

buki

Hallo zusammen,

ich bekomme dieses Reading


Readings:
     2016-07-27 22:44:25   PollingErrCount 61
     2016-07-27 22:44:25   PollingLastError NonBlockingGet timed out on read from <hidden> after 7s

Habe über die Suchfunktion schon versucht das Problem zu lösen, jedoch führte das zu keinem Erfolg.
Es kommen keine Telegram Nachrichten mehr in fhem an.
Wie kann ich das Problem lösen?

Vielen Dank schon mal für die Hilfe.

Gruß buki

Brockmann

Frage bzw. vielleicht Featurewunsch:
Telegram unterstützt ja prinzipiell das Löschen von einzelnen Nachrichten eines Chats. Wird das auch von der API unterstützt und falls ja, könnte das Modul in Zukunft vielleicht darum erweitert werden?

Ich fände es praktisch, wenn FHEM Nachrichten, die sich zwischenzeitlich erledigt haben, selbst wieder löschen könnte, etwa wenn man sie bereits auf einem anderen Kanal bestätigt hat oder wenn sich die Situation ohnehin wieder verändert hat, etwa weil die Sensorwerte mittlerweile wieder im grünen Bereich sind.
Ich schicke mir beispielsweise bestimmte Hinweise oder Warnungen sowohl zur Anzeige auf lokale Tablets als auch per Telegram aufs Smartphone. Wenn jemand die Nachrichten am Tablet bestätigt, bekommt FHEM das mit und könnte sie dann auch bei Telegram wieder entfernen. So finde ich solche Nachricht immer auch auf dem Smartphone vor und muss sie ein zweites Mal löschen bzw. weiß nicht sicher, ob sich zuhause schon jemand drum gekümmert hat.

Benni

Im einfachsten Fall könntest du dir ja jeweils auch, statt die vorherige Nachricht zu löschen, eine weitere Telegram-Nachricht schicken lassen, wenn sich die Situation wieder verändert hat.

MadMax-FHEM

Hallo,

ich hatte vor kurzem einen Fehler beim Senden, hier der Logeintrag:


2016.07.27 23:09:53 3: TelegramBot_Callback MyBot: resulted in :NonBlockingGet: returned <hidden>: Can't connect(2) to https://api.telegram.org:443: SSL connect attempt failed with unknown error error:00000000:lib(0):func(0):reason(0) SSL connect attempt failed with unknown error error:00000000:lib(0):func(0):reason(0): from SendIt
2016.07.27 23:09:53 3: TelegramBot_Callback MyBot: Reached max retries (ret: NonBlockingGet: returned <hidden>: Can't connect(2) to https://api.telegram.org:443: SSL connect attempt failed with unknown error error:00000000:lib(0):func(0):reason(0) SSL connect attempt failed with unknown error error:00000000:lib(0):func(0):reason(0)) for msg XX : Wasserstandsanzeige ausgefallen!
2016.07.28 00:00:05 3: TelegramBot_Callback MyBot: Digest: Number of poll failures on 2016-07-27 is :46:
2016.07.29 00:00:01 3: TelegramBot_Callback MyBot: Digest: Number of poll failures on 2016-07-28 is :20:
2016.07.30 00:00:03 3: TelegramBot_Callback MyBot: Digest: Number of poll failures on 2016-07-29 is :1:


Das trat zum ersten Mal und nur einmal auf, seit ich mit Telegram arbeite.

Der Fehler an sich (sofern er nicht häufig[er] kommt) ist mir eigentlich egal (außer jemdand sieht, dass etwas falsch konfiguriert ist etc. / aber prinzipiell funktioniert es).

Wichtiger: kann ich so einen Fehler abfragen???

Denn die gewünschte Nachricht ging nicht raus...
...ich setzte nach dem Senden einen Eintrag, dass verschickt wurde, damit nicht noch mal geschickt wird.

Blöd natürlich, wenn die Nachricht wie in diesem Fall nicht raus ging...

Ich verschicke die Nachricht wie folgt aus einer Sub:


{fhem "set MyBot message Wasserstandsanzeige ausgefallen!"}


Kann ich da sowas wie einen Returnwert abfragen?
Und wenn wie?

Vielen Dank, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

jmike

Hallo Joachim.

Schau dir mal den EventMonitor an während du eine Message schickst, da wird ein event sentMsgResult erstellt:
TelegramBot telegram sentMsgResult: SUCCESS

Zusätzlich gibt es den PollingErrCount, hier z.b. bei falscher Authorisierung:

TelegramBot telegram sentMsgResult: Callback returned error:Unauthorized:
TelegramBot telegram PollingErrCount: 4


Damit sollte man doch ein Notify für einen Fallback bauen können ;)

MadMax-FHEM

FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

viegener

Zitat von: buki am 27 Juli 2016, 23:06:09
Hallo zusammen,

ich bekomme dieses Reading


Readings:
     2016-07-27 22:44:25   PollingErrCount 61
     2016-07-27 22:44:25   PollingLastError NonBlockingGet timed out on read from <hidden> after 7s

Habe über die Suchfunktion schon versucht das Problem zu lösen, jedoch führte das zu keinem Erfolg.
Es kommen keine Telegram Nachrichten mehr in fhem an.
Wie kann ich das Problem lösen?

Vielen Dank schon mal für die Hilfe.

Gruß buki

Die Suchfunktion in der commandref hätte vielleicht geholfen, da sind die beiden Readings kurz erklärt  ;D

Generell wird in diesem Reading vermerkt wie häufig an diesem Tag (seit 0 Uhr) Fehler beim Polling aufgetreten sind. Irgendwas hast Du vermutlich geändert, vielleicht an der Bot-Konfiguration (beim Botfather oder in FHEM). 61 Fehler bis zum Abend sind nicht sehr viel wenn gar nichts geht. Das heisst normalerweise, dass das Polling zwar gestört ist, aber meistens doch funktioniert.

Ohne genauere Angaben was Du geändert hast und die Info ob Senden noch geht ist das nicht einfach zu lösen.

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

viegener

#778
Zitat von: jmike am 30 Juli 2016, 11:24:40
Hallo Joachim.

Schau dir mal den EventMonitor an während du eine Message schickst, da wird ein event sentMsgResult erstellt:
TelegramBot telegram sentMsgResult: SUCCESS

Zusätzlich gibt es den PollingErrCount, hier z.b. bei falscher Authorisierung:

TelegramBot telegram sentMsgResult: Callback returned error:Unauthorized:
TelegramBot telegram PollingErrCount: 4


Dem kann ich nichts hinzufügen, dass ist perfekt :)

Wenn jemand ein Beispiel hat, wie er die Reaktion auf Fehler beim Senden realisiert hat, nehme ich das gerne als use case ins wiki auf. Dann können andere das als Vorlage nehmen.

Damit sollte man doch ein Notify für einen Fallback bauen können ;)
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

buki

Danke für deine Antwort viegener.

Ich habe weder an der Konfiguration in fhem noch am Telegrambot etwas geändert.
Es ist so, dass Nachrichten verschickt werden können, jedoch kommen an den Bot gesendete Nachrichten nicht in fhem an und können deshalb nicht verarbeitet werden.