Attribut über devStateIcon setzen?

Begonnen von Talkabout, 09 Juli 2015, 20:12:09

Vorheriges Thema - Nächstes Thema

Talkabout

Hallo zusammen,

ich habe bei mir Fensterkontakte, die so wie im Anhang bei mir angezeigt werden. Nun möchte ich, am besten über devStateIcon, damit ich keine ReadingsGroups o.ä. erstellen muss, über ein Klick auf das Icon des Fensters ein Attribut setzen/entfernen. Ist so etwas über das Tripel

regexp:icon-name:cmd

im devStateIcon realisierbar? Ich würde mir so etwas vorstellen wie

opened:window_opened:{set <Fensterkontakt> attr XYZ <Wert>}

hat jemand schon Ähnliches umgesetzt?

Danke!

Gruss

justme1968

#1
das geht über cmdalias.

in devStateIcon verendest du irgendein cmd (muss es noch nicht mal wirklich geben) und über cmdalias machst du aus dem set dann etwas anderes.

devStateIcon opened:window_opened:xyz wird automatisch zu set <device> xyz wird über cmdalias zu attr <Fensterkontakt> XYZ <Wert>.

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

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

Talkabout

Zitat von: justme1968 am 09 Juli 2015, 20:24:31
das geht über cmdalias.

in devStateIcon verendest du irgendein cmd (muss es noch nicht mal wirklich geben) und über cmdalias machst du aus dem set dann etwas anderes.

devStateIcon opened:window_opened:xyz wird automatisch zu set <device> xyz wird über cmdalias zu attr <Fensterkontakt> XYZ <Wert>.

gruss
  andre
Danke Dir Andre, damit klappt es.

Gruss

Talkabout

Hallo Andre,

vielleicht weisst Du auch die Antwort auf folgende Frage: Wie kann ich, nachdem der benutzerdefinierte Befehl ausgeführt wurde, FHEMWEB dazu bringen, dass das Icon des Devices neu geladen wird? Kann ich von FHEM aus (Perl) ein notify an FHEMWEB schicken, dass das Device aktualisiert werden muss?

Danke!

Gruss

justme1968

icons hängen normalerweise nur readings bzw. STATE ab. du kannst versuchen per trigger ein passendes event zu erzeugen oder state per setreading zu setzen.

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

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

Talkabout

Hallo Andre,

danke Dir für den Tipp. So war ich in der Lage es zu lösen:

my $state = ReadingsVal($name, 'state', '');
fhem "setreading " . $name . " state 0";
fhem "setreading " . $name . " state " . $state;


$name ist hier der Name des Devices. Damit wird im FHEMWEB das Icon aktualisiert. Vielleicht kennt noch jemand eine elegantere Lösung.

Danke!

Gruss