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.
    • cash
      cash Most Active last edited by

      @Steff Ja das ist richtig. Es wird nur beim auftreten der Servicemeldung etwas gemeldet. Die Beseitigung wird nur im log protokolliert.

      Ich habe eine neue Version auf GitHub gestellt. Dort wurden 2 Fehler korrigiert (beide ohne Auswirkung da lediglich eine Warnung im Script).
      Vielwichtiger ist die Ermittlung des Gerätenamens, die ich verändert habe. Bei einigen User konnte der Gerätename nicht ermittelt werden. Ich hoffe das mit dieser Änderung der Name immer korrekt ermittelt werden kann.

      sigi234 Steff 2 Replies Last reply Reply Quote 1
      • sigi234
        sigi234 Forum Testing Most Active @cash last edited by

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

        @Steff Ja das ist richtig. Es wird nur beim auftreten der Servicemeldung etwas gemeldet. Die Beseitigung wird nur im log protokolliert.

        Ich habe eine neue Version auf GitHub gestellt. Dort wurden 2 Fehler korrigiert (beide ohne Auswirkung da lediglich eine Warnung im Script).
        Vielwichtiger ist die Ermittlung des Gerätenamens, die ich verändert habe. Bei einigen User konnte der Gerätename nicht ermittelt werden. Ich hoffe das mit dieser Änderung der Name immer korrekt ermittelt werden kann.

        Hallo, kannst du das Skript hier nicht einstellen?

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

          @sigi234 nein. Es ist zu lang. Die ersten Versionen hatte ich ja imForum. Nach der Umstellung konnte ich es dann nicht mehr einfügen.

          Mir gefällt es in giuthub aber mittlerweile auch besser, da es so einfacher ist das Script zu pflegen (incl Versionierung).

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

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

            @Steff Ja das ist richtig. Es wird nur beim auftreten der Servicemeldung etwas gemeldet. Die Beseitigung wird nur im log protokolliert.

            Ah OK, danke für die Rückmeldung.
            Werde die neue Version später noch testen.

            Danke nochmals,
            Gruß Steffen

            1 Reply Last reply Reply Quote 0
            • S
              SevenUp last edited by

              Danke für deine Mühe! Ein unverzichtbares Tool, wie ich finde.
              Ich nutze es mit Telegram und hätte dazu eine Bitte: wäre es möglich, die Telegram-Nachrichten nur an einen bestimmten User zu senden (und das im Config-Bereich einzustellen)? Meine Frau möchte die Service-Meldungen nicht unbedingt sehen... 🙂

              müsste vermutlich so aussehen?

              function send_telegram (_message) {
                  sendTo('telegram.0', { 
                      text: _message,
                      user: 'UserName',
                      parse_mode: 'HTML'
                  }); 
              
              }
              
              1 Reply Last reply Reply Quote 0
              • cash
                cash Most Active last edited by

                Kein Problem. User kann ich einbauen. Mache ich ja bei pushover auch.

                1 Reply Last reply Reply Quote 0
                • rantanplan
                  rantanplan @RobertM last edited by rantanplan

                  von mir "gelöscht"

                  1 Reply Last reply Reply Quote 0
                  • S
                    sveni_lee last edited by

                    meine CCU hat grad die Meldung, dass ein Update verfügbar ist. Das Script greift die Meldung der CCU aber nicht ab oder?

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

                      Eine neue Firmware ist keine Servicemeldung. Die neue Firmware erscheint nur auf der Startseite der ccu nicht im Punkt Servicemeldunden. Also nein aber möglich wäre es, da wir die Firmware als Datenpunkt in iobroker haben. Man müsste aslo nur den Server von eq3 abfragen. Ich befürchte das hierfür meine Script Kenntnisse nicht ausreichen

                      sigi234 1 Reply Last reply Reply Quote 0
                      • sigi234
                        sigi234 Forum Testing Most Active @cash last edited by

                        @cash
                        Also ich habe die neue Firmware (2.41.8) installiert, bis jetzt ist alles Ok.
                        Ist eine kleine, aber wichtige Änderung wegen Sicherheit....

                        Changelog
                        2.41.8
                        Fehlerbehebungen
                        [HMCCU-153] Security Update des Web Session Managements der CCU
                        (Unberechtigtes Login durch Manipulation mit der SessionID)
                        Risiko: Angriffsmöglichkeit bestand
                        - aus dem Internet: Wenn Port Forwarding eingerichtet war (siehe Warnung oben)
                        - aus dem LAN: Wenn unsichere / nicht vertrauenswürdige Systeme Zugang zum LAN
                        haben
                        
                        S 1 Reply Last reply Reply Quote 0
                        • S
                          sveni_lee @sigi234 last edited by

                          @sigi234

                          mir ging es darum eine Nachricht ebzusetzen wenn eine neue Firmwareversion zur Verfügung steht.
                          Zur Zeit steht bei mir die Info, das eine neue Version zur Verfügung steht in der CCU. Die Frage ist nun
                          wie bekomme ich die Information von der CCU in iobroker...

                          sigi234 1 Reply Last reply Reply Quote 0
                          • sigi234
                            sigi234 Forum Testing Most Active @sveni_lee last edited by

                            @sveni_lee

                            Aha, jetzt verstehe ich was du meinst...
                            Muss mal überlegen...

                            1 Reply Last reply Reply Quote 0
                            • Z
                              zahnheinrich last edited by

                              Hätte noch ein paar Geräte einzupflegen:

                              HM-LC-Sw1-SM --- Batterietyp fehlt im Script
                              HM-LC-Sw1-SM --- Batterietyp fehlt im Script
                              HM-LC-Sw4-SM --- Batterietyp fehlt im Script
                              HM-LC-Sw4-SM --- Batterietyp fehlt im Script
                              HM-LC-Sw4-SM --- Batterietyp fehlt im Script
                              HM-Sys-sRP-Pl --- Batterietyp fehlt im Script

                              Das sind allesamt Geräte an 230V, also ohneBatterie.

                              Vielen Dank für das Skript!

                              1 Reply Last reply Reply Quote 0
                              • M
                                mike2712 last edited by

                                Hallo ich habe bislang noch das Script von paul53 und pix am laufen, zusätzlich teste ich gerade mit diesem Script.

                                Ist es möglich auch ein Fenster mit allen anstehenden Meldungen anzeigen zu lassen, so ähnlich war es in dem Vorgänger Script.

                                Habe an folgenden Stellen ein wenig gespielt.

                                //Variablen für Servicemeldung in Objekt schreiben // Wenn einer Meldung auftritt wird diese in ein Textfeld geschrieben. Auf dieses kann man dann reagieren
                                //und z. B. die Nachricht per Telegram verschicken oder in vis anzeigen
                                var write_message = true;        // true schreibt beim auftreten einer Servicemeldung die Serviemeldung in ein Objekt
                                var id_Text_Servicemeldung = 'MeineObjekte.0.TEST.NEU'/*Test neu*/;
                                
                                

                                In dem TAG wird die meldung geschrieben, wenn sie allerdings nicht mehr ansteht, wird diese Meldung auch nicht gelöscht.

                                //Ergebnis in Datenfelder schreiben
                                var write_state = true;          //Schreibt die Ergebnisse der Servicemeldungen in Datenfelder. (true = schreiben, false, kein schreiben)
                                //nicht benutzte Felder einfach leer lassen --> var id_IST_XXX = '';
                                var id_IST_LOWBAT = 'Systemvariable.0.Servicemeldungen.Anzahl_LOWBAT'/*Anzahl LOWBAT*/;
                                var id_IST_LOW_BAT = '';
                                //var id_IST_G_LOWBAT = '';
                                var id_IST_UNREACH = "Systemvariable.0.Servicemeldungen.Anzahl_UNREACH"/*Anzahl_UNREACH*/;
                                var id_IST_STICKY_UNREACH = "Systemvariable.0.Servicemeldungen.Anzahl_STICKY_UNREACH"/*Anzahl_STICKY_UNREACH*/;
                                var id_IST_CONFIG_PENDING = '';
                                var id_IST_UPDATE_PENDING = '';
                                var id_IST_DEVICE_IN_BOOTLOADER = '';
                                var id_IST_ERROR = '';
                                var id_IST_ERROR_NON_FLAT_POSITIONING = '';
                                var id_IST_ERROR_CODE = '';
                                var id_IST_FAULT_REPORTING = '';
                                var id_IST_SABOTAGE = 'MeineObjekte.0.TEST.TABLE'/*Test neu*/;
                                var id_IST_Gesamt = "Systemvariable.0.Servicemeldungen.Anzahl_GESAMT"/*Anzahl_GESAMT*/;
                                

                                Hier habe ich auch gespielt, aber in der TEST.TABLE wird nichts geschrieben, wo im ioBroker findet man Systemvariable.0, konnte das nirgendwo finden.

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

                                  @zahnheinrich Danke habe ich in der nächsten Version ergänzt.

                                  @mike2712 Ich verstehe Deine Fragen nicht so ganz?

                                  Das Script zeigt fast alle Servicemeldungen von allen Homematic Geräten, auch von Fenstern. Eine Servicemeldung wäre z. B. Batterie leer oder Sabotage.
                                  Eine Servicemeldung wird nicht erzeugt beim öffnen eines Fensters.

                                  Der Umstand das das Feld id_Text_Servicemeldung nicht gelöscht wird wenn die Meldung weg ist ist mir bekannt. Ist historisch gewachsen und störte bisher nicht weil das Feld benutzt wurde um darüber z. B. etwas per Telegram zu verschicken. Ich werde das in einer der nächsten Versionen anpassen.

                                  Meine eigenen Objekte führe ich unter Systemvariable.0
                                  Du Deine anscheinend unter MeineObjekte.0

                                  Wenn Du das Script so laufen läßt wie gezeigt sollte es ein paar Fehler im Log bringen, da es bei Dir ja meine Felder nicht gibt?
                                  Also am Besten die nicht benötigen Felder leeren mit ''

                                  Danach sollte es im Log keine Fehler geben. Aber es sollten dort viele Infos auftauchen zumindest wenn onetime =true...

                                  M 2 Replies Last reply Reply Quote 0
                                  • M
                                    mike2712 @cash last edited by

                                    @cash
                                    danke für die Antwort,

                                    service.JPG

                                    Ich würde gerne ein Fenster anzeigen lassen in dem alle anstehenden Meldungen stehen, dieses Beispiel ist blöd da nur eine vorhanden ist, wenn die Meldung nicht mehr vorhanden ist soll sie weg gehen, so war das in dem alten script.

                                    Röstkartoffel 1 Reply Last reply Reply Quote 0
                                    • Röstkartoffel
                                      Röstkartoffel @mike2712 last edited by

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

                                      @cash

                                      Ich würde gerne ein Fenster anzeigen lassen in dem alle anstehenden Meldungen stehen, dieses Beispiel ist blöd da nur eine vorhanden ist, wenn die Meldung nicht mehr vorhanden ist soll sie weg gehen, so war das in dem alten script.

                                      Ich würde mich auch freuen, wenn das gehen würde.

                                      1 Reply Last reply Reply Quote 1
                                      • M
                                        mike2712 @cash last edited by mike2712

                                        @cash
                                        Folgende Meldungen habe ich im LOG


                                        17:55:22.151 info javascript.1 Stop script script.js.Allgemein.Skript_1
                                        17:55:22.214 info javascript.0 Stop script script.js.Allgemein.Skript_1
                                        17:55:23.219 info javascript.1 Start javascript script.js.Allgemein.Skript_1
                                        17:55:23.220 info javascript.1 script.js.Allgemein.Skript_1: Bitte melden: Aussen Brunnen (LEQ1234384) --- HM-LC-Sw4-SM --- Batterietyp fehlt im Script
                                        17:55:23.220 info javascript.1 script.js.Allgemein.Skript_1: Es gibt: 43 Geräte mit dem Datenpunkt LOWBAT.
                                        17:55:23.220 warn javascript.1 at func_IST_Gesamt (script.js.Allgemein.Skript_1:367:13)
                                        17:55:23.220 warn javascript.1 at LOWBAT (script.js.Allgemein.Skript_1:533:17)
                                        17:55:23.220 warn javascript.1 at script.js.Allgemein.Skript_1:2489:5
                                        17:55:23.220 info javascript.1 script.js.Allgemein.Skript_1: Es gibt: 2 Geräte mit dem Datenpunkt LOW_BAT.
                                        17:55:23.220 info javascript.1 script.js.Allgemein.Skript_1: Es gibt: 66 Geräte mit dem Datenpunkt UNREACH. Derzeit: 1 Servicemeldung(en).
                                        17:55:23.221 warn javascript.1 at UNREACH (script.js.Allgemein.Skript_1:842:17)
                                        17:55:23.221 warn javascript.1 at script.js.Allgemein.Skript_1:2491:5
                                        17:55:23.221 warn javascript.1 at func_IST_Gesamt (script.js.Allgemein.Skript_1:367:13)
                                        17:55:23.221 warn javascript.1 at UNREACH (script.js.Allgemein.Skript_1:843:17)
                                        17:55:23.221 warn javascript.1 at script.js.Allgemein.Skript_1:2491:5
                                        17:55:23.222 info javascript.1 script.js.Allgemein.Skript_1: Es gibt: 63 Geräte mit dem Datenpunkt STICKY_UNREACH.
                                        17:55:23.222 warn javascript.1 at STICKY_UNREACH (script.js.Allgemein.Skript_1:1058:17)
                                        17:55:23.222 warn javascript.1 at script.js.Allgemein.Skript_1:2492:5
                                        17:55:23.222 warn javascript.1 at func_IST_Gesamt (script.js.Allgemein.Skript_1:367:13)
                                        17:55:23.222 warn javascript.1 at STICKY_UNREACH (script.js.Allgemein.Skript_1:1059:17)
                                        17:55:23.222 warn javascript.1 at script.js.Allgemein.Skript_1:2492:5
                                        17:55:23.223 info javascript.1 script.js.Allgemein.Skript_1: Es gibt: 66 Geräte mit dem Datenpunkt CONFIG_PENDING.
                                        17:55:23.223 info javascript.1 script.js.Allgemein.Skript_1: Es gibt: 50 Geräte mit dem Datenpunkt UPDATE_PENDING.
                                        17:55:23.223 info javascript.1 script.js.Allgemein.Skript_1: Es gibt: 47 Geräte mit dem Datenpunkt DEVICE_IN_BOOTLOADER.
                                        17:55:23.223 info javascript.1 script.js.Allgemein.Skript_1: Es gibt: 10 Geräte mit dem Datenpunkt ERROR.
                                        17:55:23.223 info javascript.1 script.js.Allgemein.Skript_1: Es gibt: 7 Geräte mit dem Datenpunkt FAULT_REPORTING.
                                        17:55:23.223 info javascript.1 script.js.Allgemein.Skript_1: Es gibt: 1 Geräte mit dem Datenpunkt SABOTAGE.
                                        17:55:23.223 warn javascript.1 at SABOTAGE (script.js.Allgemein.Skript_1:2254:17)
                                        17:55:23.223 warn javascript.1 at script.js.Allgemein.Skript_1:2499:5
                                        17:55:23.224 warn javascript.1 at func_IST_Gesamt (script.js.Allgemein.Skript_1:367:13)
                                        17:55:23.224 warn javascript.1 at SABOTAGE (script.js.Allgemein.Skript_1:2255:17)
                                        17:55:23.224 warn javascript.1 at script.js.Allgemein.Skript_1:2499:5
                                        17:55:23.224 info javascript.1 script.js.Allgemein.Skript_1: Keine Geräte gefunden mit dem Datenpunkt ERROR_NON_FLAT_POSITIONING.
                                        17:55:23.224 info javascript.1 script.js.Allgemein.Skript_1: registered 355 subscriptions and 0 schedules

                                        Variablen habe ich komplett angepasst

                                        //Ergebnis in Datenfelder schreiben
                                        var write_state = true;          //Schreibt die Ergebnisse der Servicemeldungen in Datenfelder. (true = schreiben, false, kein schreiben)
                                        //nicht benutzte Felder einfach leer lassen --> var id_IST_XXX = '';
                                        var id_IST_LOWBAT = 'MeineObjekte.0.Service.Meldungen.LOWBAT'/*Lowbat*/;
                                        var id_IST_LOW_BAT = '';
                                        //var id_IST_G_LOWBAT = '';
                                        var id_IST_UNREACH = 'MeineObjekte.0.Service.Meldungen.UNREACH'/*Unreach*/;
                                        var id_IST_STICKY_UNREACH = 'MeineObjekte.0.Service.Meldungen.STICKY_UNREACH'/*Sticky unreach*/;
                                        var id_IST_CONFIG_PENDING = '';
                                        var id_IST_UPDATE_PENDING = '';
                                        var id_IST_DEVICE_IN_BOOTLOADER = '';
                                        var id_IST_ERROR = '';
                                        var id_IST_ERROR_NON_FLAT_POSITIONING = '';
                                        var id_IST_ERROR_CODE = '';
                                        var id_IST_FAULT_REPORTING = '';
                                        var id_IST_SABOTAGE = 'MeineObjekte.0.Service.Meldungen.SABOTAGE'/*Sabotage*/;
                                        var id_IST_Gesamt = 'MeineObjekte.0.Service.Meldungen.TOTAL'/*Total*/;
                                        

                                        Welche Datentypen müssen hier angeben werden, ich habe überall Meldung Wrong Type... habe es mit Zahl und String versucht.

                                        Wrong type of MeineObjekte.0.Service.Meldungen.No_UNREACH: "number". Please fix, while deprecated and will not work in next versions.

                                        1 Reply Last reply Reply Quote 0
                                        • Z
                                          zahnheinrich last edited by

                                          Gibt es eine Möglichkeit, einzelne Geräte von Meldungen auszuschliessen, weil sie vorübergehend ausser Betrieb sind?

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

                                            @mike2712 die Objekte müssen vom Typ Zahl sein. Damit gibt es bei mir keine Meldungen. Ich nutze latest bei den Instanzen?

                                            Dieses Script unterstützt das nicht mit alle Meldungen in einen Fenster. Das Script hat einen anderen Ansatz und dieser heißt wenn eine Meldung auftritt werde ich direkt benachrichtigt per Push. Generell würde ich diesen Ansatz auch gerne ermöglichen aber dazu müsste ich das komplette Script umschreiben und auf viele anderen Funktionen verzichten.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            1.0k
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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