Hallo,
ich möchte via HTTPMOD den Status meines DunePlayers auslesen. Über ein DOIF würde ich dann bei Status "paused" z.B. das Licht hochdimmen, bzw. bei Status "Play" das Licht herunterdimmen. Soweit so gut.
Dazu ist es aber erforderlich, das das Abfrageinterval auf 1-2 sek. steht. Ist das kritisch für die Systembelastung ?
LG
Hängt vom verwendeten Server-Hardware, Anzahl und Art der Notifies/FileLogs/etc, und der sonstigen Peripherie (HomeMatic/etc) ab. Generell ist Pollen keine gute Idee.
Danke. Hm, der Banana ist schon recht kraftvoll, habe aber viele 1wireDevices, sehr viele DOIFs etc. Ich werds ausprobieren und per htop beobachten.
Kann man das Intervall bei HTTPMOD per "set / attr <Device> Intervall XY" ändern> ? Analog zu 1wire-Devices ?
Dann könnte ich ein Notify basteln, welches dieses temporär rauf oder runtersetzt.
"help httpmod" (im Befehls-Eingabefeld)
Suche nach "interval" ... führt Dich zu
Set-Commands
as defined by the attributes set.*Name If you set the attribute enableControlSet to 1, the following additional built in set commands are available:
interval
- set new interval time in seconds and restart the timer
- ...
Peter
Ok, danke.
Komme an meinen FHEM Server gerade nicht dran. Werde ich nachher ausgiebigst probieren.
Sorry, komme da nicht weiter. Und die Beispiele in der commandref/wiki verstehe ich auch nicht.
Dies liefert mir mein Dune, dabei möchte ich "NUR" <command_result>
<param name="protocol_version" value="3"/>
<param name="player_state" value="file_playback"/>
<param name="playback_state" value="paused"/>
"playback_state" als Reading dargestellt haben. Wer kann mir da helfen ?
"help httpmod" in der FHEM-Kommandozeile liefert mir:
Unknown command help, try help.
Zitat von: Bartimaus am 24 November 2015, 17:47:59
Sorry, komme da nicht weiter. Und die Beispiele in der commandref/wiki verstehe ich auch nicht.
Dies liefert mir mein Dune, dabei möchte ich "NUR" <command_result>
<param name="protocol_version" value="3"/>
<param name="player_state" value="file_playback"/>
<param name="playback_state" value="paused"/>
"playback_state" als Reading dargestellt haben. Wer kann mir da helfen ?
Du brauchst sowas:
reading01Name playbackState
reading01Regex <regulärer Ausdruck, der den gewünschten Wert zurückliefert>
wobei Du den readingXXName selbst wählen kannst und (dafür gibt es reichlich Tools) den regulären Ausdruck (http://www.fhemwiki.de/wiki/Regul%C3%A4rer_Ausdruck) zusammenstellen musst, der Dir den gewünschten Teilstring aus Deinem HTML Datenstrom extrahiert.
Zitat von: Bartimaus am 24 November 2015, 17:47:59
"help httpmod" in der FHEM-Kommandozeile liefert mir:
Unknown command help, try help.
Auf welchem Stand ist denn Dein Fhem? Insbesondere 98_help.pm und 98_HTTPMOD.pm?
Peter
Hallo,
ich habe jetzt wie folgt definiert:
reading01Name Status
reading01Regex \bplaying?|paused?\b
Verbose habe ich mal Testweise auf 5 gesetzt.
Im Logfile steht nun
2015.12.19 17:03:22 5: DuneWz: Read starts extracting all Readings from HTTP Response to Update
2015.12.19 17:03:22 5: DuneWz: ExtractReading Status with regex /\bplaying?|paused?\b/...
2015.12.19 17:03:22 5: DuneWz: ExtractReading sets Status to
2015.12.19 17:03:22 4: DuneWz: Read response to Update matched Reading(s) Status
2015.12.19 17:03:22 5: DuneWz: HandleSendQueue called, qlen = 0
Ein Reading01 mit Name "Status" wird nicht angelegt.
Leider verstehe ich das ProgrammierEnglisch in der Hilfe/Wiki nicht wirklich.... :-[
Was fehlt denn noch ?