Telegram instant messaging TelegramBot - Empfangen und Senden per FHEM

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

Vorheriges Thema - Nächstes Thema

viegener

Zitat von: hauwech am 01 November 2020, 12:19:44
Gerade wieder - jetzt mit Name:
2020.11.01 11:56:10.407 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.409 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.410 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.411 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.412 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.592 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.594 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.596 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.599 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.606 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.724 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.727 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.728 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.729 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.731 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.844 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.845 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked
2020.11.01 11:56:10.847 3: TelegramBot myTeleBot: Message from unknown Contact (id:938711943: name:Brandon Williams:) blocked

Meine Contacts sind aber noch sauber  :)

Sorry - erstmal zwei Schritte zurück, hier passt einiges nicht zusammen - meine Vermutungen:
1) Momentan ist dein Contacts-Reading kaputt (von Hand gesetzt über setReading ?) - Das muss repariert werden - entweder Neustart oder Contacts über "set ... replaceContacts" setzen
2) Ich sehe immer noch nicht dass Kontakte reinkommen - also war möglicherweise allowUnknownContacts nicht wirklich gesetzt (oder hat durch ein fehlerhaftes Kontaktadressbuch weiter ontakte durchgelassen)

Hinweis: Die von Dir verwendete neue Version macht bei den Kontakten nichts anders schreibt nur mehr logeinträge - also kann es an der Version nicht liegen

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

hauwech

Zitat von: viegener am 01 November 2020, 12:56:35
Sorry - erstmal zwei Schritte zurück, hier passt einiges nicht zusammen - meine Vermutungen:
1) Momentan ist dein Contacts-Reading kaputt (von Hand gesetzt über setReading ?) - Das muss repariert werden - entweder Neustart oder Contacts über "set ... replaceContacts" setzen
Ich hatte Contacts mehrmals via setreading zurückgesetzt (hatte ich in einem anderen Beitrag so gelesen). Das hat auch mehrmals funktioniert, bis heute. Wenn ich es richtig verstehe, würde "replaceContacts" die tausende Kontakte auch rausschmeißen, aber aus Modulsicht "sauber".
Zitat
2) Ich sehe immer noch nicht dass Kontakte reinkommen - also war möglicherweise allowUnknownContacts nicht wirklich gesetzt (oder hat durch ein fehlerhaftes Kontaktadressbuch weiter ontakte durchgelassen)

Hinweis: Die von Dir verwendete neue Version macht bei den Kontakten nichts anders schreibt nur mehr logeinträge - also kann es an der Version nicht liegen
Ahh, OK, das hatte ich übersehen. new contacts kamen mit der ID und dem Kontakt rein, message from kam auch schon mit Namen.
2020.10.27 23:02:41.107 3: TelegramBot_ContactUpdate new contact :1072401260:Rosy_Martinez:@Rostmartinez:
2020.10.27 23:02:41.214 3: TelegramBot_ContactUpdate new contact :1272412769:Richard_Raymond::
2020.10.27 23:28:40.614 3: TelegramBot myTeleBot: Message from unknown Contact (id:1338530656: name:Kevin:) blocked
2020.10.27 23:28:40.617 3: TelegramBot myTeleBot: Message from unknown Contact (id:1338530656: name:Kevin:) blocked

Wie im vorhergehenden Beitrag beschrieben, habe ich meine richtigen Kontakte nach dem fhem-Bot-reset mit dem Handy Client am fhem Bot wieder eingetragen.
Bis jetzt funktioniert alles wieder, neue "new contact" Meldungen habe ich noch nicht wieder gesehen, nur die mehrfache message von "Brandon Williams", die aber erfolgreich geblockt wurde.
Eine Frage bleibt noch (für mich): Verhindert allowUnknownContacts "nur" messages von unbekannten Kontakten, oder auch "---_Contact_Update new contact"?

Gruß Roland
Fhem auf Intel NUC11TNKi5+M2 NVMe+32GB RAM mit Ubuntu 22.04 LTS

viegener

Zitat von: hauwech am 01 November 2020, 14:33:13
Ich hatte Contacts mehrmals via setreading zurückgesetzt (hatte ich in einem anderen Beitrag so gelesen). Das hat auch mehrmals funktioniert, bis heute. Wenn ich es richtig verstehe, würde "replaceContacts" die tausende Kontakte auch rausschmeißen, aber aus Modulsicht "sauber".Ahh, OK, das hatte ich übersehen. new contacts kamen mit der ID und dem Kontakt rein, message from kam auch schon mit Namen.
2020.10.27 23:02:41.107 3: TelegramBot_ContactUpdate new contact :1072401260:Rosy_Martinez:@Rostmartinez:
2020.10.27 23:02:41.214 3: TelegramBot_ContactUpdate new contact :1272412769:Richard_Raymond::
2020.10.27 23:28:40.614 3: TelegramBot myTeleBot: Message from unknown Contact (id:1338530656: name:Kevin:) blocked
2020.10.27 23:28:40.617 3: TelegramBot myTeleBot: Message from unknown Contact (id:1338530656: name:Kevin:) blocked

Wie im vorhergehenden Beitrag beschrieben, habe ich meine richtigen Kontakte nach dem fhem-Bot-reset mit dem Handy Client am fhem Bot wieder eingetragen.
Bis jetzt funktioniert alles wieder, neue "new contact" Meldungen habe ich noch nicht wieder gesehen, nur die mehrfache message von "Brandon Williams", die aber erfolgreich geblockt wurde.
Eine Frage bleibt noch (für mich): Verhindert allowUnknownContacts "nur" messages von unbekannten Kontakten, oder auch "---_Contact_Update new contact"?

Gruß Roland

Sorry ich kann das mit den Teilinfos nicht analysieren. Wenn ich helfen soll, brauche ich mehr Informationen sonst stochere ich hier wirklich weter im Dunkeln:

Welche Version hast Du im Einsatz --> die neue aus github oder eine aktuelle aus dem FHEM update?
Es wäre gut, wenn Du die neue Version aus github benutzt und dann nach logeinträgen der Art

"TelegramBot <...>: Found ... - id..." schaust

Das sind die Einträge, die Auskunft darüber geben woher die neuen Einträge reinkommen.
Bitte diese aus dem log hier posten, dann kann ich möglicherweise mehr rausfinden.




Kannst Du bitte mal über replace Contacts Deine Kontakte auf die Kontakte, die Du erwartest und dann
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

hauwech

Tut mir leid, wenn ich Verwirrung gestiftet habe... :-[
Ich hatte aber hier https://forum.fhem.de/index.php/topic,38328.msg1096688.html#msg1096688 geschrieben, daß ich Deine neue Github Version eingesetzt habe.
Aktueller Status:
- Im Einsatz: 50_TelegramBot.pm 22708 2020-09-01 15:51:38Z viegener $
- erlaubte Kontakte mit message vom Handy Client an fhem-bot eingetragen
- allowUnknownContacts = 0
- allowChannels = 0
- seither keine neuen Kontakte
- einige messages von unbekannten Kontakten, die aber erfolgreich geblockt wurden

Verbose habe ich wieder auf "3" gesetzt.
Der Grund:
Ich versende mit Telegram "sendImage" Snapshots von meinen Überwachungskameras bei bestimmten Ereignissen. Mit Verbose >= 4 landen die jpegs als riesige Binärdatenblöcke im log.

Zusammengefaßt: Alles läuft derzeit wieder wie gewünscht, aber ich behalte den TelegramBot erstmal im Blick und suche nach Logeinträgen mit dem von Dir vorgeschlagenen Muster.

Vielen Dank für Deine Unterstützung!
Gruß Roland
Fhem auf Intel NUC11TNKi5+M2 NVMe+32GB RAM mit Ubuntu 22.04 LTS

viegener

Zitat von: hauwech am 02 November 2020, 10:51:53
Tut mir leid, wenn ich Verwirrung gestiftet habe... :-[
Ich hatte aber hier https://forum.fhem.de/index.php/topic,38328.msg1096688.html#msg1096688 geschrieben, daß ich Deine neue Github Version eingesetzt habe.
Aktueller Status:
- Im Einsatz: 50_TelegramBot.pm 22708 2020-09-01 15:51:38Z viegener $
- erlaubte Kontakte mit message vom Handy Client an fhem-bot eingetragen
- allowUnknownContacts = 0
- allowChannels = 0
- seither keine neuen Kontakte
- einige messages von unbekannten Kontakten, die aber erfolgreich geblockt wurden

Verbose habe ich wieder auf "3" gesetzt.
Der Grund:
Ich versende mit Telegram "sendImage" Snapshots von meinen Überwachungskameras bei bestimmten Ereignissen. Mit Verbose >= 4 landen die jpegs als riesige Binärdatenblöcke im log.

Zusammengefaßt: Alles läuft derzeit wieder wie gewünscht, aber ich behalte den TelegramBot erstmal im Blick und suche nach Logeinträgen mit dem von Dir vorgeschlagenen Muster.

Vielen Dank für Deine Unterstützung!
Gruß Roland

Gerne doch , das ist schön zu hören, dass es erstmal läuft wie erwartet.
Zur Erklärung bezüglich der Version: Es ist manchmal schwierig zu entscheiden, ob eine Version noch im Einsatz ist oder nur temporär für einen Test genutzt wurde. Beides kommt vor. Ich plane die github-Version demnächst auch ins normale update zu geben.


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

hauwech

Update:
Es läuft ohne Probleme, die readings bleiben sauber. Ab und zu gibts mal eine geblockte Message from unknown contact.
Fhem auf Intel NUC11TNKi5+M2 NVMe+32GB RAM mit Ubuntu 22.04 LTS

stera

Hallo zusammen,

ist es eigentlich irgendwie möglich über das attr. favorites ein Wert aus einem aktuellen Reading inline anzuzeigen?


z.B.:
attr TelegramBot favorites /[sensor:temperature]


oder wäre es durch eine Programmierung eigentlich umsetzbar?

Schönen Sonntag euch

viegener

Zitat von: stera am 22 November 2020, 13:24:01
Hallo zusammen,

ist es eigentlich irgendwie möglich über das attr. favorites ein Wert aus einem aktuellen Reading inline anzuzeigen?


z.B.:
attr TelegramBot favorites /[sensor:temperature]


oder wäre es durch eine Programmierung eigentlich umsetzbar?

Schönen Sonntag euch

Ich habe nicht wirklich verstanden, was Du erreichen möchtest, deshalb kann ich Dir noch nicht helfen.

Also was möchtest Du erreichen, denn aus Deinem Beispiel ergäbe sich ein favorit z.B: /16 --> also Du müsstest in Telegram die Temperatur raten und könntest dann den Favoriten ausführen, das klingt für mich aber nicht sinnvoll, insofern vermute ich Du möchtest etwas anderes erreichen
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

stera

Ich bin gerade nicht Zuhause, sonst hätte ich etwas Code mitgeschickt.
Wenn ich in Telegram /Fav eingebe, bekomme ich ein Menü bzw die Inline Auswahl. Wenn ich dort draufklicke, kann bzw wird eine Aktion ausgeführt. Ist es möglich, das dort ein aktuelles Reading angezeigt wird ohne das überhaupt auszuführen.

viegener

@stera: Nein diese Möglichkeit gibt es nicht für das Favoritenmenu - die entsprechenden Werte sollen erst bei der Ausführung des Favoriten eingesetzt werden, also wenn man den entsprechenden Favoriten eingibt/auswählt.

Wenn DU aber in einem Menu Wert haben willst so ist das natürlich auch ohne Favoriten machbar, bzw. Du kannst einen einzelnen Favoriten ja auch so definieren, dass er selber ein Menu ausgibt, in dem dann natürlich Werte ausgegebn werden können.

Also z.B. einen Favoriten /xyz definieren und dieser sendet dann ein inline Menu mit Werten als telegram msg zurück. Du bist ja nicht draufangewiesen, /fav zu benutzen
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

stera

Da hast du natürlich recht. Wenn man sich im Handy in der Tastatur noch ein Shortcut macht z.B. hier "v" für /verbrauch dann kommt man schnell dort hin.

Habe es jetzt über ein DoIF gelöst.


### Status an Telegram senden  ###
([TelegramBot:"msgText: /verbrauch"])

( set TelegramBot queryInline @name (Strom [strom:energytoday] kWh|Solar[solar:energytoday] kWh) Verbrauchswerte )
DOELSE


viegener

@stera: Das verstehe ich nicht - warum machst Du genau das nicht einfach über Favoriten - Du brauchst dazu kein DOIF.

Schau Dir dochmal im Detail die Favoriten an - damit sind nicht nur die Menus möglich sondern auch solche Shortcuts - darin können auch werte verwendet werden.

Zum Beispiel so:

/test[Test info]=set yourbotname msg @[yourbotname :msgChatId] {( <some perl code> )} ;


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

htschors

Hallo,

ich hoffe ihr könnt mir weiterhelfen. Ich hatte am 30.01.2020 die letzte erfolgreiche Kommunikation zwischen Telegram und FHEM. Leider komme ich erst jetzt dazu, mich näher damit zu beschäftigen. Ich benötige Telegram aktuell eigentlich nur, um meine Heizung aus der Ferne einzuschalten. Daher war das im Sommer nicht so wichtig.

Ich habe alle Updates aufgrund der neuen SSL Verschlüsselung gemacht. Der Test
openssl s_client -connect api.telegram.org:443
gibt auch einen längeren Text inkl. Zertifikat usw. aus. Von daher gehe ich davon aus, dass die Verbindung möglich ist.

Allerdings bekomme ich in FHEM den Status
NonBlockingGet: returned api.telegram.org: Das Netzwerk ist nicht erreichbar (101)

Ich habe bereits den Token erneurt und den Bot neu in FHEM angelegt. Leider mit demselben Ergebnis.

Habt ihr Ideen, was ich noch prüfen kann?

viegener

Zitat von: htschors am 30 November 2020, 17:03:06
Hallo,

ich hoffe ihr könnt mir weiterhelfen. Ich hatte am 30.01.2020 die letzte erfolgreiche Kommunikation zwischen Telegram und FHEM. Leider komme ich erst jetzt dazu, mich näher damit zu beschäftigen. Ich benötige Telegram aktuell eigentlich nur, um meine Heizung aus der Ferne einzuschalten. Daher war das im Sommer nicht so wichtig.

Ich habe alle Updates aufgrund der neuen SSL Verschlüsselung gemacht. Der Test
openssl s_client -connect api.telegram.org:443
gibt auch einen längeren Text inkl. Zertifikat usw. aus. Von daher gehe ich davon aus, dass die Verbindung möglich ist.

Allerdings bekomme ich in FHEM den Status
NonBlockingGet: returned api.telegram.org: Das Netzwerk ist nicht erreichbar (101)

Ich habe bereits den Token erneurt und den Bot neu in FHEM angelegt. Leider mit demselben Ergebnis.

Habt ihr Ideen, was ich noch prüfen kann?

Die Fehlermeldung hat erstmal weder etwas mit SSL noch mit dem Bot-Token zu tun. Dein FHEM_Rechner oder eben nur FHEM kann den telegram-Server nicht erreichen. Das klingt für mich erstmal nach einem reinen Netzwerkprobem.

Entweder im lokalen Netz oder z.B. durch IPv4 vs IPv6
Frage: Hast Du in FHEM einen DNSServer gesetzt (also im device global)?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

htschors

#2564
Hallo,

ich habe heute bei der Lösungssuche

attr global dnsServer 8.8.8.8

gesetzt (in der FHEM Kommandozeile eingegeben), muss aber zugeben, dass ich mich da nicht auskenne. Ich bin Anfang des Jahres zu Vodafone DSL gewechselt. Vielleicht hat sich da vom Router oder Provider etwas geändert. Aber wie gesagt, da sehe ich aktuell nicht wirklich durch.