FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: stgeran am 31 März 2017, 19:29:42

Titel: Plot von DOIF
Beitrag von: stgeran am 31 März 2017, 19:29:42
Wie kann ich in einem SVG Plot z.B der Temperatur den Zustand eines DOIF (cmd_1 und cmd_2) dastellen?
Titel: Antw:Plot von DOIF
Beitrag von: KernSani am 31 März 2017, 19:45:21
Wenn du den Zustand mit loggst (https://wiki.fhem.de/wiki/FileLog), sollte das genauso funktionieren wie jeder andere plot auch... wenn du unterschiedliche Devices hast, müssen die in das selbe File loggen (oder DBLog)
Titel: Antw:Plot von DOIF
Beitrag von: stgeran am 31 März 2017, 20:11:01
Wenn ich das globale logfile angebe habe ich ALLE ins log geschriebenen Einträge für den Plot zur Verfügung. Ich möchte aber nur bestimmte haben. In meinem DeviceOverview gibt es ein
attr Fenster_K_1_zu
mit Wahlmöglichkeiten, aber kein Eintrag, in dem ich das logfile angeben kann.
Geht das mit
attr Fenster_K_1_zu SVG_FileLog_K_1_Temp_1?
Titel: Antw:Plot von DOIF
Beitrag von: KernSani am 31 März 2017, 20:38:29
Irgendwie habe ich das Gefühl, dass du dir weder den wikilink noch den dazugehörigen Commandref-Eintrag gelesen hast...

deine Devices (das DOIF und der Temperatursensor) müssen in das selbe Filelog loggen. Wie ein Filelog erstellt wird steht im verlinkten Wiki-Eintrag/Commandref.

Basierend auf diesem Filelog kannst du dann einen Plot erstellen, der Zustände beider Devices enthält.... Oder verstehe ich die Frage völlig falsch?

Titel: Antw:Plot von DOIF
Beitrag von: stgeran am 31 März 2017, 20:50:38
Ist schon richtig, den Wiki Eintrag habe ich gelesen, Command ref auch
Ahh, vergiss es
Titel: Antw:Plot von DOIF
Beitrag von: KernSani am 31 März 2017, 21:00:48
Vielleicht können wir das Ganze mal strukturiert angehen.

Ich gehe davon aus, dass du bereits ein Plot der Temperaturwerte hast, poste ein list des SVGs. Um ein Plot zu erzeugen brauchst du ein FileLog (oder verwendest du DBLog? Wäre in diesem Zusammenhang nicht ganz unbedeutend). Poste mal ein "list" des Filelogs.
Dann sehen wir weiter.

Titel: Antw:Plot von DOIF
Beitrag von: stgeran am 31 März 2017, 21:20:48
List vom SVG
Internals:
   DEF        FileLog_K_1_Temp:SVG_FileLog_K_1_Temp_1:CURRENT
   GPLOTFILE  SVG_FileLog_K_1_Temp_1
   LOGDEVICE  FileLog_K_1_Temp
   LOGFILE    CURRENT
   NAME       SVG_FileLog_K_1_Temp_1
   NOTIFYDEV  global
   NR         122
   STATE      initialized
   TYPE       SVG
Attributes:
   label      "Temp Max $data{max1}, Aktuell $data{currval1}, Temp Min $data{min1}, _____Feuchte Max $data{max2}, Aktuell $data{currval2}, Feuchte Min $data{min2}, _____Tau Aktuell $data{currval3}"
   plotsize   1400,300
   room       Keller

List vom FileLog
Internals:
   DEF        ./log/K_1_Temp-%Y.log K_1_Temp
   NAME       FileLog_K_1_Temp
   NOTIFYDEV  K_1_Temp
   NR         121
   NTFY_ORDER 50-FileLog_K_1_Temp
   REGEXP     K_1_Temp
   STATE      active
   TYPE       FileLog
   currentlogfile ./log/K_1_Temp-2017.log
   logfile    ./log/K_1_Temp-%Y.log
   Readings:
     2017-03-31 21:16:51   linesInTheFile  149843
   Pos:
Attributes:
   logtype    text
   room       CUL_HM

Ich hoffe, ich hab alles richtig gemacht ;-)
Titel: Antw:Plot von DOIF
Beitrag von: KernSani am 31 März 2017, 22:20:43
ok, wir brauchen ein zweites FileLog, das die Werte in das selbe File wie das der Temperaturwerte schreibt:

define FileLog_DOIF FileLog ./log/K_1_Temp-%Y.log DEIN_DOIF

damit wird ein Haufen Kram ins Log geschrieben, besser wäre wahrscheinlich sowas:

define FileLog_DOIF FileLog ./log/K_1_Temp-%Y.log DEIN_DOIF:cmd:.*

das habe ich jetzt aber nicht ausprobiert. Nachdem die Werte im Logfile stehen, solltest du in der Lage sein, sie im SVG zu nutzen.