--[[
%% properties
%% globals
isItDarkOutside
–]]
local trigger = fibaro:getSourceTrigger()
if (trigger['type'] == 'property') then
fibaro:debug('Source device = ' .. trigger['deviceID'])
elseif (trigger['type'] == 'global') then
fibaro:debug('Global variable source = ' .. trigger['name'])
elseif (trigger['type'] == 'other') then
fibaro:debug('Other source.')
end
Jetzt habe ich gelesen, dass die Änderung der Globalen Variable über eine Scene geschehen soll.
Also nicht direkt im Panel und wahrscheinlich auch nicht per PUT Befehlt.
OK, habe ich nun auch geändert, aber trotzdem rührt sich nichts.
Ich finde leider in keinem Artikel ob die Scene mit %%autostart versehen muss.
Oder ob die Scene in Fibaro selbst als Manual oder Automatic definiert werden muss.
Hmmm… Wieso soll dies eine Änderung bringen?
Wenn diese Scene nicht ausgeführt wird, dann würde doch ein Auslesen gar nichts bringen.
Habe ich gerade geändert, bringt aber keinen Unterschied. Diese Scene wird nicht ausgeführt, wenn die Globale Variable durch eine andere Scene verändert wird.
Der oben gezeigte Code ist auf ein Minimum Reduziert, damit das Problem klar wird.
Ich wollte jetzt nicht haufenweise Zeilen rein kopieren und es geht nur um die ersten 10. Vielleicht deshalb verwirrend.
Das es sich hierbei um keine Autostart-Szene handelt, sollte dir beim Lesen der Guide-Reihe ja bewusst geworden sein ?
Nimm mal einen Standard-Header und nicht so einen kaputt gerodeten. Möglicherweise liegt das schon daran. Ansonsten bräuchten wir die Szene, welche die Variable ändert.
Edit: Grad nochmal geschaut. Dein Header ist wirklich kaputt, falsche Zeichen, so wird nichts getriggert.
Vielen Dank für die Rückmeldungen. @Boomx: Es hat mir sehr geholfen, dass Du meintest , dass mein Header kaputt war.
Habe den Code 1zu1 von Fibaro UK kopiert nachdem meiner nicht funktionierte.
Ich dachte halt, dass dies die Erläuterung erleichtern würde. Nunja… konnte ja nicht Ahnen, dass die in Ihrem eigenen Code Fehler besitzen. http://www.fibarouk.co.uk/support/lua/library/fibarogetsourcetrigger/
Auch habe ich raus bekommen, dass es nur funktioniert, wenn ich die Scene als Autostart definiere.
Und ich meine nicht %% autostart. Ich meine in der GUI von der Scene im HC2.
Leider ist es genauso wie erwartet, dass Änderungen der Globalen Variable ohne Verwendung einer Scene beim Auslösen ignoriert werden.
Damit löst sich mein Denkansatz wohl in Luft auf. Denn jetzt brauche ich wieder viele Scenen in der HC, damit diese GV ändern.
Aber was du mit der Autostart-Option sagen willst, ist mir nicht klar. Es läuft auf das selbe hinaus, ob du einer Blockszene die GUI-Option aktivierst oder in einer LUA-Szene die Option mit %%. Ist exakt das selbe.
Aber was du mit der Autostart-Option sagen willst, ist mir nicht klar. Es läuft auf das selbe hinaus, ob du einer Blockszene die GUI-Option aktivierst oder in einer LUA-Szene die Option mit %%. Ist exakt das selbe.
Du hast Oben geschrieben: „Das es sich hierbei um keine Autostart-Szene handelt, sollte dir beim Lesen der Guide-Reihe ja bewusst geworden sein ?“
Und dies ist so bei mir nicht richtig. Wenn ich die oben angezeigte Scene zum Laufen bekommen möchte, dann muss ##autostart definiert sein.
Interessanterweise wird diese Scene auch auf der Fibaro Seite ohne Autostart angegeben. Keine Ahnung wieso.
@Hoogle: Vielen Dank für Deinen Link. Ich habe so viel im Internet nach diesem Thema Gesucht aber dieser Beitrag kam niemals vor. Ich habe allerdings bereits komplett auf ein Virtuelles Device umgestellt. Das Experimentieren musste ein Ende finden Einfach per HTTP Request einen Button drücken und die Scenen, welche die Globalen Variablen überwachen werden automatisch ausgelöst. Hätte ich den Link vorher gehabt, wäre dies mein Lösungsweg geworden.
@boomx: Vielleicht lohnt es sich aus Deinem Forum Eintrag (den Ich auch erst vorgestern gefunden habe) API-Calls - Fibaro (HC2) LUA Scripts - siio – Community einen richtig Beitrag zu machen und dort neue Erkenntnisse mit einfließen zu lassen. Gerade IFTTT würde sicher viele Interessieren mit Google Assistents oder anderen Triggern, wenn es hierfür einen umfangreicheren Beitrag geben würde.
Autostart ist hier nicht notwendig. Es muss ohne laufen, sonst bekommst du Probleme mit den Instanzen. Wenn es ohne nicht läuft, dann stimmt bei deiner Konfiguration, bzw. in deinem Code etwas nicht.
Siehe Zitat aus dem geposteten Artikel:
Grundsätzlich kann man sagen, dass die Autostart-Option nur aktiviert werden muss, wenn diese zeitgesteuert ausgeführt wird. In allen anderen Fällen muss diese Option deaktiviert, beziehungsweise das „%% autostart“ aus dem Header entfernt werden, da die Szene ansonsten bereits eine laufende Instanz besitzt.
Genau deshalb wird dies auch so vei Fibaro dargestellt ?
Zu ifttt gibt es bereits einen Beitrag. Ich persönlich bin kein Fan davon, da man durch die Port-Weiterleitung Angriffsfläche für Externe öffnet.