Hauptmenü

Anwesenheit dokumentieren

Begonnen von MiWe58, 07 November 2013, 18:56:09

Vorheriges Thema - Nächstes Thema

MiWe58

Hallo,

derzeit probiere ich mit der "PRESENCE" Funktion. Da mein FHEM-Server auf der Fritzbox läuft, nutze ich die direkte Abfrage des Devices mit der Funktion PRESENCE Fritzbox. Soweit so gut.

Nun möchte ich verschiedene Devices zunächst protokollieren, dafür habe ich ein Logfile angelegt. Die Ergebnisse welches Device wann und wie lange präsent ist, möchte ich über einen SVG-Plot visualisieren.

Ich denke, dass ich die Funktion soweit hinbekommen habe. Nun ist aber der SVG-Graph aus dem Filelog ohne Werte. Vermutlich weil im Logfile der Zustand "present" oder "absent" hinterlegt ist statt einer Zahl, die dargestellt werden kann.

Gibt es eine Möglichkeit, die Zustände so zu codieren, dass sie im SVG-Graphen entsprechend angezeigt werden können?

Devices: RasPi V, HomeMatic, PICCU, Modbus, Heliotherm-Wärmepumpe, SMA PV-Anlage, Easee Laderoboter
Steuerung: Rollos, Beleuchtung, Heizung-Heliotherm, Heizung-Heizkreise, PV-Anlage-Eigenverbrauch, Alarm, Zugang, Wasser

justme1968

wenn du hier im forum suchst wirst du eine ganze reihe beiträge finden in denen beschrieben ist wie man die plotfiles anlegen muss damit auch nicht numerische zustände wie z.b. von presence oder lichtschaltern dargestellt werden können.

auch in der commandref gibt es mindestens ein beispiel dazu.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Puschel74

Hallo,

ZitatGibt es eine Möglichkeit, die Zustände so zu codieren, dass sie im SVG-Graphen entsprechend angezeigt werden können?

Klar.
Einfach mal die fs20.gplot nehmen und anpassen indem du present / absent anstelle on / off einträgst oder present / absent nach on / off mit eventMap mappen lässt.
Dann natürlich noch den Plot passend definieren und du hast eine Ausgangsbasis für weitere Versuche  8)

Interessant wäre noch ein kurzer Auszug aus dem Logfile.
Wie genau aber present / absent aus dem Logfile ausgelesen werden müssen kann ich dir leider nicht sagen da ich DBLog verwende.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

MiWe58

Hallo Justme,

vielen Dank für den Tipp.
Damit bin ich klar gekommen.

Als Anfänger in einem so umfassenden Thema ist es nicht immer leicht, den richtigen Einstieg zu bekommen.
Sicher ist viel und zum Teil auch umfassend beschrieben. Oft aber fehlt der grundsätzliche Einstieg, wenn nur die Details beschrieben werden. Da fehlt dann schon mal das "ganze Bild" zur Orientierung.

Ein Kommentar wie von "Puschel" ist dann nicht wirklich hilfreich, da er einem wohl eher zu verstehen geben soll, dass man sich doch informieren soll. Das habe ich getan, bin jedoch nicht zum Ziel gekommen.

Liegt aber wohl nur an mir  ;)
Devices: RasPi V, HomeMatic, PICCU, Modbus, Heliotherm-Wärmepumpe, SMA PV-Anlage, Easee Laderoboter
Steuerung: Rollos, Beleuchtung, Heizung-Heliotherm, Heizung-Heizkreise, PV-Anlage-Eigenverbrauch, Alarm, Zugang, Wasser

Jaydee

#4
Ich glaube, du hast die Namen verdreht ;-)


Bei mir geht es um meine eigene Anwesenheit, aber bei dir würde das dann analog funktionieren. Hier mal mein gplot-file:

# Created by FHEM/98_SVG.pm, 2013-10-27 23:33:51
set terminal png transparent size <SIZE> crop
set output '<OUT>.png'
set xdata time
set timefmt "%Y-%m-%d_%H:%M:%S"
set xlabel " "
set title 'Anwesenheit'
set ytics ("absent" 0, "present" 1)
set y2tics ("zu" 0, "auf" 1)
set grid
set ylabel ""
set y2label "Tür"
set yrange [-0.1:1.1]
set y2range [0:1.1]

#FileLog 3:TK_Haustuer.*:0:$fld[2]=~"open"?1:0
#FileLog 3:BTiPhone.*:0:$fld[2]=~"present"?1:0

plot "<IN>" using 1:2 axes x1y2 notitle ls l0 lw 1 with steps,\
     "<IN>" using 1:2 axes x1y1 notitle ls l1fill lw 1 with steps

Der erste Eintrag ist bei mir der Zustand eines Türkontaktes (die roten Linien im Plot), der zweite das Presence-Modul (grün).
Das Ergebnis sieht dann aus wie unten.

Gruß
Jan



Puschel74

Hallo,

ZitatEin Kommentar wie von "Puschel" ist dann nicht wirklich hilfreich,

Ok. Wenn der Verweis auf eine annähernd passende GPlot nicht hilfreich ist ...
Noch dazu mit einem möglichen Vorschlag wie man (ich) an das Problem herangehen könnte ...
Ein Hinweis das zumindest auszugsweise das Logfile hilfreich wäre ...

Zitatda er einem wohl eher zu verstehen geben soll, dass man sich doch informieren soll.
Zitat von mir:
ZitatDann natürlich noch den Plot passend definieren und du hast eine Ausgangsbasis für weitere Versuche

Wenn das so missverstanden werden kann werde ich mich in Zukunft hüten und irgendwelche Tipps geben.
Oder aber meine Tipps so umformulieren das es NICHT missverstanden werden kann.

Wie aber in einigen anderen Beiträgen schon angesprochen wurde - und ich denke auch so:

Einen Codeschnipsel hinwerfen bringt nicht viel.
Selbst wenn dieser richtig ist und auf Anhieb funktioniert.
Das System dahinter wie und wann und warum etwas so definiert und angegeben werden sollte wird durch diesen Schnipsel nicht unbedingt leichter verständlich.

Aber nun gut.
Das waren auch nur meine 2cents dazu.

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.

MiWe58

@ Puschel

Da hat es von mir leider eine Verwechslung gegeben!

Meine Kritik war an Justme gerichtet und ich habe versehentlich Deinen Namen eingefügt.
Ich bitte wirklich um Verzeihung!

Asche auf mein Haupt... :-\

Gruß
Michael
Devices: RasPi V, HomeMatic, PICCU, Modbus, Heliotherm-Wärmepumpe, SMA PV-Anlage, Easee Laderoboter
Steuerung: Rollos, Beleuchtung, Heizung-Heliotherm, Heizung-Heizkreise, PV-Anlage-Eigenverbrauch, Alarm, Zugang, Wasser

Puschel74

Hallo,

ZitatIch bitte wirklich um Verzeihung!

Ok. Angenommen.
Kann mal passieren  :)
Schwamm drüber.

Aber für andre muss ich auch eine Lanze brechen.
Er hilft viel und oft und eigentlich immer und sein

Zitatwenn du hier im forum suchst wirst du eine ganze reihe beiträge finden in denen beschrieben ist wie man die plotfiles anlegen
stimmt ja auch.
Ebenso der Verweis auf die commandref.

Du musst dich mal in "unsere" Situation versetzen (du brauchst nur mal die Beitragstitel überfliegen und ich will hier NIEMANDEM zu nahe treten) aber ...
Es werden häufig die selben Fragen (oder zumindest ähnliche) gestellt die sich mit etwas Selbstinitiative lösen lassen würden.
Sooo schlecht ist die Suchfunktion im Forum nicht  8)
Und selbst wenn sich keine Lösung ergibt sollte man erstmal "versuchen" das Problem einzugrenzen.
Wenn man einen Code hat und dann nicht weiter weiß ist das etwas anderes - dann natürlich gerne her mit der Frage.
Aber dann auch den Code, das verwendete .gplot und die Fehlermeldung posten.
Dann wird immer gerne geholfen.
Klar kann dann immer noch der Verweis auf die commandref oder das Wiki oder das Einsteiger.pdf (je nach Problem) kommen.
Den speziell in der commandref ist alles recht gut dokumentiert (finde ich).

Aber es wird natürlich auch Eigeninitiative erwartet.

Ich schreibe bewusst erwartet da FHEM von ALLEN Programmieren in ihrer Freizeit betrieben wird.
Das dürfen wir Normal-User nie vergessen.

So. Genug damit.
Weiter im Text.

Klappt dein Plot jetzt?

Grüße
Zotac BI323 als Server mit DBLog
CUNO für FHT80B, 3 HM-Lan per vCCU, RasPi mit CUL433 für Somfy-Rollo (F2F), RasPi mit I2C(LM75) (F2F), RasPi für Panstamp+Vegetronix +SONOS(F2F)
Ich beantworte keine Supportanfragen per PM! Bitte im Forum suchen oder einen Beitrag erstellen.