Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. Servicemeldungen - All inclusive für Homematic -

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    17
    1
    634

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    5.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.5k

Servicemeldungen - All inclusive für Homematic -

Scheduled Pinned Locked Moved JavaScript
javascript
1.0k Posts 93 Posters 344.6k Views 102 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Dominik F.D Offline
    Dominik F.D Offline
    Dominik F.
    wrote on last edited by
    #1016

    @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
    0
    • Dominik F.D Dominik F.

      @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.

      bahnuhrB Online
      bahnuhrB Online
      bahnuhr
      Forum Testing Most Active
      wrote on last edited by
      #1017

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

      fettgedruckt

      Fett, z.B. so:

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


      Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
      Danke.
      gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-f%C3%BCr-gute-forenbeitr%C3%A4ge
      ScreenToGif :https://www.screentogif.com/downloads.html

      Dominik F.D 1 Reply Last reply
      0
      • bahnuhrB bahnuhr

        @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.D Offline
        Dominik F.D Offline
        Dominik F.
        wrote on last edited by
        #1018

        @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
        0
        • cashC cash

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

          R Offline
          R Offline
          Rookie50
          wrote on last edited by Rookie50
          #1019

          @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

          cashC 1 Reply Last reply
          0
          • R 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

            cashC Offline
            cashC Offline
            cash
            Most Active
            wrote on last edited by
            #1020

            @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.D R 2 Replies Last reply
            0
            • cashC cash

              @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.D Offline
              Dominik F.D Offline
              Dominik F.
              wrote on last edited by
              #1021

              @cash

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

              cashC 1 Reply Last reply
              0
              • Dominik F.D Dominik F.

                @cash

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

                cashC Offline
                cashC Offline
                cash
                Most Active
                wrote on last edited by
                #1022

                @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.D 1 Reply Last reply
                0
                • cashC cash

                  @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.D Offline
                  Dominik F.D Offline
                  Dominik F.
                  wrote on last edited by
                  #1023

                  @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.

                  cashC 1 Reply Last reply
                  1
                  • Dominik F.D Dominik F.

                    @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.

                    cashC Offline
                    cashC Offline
                    cash
                    Most Active
                    wrote on last edited by
                    #1024

                    @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
                    0
                    • cashC cash

                      @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...

                      R Offline
                      R Offline
                      Rookie50
                      wrote on last edited by
                      #1025

                      @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
                      0
                      • N Offline
                        N Offline
                        Neopholus
                        wrote on last edited by Neopholus
                        #1026

                        @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.

                        cashC 1 Reply Last reply
                        0
                        • N 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.

                          cashC Offline
                          cashC Offline
                          cash
                          Most Active
                          wrote on last edited by
                          #1027

                          @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
                          0
                          • U Offline
                            U Offline
                            Ulli 0
                            wrote on last edited by Ulli 0
                            #1028

                            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 MopperM cashC 2 Replies Last reply
                            0
                            • U 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 MopperM Online
                              Meister MopperM Online
                              Meister Mopper
                              wrote on last edited by Meister Mopper
                              #1029

                              @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

                              Proxmox und HA - dank KI/AI endlich "blocklyfrei"

                              1 Reply Last reply
                              0
                              • U Offline
                                U Offline
                                Ulli 0
                                wrote on last edited by
                                #1030

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

                                1 Reply Last reply
                                0
                                • U 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

                                  cashC Offline
                                  cashC Offline
                                  cash
                                  Most Active
                                  wrote on last edited by
                                  #1031

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

                                  U 1 Reply Last reply
                                  0
                                  • cashC cash

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

                                    U Offline
                                    U Offline
                                    Ulli 0
                                    wrote on last edited by
                                    #1032

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

                                    cashC 1 Reply Last reply
                                    0
                                    • U Ulli 0

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

                                      cashC Offline
                                      cashC Offline
                                      cash
                                      Most Active
                                      wrote on last edited by
                                      #1033

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

                                      U 1 Reply Last reply
                                      0
                                      • cashC cash

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

                                        U Offline
                                        U Offline
                                        Ulli 0
                                        wrote on last edited by
                                        #1034

                                        @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
                                        1
                                        • L Offline
                                          L Offline
                                          looxer01
                                          wrote on last edited by looxer01
                                          #1035

                                          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

                                          wendy2702W 1 Reply Last reply
                                          4
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          792

                                          Online

                                          32.7k

                                          Users

                                          82.6k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Home
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe