Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. [Projekt] Alarmanlage mit mehreren Alarmstufen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.6k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.9k

[Projekt] Alarmanlage mit mehreren Alarmstufen

Geplant Angeheftet Gesperrt Verschoben Praktische Anwendungen (Showcase)
138 Beiträge 32 Kommentatoren 36.3k Aufrufe 21 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • C Offline
    C Offline
    ChrisX
    schrieb am zuletzt editiert von
    #25

    ich kenne das Alarmanlagen Modul von Fhem das arbeitet auch mit verschiedenen Alarmstufen Actor / Sensor.

    Gibt es deine Alarmanlage später auch irgendwie als Komplett Paket ? geht das in iobroker ? Sorry bin noch absoluter iobroker Neuling nach 6 Jahren FHEM.

    1 Antwort Letzte Antwort
    0
    • ? Offline
      ? Offline
      Ein ehemaliger Benutzer
      schrieb am zuletzt editiert von
      #26

      Hallo ChrisX,

      was meinst du mit Komplettpaket?

      Welche Features des Fhem Alarmpakets nutzt du?

      Ich bin noch am testen der Alarmanlage im Alltag um rauszufinden was ich an Features wirklich benötige.

      Für Ideen und Feedback bin ich immer dankbar

      1 Antwort Letzte Antwort
      0
      • O Offline
        O Offline
        olifall
        schrieb am zuletzt editiert von
        #27

        Hallo zusammen,

        ich wollte mal fragen ob mir jemand mit Blockly weiterhelfen kann.

        Ich bin Neuling in Sache ioBroker und mit Programmieren kenne ich mich auch nicht gut aus.

        Bei mir läuft Homematic mit Fenster/Türkontakten und sonst noch ein paar Aktoren. Ich habe mit einem CCU2 Programm eine Alarmanlage realisiert, das leider nicht immer 100% läuft, es ist

        immer wieder mal ein komisches Verhalten vorhanden.

        Jetzt habe ich gedacht, weil ioBroker so eine super Sache ist, (habe es geschafft meine Geräte über Siri zu steuern) würde ich gerne das Alarmanlage Programm von der CCU auf ioBroker zu

        übernehmen. Leider bekomme ich es nicht hin.

        Vielen Dank schonmal

        Gruss Oli

        Hier mein CCU Programm:
        4366_alarmierungog1.jpg
        4366_alarmierungog2.jpg

        1 Antwort Letzte Antwort
        0
        • S Offline
          S Offline
          sckibo
          schrieb am zuletzt editiert von
          #28

          Hallo zusammen,

          irgendwie komme ich leider nicht weiter.

          Wenn ich das Programm "alarm_run" laufenlasse, findet das Script scheinbar meine Geräte nicht:

          //Sensors

          var selFacade = $('statestate.id=javascript.0.*');

          var size = Object.keys(selFacade).length;

          log('size of selFacade: '+size+' selFacade: '+selFacade+' type: '+typeof selFacade);

          selFacade.on(function(obj) {

          _checkSensor(obj,'facade');

          log("Obj: ",obj);

          });

          var selMotion = $('statestate.id=javascript.0.*');

          size = Object.keys(selMotion).length;

          log('size of selMotion: '+size);

          selMotion.on(function(obj) {

          _checkSensor(obj,'motion');

          });

          Output:

          21:57:14.480 [info] javascript.0 Start javascript script.js.common.Alarm_Run

          21:57:14.483 [info] javascript.0 script.js.common.Alarm_Run: size of selFacade: 5 selFacade: [object Object] type: object

          21:57:14.483 [info] javascript.0 script.js.common.Alarm_Run: size of selMotion: 5

          21:57:14.483 [info] javascript.0 script.js.common.Alarm_Run: loadSettings profile:default

          21:57:14.483 [info] javascript.0 script.js.common.Alarm_Run: registered 4 subscriptions and 0 schedules

          Kann mir jemand sagen, wie ich feststelle, ob er die "facade" Sensoren gefunden hat?

          vielen Dank, Sckibo
          4423_facade.png

          1 Antwort Letzte Antwort
          0
          • ? Offline
            ? Offline
            Ein ehemaliger Benutzer
            schrieb am zuletzt editiert von
            #29

            @sckibo:

            //Sensors

            var selFacade = $('statestate.id=~~[color=#FF0000]~~javascript.0.*'); `

            Deine Objekte kiegen nicht unter der Instanz javascript.0.

            Trag mal deine korrekte Instanz dort ein "hm-rpc.0".

            Das könnte es schon gewesen sein.

            1 Antwort Letzte Antwort
            0
            • S Offline
              S Offline
              sckibo
              schrieb am zuletzt editiert von
              #30

              @nisio:

              @sckibo:

              //Sensors

              var selFacade = $('statestate.id=~~[color=#FF0000]~~javascript.0.*'); `

              Deine Objekte kiegen nicht unter der Instanz javascript.0.

              Trag mal deine korrekte Instanz dort ein "hm-rpc.0".

              Das könnte es schon gewesen sein. `

              yep - das war es - jetzt werden die Sensoren gefunden.

              Die Visualisierung funktioniert aber immer noch nicht.

              Wenn ich den View auswähle, erhalte ich die beiliegenden Screens.

              vielen Dank, sckibo
              4423_vis1.png
              4423_vis2.png
              4423_vis3.png
              4423_vis4.png

              1 Antwort Letzte Antwort
              0
              • ? Offline
                ? Offline
                Ein ehemaliger Benutzer
                schrieb am zuletzt editiert von
                #31

                Hast du weiß als Background-color? Probier mal etwas dunkles aus.

                Die meisten Symbole sind weiß und könnten daher bei deinem weißen Hintergrund unsichtbar sein.

                1 Antwort Letzte Antwort
                0
                • S Offline
                  S Offline
                  sckibo
                  schrieb am zuletzt editiert von
                  #32

                  Hi,

                  vielen Dank - das hat funktioniert.

                  vg, sckibo

                  1 Antwort Letzte Antwort
                  0
                  • ? Offline
                    ? Offline
                    Ein ehemaliger Benutzer
                    schrieb am zuletzt editiert von
                    #33

                    @sckibo:

                    Hi,

                    vielen Dank - das hat funktioniert.

                    vg, sckibo `

                    Wunderbar, viel Spaß beim weitere Testen

                    1 Antwort Letzte Antwort
                    0
                    • S Offline
                      S Offline
                      sckibo
                      schrieb am zuletzt editiert von
                      #34

                      Hi zusammen,

                      die nächste Idee ist es, daß offene Fenster beim Scharfschalten angezeigt werden - dann kann nicht scharfgeschaltet werden, solange nicht alle Fenster zu sind…

                      vg, sckibo...

                      1 Antwort Letzte Antwort
                      0
                      • T Offline
                        T Offline
                        tempestas
                        schrieb am zuletzt editiert von
                        #35

                        gibts in diversen Skripten hier. Hier ein Ausschnitt aus meinem Skript. Bei mir kann allerdings weiter scharfgeschaltet werden, es wird aber informiert, dass noch etwas offne ist. Grund: falls ich unterwegs bin und die Automatik die Alarmanlage einschaltet, habe ich nichts davon, wenn ich wg. eines offenen Fensters, an dem ich dann eh nichts mehr ändern kann, die Alarmanlage grundsätlich nicht einschalte.

                        Wenn ich sie manuell daheim anschalte, wird es optisch dargestellt und beim einschalten nochmals gewarnt, wenn ein Fenster noch offen sein sollte.

                        ! ````
                        // ########################################################################
                        // ####### Fensterstatus beim einschalten der Alarmanlage überwachen #####
                        ! var fensterOffen =[];
                        var info;
                        ! function fensterPruef() {
                        ! var cacheSelectorState = $('channelstate.id=*.STATE');
                        ! cacheSelectorState.each(function (id, i) { // Schleife für jedes gefundenen Element *.STATE im Gewerk Alarmanlage_Huelle
                        var status = getState(id).val; // Zustand *.STATE abfragen (jedes Element) // alt: getState(id).val;
                        var obj = getObject(id);
                        var name = getObject(id).common.name;
                        var devicename = name.substring(0, name.indexOf(":1.STATE")); //:1.state aus Text entfernen

                            if(status ||status === 1){
                            fensterOffen.push(devicename);                                          // offene Fenster zum Array hinzufügen    
                            fensterOffen.sort;                                                      // Array sortieren
                            if(debug2) log(fensterOffen);
                            }
                        });
                        if(fensterOffen.length > 0) info = "Folgende Fenster noch offen: "+fensterOffen;
                        else info = "Alle Fenster geschlossen.";
                        if(debug2) log("Info ist "+info);    
                        

                        }

                        ! ````

                        <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

                        1 Antwort Letzte Antwort
                        0
                        • S Offline
                          S Offline
                          sckibo
                          schrieb am zuletzt editiert von
                          #36

                          Hi Tempestas,

                          das sieht gut aus, schau ich mir spöter genau an. Wie nimmst Du denn dann das betreffende Fenster aus der Alarmierung raus? Ich verstehe, daß Du die Alarmanlage trotzdem scharfschaltest, auch wenn ein Sensor auslöst. Dann kann dieser Sensor aber nicht mehr alarmieren, oder?

                          @tempestas:

                          gibts in diversen Skripten hier. Hier ein Ausschnitt aus meinem Skript. Bei mir kann allerdings weiter scharfgeschaltet werden, es wird aber informiert, dass noch etwas offne ist. Grund: falls ich unterwegs bin und die Automatik die Alarmanlage einschaltet, habe ich nichts davon, wenn ich wg. eines offenen Fensters, an dem ich dann eh nichts mehr ändern kann, die Alarmanlage grundsätlich nicht einschalte.

                          Wenn ich sie manuell daheim anschalte, wird es optisch dargestellt und beim einschalten nochmals gewarnt, wenn ein Fenster noch offen sein sollte.

                          1 Antwort Letzte Antwort
                          0
                          • T Offline
                            T Offline
                            tempestas
                            schrieb am zuletzt editiert von
                            #37

                            Wenn der Einbrecher das Fenster freundlicherweise schließt, um es dann wieder zu öffnen schon. Sonst natürlich nicht.

                            <size="85">ioBroker | 21 Adapter | Ubuntu Server | intel NUC | Homematic CCU2 | Hue | Osram Lightify| Sonos | 2x Instar Cam | Samsung Tab A 2016 im Holzrahmen| 3x Echo dot | 1x Echo | Neato Botvac D5</size>

                            1 Antwort Letzte Antwort
                            0
                            • dabbeljuhD Offline
                              dabbeljuhD Offline
                              dabbeljuh
                              schrieb am zuletzt editiert von
                              #38

                              Update:

                              Nur der Vollständigkeit halber - ich hab meinen Fehler zwischenzeitlich gefunden und behoben. Wenn man auf "var selFacade = $('state…" prüft, aber "var selFacade = $('channel …" verwenden sollte, kann das nicht funktionieren! :roll:


                              Hallo,

                              erst einmal ein großes Lob für die Entwicklung der Alarmanlage. Leider bekomme ich sie bei mir aber nicht ans Laufen. :(

                              Ich habe die beiden Skripte unter "Common" angelegt und gestartet. Unter "Objekte" werden mir die einzelnen Felder auch angezeigt. Wenn ich im View einen Status aktiviere oder deaktiviere, bekomme ich das auch unter "Objekte" entsprechend mit. Aber was muss ich jetzt genau tun, um bestimmte Sensoren zu überwachen?

                              Testweise wollte ich nun mal meine Osram Steckdose überwachen. Dazu habe ich unter "Aufzählungen" eine Funktion "facade" angelegt und damit die Steckdose versehen. Außerdem habe ich sie auch dem Raum "Esszimmer" zugeordnet. Mein Verständnis war nun, dass beim Schalten der Steckdose irgendwie auch der Alarm ausgelöst wird. Ich kann jedoch schalten wie ich will - es passiert letztlich nichts. Alle Datenpunkte unter alarm.out bleiben auf "false" stehen.

                              Ich hab auch schon ein "sendTo" eingefügt, um mich per Telegram informieren zu lassen, wenn etwas passiert. Beim de-/aktivieren der Alarmanlage funktioniert das auch. Aber ansonsten erhalte ich keinerlei Mitteilungen.

                              Gibt's vielleicht eine Step-by-step Anleitung für Dummies? :roll:

                              Beste Grüße

                              dabbeljuh

                              ===

                              NUC, Z-Stick Gen5, maxCUL 433, JeeLink/LaCrosse, Zigbee-Stick; Z-Wave Tür-/Fenster u. Steckdosen, max! Tür-/Fenster u. Wandschalter, TX29DTH-IT, HUE, Osram, TP-Link, Xiaomi, IP-Cams, Echo Dot, Sonos, Home mini, Xiaomi Kontakte u. Sensoren

                              1 Antwort Letzte Antwort
                              0
                              • smartboartS Offline
                                smartboartS Offline
                                smartboart
                                schrieb am zuletzt editiert von
                                #39

                                Hallo, ich würde mich dem anschließen…Finde die Idee und Umsetzung klasse. Hab soweit alles installiert. jetzt bin ich gerade dabei zu verstehen wo ich was eintragen muss, um das ganze entsprechend meiner Infrastruktur zu konfigurieren. Verstanden habe ich das schon mit den Zuweisungen der funktionen unter den Aufzählungen. Und auch das die Aktoren unde Sensoren wohl über diese Aufzählungen durch das Script ausgewerdet werden.

                                Wäre es vlt. möglich das Script mit ein paar Hinweisen zu versehen, oder beispiel Werte einzutragen und dises Evtl. zu markieren, damit auch Anfänger wie ich wissen wo sie etwas ändern oder anpassen müssen / können?

                                Das wäre echt prima...Danke schon mal...

                                1 Antwort Letzte Antwort
                                0
                                • ? Offline
                                  ? Offline
                                  Ein ehemaliger Benutzer
                                  schrieb am zuletzt editiert von
                                  #40

                                  @smartboart:

                                  Wäre es vlt. möglich das Script mit ein paar Hinweisen zu versehen, oder beispiel Werte einzutragen und dises Evtl. zu markieren, damit auch Anfänger wie ich wissen wo sie etwas ändern oder anpassen müssen / können? `

                                  Ich habe im ersten Post noch ein Beispielskript eingefügt in dem ich zeige wie ich aktuell die einzelnen Alarme nutze um bestimmte Aktionen zu starten.

                                  1 Antwort Letzte Antwort
                                  0
                                  • smartboartS Offline
                                    smartboartS Offline
                                    smartboart
                                    schrieb am zuletzt editiert von
                                    #41

                                    Vielen Dank, Wie das nun alles gedacht ist und was passiert habe ich soweit verstanden, denke ich…Nun ist es an der Zeit sich intensiver mit dem Erstellen und Bearbeiten von scripten zu beschäftigen. Ich denke das würde jetzt den Rahmen sprenen hie sämtlice Fragen zu stellen bis das so läuft wie ich es möchte...

                                    Ich hatte mir ohnhin mal vorgenommen eine Fortbildung im Bereich javascript zu gönnen.. Danke für die Unterstützung bis hier hin...

                                    1 Antwort Letzte Antwort
                                    0
                                    • smartboartS Offline
                                      smartboartS Offline
                                      smartboart
                                      schrieb am zuletzt editiert von
                                      #42

                                      Aber eine zwei Fragen hätte ich doch noch…

                                      Die Sensoren welche ich unter facade und oder motion anlege, werden die in dem Script als true abgefragt, also bei true geht die scharfe Anlage auf Alarm?

                                      Habe unter Aufzählungen unter functions die motion und facade angelegt und jeweils ein script zugeordnet unter java.0 welches ein true und false ausgibt...Es passiert aber leider nichts bei den Outputs des Alarmscripts... Muss ich in dem Logik Script / Auszug unten die komplette ID einragen oder oder reicht das so mit dem * ?

                                      var selFacade = $('statestate.id=javascript.0.*');

                                      1 Antwort Letzte Antwort
                                      0
                                      • ? Offline
                                        ? Offline
                                        Ein ehemaliger Benutzer
                                        schrieb am zuletzt editiert von
                                        #43

                                        @smartboart:

                                        Aber eine zwei Fragen hätte ich doch noch…

                                        Die Sensoren welche ich unter facade und oder motion anlege, werden die in dem Script als true abgefragt, also bei true geht die scharfe Anlage auf Alarm?

                                        Habe unter Aufzählungen unter functions die motion und facade angelegt und jeweils ein script zugeordnet unter java.0 welches ein true und false ausgibt...Es passiert aber leider nichts bei den Outputs des Alarmscripts... Muss ich in dem Logik Script / Auszug unten die komplette ID einragen oder oder reicht das so mit dem * ?

                                        var selFacade = $('statestate.id=javascript.0.*'); ` Poste doch Mal dein Skript und einen Screenshot der Objekte. Dann ist es einfacher das zu verstehen was du alles eingerichtet hast.

                                        Gesendet von meinem Pixel 2 mit Tapatalk

                                        1 Antwort Letzte Antwort
                                        0
                                        • smartboartS Offline
                                          smartboartS Offline
                                          smartboart
                                          schrieb am zuletzt editiert von
                                          #44

                                          Hallo, hab mal ein paar Bilder zusammen gestellt.

                                          Ist das richtig, dass profil auto und default nicht in der Vis activiert werden können? Nur die Rückmeldung falls aktiv?

                                          Was ist der gedanke hinter disen beiden Profilen? Aktivierung über Anwesenheitserkennung automatish? und das default Profil?

                                          6558_scripte.png 6558_objekte_alarm.png 6558_light.png 6558_facade.png 6558_20180424_095451.jpg

                                          /* 
                                          
                                          multi channel burglar alarm - v 0.01
                                          
                                          features:
                                          - six different alarm channels
                                          - delayed alarm action
                                          - delayed sensor check
                                          - alarmlog
                                          - define settings as profil
                                          
                                          changelog:
                                           29.09.2017 initial version
                                           01.10.2017 restructered with revealing module pattern 
                                           03.10.2017 profiles added for alarm channels and sensor groups
                                          
                                          */
                                          
                                          var ALARM = (function () {
                                          
                                              //Settings
                                              var instance = 'javascript.0.';
                                              var maxLogEntries = 5;
                                          
                                              //Internal states
                                              var enable = false;
                                              var state = 0;
                                              var alarm = false;
                                              var alarmDelay;
                                              var alarmTimer = {};
                                              var alarmLog = [];
                                              var sensorDelay;
                                              var sensorTimer = {};
                                          
                                              //Sensors
                                              var selFacade = $('state[state.id=javascript.0.*](functions=facade)');
                                              selFacade.on(function(obj) {
                                                  _checkSensor(obj,'facade');
                                              });
                                              var selMotion = $('state[state.id=javascript.0.*](functions=motion)');
                                              selMotion.on(function(obj) {
                                                  _checkSensor(obj,'motion');
                                              });
                                          
                                              function _checkSensor(obj, group){
                                                  if(sensorDelay[group] === 0){
                                                      _check(obj);
                                                  }else if(sensorDelay[group] > 0){
                                                      setTimeout(_check,(sensorDelay[group]*1000),obj);
                                                  }
                                                  log('checkSensor group:'+group);
                                              }
                                          
                                              function _loadSettings(profile){
                                                  switch(profile) {
                                                      case 'silent':
                                                          sensorDelay = {motion:0,facade:0};
                                                          alarmDelay = {silent:0};
                                                          break;
                                                      case 'night':
                                                          sensorDelay = {facade:0};
                                                          alarmDelay = {silent:0,intern:60,extern:60};
                                                          break;
                                                      case 'full':
                                                          sensorDelay = {motion:0,facade:0};
                                                          alarmDelay = {silent:0,sound:30,strobe:30,intern:60,extern:60,mail:120};
                                                          break;
                                                      case 'presence':
                                                          sensorDelay = {motion:0,facade:0};
                                                          alarmDelay = {silent:0,sound:30,strobe:30,intern:60,extern:60,mail:120};
                                                          break;
                                                      case 'auto':
                                                          sensorDelay = {motion:0,facade:0};
                                                          alarmDelay = {silent:0,sound:30,strobe:30,intern:60,extern:60,mail:120};
                                                          break;
                                                      default:
                                                          profile = 'default';
                                                          sensorDelay = {motion:0,facade:0};
                                                          alarmDelay = {silent:0,sound:30,strobe:30,intern:60,extern:60,mail:120};
                                                  }
                                                  setState(instance+'alarm.out.profile', profile, true);
                                                  log('loadSettings profile:'+profile);
                                              }
                                              function _enable(profil){
                                                  enable = true;
                                                  state = 1;
                                                  _resetAlarm();
                                                  _loadSettings(profil);
                                                  log('enable');
                                              }
                                              function _disable(){
                                                  enable = false;
                                                  state = 0;
                                                  _resetAlarm();
                                                  _resetAlarmTimer();
                                                  log('disable');
                                              }
                                              function _stop(){
                                                  state = 1;
                                                  _resetAlarm();
                                                  log('stop');
                                              }
                                              function _resetAlarmTimer(){
                                                  for (var elem in alarmTimer) {
                                                      clearTimeout(alarmTimer[elem]);
                                                      alarmTimer[elem] = null;
                                                  }
                                                  log('resetAlarmTimer');
                                              }
                                              function _resetAlarm(){
                                                  alarm = false;
                                                  setState(instance+'alarm.out.state', state, true);
                                                  setState(instance+'alarm.out.alarm', false, true);
                                                  setState(instance+'alarm.out.alarm_silent', false, true);
                                                  setState(instance+'alarm.out.alarm_sound', false, true);
                                                  setState(instance+'alarm.out.alarm_strobe', false, true);
                                                  setState(instance+'alarm.out.alarm_intern', false, true);
                                                  setState(instance+'alarm.out.alarm_extern', false, true);
                                                  setState(instance+'alarm.out.alarm_mail', false, true);
                                                  _resetAlarmTimer();
                                                  log('resetAlarm state:'+state);
                                              }
                                              function _startAlarm(elem){
                                                  alarm = true;
                                                  setState(instance+'alarm.out.alarm_'+elem, true, true);
                                                  setState(instance+'alarm.out.state', 3, true);
                                                  log('startAlarm elem:'+elem);
                                              }
                                              function _check(obj){
                                                  if(obj.state.val && enable){
                                                      for (var elem in alarmDelay) {
                                                          if(alarmDelay[elem] === 0){
                                                              _startAlarm(elem);
                                                          } else if(!alarmTimer[elem]){
                                                                  alarmTimer[elem] = setTimeout(_startAlarm,(alarmDelay[elem]*1000),elem);
                                                          }
                                                          log('startAlarms elem'+elem+':'+alarmDelay[elem]);
                                                      }
                                                      _logSensor(obj);
                                                      log('alarm triggered by sensor '+obj.common.name);
                                                  }
                                                  log('check obj:'+obj.common.name);
                                              }
                                              function _logSensor(obj){
                                                  var time = (new Date()).toLocaleDateString()+' '+(new Date()).toLocaleTimeString();
                                                  var sensor = obj.common.name;
                                                  var room = getObject(obj.id, 'rooms').enumNames[0];
                                                  alarmLog.push(time+' '+sensor+' '+room);
                                                  alarmLog.splice(maxLogEntries);
                                                  setState(instance+'alarm.out.log', alarmLog.join('
                                          '), true);
                                                  setState(instance+'alarm.out.last_sensor', time+' '+sensor+' '+room, true);
                                              }
                                          
                                              _loadSettings();
                                          
                                              return {
                                                  enable: _enable,
                                                  disable: _disable,
                                                  stop: _stop
                                              };
                                          
                                          })();
                                          
                                          on({id:'javascript.0.alarm.in.enable', change:'any'}, function(obj){
                                              ALARM.enable(obj.state.val);
                                              log('on: in.enable val:'+obj.state.val);
                                          });
                                          on({id:'javascript.0.alarm.in.disable', change:'any'}, function(obj){
                                              ALARM.disable();
                                              log('on: in.disable');
                                          });
                                          on({id:'javascript.0.alarm.in.stop', change:'any'}, function(obj){
                                              ALARM.stop();
                                              log('on: in.stop');
                                          });
                                          on('javascript.0.presence', function(obj){
                                              var state = getState('javascript.0.alarm.out.state').val;
                                              var profile = getState('javascript.0.alarm.out.profile').val;
                                              if(profile == 'auto'){
                                                  if(obj.state.val && state > 0){
                                                      setState('javascript.0.alarm.in.disable', true, true);
                                                  }else{
                                                      setState('javascript.0.alarm.in.enable', 'auto', true);
                                                  }
                                              }
                                          });
                                          
                                          
                                          C 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          811

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe