Ich bin neu hier , habe schon ne Menge gelesen aber noch nicht das Richtige gefunden.
Ich wollte einen virtuellen Schalter ( einen Button) mit dem ich ein Relayswitch schalten kann.
Einfach nur ein Modul erstellen und mit ein bischen skript klapt es nicht.
Beim virtuellen Modul habe ich das eingegeben:
if fibaro:call(22, “pressButton”)
then
fibaro:call(11, “turnOn”)
end
if fibaro:call(22, “pressButton”)
then fibaro:call(11, “turnOff”)
end
Dafür brauchst du keine if-Abfrage. Einfach den Befehl in einen Virtuellen Button und gut.
Es würde dir helfen, dich vorher ein wenig in LUA einzulesen… Du wirst sonst nach kurzer Zeit sehr frustriert sein, wenn ich mir deinen Code so anschaue. Sorry
Ich denke meine Frage passt am besten hier rein, damit ich keinen neunen Thread eröffnen muss.
Da ich mit den von Fibaro vorgegebenen Modulen herzlich wenig Anfangen kann, habe ich alles was Sonos oder Hue betrifft als virtuelle Module gemäss den super Anleitungen hier erstellt.
Aus meiner Sicht ist eine Schaltung Ein/Aus oder Play/Pause über zwei verschiedene Buttons, also einer für Ein und ein anderer für Aus, etwas suboptimal. Auch die Schaltung im Homecenter unter Modulen ist ja nur über einen Button möglich. Bisher habe ich dies mit globalen Variablen gelöst, da ich bei den ersten Tests mit Lokalen Probleme hatte. Dies würde dann z.B. wie folgt aussehen:
if (fibaro:getGlobal('gvSchalter') == "Aus") then
fibaro:setGlobal("gvSchalter", "Ein")
fibaro:debug('Schalter gedrückt und Ein')
elseif (fibaro:getGlobal('gvSchalter') == "Ein") then
fibaro:setGlobal("gvSchalter", "Aus")
fibaro:debug('Schalter gedrückt und Aus')
end
Aber ich finde dies nicht so sauber (zu viele GV), respektive kenne ich es auch ein wenig anders von anderen Sprachen. Geht dies wirklich nicht mit lokalen Variablen? Ist es korrekt, dass diese den Wert nach dem beenden des Click Event wieder verlieren? Über die Primäre Schleife habe ich es auch nicht hin bekommen. Oder was habt ihr da für Lösungen? Benutzt jemand die GV als Array?
Besten Dank im Voraus und frohe Festtage
Grüsse
Raffael