Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [gelöst]Zigbee Wassermelder

    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

    [gelöst]Zigbee Wassermelder

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

      @cash

      Ja, ich hatte gehofft das es einfach wäre umzuschreiben 😄 Dein Script ist schon sehr komplex und für mich, der gerade mal die einfachsten Skripte etwas umschreiben kann, leider völlig unmöglich dieses umzuschreiben 😕 es hat mich schon allein stunden gekostet den Teil:

      var cacheSelectorWater_leak_detected = $('zigbee.0.*.detected');
      

      für Zigbee umzuschreiben. Vielleicht gibts hier ja jemanden der sich mit der Objektstrucktur von Zigbee auskennt und helfen kann, dies umzuschreiben

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

        @Dominik-F sagte:

        mit der Objektstrucktur von Zigbee auskennt

        Zeigen !!

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

          @paul53

          Unbenannt.PNG

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

            @Dominik-F
            Hast Du mehr als einen Wassermelder ? Wenn nicht, ist das verwendete Script viel zu komplex und für Deine Objektstruktur ungeeignet.

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

              @paul53

              Ich habe nur einen Wassermelder der über Zigbee läuft. Habe noch einen von HMIP der mit dem ursprünglichem Skript von Cash läuft und auch funktioniert. Daher bin ich auf die Idee gekommen, dass ich das einfach umschreiben könnte und später in das andere Skript einfügen könnte um beide über ein Skript laufen zu lassen und hab in meiner unwissenheit nicht damit gerechnet, das es so komplex ist.

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

                @Dominik-F Du hast nur einen Wassermelder von Homematic? Dann würde ich mein Script definitv nicht nutzen. Overkill.

                Du kannst doch genau auf diesen einen Datenpunkt abfragen entweder per Java oder per Blockly....

                Um nur ein Gerät zu überwachen braucht es nicht viele Zeilen. Auch der Name vom Auslöser muss nicht ermittelt werden. Es ist la klar welcher Wassermelder sich meldet. Mach ein Script pro Wassermelder und fertig...

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

                  @cash

                  Da hast du wahrscheinlich recht. Dann werde ich mich daran mal versuchen 🙂

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

                    @Dominik-F Nutzt Du Telegram? Ich schicke Dir Morgen ggf. mal ein Beispiel für den Homematic Wassermelder, das kann man dann leicht für das Zigbee-Teil erweitern...

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

                      @cash

                      Vielen Dank, du bist mir eine große Hilfe.

                      Nein, ich nutze nur Pushover.

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

                        @Dominik-F Gut macht es einfacher für mich...

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

                          @Dominik-F Du musst die drei Triggerpunkte anpassen und beim dritten weiß ich nicht wie der meldet ob z. B. mit true oder false oder mit Zahl? Das mußt Du dann auch anpassen. Texte nach belieben. Habe es nicht getestet, sollte aber funktionieren

                          /*****************************************+
                           * Push bei Wassermeldung
                           * 
                           * 05.01.20 V1.00   Erste Version
                           * 
                           ****************************************/
                          var logging = true;
                          var debugging = false;
                          var sendpush = true;        // Push wenn Wasser erkannt wird
                          var sendpush_1 = true;        // Push wenn Wassermeldung beendet wurde
                          
                          let _prio;
                          let _titel = 'Wasserschaden';
                          let _message;
                          //let _device = 'TPhone'; 
                          let _device = 'All';
                          var tmp;
                          
                          var id_Trigger_1 = 'hm-rpc.2.001898A997FD42.1.WATERLEVEL_DETECTED'/*Küche Wassermelder:1 WATERLEVEL DETECTED*/
                          var id_Trigger_2 = 'hm-rpc.2.001898A997FD42.1.MOISTURE_DETECTED'/*Küche Wassermelder:1 MOISTURE DETECTED*/
                          var id_Trigger_3 = 'zigbee'
                          
                          function send_pushover (_device, _message, _titel, _prio) {
                              var pushover_Instanz =  'pushover.0';
                                  if (_prio === 0){pushover_Instanz =  'pushover.0';}
                                  else if (_prio == 1){pushover_Instanz =  'pushover.1';}
                                  else if (_prio == 2){pushover_Instanz =  'pushover.2';}
                                  else {pushover_Instanz =  'pushover.3';}
                                  sendTo(pushover_Instanz, { 
                                  device: _device,
                                  message: _message, 
                                  title: _titel, 
                                  priority: _prio
                              }); 
                          }
                          
                          function func_Wasser(){
                              var Status_1 = getState(id_Trigger_1).val;
                              var Status_2 = getState(id_Trigger_2).val;
                              var Status_3 = getState(id_Trigger_3).val;
                              var status_text_1;
                              var status_text_2;
                              var status_text_3;
                              if(Status_1){
                                  status_text_1 = 'Wasser erkannt';
                              }
                              else{
                                  status_text_1 = 'keine Wasser';    
                              }
                              if(Status_2){
                                  status_text_2 = 'Feuchtigkeit erkannt';
                              }
                              else{
                                  status_text_2 = 'keine Feuchtigkeit';    
                              }
                              if(Status_3 == 1){
                                  status_text_3 = 'Wasser erkannt';
                              }
                              else{
                                  status_text_3 = 'keine Wasser';    
                              }
                              if(debugging){
                                  log('Status1_' +Status_1 +' --- Status2: ' +Status_2 +' --- Status3: ' +Status_3)
                              }
                              if(Status_1 || Status_2 || Status_3 == 1){
                                  tmp = 'Meldung vom Wassermelder. Status vom ersten Melder: '+status_text_1 +' --- Status vom zweiten Melder: '+status_text_2 +' --- Status vom dritten Melder: '+status_text_3;
                                  if(logging){
                                      log(tmp);
                                  }
                                  if(sendpush){
                                      _prio = 2;
                                      _message = tmp; 
                                      send_pushover(_device, _message, _titel, _prio);
                                  }
                          
                              }
                              else{
                                  tmp = 'Meldung vom  Wassermelder aufgehoben. Status vom ersten Melder: '+status_text_1 +' --- Status vom zweiten Melder: '+status_text_2 +' --- Status vom dritten Melder: '+status_text_3;
                                  if(logging){
                                      log(tmp);
                                  }
                                  if(sendpush_1){
                                      _prio = 0;
                                      _message = tmp;
                                      send_pushover(_device, _message, _titel, _prio);
                                  }    
                          
                              }     
                          }
                          
                          on({id: id_Trigger_1, change: 'ne', ack: true}, func_Wasser);
                          on({id: id_Trigger_2, change: 'ne', ack: true}, func_Wasser);
                          on({id: id_Trigger_3, change: 'ne', ack: true}, func_Wasser);
                          
                          
                          
                          Dominik F. 1 Reply Last reply Reply Quote 0
                          • Dominik F.
                            Dominik F. @cash last edited by

                            @cash

                            Wow, vielen Dank für deine Mühe! Der erste Test mit dem Zigbee Wassermelder hat funktioniert.
                            Ich werde jetzt versuchen, das Skript soweit zu ändern, dass wenn der Zigbee Wassermelder auf True geht, auch nur der Status von diesem verschickt wird. Falls ich mich da verrenne, darf ich dich dazu noch einmal anschreiben?
                            Ich bekomme jedoch eine Warnung :

                            	(13457) adapter.getMessage is deprecated and will be removed in js-controller 2.3. Please report this warning to the developer of this adapter!
                            

                            @Bluefox

                            Ich hoffe du bist der richtige Ansprechpartner für die Warnung bei dem Skript?

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

                              @Dominik-F Welche Version von zigbee adapter bringt diese Fehlermeldung?

                              Dominik F. 2 Replies Last reply Reply Quote 0
                              • Dominik F.
                                Dominik F. @Bluefox last edited by

                                @Bluefox
                                0.11.5

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

                                  @Bluefox

                                  Die Meldung spuckt der pushover Adapter Version 1.1.1 aus jedoch nur wenn es um zigbee geht

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

                                    @Dominik-F Die Meldung wird in der Version 1.0.x verschwinden.

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

                                      @Bluefox

                                      Danke für dein schnelles Handeln

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

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      430
                                      Online

                                      31.9k
                                      Users

                                      80.2k
                                      Topics

                                      1.3m
                                      Posts

                                      javascript
                                      4
                                      20
                                      914
                                      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