Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Umfassendes Alarmanlagen-Skript

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    13
    1
    141

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.3k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.3k

Umfassendes Alarmanlagen-Skript

Scheduled Pinned Locked Moved Skripten / Logik
javascriptsecurity
145 Posts 27 Posters 34.7k Views 52 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Homer.J.H Homer.J.

    @sigi234 gib es mal klein ein.

    sigi234S Online
    sigi234S Online
    sigi234
    Forum Testing Most Active
    wrote on last edited by
    #50

    @Homer-J sagte in Umfassendes Alarmanlagen-Skript:

    @sigi234 gib es mal klein ein.

    Jupp läuft

    Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
    Immer Daten sichern!

    S 1 Reply Last reply
    1
    • andreaskosA andreaskos

      Hi zusammen,

      ich habe jetzt drei weitere Datenpunkte hinzugefügt (die jetzt auch alle eine Rolle zugeordnet bekomen) für die Ausgabe der offenen Melder (jeweils für alle / nur Außenhaut / nur Innenraum) und für den alarmierenden Melder als String im JSON-Format.
      Ich habe dafür die kompletten Objekte reingeschmissen, die von ioBroker zur Verfügung gestellt werden. Siehe Beschreibung im ersten Thread bzw. das aktualisierte Skript.

      Ich würde - sofern es keine Fehlerbehebungen gibt - die Arbeit an diesem Skript einmal vorläufig abschließen. Ich danke euch sehr für eure Hilfe, die Inputs und die Beschäftigung mit dem Skript, auch in Verbindung mit den anderen Projekten wie der coolen Ereignisliste!

      Liebe Grüße,
      Andreas

      Homer.J.H Offline
      Homer.J.H Offline
      Homer.J.
      wrote on last edited by
      #51

      Hi @andreaskos muss die json nicht in eckigen Klammer stehen. ?

      sigi234S 1 Reply Last reply
      0
      • andreaskosA Offline
        andreaskosA Offline
        andreaskos
        wrote on last edited by
        #52

        Hi @Homer-J
        Im Skript wird nur ein Objekt erzeugt, das dann mit der Methode JSON.stringify() in einen JSON-String ausgeben wird. Das erledigt diese Funktion, da hat das Skript keinen Einfluss drauf.

        1 Reply Last reply
        0
        • Homer.J.H Homer.J.

          Hi @andreaskos muss die json nicht in eckigen Klammer stehen. ?

          sigi234S Online
          sigi234S Online
          sigi234
          Forum Testing Most Active
          wrote on last edited by sigi234
          #53

          @Homer-J sagte in Umfassendes Alarmanlagen-Skript:

          Hi @andreaskos muss die json nicht in eckigen Klammer stehen. ?

          Hm, denke ich auch. Ich möchte ja eine Liste welcher Aktor in den jeweiligen DP ist.
          Denke ein DP für Zone: Außenhaut, Innenhaut wäre Super

          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
          Immer Daten sichern!

          1 Reply Last reply
          0
          • andreaskosA Offline
            andreaskosA Offline
            andreaskos
            wrote on last edited by
            #54

            @Homer-J & @sigi234
            Meint ihr, dass diese beiden Datenpunkte

            • OpenDetectorsOuterSkingJSON
            • OpenDetectorsIndoorJSON

            jeweils nicht ein einziger JSON-String sein sollten, sondern ein Array mit JSON-Strings?

            Beim Parsen würde man dann also ein Array mit Objekten enthalten, die genauso aufgebaut sind, wie ein einzelnes Objekt, so wie es als JSON-String abgebildet ist im Datenpunkt:

            • AlarmingDetectorJSON

            Derzeit ist es ja so, dass die beiden Datenpunkte oben jeweils ein einziges Objekt sind. Das Array mit den einzelnen Objekten der offenen Melder ist dann in der property listOfDetectors enthalten. Siehe so:

            {
              "title":   "Open detectors outer skin",
              "zone":  "Alarmanlage_Aussenhaut",
              "listOfDetectors": [  /*  HIER IST DAS ARRAY DER MELDER-OBJEKTE  */  ]
            }
            

            LG Andreas

            1 Reply Last reply
            0
            • andreaskosA Offline
              andreaskosA Offline
              andreaskos
              wrote on last edited by
              #55

              Ich möchte ja eine Liste welcher Aktor in den jeweiligen DP ist.

              Vielleicht noch zum Verständnis, diese Liste kann man folgendermaßen holen (jeweils den richtigen Datenpuntkt einsetzen für alle / innen /außenhaut):

              const idOpenDetectorsJSON = 'javascript.0.Alarmanlage.Output.OpenDetectorsJSON'/*Open Detectors*/;
              var jsonString = getState(idOpenDetectorsJSON).val;
              var obj = JSON.parse(jsonString);
              var detectors = obj.listOfDetectors;
              
              // Beispiel für einen HomeMatic-State
              var i=0;
              while (i < detectors.length){
                log("id: " + detectors[i].id);
                log("Name: " + detectors[i].self.common.name);
                log("Gerät: " + detectors[i].parentsparent.common.name);
                i++;
              }
              
              Homer.J.H 1 Reply Last reply
              0
              • andreaskosA andreaskos

                Ich möchte ja eine Liste welcher Aktor in den jeweiligen DP ist.

                Vielleicht noch zum Verständnis, diese Liste kann man folgendermaßen holen (jeweils den richtigen Datenpuntkt einsetzen für alle / innen /außenhaut):

                const idOpenDetectorsJSON = 'javascript.0.Alarmanlage.Output.OpenDetectorsJSON'/*Open Detectors*/;
                var jsonString = getState(idOpenDetectorsJSON).val;
                var obj = JSON.parse(jsonString);
                var detectors = obj.listOfDetectors;
                
                // Beispiel für einen HomeMatic-State
                var i=0;
                while (i < detectors.length){
                  log("id: " + detectors[i].id);
                  log("Name: " + detectors[i].self.common.name);
                  log("Gerät: " + detectors[i].parentsparent.common.name);
                  i++;
                }
                
                Homer.J.H Offline
                Homer.J.H Offline
                Homer.J.
                wrote on last edited by
                #56

                Hi Andres bei meiner alten Alarmanlage hatte ich die Ausgabe so.
                Screenshot_2020-05-10 objects - ioBroker.png
                Das ist zwar keine json aber man sieht halt wann ausgelöst hat und was.
                Wie kann man deine Datenpunkte jetzt verwenden das habe ich noch nicht so richtig verstanden.?
                Nehme ich jetzt ein Datenpunkt in ein Widget auf wird mir bei deiner json nichts angezeigt wie verarbeitet man diese.

                Gibt es das in deinem Script schon

                const idOpenDetectorsJSON = 'javascript.0.Alarmanlage.Output.OpenDetectorsJSON'/*Open Detectors*/; 
                

                oder muss das noch irgendwo eingefügt werden.

                Grüße

                andreaskosA 1 Reply Last reply
                0
                • K Offline
                  K Offline
                  kilasat
                  wrote on last edited by
                  #57

                  Vielen Dank an @andreaskos für das Script. Sieht wirklich gut aus.

                  Hat jemand noch ein paar Beispiele was ihr mit dem ausgelöstem Alarm macht. Also vielleicht noch ein Blockly dazu mit einer akkustischen und optischen Signalisierung? Wie genau schaltet ihr bei euch die Alarmanlage scharf und wieder unscharf?

                  sigi234S T 2 Replies Last reply
                  1
                  • K kilasat

                    Vielen Dank an @andreaskos für das Script. Sieht wirklich gut aus.

                    Hat jemand noch ein paar Beispiele was ihr mit dem ausgelöstem Alarm macht. Also vielleicht noch ein Blockly dazu mit einer akkustischen und optischen Signalisierung? Wie genau schaltet ihr bei euch die Alarmanlage scharf und wieder unscharf?

                    sigi234S Online
                    sigi234S Online
                    sigi234
                    Forum Testing Most Active
                    wrote on last edited by
                    #58

                    @kilasat sagte in Umfassendes Alarmanlagen-Skript:

                    Vielen Dank an @andreaskos für das Script. Sieht wirklich gut aus.

                    Hat jemand noch ein paar Beispiele was ihr mit dem ausgelöstem Alarm macht. Also vielleicht noch ein Blockly dazu mit einer akkustischen und optischen Signalisierung? Wie genau schaltet ihr bei euch die Alarmanlage scharf und wieder unscharf?

                    https://forum.iobroker.net/topic/32885/umfassendes-alarmanlagen-skript/32?page=2

                    Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                    Immer Daten sichern!

                    1 Reply Last reply
                    1
                    • K Offline
                      K Offline
                      kilasat
                      wrote on last edited by
                      #59

                      5f8600f1-4107-44e4-aec4-dfd24cacb002-image.png

                      alle Sensoren sind auf false und trotzdem zeigt er mir bei Ready - false ein. Was könnten noch das Problem sein?

                      andreaskosA 1 Reply Last reply
                      0
                      • K kilasat

                        Vielen Dank an @andreaskos für das Script. Sieht wirklich gut aus.

                        Hat jemand noch ein paar Beispiele was ihr mit dem ausgelöstem Alarm macht. Also vielleicht noch ein Blockly dazu mit einer akkustischen und optischen Signalisierung? Wie genau schaltet ihr bei euch die Alarmanlage scharf und wieder unscharf?

                        T Offline
                        T Offline
                        Tirador
                        wrote on last edited by
                        #60

                        @kilasat said in Umfassendes Alarmanlagen-Skript:

                        Vielen Dank an @andreaskos für das Script. Sieht wirklich gut aus.

                        Hat jemand noch ein paar Beispiele was ihr mit dem ausgelöstem Alarm macht. Also vielleicht noch ein Blockly dazu mit einer akkustischen und optischen Signalisierung? Wie genau schaltet ihr bei euch die Alarmanlage scharf und wieder unscharf?

                        Die Weiterverarbeitung des Alarms, d.h. auslösen von Nachrichten, Email, Telegram und pushover geht mit dem MessageHandler Skript.

                        K 2 Replies Last reply
                        0
                        • T Tirador

                          @kilasat said in Umfassendes Alarmanlagen-Skript:

                          Vielen Dank an @andreaskos für das Script. Sieht wirklich gut aus.

                          Hat jemand noch ein paar Beispiele was ihr mit dem ausgelöstem Alarm macht. Also vielleicht noch ein Blockly dazu mit einer akkustischen und optischen Signalisierung? Wie genau schaltet ihr bei euch die Alarmanlage scharf und wieder unscharf?

                          Die Weiterverarbeitung des Alarms, d.h. auslösen von Nachrichten, Email, Telegram und pushover geht mit dem MessageHandler Skript.

                          K Offline
                          K Offline
                          kilasat
                          wrote on last edited by
                          #61

                          @Tirador OK schaue ich mir an. Dachte das dient nur der Anzeige.

                          Derzeit löst die Alarmierung bei mir nicht aus. Weiss nicht genau warum.

                          1 Reply Last reply
                          0
                          • T Tirador

                            @kilasat said in Umfassendes Alarmanlagen-Skript:

                            Vielen Dank an @andreaskos für das Script. Sieht wirklich gut aus.

                            Hat jemand noch ein paar Beispiele was ihr mit dem ausgelöstem Alarm macht. Also vielleicht noch ein Blockly dazu mit einer akkustischen und optischen Signalisierung? Wie genau schaltet ihr bei euch die Alarmanlage scharf und wieder unscharf?

                            Die Weiterverarbeitung des Alarms, d.h. auslösen von Nachrichten, Email, Telegram und pushover geht mit dem MessageHandler Skript.

                            K Offline
                            K Offline
                            kilasat
                            wrote on last edited by
                            #62

                            @Tirador MessageHandler ist sehr cool. Ich dachte eher an die akustische und visuelle Alarmierung. z.b. Sirene, Alexa Lautsprecher oder ähnliches. Licht Usw. Dazu natürlich Benachrichtigung.

                            1 Reply Last reply
                            0
                            • K kilasat

                              5f8600f1-4107-44e4-aec4-dfd24cacb002-image.png

                              alle Sensoren sind auf false und trotzdem zeigt er mir bei Ready - false ein. Was könnten noch das Problem sein?

                              andreaskosA Offline
                              andreaskosA Offline
                              andreaskos
                              wrote on last edited by
                              #63

                              @kilasat
                              Habe das Setzten des Ready-Datenpunkts überarbeitet. Das Verhalten bei dir konkret kann ich zwar momentan nicht nachvollziehen, aber es war definitiv noch nicht ganz in Ordnung.
                              Neue Version oben im ersten Thread.

                              LG
                              Andreas

                              K 1 Reply Last reply
                              1
                              • Homer.J.H Homer.J.

                                Hi Andres bei meiner alten Alarmanlage hatte ich die Ausgabe so.
                                Screenshot_2020-05-10 objects - ioBroker.png
                                Das ist zwar keine json aber man sieht halt wann ausgelöst hat und was.
                                Wie kann man deine Datenpunkte jetzt verwenden das habe ich noch nicht so richtig verstanden.?
                                Nehme ich jetzt ein Datenpunkt in ein Widget auf wird mir bei deiner json nichts angezeigt wie verarbeitet man diese.

                                Gibt es das in deinem Script schon

                                const idOpenDetectorsJSON = 'javascript.0.Alarmanlage.Output.OpenDetectorsJSON'/*Open Detectors*/; 
                                

                                oder muss das noch irgendwo eingefügt werden.

                                Grüße

                                andreaskosA Offline
                                andreaskosA Offline
                                andreaskos
                                wrote on last edited by
                                #64

                                @Homer-J
                                Du müsstest die unterschiedlichen Datenpunkte selber zu dem Format zusammenstöpseln, wie du es für deine Visualisierung benötigst.
                                Das kleine Skript, das ich am 10 May 2020, 15:43 gepostet hab, das ist ein eigenständiges, zusätzliches. Das kann man ausführen, wenn das Hauptskript von ganz oben schon läuft.
                                Ein eigener Log-Datenpunkt wäre natürlich schon noch interessant, bei dem alle Ereignisse zeitlich hintereinander mit ausgegeben werden. Auch damit könnte man sich eine eigene Ereignisliste bauen, die letztlich alle Ereignisse anzeigt. Ich behalte das mal im Hinterkopf.
                                LG Andreas

                                1 Reply Last reply
                                1
                                • andreaskosA andreaskos

                                  @kilasat
                                  Habe das Setzten des Ready-Datenpunkts überarbeitet. Das Verhalten bei dir konkret kann ich zwar momentan nicht nachvollziehen, aber es war definitiv noch nicht ganz in Ordnung.
                                  Neue Version oben im ersten Thread.

                                  LG
                                  Andreas

                                  K Offline
                                  K Offline
                                  kilasat
                                  wrote on last edited by kilasat
                                  #65

                                  @andreaskos sagte in Umfassendes Alarmanlagen-Skript:

                                  @kilasat
                                  Habe das Setzten des Ready-Datenpunkts überarbeitet. Das Verhalten bei dir konkret kann ich zwar momentan nicht nachvollziehen, aber es war definitiv noch nicht ganz in Ordnung.
                                  Neue Version oben im ersten Thread.

                                  LG
                                  Andreas

                                  Hallo Andreas,

                                  besten Dank. Der Datenpunkt "ready" steht jetzt auf "true". Soweit so gut, aber jetzt kommt das nächste Problem :face_with_rolling_eyes:

                                  666a7271-ffc5-4f0c-b63b-d2f7c15acdd4-image.png

                                  Habe mal zum Testen einen Datenpunkt erstellt und diesen in die Funktion: "Aussenhaut" hinzugefügt. Leider löst die Alarmanlage beim Umschalten auf true nicht aus.

                                  Ebenfalls wenn die Anlage deaktiviert ist und der Datenpunkt Test auf true steht, dann müsste der Ready doch auf false gehen oder? Tut dies aber nicht.

                                  Homer.J.H 1 Reply Last reply
                                  0
                                  • K kilasat

                                    @andreaskos sagte in Umfassendes Alarmanlagen-Skript:

                                    @kilasat
                                    Habe das Setzten des Ready-Datenpunkts überarbeitet. Das Verhalten bei dir konkret kann ich zwar momentan nicht nachvollziehen, aber es war definitiv noch nicht ganz in Ordnung.
                                    Neue Version oben im ersten Thread.

                                    LG
                                    Andreas

                                    Hallo Andreas,

                                    besten Dank. Der Datenpunkt "ready" steht jetzt auf "true". Soweit so gut, aber jetzt kommt das nächste Problem :face_with_rolling_eyes:

                                    666a7271-ffc5-4f0c-b63b-d2f7c15acdd4-image.png

                                    Habe mal zum Testen einen Datenpunkt erstellt und diesen in die Funktion: "Aussenhaut" hinzugefügt. Leider löst die Alarmanlage beim Umschalten auf true nicht aus.

                                    Ebenfalls wenn die Anlage deaktiviert ist und der Datenpunkt Test auf true steht, dann müsste der Ready doch auf false gehen oder? Tut dies aber nicht.

                                    Homer.J.H Offline
                                    Homer.J.H Offline
                                    Homer.J.
                                    wrote on last edited by Homer.J.
                                    #66

                                    @kilasat Die Datenpunkte müssen unter Funktionen angelegt werden und die state dort rein, nicht unter Javascript schau mal ein bisschen weiter vorn dort steht alles. Und auf Groß- und Kleinschreibung achten.

                                    Screenshot_2020-05-13 enums - ioBroker.png

                                    K 1 Reply Last reply
                                    0
                                    • Homer.J.H Homer.J.

                                      @kilasat Die Datenpunkte müssen unter Funktionen angelegt werden und die state dort rein, nicht unter Javascript schau mal ein bisschen weiter vorn dort steht alles. Und auf Groß- und Kleinschreibung achten.

                                      Screenshot_2020-05-13 enums - ioBroker.png

                                      K Offline
                                      K Offline
                                      kilasat
                                      wrote on last edited by
                                      #67

                                      @Homer-J

                                      ist auch so gemacht, leider läuft es trotzdem noch nicht bei mir.

                                      0c4ecabf-8edf-4691-8b2b-15186f68afeb-image.png

                                      Homer.J.H 1 Reply Last reply
                                      0
                                      • K kilasat

                                        @Homer-J

                                        ist auch so gemacht, leider läuft es trotzdem noch nicht bei mir.

                                        0c4ecabf-8edf-4691-8b2b-15186f68afeb-image.png

                                        Homer.J.H Offline
                                        Homer.J.H Offline
                                        Homer.J.
                                        wrote on last edited by
                                        #68

                                        @kilasat schau mal im Script dort steht es Großgeschrieben drin du hast es klein.

                                        1 Reply Last reply
                                        1
                                        • andreaskosA Offline
                                          andreaskosA Offline
                                          andreaskos
                                          wrote on last edited by
                                          #69

                                          @kilasat
                                          Du kannst auch einfach die Bezeichnung der Aufzählungen im Skript ändern auf: "alarmanlage_aussenhaut" usw. mit Kleinbuchstaben, dann geht's auch.
                                          Ich sollte diese Standard-Einstellungen vielleicht von vornherein in Kleinschreibung im Skript angeben, wenn das eine Stolperfalle ist.

                                          sigi234S T K 3 Replies Last reply
                                          1
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          561

                                          Online

                                          32.7k

                                          Users

                                          82.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe