Sirenen gehen nicht bei Alarm an

Hallo,

nutze dieses script:

--[[
%% properties
365 value
%% events
%% globals
--]]

-- notwendige IDs
local sensorID = {221,214,228,251,184,237,244,388} -- IDs der Sensoren
local phoneID = {4,202} -- IDs der Handys
local doorlockID = {} -- IDs der doorlocks

-- zusätzliche Optionen
local own_action = false -- eigene Aktionen ausführen; Funktionen müssen befüllt werden
local disarmed_bug = false -- Firmware Bug umgehen
 
-- eigene Funktionen
function actionsafterArmed()
  fibaro:debug('Führe eigene Funktionen nach dem Schärfen aus')
end
 
function actionsafterDisarmed()
  fibaro:debug('Führe eigene Funktionen nach dem Entschärfen aus')
end
 
-- AB HIER NICHTS MEHR ÄNDERN
local trigger = fibaro:getSourceTrigger()
local rfid_value_status = ''
 
Debug = function ( color, message )
  fibaro:debug(string.format('<%s style="color:%s;">%s</%s>', "span", color, message, "span"))
end
 
function armedcheckSensorID(array)
  for j=1, #sensorID do
    if sensorID[j] ~= nil then
      if (tonumber(fibaro:getValue(sensorID[j], 'armed')) ~= 0) then
          return false
      end
    end
  end
  return true
end
 
-- Funktion für die Öffnung der Tür
function openDoor()
    if (doorlockID[0] ~= nil) then
    fibaro:debug('Türschlösser werden geöffnet.')
    for j=0, #doorlockID do
     if doorlockID[j] ~= nil then
       fibaro:call(doorlockID[j],'unsecure')
     end
    end
  end
 end
 
-- Funktion zum Versenden der Push
function sendPush(text)
 if (phoneID[1] ~= nil) then
  for i=1, #phoneID do
     if phoneID[i] ~= nil then
       fibaro:debug('Versende Push an ID ' ..phoneID[i])
       fibaro:call(phoneID[i],'sendPush', text, 'alarm')
     end
  end
 end
end
 
function setArmedStatus(set_status)
  if set_status then
    fibaro:debug('Sensoren werden scharf geschaltet.')
    for k=1, #sensorID do
     if sensorID[k] ~= nil then
      if (tonumber(fibaro:getValue(sensorID[k], 'value')) == 0) then
       fibaro:call(sensorID[k], 'setArmed', '1')
      else
       local sensorname = fibaro:getName(sensorID[k])
       local sensorroom = fibaro:getRoomNameByDeviceID(sensorID[k])
       fibaro:debug('ACHTUNG: ' .. sensorname .. ' im Raum: ' .. sensorroom .. ' nicht sicher. Sende Push.')
       sendPush('ACHTUNG: ' .. sensorname .. ' im Raum: ' .. sensorroom .. ' nicht sicher.')
      end
     end
     end
  else
    fibaro:debug('Sensoren werden entschärft.')
    for j=1, #sensorID do
     if sensorID[j] ~= nil then
      if (disarmed_bug) then
       setArmed(sensorID[j])
      else
       fibaro:call(sensorID[j], 'setArmed', '0')
      end
     end
    end
  end
end
 
function setArmed(deviceId)
  local dev = api.get('/devices/' .. deviceId)
  dev.properties.armed = false
  api.put('/devices/' .. deviceId, dev)
end
 
-- Funktion zum Anlegen einer Globalen Variablen
function globalVar(var,val)
  local http = net.HTTPClient()
  http:request("http://127.0.0.1:11111/api/globalVariables", {
    options = {
    method = 'POST',
    headers = {},
    data = '{"name":"'..var..'","value":"'..val..'"}',
    timeout = 10000
  },
  success = function(response)
            local result = response.data;
            if response.status == 200 or response.status == 201 then
              fibaro:debug('Status: ' ..response.status.. ' - Variable wurde angelegt')
            else
              fibaro:debug('Error: ' ..response.status.. ' - Zugriff verweigert')
            end
            end,
  error = function(err)
          fibaro:debug('[ERROR] ' .. err)
          end
  })
end
 
if (trigger['type'] == 'property') then
 fibaro:debug('RFID-Szene 3.1 (Official) gestartet.')
 local rfid_ID = tonumber(trigger['deviceID'])
 local rfid_value = tonumber(fibaro:getValue(rfid_ID, 'value'))
  if (rfid_value == 1) then
    rfid_value_status = 'Away'
    Debug('red', 'Status ' ..rfid_value_status.. ' gesetzt.')
    setArmedStatus(true)
    if (fibaro:getGlobal('PresentState') ~= nil) then
     fibaro:debug('Benötigte Variable PresentState erkannt.')
     fibaro:setGlobal('PresentState', 'Away')
    else
     fibaro:debug('Benötigte Variable PresentState NICHT erkannt. Wird erstellt.')
     globalVar('PresentState', 'Away')
    end
    local delay = tonumber(fibaro:getValue(sensorID[1], "armDelay"))
      if (delay ~= 0) then
       fibaro:debug('Arm-Delay erkannt. Arm-Delay: ' ..delay)
       delay = delay + 1
       fibaro:sleep(delay*1000)
      end
    if (not armedcheckSensorID(sensorID)) then
      if (own_action) then
        actionsafterArmed()
      end
      sendPush('ALARMANLAGE aktiv!')
    end
  elseif (rfid_value == 0) then
    rfid_value_status = 'Home'
    Debug('green', 'Status ' ..rfid_value_status.. ' gesetzt.')
    setArmedStatus(false)
    if (fibaro:getGlobal('PresentState') ~= nil) then
     fibaro:debug('Benötigte Variable PresentState erkannt.')
     fibaro:setGlobal('PresentState', 'Home')
    else
     fibaro:debug('Benötigte Variable PresentState NICHT erkannt. Wird erstellt.')
     globalVar('PresentState', 'Home')
    end
    if (armedcheckSensorID(sensorID)) then
     if (own_action) then
       actionsafterDisarmed()
     end
     sendPush('ALARMANLAGE inaktiv!')
     openDoor()
    end
  end
else
    fibaro:debug('Szene manuell gestartet. Widget-Support deaktiviert.')
    fibaro:debug('Hier werden noch weitere Funktionen folgen.')
end

mein Problem (schalte Alarm mal über RFID und mal direkt über das Alarmpanel an) ist, dass der Alarm zwar “ausgelöst” wird, aber

a. bekomme keine Nachricht “Alarm ausgelöst”
und
b. die Sirenen gehen nicht an und der Counter zählt fleißig weiter… nach 3 minuten habe ich den Alarm manuell deaktiviert

Woran kann es liegen?

Danke

habe auch ein ALARM CHECK Code:

--[[
%% properties

%% globals
--]]

fibaro:call(9, "startProgram", "43");
fibaro:call(207, "turnOn");
fibaro:call(4, "sendPush", "Status: Alarmanlage ausgelöst", "breached");

	while tonumber(fibaro:getValue(388, "armed")) > 0 do
  		fibaro:debug('Alarm is breached...');
  		fibaro:sleep(1*1000);
  	end

fibaro:call(204, "turnOff");

(https://www.siio.de/sicherheitalarm/so-nutzt-du-das-fibaro-alarmpanel-des-homecenters/)

ist auch mit dem Alarmpanel verbunden, wird aber nicht ausgelöst…

schade, dass ich die Beiträge nicht bearbeiten kann :frowning:

also der ALARM CHECK war nicht “AKTIV”… nun ist der Aktiv und geht auch :wink:

Allerdings wird ja beim “scharf stellen” alle Fenster und Türen geprüft - richtig so, wenn etwas offen ist bekomme ich eine Meldung und zum Schluss “ALARMANLAGE aktiv”. Habe ich habe alles geschlossen im Vorwege, kommt beim aktivieren kein “ALARMANLAGE aktiv”…

Aber auch da sollte doch eine Meldung erscheinen, dass die Anlage aktiv ist oder?