Hallo,
ich lese über HTTPMOD eine eigene Webseite aus auf der ich verschiedene Temperaturen zusammen kommen lasse.
Leider hängt sich das in unregelmäßigen Abständen immer wieder auf. Sprich, es liest keine Seiten mehr von der Webseite.
Hier mal ein Beispiel. Die Daten habe ich um 16:08 Uhr gezogen.
Der letzte Zugriff auf die Webseite war um 15:11 Uhr obwohl ich alle 2min eine Abfrage eingestellt habe
Internals:
.getList
.setList
.updateRequestHash 1
BUSY 0
CHANGED
DEF http://192.168.0.120/index.php 120
Interval 120
LASTSEND 1515855954.71802
MainURL http://192.168.0.120/index.php
ModuleVersion 3.3.11 - 8.5.2017
NAME Status_Heizung
NR 471
STATE Temp_Terrasse: 5.8
TRIGGERTIME 1515856074.71665
TRIGGERTIME_FMT 2018-01-13 16:07:54
TYPE HTTPMOD
addr http://192.168.0.120:80
buf
code 200
data
displayurl http://192.168.0.120/index.php
header
host 192.168.0.120
httpheader HTTP/1.1 200 OK
Date: Sat, 13 Jan 2018 14:11:53 GMT
Server: Apache/2.4.10 (Raspbian)
Vary: Accept-Encoding
Content-Length: 474
Connection: close
Content-Type: text/html; charset=UTF-8
httpversion 1.0
ignoreredirects 0
loglevel 4
path /index.php
protocol http
redirects 0
timeout 2
url http://192.168.0.120/index.php
value 0
.readingParseList:
01
02
03
04
05
06
QUEUE:
READINGS:
2018-01-13 15:11:53 Heizraum 13.9
2018-01-13 15:11:53 HeizungRL 44.2
2018-01-13 15:11:53 HeizungVL 50.4
2018-01-13 15:11:53 Terrasse 5.8
2018-01-13 15:11:53 Warmepumpe_VL 21.3
2018-01-13 15:11:53 Wohnzimmer 22.4
REQUEST:
data
header
ignoreredirects 0
retryCount 0
type update
url http://192.168.0.120/index.php
value 0
defptr:
readingBase:
Heizraum reading
HeizungRL reading
HeizungVL reading
Terrasse reading
Warmepumpe_VL reading
Wohnzimmer reading
readingNum:
Heizraum 03
HeizungRL 06
HeizungVL 05
Terrasse 01
Warmepumpe_VL 02
Wohnzimmer 04
readingOutdated:
requestReadings:
update:
Heizraum reading 03
HeizungRL reading 06
HeizungVL reading 05
Terrasse reading 01
Warmepumpe_VL reading 02
Wohnzimmer reading 04
sslargs:
Attributes:
reading01Name Terrasse
reading01Regex Terrasse[^0-9]+([0-9\.]+)
reading02Name Warmepumpe_VL
reading02Regex Vorlauf_Heizkreise[^0-9]+([0-9\.]+)
reading03Name Heizraum
reading03Regex Heizungsraum[^0-9]+([0-9\.]+)
reading04Name Wohnzimmer
reading04Regex Wohnzimmer[^0-9]+([0-9\.]+)
reading05Name HeizungVL
reading05Regex HeizungVL[^0-9]+([0-9\.]+)
reading06Name HeizungRL
reading06Regex HeizungRL[^0-9]+([0-9\.]+)
room Überwachung
stateFormat Temp_Terrasse: Terrasse
userattr reading01Name reading01Regex reading02Name reading02Regex reading03Name reading03Regex reading04Name reading04Regex reading05Name reading05Regex reading06Name reading06Regex
verbose 5
Hat jemand eine Idee was ich ändern muss?
Tobias
was steht in fhem.log?
du kannst auch noch attr show_error setzen, dann gibt es noch ein error reading.
Hallo,
danke für den Tipp mit dem Error_log. Im moment sehe ich bereits folgende Fehlermeldung:
2018.01.15 00:01:02 3: Status_Heizung: Read callback: Error: 192.168.0.120: Verbindungsaufbau abgelehnt
Wenn ich über den Explorer auf die Seite gehe erhalte ich immer einen Zugriff.
Hat jemand eine Idee?
Nachtrag:
Die Webseite läuft auf einem Raspberry der mir verschiedene Temperaturen sammelt. Ist es möglich dass der die permanente Anfrage meines FHEM irgend wann blockt?
Zum Laufen bekomme ich HTTPMOD übrigens erst wieder wenn ich meinen FHEM-Raspi neu starte
zum testen könntest du den browser im selben takt pollen lassen.
vielleicht musst du den header nur entsprechend setzen. je genauer du den browser aufruf simulierst, desto ähnlicher das ergebnis.
da es dein server ist, kannst du es wahrscheinlich auch konfigurieren.
Zitat von: frank am 18 Januar 2018, 11:17:59
zum testen könntest du den browser im selben takt pollen lassen.
vielleicht musst du den header nur entsprechend setzen.
Hallo Frank,
das hört sich nach einem Plan an.
Wie mache ich das? Meinst du mit Header den im HTML Quelltext?
mit firebug zb oder burpsuite software kannst du die header zeilen vom http request des browsers an deinen server einsehen.
mit attr requestHeader übernimmst du diese dann.
siehe zb im httpmod wiki unter "simple configuration ..."
falls es am poll intervall liegen sollte, kannst du im browser mit automatischem aktualisieren des tabs testen.
du könntest auch noch mit attr enableCookies testen.