To many Instances

Moin,

seit dem letzten FW Update erhalte ich im Controlpanel angehängte Meldung über zu viele Instanzen einer Alarmmeldung.

Ich weiß aber nicht was ich da falsch gemacht haben könnte!

Die Alarmszene soll bei geöffneter Tür eine Meldung versenden.

Instanzen.png

Szene.png

Hi,

darüber haben wir bereits einen Artikel veröffentlicht. Diesen findest du hier:

http://www.siio.de/fibaro-homecenter-und-die-instanzen-einer-szene-das-muesst-ihr-wissen/

Gruß

Moin,

also das beispiel mit dem Motionsenor kann ich verstehen. ABER ich habe hier Fenster/Türkontakte. Um das beschriebene verhalten zu erreichen müßte ich das Fenster ja immer öffnen und schließen um neu zu triggern.

Dazu kommt, in meinem Beispiel gibt es keine Wartezeit. Fenster auf -> Alarm an Handy : Script fertig!

Kannst du mir das noch ein wenig genauer erklären wie ich das sauber parametriere um die Meldung nicht zu erreichen?

Du hast sicherlich den Autostart auf der ersten Seite aktiviert, wodurch bereits eine Instanz läuft. Dies muss aber deaktiviert werden. Dann sollte das Problem nicht mehr auftreten.

Zur Info:

In Modulgruppen werden die Geräte mit einem UND verknüpft. Hier wird aber ein OR benötigt.

Gruß

Du hast sicherlich den Autostart auf der ersten Seite aktiviert, wodurch bereits eine Instanz läuft. Dies muss aber deaktiviert werden. Dann sollte das Problem nicht mehr auftreten.

Autschen, ja da hast du recht! Aber wird die Instanz nicht automatisch beendet wenn Sie durchlaufen ist? Sonst würde ja bei jedem “unerlaubtem” Fenster/Türöffnen eine neue Instanz gestartet werden und diese nie beendet werden.

Zur Info: In Modulgruppen werden die Geräte mit einem UND verknüpft. Hier wird aber ein OR benötigt.

Damit hast du mir eine Frage erspart. Am Anfang ahtte ich nur einen Türsensor und die Alarmnachrichten haben funktioniert. Seit dem weitere dazu gekommen sind nicht mehr. es wurde einfach keine Meldung mehr versendet. Ist natürlich klar, müßten dann ja alle offen sein zum triggern wenn Modulgruppen UND verknüpft sind. Danke für den Hinweis! Das habe ich nun auch angepaßt.

Grüße
dJ

Top :slight_smile:

Die Szene bleibt bei einem autostart immer aktiv. Ergo eine dauerhafte Instanz…

Gruß

Hätte auch nochmal eine Frage dazu. Bin ja gerade alles auf LUA am umstellen.
Das sind meine Fenstersensoren, wo setze ich das “OR” denn nun hin?

fibaro:debug(“Keyfob button 1 pressed”)
fibaro:call(70, “setArmed”, “1”);
fibaro:call(72, “setArmed”, “1”);
fibaro:call(18, “setArmed”, “1”);
fibaro:call(74, “setArmed”, “1”);
fibaro:call(76, “setArmed”, “1”);
fibaro:call(78, “setArmed”, “1”);
fibaro:setGlobal(“Alarmanlage”, “Alarm aktivieren”);

Wozu brauchst du da ein or? Hast doch keine if-Abfrage mit drin…

Gruß

Sorry, wollte den Beitrag zurücknehmen, konnte aber nicht löschen?

Hab zu schnell gelesen, trifft bei der Scene nicht zu.

Hallo
habe seit kurzem auch die Meldung “zu viele Instanzen”

Habe den WallPlug um zu melden, dass die Waschmaschine fertig ist.

Hier mal die Angaben:

–[[
%% properties
52 power
%% globals
–]]

local power_socket = 52 – wallplug
local powerlive = fibaro:getValue(power_socket, “power”)
fibaro:debug(“Verbrauch = “…powerlive…” Watt”)

if (fibaro:countScenes()>1)
then
fibaro:abort();
end

local run = 0
local currentDate = os.date("*t");
local power = fibaro:getValue(power_socket, “power”)
local counter = 0

if ( tonumber(fibaro:getValue(power_socket, “power”)) > 35 ) and run == 0 then
local start = (os.time())
fibaro:debug(“Waschmaschine läuft…”)
fibaro:debug(“Verbrauch = “…power…” Watt”)
run = 1
end

while run == 1 do

if (tonumber(fibaro:getValue(power_socket, “power”)) < 2) then
counter = counter + 1
local power2 = fibaro:getValue(power_socket, “power”)
fibaro:debug('counter = ’ …counter… " : "…power2…“Watt”)
end
if (tonumber(fibaro:getValue(power_socket, “power”)) > 3 ) then
counter = 0
end
if (tonumber(fibaro:getValue(power_socket, “power”)) < 1.0) and counter > 60 then
fibaro:debug(“Waschmaschine ist fertig.”)
local power3 = fibaro:getValue(power_socket, “power”)
fibaro:debug(“Verbrauch (3) = “…power3…” Watt”)
fibaro:debug(“Send Push”)
fibaro:call(15, “sendPush”, “Waschmaschine ist fertig”, “Dischwasher”);
run = 0
end
fibaro:sleep(1*1000)
end

Bringt der OR Befehl was bei mir?

Danke für die Hilfe

Gruß