Telegram instant messaging TelegramBot - Empfangen und Senden per FHEM

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

Vorheriges Thema - Nächstes Thema

neumann

Setzen des DNS Servers im Global hat bei mir leider keine Veränderung gebracht.
Modulentwickler
- Spotify #72490
- Nello #75127

Frank_Huber

Zitat von: neumann am 17 August 2017, 13:36:05
Setzen des DNS Servers im Global hat bei mir leider keine Veränderung gebracht.
dannach FHEM neu gestartet?

neumann

Modulentwickler
- Spotify #72490
- Nello #75127

szoller

Das erklärt, warum ich seit einiger Zeit diese Hänger habe... bin also auch betroffen

Tueftler1983

Auch bei mir brachte das setzen des DNS kein Erfolg.

In Telegram habe ich dafür diese meldung:

PollingLastError
NonBlockingGet: returned <hidden>: Can't connect(2) to https://api.telegram.org:443: SSL wants a read first

Frank_Huber

war ja auch nur ne Vermutung da ein paar User die den DNS gesetzt haben keine Probleme haben.

viegener

@haus-automatisierung.com: Nein die Logs sollten genauso sein, allerdings ohne den Hänger. Deine Analyse ist da nicht korrekt.

wie oben schon beschrieben: SUCCESS fromm Polling ist der Abschluss des letzten Callback-Aufrufs, aber da muss das nächste Polling ja schon gestartet sein, damit es weitergeht (longpoll). Danach wird die Kontrolle wieder an FHEM übergeben und dann entsteht der Hänger wie es aussieht. Die nächste Meldung (called from polling) ist genau der Start des Callbacks, wenn der Pollaufruf an Telegram zurückkehrt, entweder mit Daten oder nach Timeout.

Also findet der Hänger statt nachdem der Callback beendet ist und bevor der Telegrambot das nächste Mal aufgerufen wird. Warum das jetzt aufrtitt und auch mit diesen "SSL read first" zusammenfällt ist mir unklar.

Zusammenfassung:
- Es gibt wohl keinen Zusammenhang mit den TelegramBot-Änderungen
- Das es mit pollingTimeout 0 läuft macht klar, dass der Pollingaufruf über HTTPUtils obwohl nicht blocking angesetzt irgendwie doch blocking ist
- Ich werde eine Debug-Version bereitstellen mit mehr logausgaben, damit mehr Infos kommen
- Ich vermisse immer noch Hinweise, was bei Euch am System geändert wurde, dass es auftrat, wenn es der Update nicht wahr

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

viegener

Ich habe DNS nicht gesetzt und trotzdem keine Probleme

@szoller: Seit wann tritt das Problem auf und welches genau?

@Tueftler1983: Hattes du die Meldung mit "SSL wants a read first" nur einmal und wann kam diese oder mehrfach - kannst Duz dazu logs erstellen?

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

MadMax-FHEM

Vielleicht hat es tatsächlich nichts mit dem Telegram zu tun:

https://forum.fhem.de/index.php/topic,75528.0/topicseen.html

je nachdem was sich dort ergibt...
...also nur ein Einzelproblem oder evtl. doch was "generelles" in fhem.

Bei mir ist (noch) alles gut.

DNS gesetzt und letzter Update schon einige (mehrere) Tage her.

Gruß, 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)

Papaloewe


dtavb

ich habe das Problemchen auch seit dieser Woche.

Was habe ich getan:
verzweifelt fhem komplett auseinander gerissen.
Aktuell hat er keine HTTPS web-Instanzen, CRSF Token, Telegram und nur noch wirklich notwendigen Devices - keine Archiv-Devices, notifys und doifs mehr

Was habe ich davor getan:
"eigentlich" nichts...ausser ein paar notifys und regeln für geofency tracking und Anwesenheitssteuerung eingebaut.
Paar dummys angelegt und munter lustig miteinander verknüpft.

Als das Problem plötzlich losging, erstmal im Log nach Fehlern gesucht und vermehrt immer wieder gemeldeten ssl3 handshake Probleme gesehen und mich dann voll darauf konzentriert.
Das mit TLS1.2 kann ich nachvollziehen, daran habe ich auch lange rumgeknobelt. Allerdings wurden im Log nur meine android-fhem App und mein PC mit Browser bei den handshake Problemen genannt. Telegram wurde nicht aufgeführt, verbose war aber auch nicht für das Objekt gesetzt.

Nun läuft er wieder wie er soll, nachdem fhem viele Federn lassen musste.

Werde Morgen zuerst Telegram anstelle HTTPS aktivieren, wenn ich diesen Thread so sehe. Dann müsste er ja wieder hängen.
fhem:pi3&kvm, z-wave, it-funk, milight, zigbee, wifi, bt & presence, geo-tracking, alexa, esp.
Monitoring: ELK(syslog), grafana (grafik), netdata (ermittlung)
Security: haproxy (access), ossec (überall), snort (access), opnsense (fw)
Geplant: KVM-Cluster

Avatar

Genau, auch bei mir, ich habe nichts gemacht.
Nur auf einmal, im laufe des Tages ist dies aufgetaucht.

Ich habe das das DNS Attribut ergänzt und keine Änderung. das Problem ist weiterhin vorhanden.

Es ist schwierig zu denke dass es an einem anderen Ort sein könnte als beim Telegram , denn geändert wurde nichts und nur wenn pollingTimeout auf 0 steht ist hängt FHEM nicht mehr.


viegener

#1542
Wie egsagt ich brauche Eure Hilfe für die Eingrenzung des Problems

Anbei sind mal 2 modifizierte Module mit mehr Debug ausgaben um das Problem einzugrenzen
50_TelegramBot / HTTPUtils

Achtung: Diese sind keine Fehlerbehebung sondern nur um das Problem zu verstehen !!!!!!

Ich bräuchte hierzu Hilfe von Leuten, die das Problem haben. Diese beiden Dateien in Ihrer FHEM-Installation verwenden (Original-Dateien vorher sichern !!!)

Also
1) Existierende Installation - backup durchführen und zu ersetzende Dateien kopieren
2) Also angehängte Dateien ins FHEM-Verzeichnis
3) Server neustarten
4) Verbose 5 auf dem TelegramBot oder noch besser im Gesamtsystem - global
5) Etwas laufen lassen bis das Problem auftritt - am besten mehrfach
6) FHEM-Logfile von dieser Zeit mir per PN oder hier senden (anonymisiert) - Am besten mit Beschreibung was gemacht/beobachtet wurde während der Zeit
7) Originalversion restaurieren

Achtung 2 - Wer das macht sollte wissen was er tut und sich etwas in FHEM auskennen

Danke schonmal für Eure Hilfe


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

neumann

2017.08.18 16:21:15 5: TelegramBot_Callback teleBot: called from Polling
2017.08.18 16:21:15 5: TelegramBot_Callback teleBot: data returned :{"ok":true,"result":[]}:
2017.08.18 16:21:15 5: TelegramBot_Deepencode teleBot: found an ARRAY
2017.08.18 16:21:15 5: TelegramBot_Deepencode teleBot: encoded a String from :true: to :true:
2017.08.18 16:21:15 5: TelegramBot_Deepencode teleBot: found a HASH
2017.08.18 16:21:15 5: TelegramBot_Callback teleBot: after encoding
2017.08.18 16:21:15 5: TelegramBot_Callback teleBot: polling returned result? 0
2017.08.18 16:21:15 5: UpdatePoll teleBot: number of results 0
2017.08.18 16:21:15 5: TelegramBot_UpdatePoll teleBot: called
2017.08.18 16:21:15 4: TelegramBot_UpdatePoll teleBot: - Initiate non blocking polling - With callback set
2017.08.18 16:21:15 5: TelegramBot_readToken: Read Telegram API token from file
2017.08.18 16:21:15 4: TelegramBot_UpdatePoll teleBot: initiate polling with nonblockingGet with 120s
2017.08.18 16:21:15 1: HttpUtils url=<hidden>
2017.08.18 16:21:15 4: TelegramBot_UpdatePoll teleBot: - Ende > next polling started
2017.08.18 16:21:15 4: TelegramBot_Callback teleBot: resulted in SUCCESS from Polling
2017.08.18 16:21:15 4: TelegramBot_Callback teleBot: - polling so no retry
2017.08.18 16:21:15 4: TelegramBot_Callback teleBot: - Ende > Control back to FHEM
2017.08.18 16:25:21 5: TelegramBot_Callback teleBot: called from Polling
2017.08.18 16:25:21 5: TelegramBot_Callback teleBot: polling returned result? <undef>
2017.08.18 16:25:21 5: Starting notify loop for teleBot, 1 event(s), first is PollingLastError: NonBlockingGet: returned <hidden>: Can't connect(2) to https://api.telegram.org:443:  SSL wants a read first
2017.08.18 16:25:21 4: TelegramBot_Set teleBot: called
2017.08.18 16:25:21 4: TelegramBot_Set teleBot: Processing TelegramBot_Set( ? )
2017.08.18 16:25:21 4: TelegramBot_Set teleBot: called
2017.08.18 16:25:21 4: TelegramBot_Set teleBot: Processing TelegramBot_Set( ? )
2017.08.18 16:25:21 5: End notify loop for teleBot
2017.08.18 16:25:21 5: Starting notify loop for teleBot, 1 event(s), first is PollingErrCount: 1
2017.08.18 16:25:21 4: TelegramBot_Set teleBot: called
2017.08.18 16:25:21 4: TelegramBot_Set teleBot: Processing TelegramBot_Set( ? )
2017.08.18 16:25:21 4: TelegramBot_Set teleBot: called
2017.08.18 16:25:21 4: TelegramBot_Set teleBot: Processing TelegramBot_Set( ? )
2017.08.18 16:25:21 5: End notify loop for teleBot
2017.08.18 16:25:21 5: TelegramBot_UpdatePoll teleBot: called
2017.08.18 16:25:21 4: TelegramBot_UpdatePoll teleBot: - Initiate non blocking polling - With callback set
2017.08.18 16:25:21 5: TelegramBot_readToken: Read Telegram API token from file
2017.08.18 16:25:21 4: TelegramBot_UpdatePoll teleBot: initiate polling with nonblockingGet with 120s
2017.08.18 16:25:21 1: HttpUtils url=<hidden>
2017.08.18 16:25:21 4: TelegramBot_UpdatePoll teleBot: - Ende > next polling started
2017.08.18 16:25:21 4: TelegramBot_Callback teleBot: resulted in NonBlockingGet: returned <hidden>: Can't connect(2) to https://api.telegram.org:443:  SSL wants a read first from Polling
2017.08.18 16:25:21 4: TelegramBot_Callback teleBot: - polling so no retry
2017.08.18 16:25:21 4: TelegramBot_Callback teleBot: - Ende > Control back to FHEM
Modulentwickler
- Spotify #72490
- Nello #75127

viegener

@neumann - Danke für die kurzfristige Reaktion - hast Du auch httpUtils ersetzt? Ich finde nämlich keine weiteren Logeinträge in httputils und genau die würden mich interessieren

2. Frage: Du hattest keine Hänger - korrekt?
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können