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

      @Dominik-F Setzt du die Homematic IP Rauchmelder HMIP-SWSD ein? Ich hätte Interesse an deinem Skript. Könntest du in deinem ersten Beitrag die aktuelle Version deines Skriptes einstellen bzw. bei neuen Erkenntnissen das Skript dort aktualisieren?

      Dominik F. D 2 Replies Last reply Reply Quote 0
      • 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
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            684
                                            Online

                                            31.7k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript security
                                            6
                                            52
                                            4807
                                            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