Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Servicemeldungen - All inclusive für Homematic -

    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

    Servicemeldungen - All inclusive für Homematic -

    This topic has been deleted. Only users with topic management privileges can see it.
    • nik82
      nik82 Most Active last edited by

      Hallo,
      ich habe seit einigen Tagen ein Problem:
      Bei mir war die Batterie eines Bewegungsmelder leer, soweit kein Problem, Batterie getauscht und gut.

      Aber jetzt bekomme ich mehrmals am Tag, die Meldung das die Batterie immer noch leer wäre:

      Bewegungsmelder_Wohnzimmer (000xxx) - Spannung Batterien/Akkus gering. 2x LR6/AA 
      

      Das stimmt aber nicht, ich habe Batterie auch nochmal getauscht, auch Voltage steht auf 3.1V:
      ae4ae828-6363-404c-b8ad-44540b301bf3-image.png

      Und der Datenpunkt Low_Bat hat sich auch ewig nicht mehr geändert (vielleicht war auch die Batterie gar nicht leer):

      efe42055-20a6-49b6-89a2-0f815a64ff7e-image.png

      Habe auch schon alles komplett neu gestartet.
      Hat hier jemand eine Idee an was das liegen könnte?

      Danke im Voraus.

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

        @nik82 Du zeigst oben Bewegungsmelder_Wohnzimmer aber unten Bewegungsmelder_Tab? Entscheidend ist auch nicht Low_Bat sondern der Datenpunkt Low_Bat_Alarm.

        Technisch halte ich es für ausgeschlossen das das Script was anderes anzeigt als der Datenpunkt…

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

          @cash
          Oh mein Gott!!!! SORRY SORRY SORRY!!!🤦‍♂️
          Ich hab wirklich vergessen das ich hinten im Eck ja auch noch einen Bewegungsmelder habe.
          Es sind tatsächlich auch die Batterien von dem Bewegungsmelder leer.
          Boa, echt peinlich, also vergesst meinen Post bitte.
          Wird Zeit das Urlaub kommt 🙂

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

            @nik82 😂

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

              @cash

              Hallo,
              ich würde gerne eine andere Formatierung bei der Versendung von Telegram Nachrichten haben. Gibt es im Script eine Möglichkeit das ohne viel Aufwand zu ändern?
              Das zu Meldende Gerät würde ich gerne fettgedruckt darstellen.

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

                @dominik-f möglich ist das natürlich. Musst Dich einfach mal durch das Script wühlen und entsprechend anpassen.

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

                  @cash

                  Okay, ist also nicht ohne weiteres möglich. Hab mich schon versucht durchs Skript zu wühlen, aber da ich nicht so gut in Javascript bin ist es für mich leider nicht machbar.

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

                    @dominik-f sagte in Servicemeldungen - All inclusive für Homematic -:

                    fettgedruckt

                    Fett, z.B. so:

                    "Es liegen <b>keine</b> xxx Meldungen vor."

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

                      @bahnuhr

                      Danke für deine Antwort.
                      Die Zeichen die ich dafür brauche kenne ich, nur das Skript ist so umfangreich, dass ich als Javascript anfänger (bin deshalb schon auf Blockly für meine selbst erstellten Skripte umgestiegen) den Wald vor lauter Bäumen nicht sehe.

                      1 Reply Last reply Reply Quote 0
                      • R
                        Rookie50 @cash last edited by Rookie50

                        @cash
                        Hi cash, ich habe nie Meldungen für leere Batterien bei den Homematic Thermostate HM-CC-RT-DN bekommen. Nun habe ich mir das mal angeschaut und nachdem ich in Zeile 1596 die Abfrage vom 'status' von == 1 auf > 0 geändert habe, funktioniert es. Der Status hat den Wert 6. Man könnte natürlich auch auf status != 0 abfragen.
                        Stimmst Du mir da zu?

                        Gruß Robert

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

                          @rookie50 Nein ich stimme nur bedingt zu. Wenn ich mich nicht täusche hatte ich die Abfrage wie von Dir beschrieben auf >0 aber das hatte negative Effekte, an die ich mich nicht erinnern kann. Mit anderen Wort kann funktionieren muss aber nicht.

                          Muss aber dazu sagen das ich derzeit das Script nicht mehr nutze, da ich keinen Sinn mehr dadrin sehe. Außer für Batteriemeldungen aber da gibt es dann auch schlankere Lösungen...

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

                            @cash

                            Kannst du kurz erläutern warum? Nutzt du andere Lösungen?

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

                              @dominik-f klar. Ich nutze es nicht mehr weil mich die Servicemeldungen nicht mehr interessieren. Ich bestätige die einfach alle paar Monate mal und fertig. Ich habe relativ wenig Meldungen bzw immer wieder die selben Geräte.

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

                                @cash

                                Ja, da hast du irgendwie recht. 99% der Meldungen ignoriere ich tatsächlich auch. Ich bekomme auch fast ausschließlich die Meldung über eine bestätigbare Kommikationsstörung. Die Batteriemeldungen sind für mich auch das interessanteste weil mein anderes Skript nicht so zuverlässig funktioniert.

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

                                  @dominik-f Dann editier das Script und lösch alle unwichtigen Meldungen. So habe ich es gemacht. Ist zwar Quick & Dirty und eigentlich gefällt es mir so auch nicht richtig aber ich habe auch derzeit keine Zeit und Lust das ganze neu zu schreiben…

                                  1 Reply Last reply Reply Quote 0
                                  • R
                                    Rookie50 @cash last edited by

                                    @cash danke für Deine Antwort. Ich habe mir nun den device-watcher angeschaut und werde wahrscheinlich den Adapter in Zukunft nutzen. Trotzdem vielen Danke für Deine Arbeit an dem Script!

                                    1 Reply Last reply Reply Quote 0
                                    • N
                                      Neopholus last edited by Neopholus

                                      @cash

                                      Ich weiß nicht, seit wann, aber man könnte mittlerweile auch die Alarmmeldungen der CCU2 abfragen und z.B. in separate Datenpunkte speichern.

                                      Ich habe das bei mir in einem Typescript mal folgendermaßen umgesetzt:

                                      "use strict";
                                      
                                      /**
                                       * Aktualisiert Anzahl und den Text der Alarmmeldungen in der entsprechenden Systemvariable
                                       */ 
                                      function updateAlarmMessages() {
                                          let messages:string = "";
                                      
                                          let cacheSelectorState = $('state[id=hm-rega.0.*]');
                                          cacheSelectorState.each(function (id, i) {
                                              if ((<iobJS.StateObject><unknown>getObject(id)).common.name.toString().startsWith("WatchDog")) {
                                                  if (getState(id).val == true) {
                                                      // Das Alarm-Flag ist aktiv
                                                      messages += (<iobJS.StateObject><unknown>getObject(id)).common.desc + "\n";
                                                  }
                                              }
                                          });
                                      
                                          // Meldungen setzen
                                          setState('0_userdata.0.ccu2.alarmmeldungen'/*Text der Alarmmeldungen der CCU2*/, messages);
                                      
                                          // Anzahl setzen
                                          let oldCouter:number = getState('0_userdata.0.ccu2.alarmmeldungenAnzahl'/*Anzahl der Alarmmeldungen der CCU2*/).val;
                                          let newCounter:number = getState('hm-rega.0.alarms'/*Alarmmeldungen*/).val;
                                      
                                          if (oldCouter != newCounter) {
                                              setState('0_userdata.0.ccu2.alarmmeldungenAnzahl'/*Anzahl der Alarmmeldungen der CCU2*/, newCounter);
                                          }
                                      }
                                      
                                      /**
                                       * Bei Änderungen auf der CCU werden Anzahl und Texze der Alarmmeldungen neu gesetzt
                                       */
                                      on({id:['hm-rega.0.alarms'/*Alarmmeldungen*/], logic: "and", change: "ne"}, function (obj) {
                                          updateAlarmMessages();
                                      });
                                      
                                      
                                      /**
                                       * Beim Starten des Skripts aufrufen
                                       */
                                      updateAlarmMessages();
                                      

                                      Vielleicht braucht es ja der eine oder andere oder kann @cash als Vorlage dienen, das in sein Skript einzubauen.

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

                                        @neopholus aufgefallen war es mir schon aber ich hatte mich noch nicht weiter damit beschäftigt.. Danke aber für den Hinweis. Auf jeden Fall wäre das Script wesentlich einfacher. Man würde natürlich nicht mehr sehen welche Batterien getauscht werden müssen aber da gibt es bestimmt auch einen Weg das wieder einzubauen…

                                        1 Reply Last reply Reply Quote 0
                                        • U
                                          Ulli 0 last edited by Ulli 0

                                          Ich habe eine Frage zum Script:

                                          Kann man die ID des betroffenen Gerätes irgendwie aus dem generiertem String raus nehmen?

                                          3d5f0b52-b23e-4412-81be-28a6e9eed10b-image.png

                                          Meister Mopper cash 2 Replies Last reply Reply Quote 0
                                          • Meister Mopper
                                            Meister Mopper @Ulli 0 last edited by Meister Mopper

                                            @ulli-0

                                            Ich denke mal, du möchtest mit wildcard (*) arbeiten. Dann würde es mit einem System-Block funktionieren.

                                            ee03b2de-0ce5-4c69-be1d-277f9aac6ec6-grafik.png

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            464
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript
                                            93
                                            1038
                                            281523
                                            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