FHEM Forum

FHEM - Hausautomations-Systeme => Unterstützende Dienste => Thema gestartet von: der-Lolo am 02 März 2023, 19:50:56

Titel: 98_WOL & devStateIcon
Beitrag von: der-Lolo am 02 März 2023, 19:50:56
Hallo Leute,
ich habe eine WOL definition die mir die Synology DiskStation startet und herunterfährt. Es funktioniert wirklich gut und zuverlässig. Ich bekomme es nur nicht hin ein devStateIcon so zu setzen das nach einem Schaltbefehl ( egal ob an oder aus ) die übliche 10px Anzeige gelb wird...

Ich häng mal ein list des WOL an:
Internals:
   DEF        00:11:32:XX:C3:66 192.168.1.XXX UDP
   FUUID      638ba599-f33f-XXXX-c372-8e2a458161257734
   IP         192.168.1.5
   MAC        00:11:32:6E:C3:66
   MODE       UDP
   NAME       DS716WakeOnLan
   NR         699
   REPEAT     000
   STATE      off
   TYPE       WOL
   VERSION    1.05
   eventCount 521
   READINGS:
     2023-03-02 18:35:48   active          off
     2023-03-02 19:44:59   isRunning       false
     2023-03-02 11:02:22   packet_via_EW   none
     2023-03-02 11:02:22   packet_via_UDP  none
     2023-03-02 19:44:59   state           off
   helper:
Attributes:
   DbLogExclude .*
   devStateIcon off:10px-kreis-rot none:10px-kreis-gelb on:10px-kreis-gruen
   interval   60
   room       00 - Haus -> 18 - Medien -> DiskStation,00 - Haus -> 19 - Technik -> DiskStation,90 - System -> 92 - Devices ,90 - System -> 96 - Server -> DiskStation
   shutdownCmd echo ****|ssh fhem@192.168.1.XXX sudo -S poweroff
   sshHostShutdown fhem@192.168.1.XXX
   useUdpBroadcast 192.168.1.255
   verbose    2


wie müßte devStateIcon aussehen dass wenn das Modul getriggert wurde, ( on oder off ) aber noch keine Bestätigung vorliegt der 10px Kreis gelb wird..?

Gruß aus Berlin,
der-lolo
Titel: Antw:98_WOL & devStateIcon
Beitrag von: betateilchen am 02 März 2023, 20:13:41
devStateIcon off:10px-kreis-rot on:10px-kreis-gruen .*:10px-kreis-gelb

Es kommt halt drauf an, welchen Zustand das device zu dem Zeitpunkt hat, also was zwischen dem Schaltbefehl und der Bestätigung im reading state steht.
Du kannst ja mal im Event Monitor beobachten, wie der zeitliche Ablauf ist, wenn Du einen Schaltbefehl abschickst.
Titel: Antw:98_WOL & devStateIcon
Beitrag von: der-Lolo am 02 März 2023, 20:23:20
ah, na klar - ich glaube ich seh das Problem..
das auslösen vom webcmd on ändert nichts am state, es gibt ein zusätzliches Reading "active" hier wird der Schaltvorgang gemeldet.
Ok, wie bekomm ich das in den state?

Der Ausschnitt aus dem Event monitor:
2023-03-02 20:17:32 WOL DS716WakeOnLan active: on
2023-03-02 20:17:32 WOL DS716WakeOnLan packet_via_UDP: 192.168.1.255
2023-03-02 20:18:04 WOL DS716WakeOnLan isRunning: false
2023-03-02 20:18:04 WOL DS716WakeOnLan off
2023-03-02 20:19:05 WOL DS716WakeOnLan isRunning: true
2023-03-02 20:19:05 WOL DS716WakeOnLan on
2023-03-02 20:20:05 WOL DS716WakeOnLan isRunning: true
2023-03-02 20:20:05 WOL DS716WakeOnLan on
2023-03-02 20:21:05 WOL DS716WakeOnLan isRunning: true
2023-03-02 20:21:05 WOL DS716WakeOnLan on
2023-03-02 20:21:09 WOL DS716WakeOnLan active: off
2023-03-02 20:22:07 WOL DS716WakeOnLan isRunning: false
2023-03-02 20:22:07 WOL DS716WakeOnLan off
Titel: Antw:98_WOL & devStateIcon
Beitrag von: betateilchen am 02 März 2023, 20:38:52
Zitat von: der-Lolo am 02 März 2023, 20:23:20
Ok, wie bekomm ich das in den state?

Falsche Frage. In state bekommst Du das überhaupt nicht.

Die Frage müsste lauten "wie bekomme ich das in STATE?"
Und die Antwort wäre: "mit dem Attribut stateFormat"

Aber aus dem Event Monitor kann ich auch bei active keinen Zustand erkennen, der nicht "on" oder "off" wäre.
Titel: Antw:98_WOL & devStateIcon
Beitrag von: der-Lolo am 02 März 2023, 20:45:59
Das ist wahr - active wechselt zwischen on und off.

Hm...
Titel: Antw:98_WOL & devStateIcon
Beitrag von: Otto123 am 02 März 2023, 20:54:09
active gibt den Zustand ob Du on oder off gedrückt hast
state gibt den Zustand ob das Gerät on oder off ist.
Also meine Vorschlag:
attr DS716WakeOnLan stateFormat {ReadingsVal($name,'active','active') ne ReadingsVal($name,'state','state')?'none':ReadingsVal($name,'state','error')}
Titel: Antw:98_WOL & devStateIcon
Beitrag von: der-Lolo am 03 März 2023, 06:16:19
Danke Otto -
das funktioniert..!
Titel: Antw:98_WOL & devStateIcon
Beitrag von: Otto123 am 03 März 2023, 09:29:32
eigentlich verliert man aber so einen Zustand und ganz blöd wenn das Gerät nicht von FHEM geschaltet wurde.
Damit hat man alle vier Zustände on, on-off (shutdown), off, off-on (startup) :
attr TYPE=WOL stateFormat {my $a=ReadingsVal($name,'active','active');;my $s=ReadingsVal($name,'state','state');;$a ne $s?"$s-$a":$s}
War vielleicht nicht Deine Anforderung, aber bei mir kommt das vor :)
Titel: Antw:98_WOL & devStateIcon
Beitrag von: der-Lolo am 03 März 2023, 20:14:37
Also nochmal Danke! - In der Regel schalte ich die Syno aber tatsächlich nur noch von FHEM aus an oder aus.