[gelöst] Temperatur mittels HTTPMOD aus Mobotix abrufen funktioniert nicht mehr

Begonnen von Thoffi1978, 01 Dezember 2020, 11:15:58

Vorheriges Thema - Nächstes Thema

Thoffi1978

Hallo,

bis zum 26.11 hat die Abfrage der Temperatur funktioniert.

Jetzt wird die Temperatur aus der Mobotix nicht mehr aktualisiert. Ich bin mir nicht bewusst etwas geändert zu haben.
Anbei die List der "Temperatur". Könnt Ihr mir sagen warum das nicht mehr geht, bzw. ob etwas im Modul geändert wurde.?
Im Logfile finde ich kein Eintrag. Ändere ich das Passwort  in der URL, dann erhalte ich 120sek später
Temperatur: Read callback: Error: http://Fh123em:fhem1234@192.168.2.12/control/rcontrol?action=gettext&message=$(SEN.TIN.CELSIUS): wrong authentication
Mit dem richtigen Passwort erfolgt kein Eintrag.
Die Abfrage der ULR im Internet Expolrer gibt den Temperaturwert des Kamera aus.
Internals:
   .LASTSEND  1606658768.00877
   .LastUpdate 1606658768.0052
   .TRIGGERTIME 1606658888.0052
   .getList   
   .setList   interval reread:noArg stop:noArg start:noArg clearCookies:noArg upgradeAttributes:noArg storeKeyValue
   .updateRequestHash 1
   BUSY       0
   DEF        http://Fhem:fhem1234@192.168.2.12/control/rcontrol?action=gettext&message=$(SEN.TIN.CELSIUS) 120
   FUUID      5f6b88ec-f33f-7e98-8cad-ca7470639ca5faf7
   Interval   120
   MainURL    http://Fhem:fhem1234@192.168.2.12/control/rcontrol?action=gettext&message=$(SEN.TIN.CELSIUS)
   ModuleVersion 4.0.12 - 24.10.2020
   NAME       Temperatur
   NOTIFYDEV  global
   NR         451
   NTFY_ORDER 50-Temperatur
   STATE      +10.0
   TYPE       HTTPMOD
   value     
   .attreour:
     state
   .readingParseList:
     01
   CompiledRegexes:
   HttpUtils:
     NAME       
     addr       http://192.168.2.12:80
     auth       1
     code       200
     compress   1
     conn       
     data       
     displayurl http://Fhem:fhem1234@192.168.2.12/control/rcontrol?action=gettext&message=$(SEN.TIN.CELSIUS)
     header     
     host       192.168.2.12
     httpheader HTTP/1.0 200 OK
Content-type: text/plain; charset=utf-8
     httpversion 1.0
     hu_blocking 0
     hu_filecount 1
     hu_port    80
     hu_portSfx
     ignoreredirects 1
     loglevel   4
     path       /control/rcontrol?action=gettext&message=$(SEN.TIN.CELSIUS)
     protocol   http
     pwd        fhem1234
     redirects  0
     timeout    10
     url        http://Fhem:fhem1234@192.168.2.12/control/rcontrol?action=gettext&message=$(SEN.TIN.CELSIUS)
     user       Fhem
     sslargs:
   QUEUE:
   READINGS:
     2020-11-26 19:18:46   state           +10.0
   REQUEST:
     context    reading
     data       
     header     
     ignoreredirects 0
     num        0
     retryCount 0
     type       update
     url        http://Fhem:fhem1234@192.168.2.12/control/rcontrol?action=gettext&message=$(SEN.TIN.CELSIUS)
Attributes:
   event-on-update-reading state
   reading01Name state
   reading01Regex \n\s*([-+]?[\d\.]+)
   room       Haus
   timeout    10
   userattr   reading01Name reading01Regex timeout


Wenn ich verbose auf 5 Stelle sehe ich, dass der Wert abgefragt aber nicht geschrieben wird:
2020.11.29 15:12:08 4 : Temperatur: GetUpdate called (update)
2020.11.29 15:12:08 4 : Temperatur: UpdateTimer called from HTTPMOD::GetUpdate with cmd next sets timer to call update function in 120.0 sec at 2020-11-29 15:14:08, interval 120
2020.11.29 15:12:08 5 : Temperatur: AddToQueue adds type update to URL http://Fhem:fhem1234@192.168.2.12/control/rcontrol?action=gettext&message=$(SEN.TIN.CELSIUS), no data, no headers, retry 0, initial queue len: 0
2020.11.29 15:12:08 5 : Temperatur: HandleSendQueue called from HTTPMOD::AddToSendQueue, qlen = 1
2020.11.29 15:12:08 4 : Temperatur: HandleSendQueue sends update with timeout 10 to http://Fhem:fhem1234@192.168.2.12/control/rcontrol?action=gettext&message=$(SEN.TIN.CELSIUS), No Data, No Header
2020.11.29 15:12:08 5 : Temperatur: ReadCallback called from __ANON__
2020.11.29 15:12:08 4 : Temperatur: BodyDecode found charset header and set decoding to utf-8 (bodyDecode was set to auto)
2020.11.29 15:12:08 4 : Temperatur: BodyDecode is decoding the response body as utf-8
2020.11.29 15:12:08 5 : Temperatur: GetCookies is looking for Cookies
2020.11.29 15:12:08 5 : Temperatur: ExtractSid called, context reading, num 0
2020.11.29 15:12:08 4 : Temperatur: checking for redirects, code=200, ignore=0
2020.11.29 15:12:08 4 : Temperatur: no redirects to handle
2020.11.29 15:12:08 5 : Temperatur: Read callback sets LAST_REQUEST to update
2020.11.29 15:12:08 5 : Temperatur: CheckAuth decided no authentication required
2020.11.29 15:12:08 5 : Temperatur: Read starts parsing response to update with defined readings: 01
2020.11.29 15:12:08 5 : Temperatur: ExtractReading state with regex /(?^:\n\s*([-+]?[\d\.]+))/...
2020.11.29 15:12:08 5 : Temperatur: ExtractReading state did not match
2020.11.29 15:12:08 4 : Temperatur: Read response to update didn't match any Reading
2020.11.29 15:12:08 5 : Temperatur: HandleSendQueue called from HTTPMOD::ReadCallback, qlen = 0
2020.11.29 15:12:08 5 : Temperatur: HandleSendQueue found no usable entry in queue
2020.11.29 15:12:08 4 : Temperatur: Read callback: request type was update retry 0, header: HTTP/1.0 200 OK Content-type: text/plain; charset=utf-8, body length 5
2020.11.29 15:12:08 5 : Temperatur: Read callback: body + 4.8


Vielen Dank,
Hoffi

StefanStrobel

Hallo,

der Effekt kommt von der automatischen Dekodierung von Content, die in der neuen Version von HTTPMOD aktiv ist.
Ein

attr bodyDecode none


leider habe ich die Frage erst jetzt gesehen. Im Bereich "Sonstiges" wurde das schon geklärt:
https://forum.fhem.de/index.php/topic,45176.960.html

Gruss
   Stefan