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

      Im ersten Beitrag ist die aktuelle Version von heute:

      05.02.19 V1.08 Bei Sabotage wurde nicht die Variable für die Prio berücksichtigt

      • geändert von Kanal 1 auf 0 var cacheSelectorSABOTAGE = $('channel[state.id=hm-rpc.*.0.SABOTAGE_ALARM$]');

      • Batterieliste aktualisiert

      • Wenn Batterie nicht ermittelbar erfogt ein Hinweis im Log

      • Neue Konfig Möglichkeit um Nachrichtentext in Objekte zu schreiben (erstmal Testweise nur in LOWBAT)

      • Ergebnis in Datenfleder schreiben zum testen in LOWBAT eingefügt

      • 06.02.19 V1.09 Serviemeldung ERROR_CODE aufgenommen

      • Wenn Script manuell gestartet wurde wurde kein Ergebnis geloggt wenn eine Servicemeldung vorliegt und Debug = false war

      • Logging optimiert

      • Es wird keine Push mehr verschickt wenn eine Servicemeldung vorliegt und das Script manuell gestartet wird

      **************************/

      Zum ersten mal hatte ich heute Nacht um 3 Uhr einen Echtfall. :mrgreen:

      Batterie von einen Wandthermostat ist leer. Das Script funktioniert bei mir also auch im Echtfall. Allerdings hat er leider falsche Batterien ermittelt. Der Fehler tritt dann auf wenn der Gerätetyp nicht eindeutig ist. Da muss ich nochmal ran. Derzeit habe ich da aber noch keine Idee wie ich das umgehe.

      Beispiel es gibt den Gerätetyp: HM-Sec-RHS und HM-Sec-RHS-2. Hat man nun den zweiten passt es. Beim ersten kommt es zum Fehler weil der erste Gerätetyp auch im zweiten vorhanden ist.

      Gestern habe ich Testweise die Möglichkeit geschaffen Ergebnisse in Datenfelder zu schreiben. Habe es aber noch nicht 100% getestet. Auf jeden Fall würde das dazu führen das das Script noch länger wird. Geschätzt um über 200 Zeilen. Ob ich das also wirklich einbaue weiß ich noch nicht. Es sollte ja auch in jeden erdenklichen Fall funktionieren…

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

        @cash:

        Im ersten Beitrag ist die aktuelle Version von heute:

        05.02.19 V1.08 Bei Sabotage wurde nicht die Variable für die Prio berücksichtigt

        • geändert von Kanal 1 auf 0 var cacheSelectorSABOTAGE = $('channel[state.id=hm-rpc.*.0.SABOTAGE_ALARM$]');

        • Batterieliste aktualisiert

        • Wenn Batterie nicht ermittelbar erfogt ein Hinweis im Log

        • Neue Konfig Möglichkeit um Nachrichtentext in Objekte zu schreiben (erstmal Testweise nur in LOWBAT)

        • Ergebnis in Datenfleder schreiben zum testen in LOWBAT eingefügt

        • 06.02.19 V1.09 Serviemeldung ERROR_CODE aufgenommen

        • Wenn Script manuell gestartet wurde wurde kein Ergebnis geloggt wenn eine Servicemeldung vorliegt und Debug = false war

        • Logging optimiert

        • Es wird keine Push mehr verschickt wenn eine Servicemeldung vorliegt und das Script manuell gestartet wird

        **************************/

        Zum ersten mal hatte ich heute Nacht um 3 Uhr einen Echtfall. :mrgreen:

        Batterie von einen Wandthermostat ist leer. Das Script funktioniert bei mir also auch im Echtfall. Allerdings hat er leider falsche Batterien ermittelt. Der Fehler tritt dann auf wenn der Gerätetyp nicht eindeutig ist. Da muss ich nochmal ran. Derzeit habe ich da aber noch keine Idee wie ich das umgehe.

        Beispiel es gibt den Gerätetyp: HM-Sec-RHS und HM-Sec-RHS-2. Hat man nun den zweiten passt es. Beim ersten kommt es zum Fehler weil der erste Gerätetyp auch im zweiten vorhanden ist.

        Gestern habe ich Testweise die Möglichkeit geschaffen Ergebnisse in Datenfelder zu schreiben. Habe es aber noch nicht 100% getestet. Auf jeden Fall würde das dazu führen das das Script noch länger wird. Geschätzt um über 200 Zeilen. Ob ich das also wirklich einbaue weiß ich noch nicht. Es sollte ja auch in jeden erdenklichen Fall funktionieren… `

        19:14:24.817	info	javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Bitte melden: Licht_Vorraum (OEQxxxxxx) --- HM-LC-Sw1PBU-FM --- Batterietyp fehlt im Script
        
        1 Reply Last reply Reply Quote 0
        • cash
          cash Most Active last edited by

          Das habe ich auch neu eingebaut 🙂

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

            Das einzige was mich stutzig macht. Hat dieses Gerät wirklich den Datenpunkt LOWBAT? Das Gerät ist das an Strom angeschlossen und so kann es zu keinem LOWBAt kommen?

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

              @cash:

              Das einzige was mich stutzig macht. Hat dieses Gerät wirklich den Datenpunkt LOWBAT? Das Gerät ist das an Strom angeschlossen und so kann es zu keinem LOWBAt kommen? `

              Ja eben, das ist ein Funk-Schaltaktor 1-fach für Markenschalter, Unterputzmontage

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

                Was es ist habe ich gesehen. Guckmal ob das Gerät den Datenpunkt hat und ich wette das Gerät hat den Datenpunkt.

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

                  @cash:

                  Was es ist habe ich gesehen. Guckmal ob das Gerät den Datenpunkt hat und ich wette das Gerät hat den Datenpunkt. `

                  2858_screenshot__1757__li.jpg

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

                    Wie ich also vermutet habe. Das Script macht was es soll. Entweder ist der Datenpunkt ein Fehler von iobroker (was ich nicht glaube, da iobroker einfach alle Felder aus der ccu ausliest) oder der Programmierer bei eq3 war bekifft als er den Schalter programmiert hat 🙂

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

                      @cash:

                      Wie ich also vermutet habe. Das Script macht was es soll. Entweder ist der Datenpunkt ein Fehler von iobroker (was ich nicht glaube, da iobroker einfach alle Felder aus der ccu ausliest) oder der Programmierer bei eq3 war bekifft als er den Schalter programmiert hat 🙂 `

                      Tja, da trifft eher letzteres zu…...... 🙂

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

                        Auf der ersten Seite ist wieder die aktuelle Version. Im wesentlichen habe ich nur den Teil neu geschrieben der die benötigten Batterien ermittelt.

                        Mit der neuen Variante werden jetzt zuverlässig die richtige Batterie ermittelt. Sonstige Änderungen habe ich nicht vorgenommen.

                        1 Reply Last reply Reply Quote 0
                        • dslraser
                          dslraser Forum Testing Most Active last edited by

                          @cash:

                          Auf der ersten Seite ist wieder die aktuelle Version. Im wesentlichen habe ich nur den Teil neu geschrieben der die benötigten Batterien ermittelt.

                          Mit der neuen Variante werden jetzt zuverlässig die richtige Batterie ermittelt. Sonstige Änderungen habe ich nicht vorgenommen. `

                          javascript.0	2019-02-08 20:10:26.871	warn	at script.js.08Statusabfragen.Alle_Meldungen_neu1:1574:5
                          javascript.0	2019-02-08 20:10:26.871	warn	at LOWBAT (script.js.08Statusabfragen.Alle_Meldungen_neu1:381:17)
                          javascript.0	2019-02-08 20:10:26.868	warn	State "Systemvariable.0.Servicemeldungen.Anzahl_LOWBAT" not found
                          
                          1 Reply Last reply Reply Quote 0
                          • cash
                            cash Most Active last edited by

                            Hast Du das Script einfach ausgeführt oder vorher die Konfig bearbeitet?

                            var write_state = true; —> Schreibe Ergebnis in die Systemvariable die zwei Zeilen darunter zu finden ist… Wenn es die bei Dir nicht gibt ist die Fehlermeldung nachvollziehbar.

                            Falls Du den Paramter write_state auf false hattest sollte der Fehler hoffentlich nicht kommen. Diese Funktion teste ich gerade. Funktioniert nur für die LOWBAT Meldungen...

                            1 Reply Last reply Reply Quote 0
                            • dslraser
                              dslraser Forum Testing Most Active last edited by

                              ich habe jetzt gerade den Rechner aus gemacht. Dann habe ich das bestimmt übersehen.

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

                                Super Script!!! Vielen Dank!

                                Ist es möglich anstelle von Pushover, Telegram einzubauen?

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

                                  Hi, kannst du das Script von deinem ersten Post nochmal neu einstellen. Wenn ich es importieren kommen jede Menge
                                  Fehlermeldungen. Die meisten habe ich zwar herausbekommen aber bei dieser Zeile hier komme ich nicht weiter:

                                  for (i = 0; i <lr44x2.length; i++)/{/if/(lr44x2[i]="=" native_type)/batterie="2x LR44/AG13" ;/break;/}/for/(i="0;" i/<lr6x2.length;/(lr6x2[i]="=" </lr6x3.length;/(lr6x3[i]="=" lr6x4.length;/(lr6x4[i]="=" lr3x1.length;/(lr3x1[i]="=" lr3x2.length;/(lr3x2[i]="=" lr3x3.length;/(lr3x3[i]="=" lr3x3a.length;/(lr3x3a[i]="=" block9.length;/(block9[i]="=" fixed.length;/(fixed[i]="=" ohne.length;/(ohne[i]="=" recharge.length;/(recharge[i]="=" return(batterie);/function/lowbat(obj)/var/meldungsart="LOWBAT" gesamt="0;" betroffen="0;" text="[];" _message_tmp=" " log_manuell="false;" (obj)/common_name="obj.common.name.substr(0," obj.common.name.indexof(':'));/status="obj.newState.val;" status_text;/if(status="==" 0){/status_text="Batterie ok" else/(status="=" 1){/2){/id_name="obj.id.split('.')[2];" log('neue/servicemeldung:/'/+common_name/+'/('+id_name/+')/+'---/typ:/'+meldungsart/---/status:/+status/+status_text);/if(debugging){/log('function/+meldungsart/wird/gestartet.');/cacheselectorlowbat.each(function/(id,/i)/schleife/für/jedes/gefundenen/element/*.lowbat/obj="getObject(id);" datum="formatDate(getState(id).lc," "tt.mm.jj/ss:mm:ss");/datum_neu;/datum_seit;/if(datum/'01.01.71/01:00:00'){/datum_seit/datum_neu/}else{/uhr';/native_type="getObject(id.substring(0," id.lastindexof('.')/-/2)).native.type;/1)/wenn/zustand="true," dann/die/anzahl/der/geräte/hochgezählt/++betroffen;/text.push(common_name/+')');/zu/array/hinzufügen/+')'/+/<font/color="red">Spannung Batterien/Akkus gering. '+Batterie+'\n';
                                  1 Reply Last reply Reply Quote 0
                                  • cash
                                    cash Most Active last edited by

                                    Geht derzeit leider nicht. Beim Versuch das Script neu hochzuladen kommt eine Fehlermeldung das mein Beitrag zu lang ist.

                                    Telegram ist natürlich möglich. Kann man sich selber anpassen. Ich selber nutze kein Telegram.

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

                                      Habe das Script eben angepasst. Nachdem ich die erste STICKY_UNREACH hatte habe ich nun die Funktion eingebaut um diese Servicemeldung automatisch zu bestätigen.

                                      Bitte Konfiguration vom Script vorher anpassen. Das Script habe ich nun auf GitHub gepackt. Ist evtl. einfacher für mich.

                                      Link im ersten Beitrag.

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

                                        @cash

                                        11.2.2019, 21:25:33.297	[info ]: javascript.0 Stop script script.js.CCU2.Servicemeldungen_Homematic_Geraete
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 Start javascript script.js.CCU2.Servicemeldungen_Homematic_Geraete
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Bitte melden: Skript (CUX2801001) ---  --- Batterietyp fehlt im Script
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Bitte melden: Multimedia (CUX2801002) ---  --- Batterietyp fehlt im Script
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Bitte melden: CUX MEDIA PLAYER (CUX2801003) ---  --- Batterietyp fehlt im Script
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Bitte melden: HM-RC-19 CUX2801004 (CUX2801004) ---  --- Batterietyp fehlt im Script
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Bitte melden: HM-RC-P1 CUX2801005 (CUX2801005) ---  --- Batterietyp fehlt im Script
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Bitte melden: Pushsafer (CUX2801006) ---  --- Batterietyp fehlt im Script
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Es gibt: 13 Geräte mit dem Datenpunkt LOWBAT.
                                        11.2.2019, 21:25:34.289	[warn ]: javascript.0     at LOWBAT (script.js.CCU2.Servicemeldungen_Homematic_Geraete:382:17)
                                        11.2.2019, 21:25:34.289	[warn ]: javascript.0     at script.js.CCU2.Servicemeldungen_Homematic_Geraete:1576:5
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Keine Geräte gefunden mit dem Datenpunkt LOW_BAT.
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Es gibt: 15 Geräte mit dem Datenpunkt UNREACH.
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Es gibt: 14 Geräte mit dem Datenpunkt STICKY_UNREACH.
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Es gibt: 8 Geräte mit dem Datenpunkt CONFIG_PENDING.
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Es gibt: 6 Geräte mit dem Datenpunkt UPDATE_PENDING.
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Es gibt: 6 Geräte mit dem Datenpunkt DEVICE_IN_BOOTLOADER.
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Es gibt: 3 Geräte mit dem Datenpunkt ERROR.
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Keine Geräte gefunden mit dem Datenpunkt ERROR_CODE.
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Es gibt: 1 Geräte mit dem Datenpunkt FAULT_REPORTING.
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: Keine Geräte gefunden mit dem Datenpunkt SABOTAGE.
                                        11.2.2019, 21:25:34.289	[info ]: javascript.0 script.js.CCU2.Servicemeldungen_Homematic_Geraete: registered 66 subscriptions and 0 schedules
                                        
                                        cash 1 Reply Last reply Reply Quote 0
                                        • G
                                          Gerni last edited by

                                          Sowas jetzt noch als Blockly für die, die da nicht so bewandert sind - wie ich 😂

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

                                            bekomme noch folgende Fehlermeldung:

                                            javascript.0	2019-02-11 23:00:47.704	warn	at script.js.User.Homematic.Batterie:1579:5
                                            javascript.0	2019-02-11 23:00:47.704	warn	at STICKY_UNREACH (script.js.User.Homematic.Batterie:660:33)
                                            javascript.0	2019-02-11 23:00:47.704	warn	at Object.result.each (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:564:29)
                                            javascript.0	2019-02-11 23:00:47.704	warn	at script.js.User.Homematic.Batterie:692:17
                                            javascript.0	2019-02-11 23:00:47.704	warn	at setState (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:1236:28)
                                            javascript.0	2019-02-11 23:00:47.703	warn	State "[object Object]" not found
                                            

                                            Und noch eine Frage:

                                            Der Datenpunkt ist doch Systemvariable.0.Servicemeldungen.xxx oder nicht also nicht imjavascript.0 Ordner zu finden oder?

                                            Ich habe mir einen Datenpunkt für Sticky unreach angelegt was auch eine Meldung auslösen sollte aber ich habe keine neuen erstellten Objekte.

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