Motion Sensor Push Nachricht

Hallo,

ich möchte gerne eine Pushnachricht bekommen, wenn der Everspring Motion Sensor eine Bewegung erkennt, aber nur wenn der Alarm aktiviert ist. Der Motion Sensor soll aber NICHT den Alarm auslösen, sondern nur eine Push schicken. Kann man das realisieren?

Aktuell starte ich den Alarm mit

https://www.siio.de/sicherheitalarm/so-aktivierst-du-deinen-alarm-mit-dem-rfid-tagreader/

Kann man das irgendwie einbinden?

Schau mal hier:

https://www.siio.de/board/thema/rolladen-bei-bewegung-runter/

Gruß

Hallo,

du musst eine Szene erstellen mit dem Motion Sensor als Trigger.
Danach wird noch geprüft ob die Anlage scharf ist.
Motionid und yourphoneid musst du gegen deine eigenen tauschen.
Achtung du darfst den Motion Sensor nicht schärfen sonst löst du Alarm aus.

--[[
%% properties
<strong>MOTIONID</strong> value
%% globals
--]]

local startSource = fibaro:getSourceTrigger();
if (
 ( (tonumber(fibaro:getValue(<strong>MOTIONID</strong>, "value")) > 0 and tonumber(fibaro:getGlobalValue("PresentState") == 'Away' ) )
or
startSource["type"] == "other"
 
)
then
   fibaro:debug("Condition met");  
          local message = "Bewegung erkannt"
	  fibaro:call(<strong>YOURPHONEID</strong>,  "sendPush", message);
end

Danke für den Code.

Leider bekomme ich folgende Fehlermeldung:

[DEBUG] 19:39:53: line 9: unexpected symbol near ‘<’

Ich habe den Code wie folgt eingefügt:

--[[
%% properties
<strong>MOTIONID</strong> value
%% globals
--]]

local startSource = fibaro:getSourceTrigger();
if (
 ( (tonumber(fibaro:getValue(<strong>147</strong>, "value")) > 0 and tonumber(fibaro:getGlobalValue("PresentState") == 'Away' ) )
or
startSource["type"] == "other"
 
)
then
   fibaro:debug("Condition met");  
          local message = "Bewegung erkannt"
	  fibaro:call(<strong>6</strong>,  "sendPush", message);
end

es fehlten noch ein paar Klammern und “Strong” musste weg:

--[[
%% properties
<strong>MOTIONID</strong> value
%% globals
--]]

local startSource = fibaro:getSourceTrigger();
if (
 ( (tonumber(fibaro:getValue(147, "value")) > 0 and tonumber(fibaro:getGlobalValue("PresentState") == 'Away' ) )
or
startSource["type"] == "other"))
then
   fibaro:debug("Condition met");  
          local message = "Bewegung erkannt"
	  fibaro:call(6,  "sendPush", message);
end

Ja die gehören weg.
Dachte ich bin besonders klug und hebe die Sensoren fett heraus :slight_smile:
Macht im Code keinen Sinn.
Du musst auch noch den Trigger in Zeile 3 ausbessern:
<strong>MOTIONID</strong> value auf 147 value

lg,

Markus

Hatte ich auch schon geändert. Danke

Jetzt noch mal zu Verständnis:

Ich habe jetzt eine Szene mit dem Code wie oben. Dann habe ich noch eine Szene mit folgenden Code:

--[[
%% autostart
%% properties
147 value
141 armed
%% events
%% globals
--]]

local startSource = fibaro:getSourceTrigger();
if (
 ( tonumber(fibaro:getValue(147, "value")) > 0 )
and
 ( tonumber(fibaro:getValue(141, "armed")) > 0 )
or
startSource["type"] == "other"
)
then
	fibaro:startScene(21);
end

Ist das richtig mit den zwei Szenen, oder reicht nur der Code von oben?

Die erste Szene ist ausreichend.
Wenn Du die Alarm Szene von SIIO verwendest dann sollte PresentState auf armed sein wenn Du die Alarm Anlage scharf schaltest.
Die zweite Szene triggert wenn Motion Sensor Bewegung erkennt und wenn Sensor 141 auf scharf geschalten wird.
Szene 21 startet nur wenn manuell gestartet oder Bewegung und Sensor 141 scharf ist.
Was macht Szene 21?
Nachricht senden?
Oder ist das gar die erste Szene?
Also: Wenn ich keinen Fehler gemacht habe dann funktioniert 1. Szene folgender Maßen:
Manuell gestartet: Nachricht wird gesendet
Bewegung erkannt und PresentState ist NICHT away: Da passiert gar nichts
Bewegung erkannt und PresentState ist away: Nachricht wird gesendet und Debug Meldung wird angezeigt