FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Maergsche am 04 Februar 2016, 16:04:18

Titel: HTTPMOD Tag/Nachtmodus bei IPCam schalten (Vivotek)
Beitrag von: Maergsche am 04 Februar 2016, 16:04:18
Hallo,

ich möchte bei meiner Vivotek Kamera den Tag/Nachtmodus über Fhem schalten. Ich nutze hierzu das Modul HTTPMOD. Dies Funktioniert auch soweit, doch bekomme ich es nicht hin den STATE für den Schalter zu setzen. Dieser steht immer auf "?"

Die Kamera kann über folgenden aufruf konfiguriert werden:
http://192.168.0.11/cgi-bin/admin/setparam.cgi?ircutcontrol_mode=day bzw.
http://192.168.0.11/cgi-bin/admin/setparam.cgi?ircutcontrol_mode=night

Als Antwort erhalte ich dann:
ircutcontrol_mode='day'
(Seitenquelltext)

Nun habe ich folgendes mit dem Modul HTTPMOD konfiguriert:

define Homecam_DayNight HTTPMOD http://192.168.0.11/cgi-bin/admin/setparam.cgi
attr Homecam_DayNight userattr reading01Name reading01Regex reading1Name reading1Regex set01 set01Hint set01Name set01TextArg set01URL stateFormat
attr Homecam_DayNight room System
attr Homecam_DayNight set01Hint day,night
attr Homecam_DayNight set01Name Mode
attr Homecam_DayNight set01TextArg 1
attr Homecam_DayNight set01URL http://192.168.0.11/cgi-bin/admin/setparam.cgi?ircutcontrol_mode=$val
attr Homecam_DayNight reading01Name Mode
attr Homecam_DayNight reading01Regex ircutcontrol_mode='\w+'


So kann ich nun schonmal den Tag/NachtModus der Kamera ändern.

Nun verzweifel ich aber daran den Status auch in Fhem anzeigen zu lassen!
Wie mache ich das? Irgendwie werden die readings nicht eingelesen... wo ist mein Denkfehler?

Schonmal vielen Dank
Maergsche
Titel: Antw:HTTPMOD Tag/Nachtmodus bei IPCam schalten (Vivotek)
Beitrag von: frank am 04 Februar 2016, 17:27:49
attr Homecam_DayNight reading01Regex ircutcontrol_mode='\w+'
du musst in der regex eine capture group definieren, mit einfachen klammern. zb:

attr Homecam_DayNight reading01Regex ircutcontrol_mode='(\w+)'
Titel: Antw:HTTPMOD Tag/Nachtmodus bei IPCam schalten (Vivotek)
Beitrag von: Maergsche am 05 März 2016, 09:14:03
Leider klappt es weiterhin nicht...

Als Parameter habe ich nun:
reading01Regex: ircutcontrol_mode='(\w+)'

Und bekomme weiterhin im Log die Meldung:
Homecam_DayNight: Read response to Update didn't match any Reading(s)

Titel: Antw:HTTPMOD Tag/Nachtmodus bei IPCam schalten (Vivotek)
Beitrag von: StefanStrobel am 05 März 2016, 22:10:15
Hallo,

Bei Deinem define hast Du eine URL, aber kein Intervall angegeben. HTTPMOD nimmt dann 300 Sekunden als Default und fragt daher alle 5 Minuten unabhängig von einem set-Befehl die URL aus dem Define ab.
Als Ergebnis kommt dann vermutlich eine Antwort, bei der die Regex nicht matcht.

Wenn Du nur einen set-Befehl definieren möchtest, dann definiere das Gerät mit

define xy HTTPMOD none 0


Die Antwort auf einen set-Befehl wird übrigens auch nur in der neuen Version geparsed und dann auch nur wenn das Attribut set01parseResppnse auf 1 gesetzt wurde ...

Gruß
   Stefan