FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Schiri1986 am 17 Oktober 2014, 20:39:14

Titel: [Gelöst] State eines Dummys als Variable verwenden
Beitrag von: Schiri1986 am 17 Oktober 2014, 20:39:14
Hallo,
ich möchte mit einer FS20 Fernbedienung ein paar grundlegende Einstellungen an meinem Sonos vornehmen. Dazu soll der erste Tastendruck den Player auswählen, der zweite Tastendruck das Kommando.
Das erste Notify schreibt den Namen des Players in einen Dummy. Dessen State müsste ich dann für die zweite Aktion als Variable auslesen, habe aber keine Idee, wie ich das mache.

Das Kommmando wäre "set Sonos_Wohnzimmer Play", wobei ich "Sonos_Wohnzimmer" durch den State des Dummys "SonosAuswahlFB" ersetzen möchte.

Gibt es einen einfachen Weg, in einem solchen Kommando den State des Dummys als Variable zu verwenden?

Danke!
Titel: Antw:State eines Dummys als Variable verwenden
Beitrag von: Deudi am 18 Oktober 2014, 08:01:41
Value("SonosAuswahlFB")
Titel: Antw:State eines Dummys als Variable verwenden
Beitrag von: Schiri1986 am 19 Oktober 2014, 14:39:31
Vielen Dank, Deudi!
Mein Denkfehler war eher genereller Natur - ich dachte, ich könnte die Variable bequem direkt im set-Befehl verwenden. Das habe ich aber nicht hinbekommen. Stattdessen habe ich es jetzt über folgende Routine gelöst:

sub SonosPlayerPlay() {
my ($player) = (Value("SonosAuswahlFB"));
my ($favorite) = (Value("FavoritAuswahlFB"));
{fhem "set ".$player." ".$favorite};
}


Dein Hinweis hat mir in die richtige Richtung geholfen!
Titel: Antw:[Gelöst] State eines Dummys als Variable verwenden
Beitrag von: Puschel74 am 19 Oktober 2014, 14:41:54
Hallo,

du kannst dir aber einiges an Klammern sparen  ;)

my ($player) = (Value("SonosAuswahlFB"));
sollte auch so passen:
my $player = Value("SonosAuswahlFB");

Und auch hier
{fhem "set ".$player." ".$favorite};
gehe ich mal davon aus das du auf die {} verzichten kannst.

Das ist aber eher kosmetischer Natur.

Grüße