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 habe ich wieder die aktuelle Version eingefügt.

      1.07 vom 04.02.19

      Das Script habe ich in vielen Teilen noch einmal komplett umgebaut. Alle fehlenden Stati übersetzt und ganz ganz viele Kleinigkeiten. Das Log ohne Debug ist jetzt erstmal sehr sauber.

      1 Reply Last reply Reply Quote 0
      • R
        RobertM last edited by

        Ich hätte mal ne Frage was müsste man alles tauschen um das script auch für telegramm nutzen zu können?

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

          @RobertM:

          Ich hätte mal ne Frage was müsste man alles tauschen um das script auch für telegramm nutzen zu können? `
          Oder um Meldung einfach in Datenpunkt schreiben. Dann kann man die mit allem Möglichen weiterverarbeiten.

          Die Option gab es auch im HM Script.

          Grüße

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

            @RobertM:

            Ich hätte mal ne Frage was müsste man alles tauschen um das script auch für telegramm nutzen zu können? `

            Ich weiß nicht welche Parameter man bei Telegram mitgeben muss. Ich könnte mir vorstellen das es reicht die Function oben function send_pushover_V4

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

              @rantanplan:

              Oder um Meldung einfach in Datenpunkt schreiben. Dann kann man die mit allem Möglichen weiterverarbeiten.

              Die Option gab es auch im HM Script.

              Grüße `

              Das werde ich mit der nächsten Version einbauen. Allerdings nur die Anzahl der jeweiligen Meldungen. Das heißt man weiß dann noch nicht welches Gerät ein Problem hat. Ich könnte evt. den Pushtest ebenfalls in ein Datenfeld schreiben.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            512
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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