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.
    • Dominik F.
      Dominik F. @Feuersturm last edited by Dominik F.

      @cash
      Gerade das mit dem html war mir nicht klar 😄 Danke für deine Erklärung

      @Feuersturm
      Nein, ich nutze keine HM IP, falls der Datenpunkt STATE dort auch existiert würde ich es einfach mal testen. Falls es nicht funktioniert kann man es vielleicht so umschreiben, dass es auch damit funktioniert.
      Hab das aktuelle Skript oben eingestellt

      Feuersturm 1 Reply Last reply Reply Quote 0
      • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            880
                                            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