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

    • Monatsrückblick - April 2025

    • Minor js-controller 7.0.7 Update in latest repo

    • Save The Date: ioBroker@Smart Living Forum Solingen, 14.06.

    Servicemeldungen - All inclusive für Homematic -

    This topic has been deleted. Only users with topic management privileges can see it.
    • 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
                            • U
                              Ulli 0 last edited by

                              @Meister-Mopper : Eigentlich solls nur übersichtlicher - eben ohne die Geräte-ID sein 🙂

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

                                @ulli-0 Geht schon. Du kannst es gerne ändern.

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

                                  @cash Verrat mir bitte wie - ich suche schon ne Weile 🙂

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

                                    @ulli-0 such mal nach +' ('+id_name +')'. Das sollte es sein. Habe aber nur flüchtig geguckt

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

                                      @cash den Ausdruck gibt es 49x im script - einfach alle rauslöschen?

                                      f31e01e9-6ba8-4308-9835-69056245695b-image.png

                                      Noch was bekomm ich nicht hin: In meiner Testumgebung ist

                                      a) ein HMIP-Gerät (HmIP-eTRV-2) mit leerer Batterie, und
                                      b) ein "normales" HM-Gerät (HM-CC-RT-DN), wo der Stellbereich zu groß ist

                                      Beide Servicemeldungen werden in der CCU-Oberfläche angezeigt:
                                      abb56f72-e0e2-4611-ac9f-8840a8c51a0a-image.png

                                      Das Script zeigt aber nur die Meldungen von a) (dem HMIP) Gerät an. Neustart von iobroker, Neustart der Adapter und Geräte einlesen in den Adaptern hat nichts gebracht. In den Adaptern ist die Servicemeldung aber zu sehen:

                                      2a9539d4-81c3-460c-8c32-faada4c07d05-image.png

                                      1 Reply Last reply Reply Quote 1
                                      • L
                                        looxer01 last edited by looxer01

                                        Hi,
                                        ich habe das script -zunachest fuer mich- komplett umgeschrieben.

                                        • effizienter gestaltet
                                        • Historie
                                        • Subsrciption auch auf REGA (also nur 1) wenn gewünscht
                                        • alle message-services zum Senden integiert (email, whatsapp, telegram, signal etc)

                                        @Cash: wenn fuer dich ok und falls interesse von anderen wuerde ich dafuer einen einen neuen Thread aufmachen

                                        vG Looxer

                                        wendy2702 1 Reply Last reply Reply Quote 4
                                        • cash
                                          cash Most Active last edited by

                                          @looxer01 Habe natürlich nichts dagegen. Ich würde das Script heute vermutlich auch anders schreiben 🙂 aber ich nutze es auch schon ewig nicht mehr…

                                          1 Reply Last reply Reply Quote 1
                                          • wendy2702
                                            wendy2702 @looxer01 last edited by

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

                                            Hi,
                                            ich habe das script -zunachest fuer mich- komplett umgeschrieben.

                                            • effizienter gestaltet
                                            • Historie
                                            • Subsrciption auch auf REGA (also nur 1) wenn gewünscht
                                            • alle message-services zum Senden integiert (email, whatsapp, telegram, signal etc)

                                            @Cash: wenn fuer dich ok und falls interesse von anderen wuerde ich dafuer einen einen neuen Thread aufmachen

                                            vG Looxer

                                            Hi,

                                            wo finde ich denn das neue Skript?

                                            Thx

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            532
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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