Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Rauchmelder Skript

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Rauchmelder Skript

    This topic has been deleted. Only users with topic management privileges can see it.
    • paul53
      paul53 @Dominik F. last edited by

      @Dominik-F sagte:

      var cacheSelectorSmoke = $('*.STATE(functions=rauchmelder)').each(function(id, i) {log(id);});

      Zeile 39: Das ist eine Testfunktion. Richtige Variable:

      var cacheSelectorSmoke = $('*.STATE(functions=rauchmelder)');
      
      Dominik F. 1 Reply Last reply Reply Quote 0
      • Dominik F.
        Dominik F. @paul53 last edited by

        @paul53

        Danke schön, hab es im ersten Post aktualisiert

        1 Reply Last reply Reply Quote 0
        • Feuersturm
          Feuersturm @Dominik F. last edited by Feuersturm

          @Dominik-F Dankeschön.
          Die HMIP-SWSD haben folgende Datenpunkte:
          606c5000-5abb-4f31-a6a6-3bb0c9601918-grafik.png

          SMOKE_DETECTOR_ALARM_STATUS
          "0": "IDLE_OFF",
          "1": "PRIMARY_ALARM",
          "2": "INTRUSION_ALARM",
          "3": "SECONDARY_ALARM"

          SMOKE_DETECTOR_COMMAND
          "0": "RESERVED_ALARM_OFF",
          "1": "INTRUSION_ALARM_OFF",
          "2": "INTRUSION_ALARM",
          "3": "SMOKE_TEST",
          "4": "COMMUNICATION_TEST",
          "5": "COMMUNICATION_TEST_REPEATED

          SMOKE_DETECTOR_TEST_RESULT
          "0": "NONE",
          "1": "SMOKE_TEST_OK",
          "2": "SMOKE_TEST_FAILED",
          "3": "COMMUNICATION_TEST_SENT",
          "4": "COMMUNICATION_TEST_OK"

          Ich werde in den nächsten Tagen einmal schauen, dass ich dein Skript verstehe und ob ich es für die HMIP-SWSD Rauchmelder anpassen kann. Heute werde ich vermutlich nicht mehr dazu kommen.

          Dominik F. 1 Reply Last reply Reply Quote -1
          • Dominik F.
            Dominik F. @Feuersturm last edited by

            @Feuersturm

            ich muss da jedoch ehrlich zu dir sein. Ich habe von @cash ein Skript für einen Wassermelder bekommen und habe das dann verändert und mit seiner und @paul53 Hilfe das nun zum laufen bekommen, daher werde ich dir da nur schwer helfen können. Ich würde mich natürlich freuen wenn am Ende ein Skript rauskommt, was sowohl HM als auch HMIP Geräte findet und damit funktioniert. Vielleicht klappt es ja mit zusammenarbeit von allen 🙂

            cash 1 Reply Last reply Reply Quote 0
            • Feuersturm
              Feuersturm last edited by

              Da bin ich guter Dinge, dass die Zusammenarbeit hier im Forum klappt. Ich stehe auch noch am Anfang meiner Programmierkünste. Bisher konnte ich aber jedes Problem durch Suchen oder durch die Hilfe von anderen Users hier im Forum lösen.

              Vielleicht kommt ja auch noch der Hinweis zu einem fertigen Skript, welches die HMIP Rauchmelder überwacht, welches ich bisher noch nicht gefunden habe.

              cash 1 Reply Last reply Reply Quote 0
              • cash
                cash Most Active @Dominik F. last edited by

                @Dominik-F @Feuersturm Das Script sollte doch auch für HmIP funktionieren. Einfach testen. Im Script sollte halt noch die Pushover Ergänzungen rein. Und dann die Feuermelder halt in die entsprechende Gruppe packen. Ich vermute auch die werden mittel State laufen.

                Ohne Gewähr - sollte aber passen.

                Dominik F. 1 Reply Last reply Reply Quote 0
                • Dominik F.
                  Dominik F. @cash last edited by

                  @cash

                  Laut seinen Datenpunkten gibt es den Datenpunkt STATE bei HMIP nicht. Denke das einzige Problem wird wieder sein, den richtigen Datenpunkt zu finden und zu ergänzen

                  1 Reply Last reply Reply Quote 0
                  • cash
                    cash Most Active @Feuersturm last edited by

                    @Feuersturm Ah hatte Deine Datenpunkte nicht gesehen. Stimmt das passt so nicht zusammen und müsste entsprechend angepasst werden.

                    dslraser 1 Reply Last reply Reply Quote 0
                    • dslraser
                      dslraser Forum Testing Most Active @cash last edited by dslraser

                      Ich habe mal etwas gesucht, weil ich das nun auch mal umsetzen möchte. Zu den HMIP Rauchmeldern habe ich folgende Info gefunden.

                      SMOKE_DETECTOR_ALARM_STATUS

                      Die Zustände sind wie folgt:
                      0 = Kein Alarm steht an
                      1 = Brandalarm an diesem Melder erkannt
                      2 = Der Melder signalisiert einen Einbruchalarm
                      3 = Ein anderer Melder hat einen Brandalarm erkannt, dieser wurde auch an diesem Melder signalisiert

                      Das ist dieser DP

                      {
                        "type": "state",
                        "common": {
                          "def": "IDLE_OFF",
                          "type": "number",
                          "read": true,
                          "write": false,
                          "min": 0,
                          "max": 3,
                          "states": {
                            "0": "IDLE_OFF",
                            "1": "PRIMARY_ALARM",
                            "2": "INTRUSION_ALARM",
                            "3": "SECONDARY_ALARM"
                          },
                          "name": "Rauchmelder Wohnzimmer.SMOKE_DETECTOR_ALARM_STATUS"
                        },
                        "native": {
                          "MIN": "IDLE_OFF",
                          "OPERATIONS": 5,
                          "MAX": "SECONDARY_ALARM",
                          "FLAGS": 1,
                          "ID": "SMOKE_DETECTOR_ALARM_STATUS",
                          "TYPE": "ENUM",
                          "DEFAULT": "IDLE_OFF",
                          "VALUE_LIST": [
                            "IDLE_OFF",
                            "PRIMARY_ALARM",
                            "INTRUSION_ALARM",
                            "SECONDARY_ALARM"
                          ],
                          "CONTROL": "DANGER.STATE"
                        },
                        "from": "system.adapter.hm-rpc.0",
                        "user": "system.user.admin",
                        "ts": 1581756986839,
                        "_id": "hm-rpc.0.xxx.1.SMOKE_DETECTOR_ALARM_STATUS",
                        "acl": {
                          "object": 1636,
                          "state": 1636,
                          "owner": "system.user.admin",
                          "ownerGroup": "system.group.administrator"
                        }
                      }
                      

                      Müßte sich dann auch umsetzen lassen ( ich mach das dann mal per Blockly für mich)

                      paul53 1 Reply Last reply Reply Quote 0
                      • paul53
                        paul53 @dslraser last edited by

                        @dslraser
                        Dieser $Selector sollte genügen:

                        const cacheSelectorSmoke = $('*.SMOKE_DETECTOR_ALARM_STATUS');
                        
                        dslraser 2 Replies Last reply Reply Quote 0
                        • dslraser
                          dslraser Forum Testing Most Active @paul53 last edited by dslraser

                          @paul53
                          ich wollte gerade anfangen 😊

                          Bildschirmfoto 2020-02-17 um 22.25.21.png

                          Meine 6 Melder werden auch gefunden

                          17.2.2020, 22:25:12.450	[info ]: javascript.0 (4842) Stop script script.js.Rauchmelder.Rauchmelder_Auslöser
                          17.2.2020, 22:25:12.538	[info ]: javascript.0 (4842) Start javascript script.js.Rauchmelder.Rauchmelder_Auslöser
                          17.2.2020, 22:25:12.545	[info ]: javascript.0 (4842) script.js.Rauchmelder.Rauchmelder_Auslöser: registered 6 subscriptions and 0 schedules
                          
                          1 Reply Last reply Reply Quote 0
                          • dslraser
                            dslraser Forum Testing Most Active @paul53 last edited by dslraser

                            @paul53 sagte in Rauchmelder Skript:

                            @dslraser
                            Dieser $Selector sollte genügen:

                            const cacheSelectorSmoke = $('*.SMOKE_DETECTOR_ALARM_STATUS');
                            

                            ich mußte var statt const schreiben, sonst kamen Fehler.

                            Script Start aus dem ersten Beitrag mit dem HMIP Selector

                            17.2.2020, 22:32:19.153	[info ]: javascript.0 (4842) Stop script script.js.Rauchmelder.Skript_1
                            17.2.2020, 22:32:19.238	[info ]: javascript.0 (4842) Start javascript script.js.Rauchmelder.Skript_1
                            17.2.2020, 22:32:19.340	[info ]: javascript.0 (4842) script.js.Rauchmelder.Skript_1: [DEBUG] Function Rauch erkannt wird gestartet.
                            17.2.2020, 22:32:19.341	[info ]: javascript.0 (4842) script.js.Rauchmelder.Skript_1: [DEBUG] Geräte Nr. 0 Name: Rauchmelder Keller Flur_Dev (xxx) --- HmIP-SWSD --- Typ: SMOKE_DETECTOR_ALARM_STATUS --- Status: 0 kein Rauch --- seit: 11.12.19 13:34:06 Uhr
                            17.2.2020, 22:32:19.341	[info ]: javascript.0 (4842) script.js.Rauchmelder.Skript_1: [DEBUG] Geräte Nr. 1 Name: Rauchmelder Flur_Dev (xxx) --- HmIP-SWSD --- Typ: SMOKE_DETECTOR_ALARM_STATUS --- Status: 0 kein Rauch --- seit: 11.12.19 13:34:06 Uhr
                            17.2.2020, 22:32:19.342	[info ]: javascript.0 (4842) script.js.Rauchmelder.Skript_1: [DEBUG] Geräte Nr. 2 Name: Rauchmelder Wohnzimmer_Dev (xxx) --- HmIP-SWSD --- Typ: SMOKE_DETECTOR_ALARM_STATUS --- Status: 0 kein Rauch --- seit: 17.02.20 21:45:20 Uhr
                            17.2.2020, 22:32:19.342	[info ]: javascript.0 (4842) script.js.Rauchmelder.Skript_1: [DEBUG] Geräte Nr. 3 Name: Rauchmelder Gästezimmer_Dev (xxx) --- HmIP-SWSD --- Typ: SMOKE_DETECTOR_ALARM_STATUS --- Status: 0 kein Rauch --- seit: 11.12.19 13:34:06 Uhr
                            17.2.2020, 22:32:19.343	[info ]: javascript.0 (4842) script.js.Rauchmelder.Skript_1: [DEBUG] Geräte Nr. 4 Name: Rauchmelder Keller Wohnzimmer_Dev (xxx) --- HmIP-SWSD --- Typ: SMOKE_DETECTOR_ALARM_STATUS --- Status: 0 kein Rauch --- seit: 11.12.19 13:34:06 Uhr
                            17.2.2020, 22:32:19.344	[info ]: javascript.0 (4842) script.js.Rauchmelder.Skript_1: [DEBUG] Geräte Nr. 5 Name: Rauchmelder Schlafzimmer_Dev (xxx) --- HmIP-SWSD --- Typ: SMOKE_DETECTOR_ALARM_STATUS --- Status: 0 kein Rauch --- seit: 11.12.19 13:34:06 Uhr
                            17.2.2020, 22:32:19.344	[info ]: javascript.0 (4842) script.js.Rauchmelder.Skript_1: 6 Geräte mit dem Datenpunkt Rauch erkannt werden überwacht.
                            17.2.2020, 22:32:19.344	[info ]: javascript.0 (4842) script.js.Rauchmelder.Skript_1: registered 6 subscriptions and 0 schedules
                            

                            Beim Wohnzimmer habe ich vorhin in den Datenpunkten "gespielt", deshalb heute "Rauch erkannt"

                            paul53 1 Reply Last reply Reply Quote 0
                            • paul53
                              paul53 @dslraser last edited by

                              @dslraser sagte:

                              var statt const schreiben, sonst kamen Fehler.

                              Welche ?

                              dslraser 1 Reply Last reply Reply Quote 0
                              • dslraser
                                dslraser Forum Testing Most Active @paul53 last edited by dslraser

                                @paul53

                                avascript.0	2020-02-17 22:54:21.348	error	(4842) at process._tickCallback (internal/process/next_tick.js:68:7)
                                javascript.0	2020-02-17 22:54:21.348	error	(4842) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
                                javascript.0	2020-02-17 22:54:21.348	error	(4842) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
                                javascript.0	2020-02-17 22:54:21.348	error	(4842) at client.get (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:580:17)
                                javascript.0	2020-02-17 22:54:21.348	error	(4842) at adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:1055:17)
                                javascript.0	2020-02-17 22:54:21.348	error	(4842) at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1464:17)
                                javascript.0	2020-02-17 22:54:21.348	error	(4842) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1411:37)
                                javascript.0	2020-02-17 22:54:21.347	error	(4842) at compile (/opt/iobroker/node_modules/iobroker.javascript/main.js:1188:28)
                                javascript.0	2020-02-17 22:54:21.347	error	(4842) at Object.createScript (vm.js:277:10)
                                javascript.0	2020-02-17 22:54:21.347	error	(4842) at new Script (vm.js:83:7)
                                javascript.0	2020-02-17 22:54:21.347	error	(4842) SyntaxError: Identifier 'cacheSelectorSmoke' has already been declared
                                javascript.0	2020-02-17 22:54:21.347	error	(4842) ^
                                javascript.0	2020-02-17 22:54:21.347	error	(4842) const cacheSelectorSmoke = $('*.SMOKE_DETECTOR_ALARM_STATUS');
                                javascript.0	2020-02-17 22:54:21.347	error	at script.js.Rauchmelder.Skript_1:38
                                javascript.0	2020-02-17 22:54:21.347	error	(4842) script.js.Rauchmelder.Skript_1 compile failed:
                                

                                Script Engine 4.4.2

                                paul53 1 Reply Last reply Reply Quote 0
                                • paul53
                                  paul53 @dslraser last edited by

                                  @dslraser sagte:

                                  SyntaxError: Identifier 'cacheSelectorSmoke' has already been declared

                                  Eine Konstante kann nur einmal deklariert werden. Wo erfolgt die erste Deklaration ?

                                  dslraser 1 Reply Last reply Reply Quote 0
                                  • dslraser
                                    dslraser Forum Testing Most Active @paul53 last edited by dslraser

                                    @paul53
                                    Ich habe nur das komplette Script aus dem ersten Beitrag genommen und den zweiten Selector eingefügt.

                                    Edit: muss der "zweite" Selector anders heißen, wenn man den ersten drinn läßt ?

                                    paul53 2 Replies Last reply Reply Quote 0
                                    • paul53
                                      paul53 @dslraser last edited by

                                      @dslraser sagte:

                                      und den zweiten Selector eingefügt.

                                      Mit gleichem Bezeichner cacheSelectorSmoke eingefügt, nicht ersetzt ? Dann ist die Fehlermeldung logisch.

                                      dslraser 1 Reply Last reply Reply Quote 0
                                      • dslraser
                                        dslraser Forum Testing Most Active @paul53 last edited by

                                        @paul53 sagte in Rauchmelder Skript:

                                        Mit gleichem Bezeichner cacheSelectorSmoke eingefügt, nicht ersetzt ? Dann ist die Fehlermeldung logisch.

                                        ja, habe ich. Ich lerne ja noch...
                                        Ich hatte es einen Beitrag über Deinem als Edit eingefügt.
                                        Und ist ein var quasi auch ein const ?

                                        paul53 1 Reply Last reply Reply Quote 0
                                        • paul53
                                          paul53 @dslraser last edited by

                                          @dslraser sagte:

                                          muss der "zweite" Selector anders heißen, wenn man den ersten drinn läßt ?

                                          Als Variablendeklaration wird der erste Wert überschrieben.

                                          1 Reply Last reply Reply Quote 0
                                          • paul53
                                            paul53 @dslraser last edited by

                                            @dslraser sagte:

                                            Und ist ein var quasi auch ein const ?

                                            Der Wert einer Variablen (var, let) kann überschrieben werden, der Wert einer Konstanten (const) nicht.

                                            1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            830
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript security
                                            6
                                            52
                                            4817
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo