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.
    • Knallochse
      Knallochse last edited by

      Ich habe mal noch eine Frage zum Script.
      Bei mir wird bei Starten des Script folgende Meldung ausgegeben.
      " Es gibt: 32 Geräte mit dem Datenpunkt LOWBAT."
      Das ist die Anzahl (32 Stück) meiner normalen Homematic Geräte (gezählt unter Objekte)
      Bei mir gibt es aber noch 38 Homematic-IP Geräte mit dem Datenpunkt LOW_BAT.
      Der Unterschied bei HMIP ist bei mir, das im Gegensatz zu "normalen" HM-Geräten der Datenpunkt "LOW_BAT_ALARM" nicht existiert.
      Ich stelle mir die Frage: Liegt das an meiner Iobroker Installation, oder müsste im Script noch etwas geändert werden?

      Grüße

      1 Reply Last reply Reply Quote 0
      • Knallochse
        Knallochse last edited by Knallochse

        Bei mir schein unter Objekte was nicht zu stimmen.
        Mir ist gerade aufgefallen das von meinen HMIP Geräten Datenpunkte unter rpc.1 und rpc.2 angelegt werden.

        LOW_BAT1.jpg

        LOW_BAT2.jpg

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

          @cash mein kleines Problem habe ich gelöst
          Servicemeldungen2.PNG


          //createState('Systemvariable.0.Servicemeldungen.Text2', '');
          on({id: 'Systemvariable.0.Servicemeldungen.Text'}, function (obj) {
          var s=getState('Systemvariable.0.Servicemeldungen.Text').val;
          s=replaceAll(s,',','<br>');
          //hier könnten weitere Zeilen mir replaceAll z.B. für Umlaute stehen
          setState('Systemvariable.0.Servicemeldungen.Text2',s);
          });

          function replaceAll(string, token, newtoken) {
          if(token!=newtoken)
          while(string.indexOf(token) > -1) {
          string = string.replace(token, newtoken);
          }
          return string;
          }

          1 Reply Last reply Reply Quote 0
          • Knallochse
            Knallochse last edited by

            So mein Problem mit den falschen Datenpunkten der HMIP-Geräte habe ich gelöst.
            Ich habe jetzt mal Sabotage bei einem HMIP-Fenterkontakt ausgelöst.
            Unter Objekte ist das auch zu sehen

            Screenshot.jpg

            Da das Script aber den SABOTAGE Datenpunkt nicht findet, wird auch keine Servicemeldung ausgelöst.

            17:32:14.248	info	javascript.0 Stop script script.js.common.Pushnachrichten.Servicemeldungen_CCU
            17:32:16.434	info	javascript.0 Start javascript script.js.common.Pushnachrichten.Servicemeldungen_CCU
            17:32:16.434	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Bitte melden: Temperatursensor Heizung Speicher (UNITEMP001) --- HB-UNI-Sen-TEMP-DS18B20 --- Batterietyp fehlt im Script
            17:32:16.434	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Es gibt: 32 Geräte mit dem Datenpunkt LOWBAT.
            17:32:16.434	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Keine Geräte gefunden mit dem Datenpunkt LOW_BAT.
            17:32:16.434	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Es gibt: 50 Geräte mit dem Datenpunkt UNREACH.
            17:32:16.434	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Es gibt: 50 Geräte mit dem Datenpunkt STICKY_UNREACH.
            17:32:16.434	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Keine Geräte gefunden mit dem Datenpunkt SABOTAGE.
            17:32:16.434	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Es gibt: 3 Geräte mit dem Datenpunkt ERROR.
            17:32:16.434	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Keine Geräte gefunden mit dem Datenpunkt ERROR_NON_FLAT_POSITIONING.
            17:32:16.434	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Keine Geräte gefunden mit dem Datenpunkt FAULT_REPORTING.
            17:32:16.435	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Es gibt: 46 Geräte mit dem Datenpunkt DEVICE_IN_BOOTLOADER.
            17:32:16.435	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Es gibt: 49 Geräte mit dem Datenpunkt CONFIG_PENDING.
            17:32:16.435	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: Es gibt: 46 Geräte mit dem Datenpunkt UPDATE_PENDING.
            17:32:16.435	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: 276 Datenpunkte werden insgesamt vom Script script.js.common.Pushnachrichten.Servicemeldungen_CCU (Version: 1.5) überwacht. Instance: 0
            17:32:16.435	info	javascript.0 script.js.common.Pushnachrichten.Servicemeldungen_CCU: registered 276 subscriptions and 0 schedules
            

            Bin ratlos

            1 Reply Last reply Reply Quote 0
            • Knallochse
              Knallochse last edited by

              Habe das Problem gelöst.
              Ein simpler Neustart der JavaScript Instance brachte die Lösung

              Sorry für die Aufregung

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

                @Knallochse Das verstehe ich jetzt aber noch nicht? Im Log steht keien Geräte für LOW_BAT aber Du hast doch hmIP Geräte? Gleiches gilt für Sabotage?

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

                  @cash wie erwähnt hat dein Script nach Neustart der JavaScript Instance alle LOW_BAT; SABOTAGE etc. der HMIP-Geräte gefunden .
                  Was da schief lief weiß ich nicht. Werden die Objekte im JavaScript irgendwie gecacht?

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

                    @Knallochse wie es genau läuft weiß ich nicht aber bei neuen Geräten muss man nach dem anlernen an der ccu zuerst einmal den hm.rpc Adapter stoppen und starten damit wird das Gerät gefunden und die Datenstruktur geschrieben danach muss man auch den hm.rega Adapter einmal stoppen und starten und danach nochmal alle Java Instanzen erst danach werden die Geräte per Script gefunden.

                    Habe gestern ein neues Gerät bekommen und dort hat ein anderes Script das Gerät per cacheSelector auch nicht gefunden. Erst nach dem ich alle Instanzen in der Reihenfolge gestoppt und gestartet hat es funktioniert.

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

                      @cash Die HMIP-Geräte haben ja schon einmal mit deinem Script funktioniert.
                      Aus irgendeinem Grund wurden einige Datenpunkte in der falschen rpc-Instance angelegt.
                      Laut Foxriver76 wurden diese Datenpunkte wohl falsch angelegt, weil meine eigentliche HMIP-Instance nicht erreichbar war. Auf jeden Fall funktioniert dein Script jetzt wie es soll.
                      Vielen Dank für deine Arbeit 👍

                      1 Reply Last reply Reply Quote 0
                      • B
                        bommel_030 last edited by

                        Ich habe zwei Aktoren, denen der Versorger zweimal am Tag den Saft abdreht. Das führt verständlicherweise zu einer Fehlermeldung.
                        Ich dachte diese können hiermit unterdrückt werden:

                        //Geräte die nicht überwacht werden sollen. Komma getrennt erfassen
                        const no_observation = 'OEQ0000002,OEQ0000001';
                        

                        Leider bekomme ich weiterhin die Fehlermeldungen. Muss ich die Aktoren anders bezeichnen?

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

                          Sollte so passen. Funktioniet es wenn Du nur ein Gerät dort einträgst? Wele Version vom Script hast Du? Was sagt das Log? Ich gucke mir nochmal den Quellcode an ob ich auf anhieb etwas finde. Ich gehe aber nicht davon aus, da ich den Scriptteil bei einigen anderen Scripten von mir nutze wo es funktioniert. Ich muss ggf. ein paar zusätzliche Logeinträge reinschreiben damit wir dann mehr sehen wo das genaue Problem ist.

                          1 Reply Last reply Reply Quote 0
                          • B
                            bommel_030 last edited by

                            @cash
                            Ist die Version v1.5. Hab jetzt mal das zweite Gerät entfernt.
                            Da beide momentan erreichbar sind sagt das Log jetzt aktuell richtigerweise nur:

                            15:37:10.245	info	javascript.0 script.js.Online.Servicemeldungen: Es werden: 209 Datenpunkte überwacht. Derzeit: 1 Servicemeldung(en).
                            15:37:10.245	info	javascript.0 script.js.Online.Servicemeldungen: Es gibt eine Servicemeldung: SZ - HR (OEQ0230000) - Spannung Batterien/Akkus gering. --- seit: 02.09.19 09:30:14 Uhr
                            

                            Sobald der Versorger heute Abend wieder abschaltet sollte dann ja nur eine Meldung dazukommen.
                            Ich beobachte und melde mich dann wieder.
                            Bis dahin schon mal danke.

                            1 Reply Last reply Reply Quote 0
                            • B
                              bommel_030 last edited by

                              @cash
                              Da mein Internetanbieter mir nen Tag mit ohne Internet gegönnt hat etwas verspätete Antwort.
                              Ich habe aktuell nur einen Aktor im Skript überwacht. Sobald die Verbindung zur CCU verloren geht bekomme ich für beide eine Meldung.
                              Ist die Verbindung wieder verfügbar bekomme ich nur für den nicht überwachten Aktor die Bestätigung, dass die Meldung quittiert wurde.
                              Scheint also nicht am Eingabeformat zu liegen. Ich klau am WE mal einem anderen Teil die Batterien und schaue was das Skript dann macht.

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

                                Was sagt das Log? Am Besten für das nächste mal im Script Debug = true dann wird das log umfangreicher

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

                                  Ich glaube ich habe das Problem gefunden. Um meine Vermutung zu bestätigen muss das Script mit debug = true laufen. Danach sollte zwar immer noch eine Push kommen aber das Log wird zeigen ob die Unterdrückung grundsätzlich läuft.

                                  Sobald die Servicemeldung auftritt erscheint im Log die Meldung über eine unterdrückte Meldung.

                                  Sollte ich recht haben weiß ich schon wie ich das ganze anpassen muss. Habe es Testweise für die beiden LOWBAT Meldungen schon umgesetzt. Diese Version würde ich Dir zum testen schicken sofern Du meine Vermutung bestätigst.

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

                                    Neue Version auf github. Dort sollten einige kleinere Fehler aus der alten Version behoben sein u. a. auch no_observation. Doppelte Meldungen werden jetzt zuverlässig unterdrückt.

                                    Homer.J. Z sigi234 3 Replies Last reply Reply Quote 0
                                    • Homer.J.
                                      Homer.J. @cash last edited by

                                      @cash Hi cash könnte man vielleicht noch eine Textausgabe für die Visualisierung mit einfügen wo die Meldungen angezeigt werden.

                                      Grüße

                                      cash 1 Reply Last reply Reply Quote 0
                                      • cash
                                        cash Most Active @Homer.J. last edited by

                                        @Homer-J gibt es doch? Zeilen 102-104

                                        Homer.J. 1 Reply Last reply Reply Quote 0
                                        • Homer.J.
                                          Homer.J. @cash last edited by

                                          @cash Danke übersehen. 😊

                                          1 Reply Last reply Reply Quote 0
                                          • B
                                            bommel_030 last edited by bommel_030

                                            @cash
                                            Sorry, bin am WE nicht zum testen gekommen. Hab heute früh die neue Version vom Skript eingebaut.
                                            Seit ner Viertelstunde meldet das Webinterface der CCU Verbinsungsprobleme der beiden Aktoren und Pushover schweigt.
                                            Vielen Dank für die schnelle Umsetzung! Entweder es läuft jetzt alles wie gewünscht oder das Skript läuft überhaupt nicht mehr 😛

                                            Edit: Gerade kam ne Fehlermeldung eines Thermometers rein. Läuft also alles wie soll!

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            801
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

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