LUA Verzweigung

Hallo zusammen,

ich möchte eigentlich nur den Status einer Szene meiner Logitech Harmony auslesen und nutzen. Allerdings mache ich irgendetwas falsch und eine If-Verzweigung tut nicht, was ich möchte.


--[[
%% properties
%% events
%% globals
--]]

local isOn = fibaro:getValue(176, "ui.startStopActivitySwitch.value")

if(isOn == 1)
then
  fibaro:debug("An");
else
  fibaro:debug("Aus");
end
fibaro:debug(isOn)
fibaro:call(176, "changeActivityState")

Es wird immer “Aus” ausgeben. Der Wert “isOn” ändert sich jedoch jedes Mal.
Kann doch nicht sein, dass ich bei if einen Fehler mache… ^^

Hi,

Naja, wenn Dein if nicht zutrifft, kommt immer das else…
Was genau gibt Dir Debug von Zeile 16 aus?
Ferner hat Deine Szene keine Trigger.

Viele Grüße Hoggle

Hi,

nutz mal bitte tonumber(fibaro:getValue(176, "ui.startStopActivitySwitch.value")).

Gruß

Was genau gibt Dir Debug von Zeile 16 aus?
Je nachdem, entweder 1 oder 0 und das im Wechsel wie es sein soll.
Ferner hat Deine Szene keine Trigger.
Richtig, ich möchte die Szene später per Alexa (HA-Bridge) ansteuern.
nutz mal bitte tonumber(fibaro:getValue(176, "ui.startStopActivitySwitch.value")).
Ich war der Meinung, dies bereits getan zu haben. Da es aber so funktioniert, muss ich es wohl vergessen haben.^^ Liegt vermutlich daran, dass ich bei der Rückgabe 0 bzw. 1 von einem Integer ausging und nicht von einem String.

DANKE!

Hallo zusammen,

ich bin gerade ein wenig verwirrt, denn “ui.startStopActivitySwitch.value” ändert sich bei mir nicht mehr korrekt. Das heißt, das Script liefert auch dann eine 0 wenn das TV an ist. Auch auf der Oberfläche des Home Center 2 ist der Schalter der Harmony Aktivität immer aus. Selbst dann wenn ich die Aktivität über die physikalische Harmony schalte.

Manuell lässt es sich über den Taster des Plugins schalten.

Schon einmal so etwas erlebt? So bringt mir die schöne Variable nichts.^^