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.
    • S
      Soc @cash last edited by

      @cash Habe nun die CuxD Instanzen gelöscht und das Script startet jetzt soweit fehlerfrei.

      2022-02-09 07:56:21.220 - info: javascript.0 (1024) Start javascript script.js.System.ServicemeldungenHomematic
      2022-02-09 07:56:21.509 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Script manuell gestartet. (Version: 1.93)
      2022-02-09 07:56:21.510 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Es gibt: 6 Geräte mit dem Datenpunkt LOWBAT.
      2022-02-09 07:56:21.512 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Es gibt: 25 Geräte mit dem Datenpunkt LOW_BAT.
      2022-02-09 07:56:21.515 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Es gibt: 52 Geräte mit dem Datenpunkt UNREACH.
      2022-02-09 07:56:21.516 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Es gibt: 18 Geräte mit dem Datenpunkt STICKY_UNREACH.
      2022-02-09 07:56:21.516 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Es gibt: 2 Geräte mit dem Datenpunkt ERROR.
      2022-02-09 07:56:21.517 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Es gibt: 8 Geräte mit dem Datenpunkt SABOTAGE.
      2022-02-09 07:56:21.517 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Keine Geräte gefunden mit dem Datenpunkt ERROR_NON_FLAT_POSITIONING.
      2022-02-09 07:56:21.517 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Es gibt: 1 Geräte mit dem Datenpunkt FAULT_REPORTING.
      2022-02-09 07:56:21.518 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Es gibt: 16 Geräte mit dem Datenpunkt DEVICE_IN_BOOTLOADER.
      2022-02-09 07:56:21.520 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Es gibt: 52 Geräte mit dem Datenpunkt CONFIG_PENDING.
      2022-02-09 07:56:21.522 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Es gibt: 49 Geräte mit dem Datenpunkt UPDATE_PENDING.
      2022-02-09 07:56:21.522 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: 229 Datenpunkte werden insgesamt vom Script script.js.System.ServicemeldungenHomematic (Version: 1.93) überwacht. Instance: 0
      2022-02-09 07:56:21.522 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: logging: true debugging: false find_bug: false show_each_device: false autoAck: true observation: true ohnetime: true CUXD: 9
      2022-02-09 07:56:21.522 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: registered 229 subscriptions and 0 schedules
      

      Nachdem ich nun eine Sabotage ausgelöst habe, kommen folgenden Meldungen:

      2022-02-09 07:57:25.204 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Neue Servicemeldung: OG_Büro_Fenstergriffsensor (0007DBE991C2C9) --- HmIP-SRH--- Typ: SABOTAGE_ALARM --- Status: 1 Sabotage
      2022-02-09 07:57:28.231 - error: javascript.0 (1024) Error in callback: ReferenceError: device is not defined
      2022-02-09 07:57:28.231 - error: javascript.0 (1024) at Object. (script.js.System.ServicemeldungenHomematic:2166:39)
      2022-02-09 07:57:28.231 - error: javascript.0 (1024) at Timeout._onTimeout (/opt/iobroker/node_modules/iobroker.javascript/lib/sandbox.js:2119:34)
      2022-02-09 07:57:28.231 - error: javascript.0 (1024) at listOnTimeout (internal/timers.js:557:17)
      2022-02-09 07:57:28.231 - error: javascript.0 (1024) at processTimers (internal/timers.js:500:7)
      2022-02-09 07:58:25.210 - info: javascript.0 (1024) script.js.System.ServicemeldungenHomematic: Servicemeldung aufgehoben: OG_Büro_Fenstergriffsensor (0007DBE991C2C9) --- HmIP-SRH--- Typ: SABOTAGE_ALARM --- Status: 2 Sabotage aufgehoben
      

      Im Script gibt es ein Fehler. er findet die Variable device nicht.

      Bildschirmfoto 2022-02-09 um 08.02.45.png

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

        @soc Hast Du Zeile 158 auskommentiert und nutzt stattdessen 159? Dann dort den _ entfernen…

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

          @cash Das war es. Danke. Jetzt geht es.

          I 1 Reply Last reply Reply Quote 0
          • I
            Idefix01 @Soc last edited by

            Hallöchen, ich habe soeben auch das Script von Baenker mir eingerichtet. Soweit funktioniert es auch ganz gut, zumindest mit einzelnen HmIP Geräten.

            Nun habe ich aber mal eine Frage dazu. Ich besitze viele Fernster- und Türkontakte, wo es den Punkt SABOTAGE_Alarm nicht gibt sondern nur SABOTAGE (false/true)

            Lässt sich das in dem Script auch einbinden?

            Sabotage.jpg

            1 Reply Last reply Reply Quote 0
            • L
              Lucky_ESA Developer Most Active @Lucky_ESA last edited by Lucky_ESA

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

              Hallo cash,

              es fehlt der Heizungsregler HmIP-eTRV-E -> lr6x2 im Script.

              Gruß//Lucky

              Hallo cash,

              diesen gibt es auch in Silber...Unglaublich, hatte mich verkauft...Hier steht wohl dann das -S für Silber. Andere Farben habe ich bei am...on nicht gefunden.

              let lr6x2 = ['HmIP-eTRV-E-S', 'HmIP-eTRV-E',
              

              Gruß//Lucky

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

                Hi cash,

                kannst du bitte das Leerzeichen in deinem Script entfernen.

                'HmIP-eTRV-C-2', 'HmIP-eTRV-E ',
                

                Gruß//Lucky

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

                  @lucky_esa warum sollte ich das tun? Das Script funktioniert doch mit diesen Leerzeichen oder?

                  1 Reply Last reply Reply Quote 1
                  • L
                    Lucky_ESA Developer Most Active last edited by

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

                    HmIP-eTRV-E

                    Wen dem so wäre hätte ich hier nichts gepostet.

                    2022-04-04 22:34:21.673  - info: javascript.0 (12311) script.js.common.Skript_40: Bitte melden: Heizung Wohnzimmer (002A9xxxxxxxx) --- HmIP-eTRV-E --- Batterietyp fehlt im Script
                    

                    Du musst das nicht ändern, habe es bei mir bereits korrigiert.

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

                      @lucky_esa Jetzt nochmal langsam. Du hast in dem Script wo die Batterien gesucht werden alle Leerzeichen entfernt und dann geht es? Vorher hat er nichts gefunden?

                      Welche JavaScript Version hast Du im Einsatz? Eigentlich kann es nur eine Änderung des Adapters gegeben haben. Es lief vorher immer ohne Probleme.

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

                        Hi cash,

                        wir reden aneinander vorbei😁

                        Du muss zwingen DAS (singular) Leerzeichen entfernen.

                        'HmIP-eTRV-C-2', 'HmIP-eTRV-EICHBINEINLEERZEICHENUNDMUSSENTFERNTWERDEN', 
                        

                        Gruß//Lucky

                        1 Reply Last reply Reply Quote 0
                        • F
                          FuXXz2 last edited by

                          Hallo zusammen,

                          das Script zeigt mir keine Meldungen an, obwohl Meldungen vorliegen. Woran kann das liegen?
                          Er liest die Geräte zwar ein, bestätigt aber, dass keine Meldungen vorliegen. Das stimmt aber nicht 😞
                          Screenshot 2022-11-06 020239.png
                          Screenshot 2022-11-06 020216.png

                          Dominik F. 1 Reply Last reply Reply Quote 0
                          • Dominik F.
                            Dominik F. @FuXXz2 last edited by Dominik F.

                            @fuxxz2

                            Das Script kann reagiert ja auf Datenpunkte die der RPC Adapter zur Verfügung stellt. Ist denn der entsprechende Datenpunkt "falsch" so dass das Script es melden müsste?
                            Hat das Script reagiert, als das Gerät nicht erreichbar war?

                            Wie hast du folgendes im Script eingestellt?

                            const autoAck = true;             //Löschen bestätigbarer Kommunikationsstörungen (true = an, false = aus)
                            
                            F 1 Reply Last reply Reply Quote 0
                            • F
                              FuXXz2 @Dominik F. last edited by FuXXz2

                              @dominik-f Ich habe die nicht weg geklickt, die Meldungen sind noch da und einige sind ja dauerhaft, weil die Kommunikation noch gestört ist.
                              Screenshot 2022-11-06 140823.png

                              Screenshot 2022-11-06 140759.png

                              Wenn wir mal bei dem Aktor bleiben, der aktuell nicht erreichbar ist.
                              Der Datenpunkt sagt:
                              Screenshot 2022-11-06 141110.png

                              Dominik F. L cash 3 Replies Last reply Reply Quote 0
                              • Dominik F.
                                Dominik F. @FuXXz2 last edited by

                                @fuxxz2

                                Das was du jetzt gepostet hast, ist ja eine ganz andere Ausgangssituation da ja jetzt etwas vorliegt, was das Skript definitiv melden sollte jedoch nicht gemeldet wird.

                                Das autoAck würde ich aber auf true stellen, dann brauchst du in der CCU nicht mehr bestätigen, wenn irgendwann mal ein Gerät kurz nicht erreichbar war. Das ist ja eigentlich total uninteressant und das Skript meldet dir auch, wenn ein Gerät mal nicht erreichtbar war und die Meldung bestätigt wurde.

                                Poste bitte mal deine Einstellungen im Script bis ://Ab hier eigentliches Script , am Besten mittels Code

                                1 Reply Last reply Reply Quote 0
                                • L
                                  Lucky_ESA Developer Most Active @FuXXz2 last edited by

                                  @fuxxz2 Bitte mal Javascript Adapter neu starten.

                                  Gruß//Lucky

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

                                    @fuxxz2 Lief das Script als die Fehler aufgetreten sind? Es meldet ja nur Sachen die auftreten während das Script läuft. Und Screenshots von den *Alarm Datenpunkten von den Geräten. Dort müsste man ja auch sehen ob eine Meldung aktuell vorliegt.

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

                                      Adapter neu gestartet, Fehlermeldung in der CCU mehrmals neu ausgelöst, aber keine Meldung des Scriptes.
                                      Ja, das Script läuft die ganze Zeit durch.

                                      • Andere theoretisch mögliche LOWBAT_REPORTING, U_SOURCE_FAIL, USBH_POWERFAIL, STICKY_SABOTAGE, ERROR_REDUCED, ERROR_SABOTAGE
                                        *******************************************************/
                                        const Version = 1.94;
                                        const logging = true; //Sollte immer auf true stehen. Bei false wird garnicht protokolliert
                                        const debugging = true; //true protokolliert viele zusätzliche Infos
                                        const find_bug = false; //erhöht das Logging wird nur verwendet wenn ein aktulles Bug gesucht wird
                                        const show_each_device = true; //zeigt alle verfügbaren Datenpunkte je Device

                                      const autoAck = false; //Löschen bestätigbarer Kommunikationsstörungen (true = an, false = aus)

                                      const observation = true; //Dauerhafte Überwachung der Geräte auf Servicemeldungen aktiv (true = aktiv // false =inaktiv)
                                      const onetime = true; //Prüft beim Script Start ob derzeit Geräte eine Servicemeldung haben
                                      const with_time = true; //Hängt die Uhrzeit an die Serviemeldung

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

                                      //Instanz Cuxd ausschließen. Instanz als Zahl z. B. '1' oder bei Nichtnutzung hohe Nr eintragen z. B. '9'
                                      const CUXD = '9';

                                      //pro Fehlertyp kann eine andere Prio genutzt werden
                                      const prio_LOWBAT = 0;
                                      const prio_UNREACH = 0;
                                      const prio_STICKY_UNREACH = 0;
                                      const prio_CONFIG_PENDING = 0;
                                      const prio_UPDATE_PENDING = 0;
                                      const prio_DEVICE_IN_BOOTLOADER = 0;
                                      const prio_ERROR = 0;
                                      const prio_ERROR_CODE = 0;
                                      const prio_FAULT_REPORTING = 0;
                                      const prio_SABOTAGE= 0;
                                      const prio_ERROR_NON_FLAT_POSITIONING = 0;

                                      //Variablen für Servicemeldung in Objekt schreiben // Wenn einer Meldung auftritt wird diese in ein Textfeld geschrieben. z. B. für vis
                                      const write_message = true; // true schreibt beim auftreten einer Servicemeldung die Serviemeldung in ein Objekt
                                      const id_Text_Servicemeldung = '0_userdata.0.Servicemeldungen.Meldungen'; // Objekt wo die Servicemeldung hingeschrieben werden soll (String)

                                      //Variablen für Pushover
                                      const sendpush = false; //true = verschickt per Pushover Nachrchten // false = Pushover wird nicht benutzt
                                      const sendpush_LOWBAT = true; //true = verschickt per Pushover Nachrchten bei Low_BAT// false = Pushover wird nicht benutzt
                                      const pushover_Instanz0 = 'pushover.0'; // Pushover instance für Pio = 0
                                      const pushover_Instanz1 = 'pushover.1'; // Pushover instance für Pio = 1
                                      const pushover_Instanz2 = 'pushover.2'; // Pushover instance für Pio = 2
                                      const pushover_Instanz3 = 'pushover.3'; // Pushover instance für Pio = -1 oder -2
                                      let h_prio = -2; //nicht verändern die höchste Prio nach Fehlertyp wird verwendet

                                      let titel;
                                      let message;
                                      let device = 'TPhone'; //Welches Gerät soll die Nachricht bekommen
                                      //let _device = 'All';

                                      //Variablen für Telegram
                                      const sendtelegram = true; //true = verschickt per Telegram Nachrchten // false = Telegram wird nicht benutzt
                                      const user_telegram = '1428935873'; //User der die Nachricht bekommen soll

                                      //Variable zum verschicken der Servicemeldungen per eMail
                                      const sendmail = false; //true = verschickt per email Nachrchten // false = email wird nicht benutzt

                                      //Ergebnis in Datenfelder schreiben
                                      const 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 = '';
                                      //Müssen selber als Zahl angelegt werden
                                      const id_IST_LOWBAT = ''/Anzahl LowBat/;
                                      const id_IST_LOW_BAT = '';
                                      const id_IST_UNREACH = '0_userdata.0.Servicemeldungen.Anzahl_Unreach'/Anzahl Unreach/;
                                      const id_IST_STICKY_UNREACH = ''/Anzahl Sticky Unreach/;
                                      const id_IST_CONFIG_PENDING = '';
                                      const id_IST_UPDATE_PENDING = '';
                                      const id_IST_DEVICE_IN_BOOTLOADER = '';
                                      const id_IST_ERROR = '0_userdata.0.Servicemeldungen.Error';
                                      const id_IST_ERROR_NON_FLAT_POSITIONING = '';
                                      const id_IST_ERROR_CODE = '';
                                      const id_IST_FAULT_REPORTING = '';
                                      const id_IST_SABOTAGE = '';
                                      const id_IST_Gesamt = '0_userdata.0.Servicemeldungen.Anzahl_Gesamt'/Anzahl Gesamt/;

                                      //Ab hier eigentliches Script

                                      Screenshot 2022-11-06 205152.png

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

                                        @fuxxz2 da haben wir doch das Problem. Die Datenfelder zeigen nichts. Somit kann das Script nichts melden. Es kann ja nicht hellsehen. Also stimmt entweder etwas nicht mit der CCU (z. B. Firewall) oder die homematic Adapter sind nicht richtig konfiguriert? Zeig mal Screenshots der Adapterkonfigurtionen der beiden Adapter

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

                                          @cash Meinst du weil bei den Alarm Datenpunkten nichts steht?
                                          1.png 2.png 3.png 4.png 5.png

                                          cash 1 Reply Last reply Reply Quote 0
                                          • K
                                            Knusterus last edited by

                                            hallo zusammen
                                            Ich habe seit längerem Eine Fehlermeldung die ich nicht weg bekomme. Das Gerät ist ein Shelly der über Cux mit Homematic verbunden ist. Ich habe unter HM - rpc2 2 Cux Geräte drin . (2 shelly). Der eine Shelly hängt in meiner Heizung und steuert die Pumpe. Steht meine Heizung allerdings nur auf Warmwasser ist der Shelly Spannungslos und es kommt zur Fehlermeldung.
                                            Fehler.JPG
                                            Ich habe Das Gerät schon unter den nicht zu überwachenden Geräten eingetragen und auch Cux schon mal auf 0 ,1 und 9
                                            gesetzt aber ohne Erfolg.
                                            Script.JPG
                                            was kann ich tun damit die Meldung verschwindet?

                                            Danke
                                            Volker

                                            cash Dominik F. 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            534
                                            Online

                                            31.6k
                                            Users

                                            79.4k
                                            Topics

                                            1.3m
                                            Posts

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