Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Vorlage] Servicemeldungen Volume2

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Vorlage] Servicemeldungen Volume2

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      looxer01 last edited by looxer01

      Neue Version 1.04

      • Text Korrektur bei Datenpunkten "JSONAktuelleSM" - Datenpunkt vorher löschen und script laufen lassen
      • Quick Fix - status meldung bei status 0 unterbunden für vergangene SM
      1 Reply Last reply Reply Quote 0
      • sigi234
        sigi234 Forum Testing Most Active @looxer01 last edited by

        @looxer01 sagte in [Vorlage] Servicemeldungen Volume2:

        danke für die Rückmeldung. Deine Liste sieht gut aus. welches Widget verwendest du ?
        könntest du das widget ggf posten ?

        Ja, ist ein Inventwo Widget für VIS 1

        [
          {
            "tpl": "i-vis-jsontable",
            "data": {
              "bindings": [],
              "oid": "0_userdata.0.ServicemeldungenVol2.JSONVergangeneSM",
              "iTblRowLimit": 5,
              "g_common": true,
              "iTableRefreshRate": "0",
              "iTblSortOrder": "asc",
              "iColCount": "6",
              "iOpacityAll": "1",
              "g_i-css": true,
              "iTblRowEvenColor": "rgba(1,31,43,1)",
              "iTblRowUnevenColor": "rgba(24,57,86,1)",
              "iTblHeaderColor": "rgba(2,20,67,1)",
              "iRowSpacing": "10",
              "iTblRowEvenTextColor": "#ffffff",
              "iTblRowUnevenTextColor": "#ffffff",
              "iTblHeaderTextColor": "#ffffff",
              "iBorderSize": 1,
              "iBorderStyleLeft": "solid",
              "iBorderStyleRight": "solid",
              "iBorderStyleUp": "solid",
              "iBorderStyleDown": "solid",
              "iBorderColor": "#ffffff",
              "iTblShowHead": true,
              "iColShow1": "true",
              "iColName1": "Datum",
              "iColAttr1": "datum_seit",
              "iTblCellPlaceholder1": null,
              "iColWidth1": null,
              "iColPreText1": null,
              "iColAfterText1": null,
              "iTblHeadTextAlign1": "center",
              "iTblTextAlign1": "left",
              "iTblCellFormat1": "normal",
              "iTblCellDatetimeFormat1": null,
              "iTblCellDatetimeFormatInfo1": null,
              "iTblCellImageSize1": "200",
              "iTblCellBooleanCheckbox1": "false",
              "iTblCellBooleanColorFalse1": "#ff0000",
              "iTblCellBooleanColorTrue1": "",
              "iTblCellNumberDecimals1": "2",
              "iTblCellNumberDecimalSeperator1": ".",
              "iTblCellNumberThousandSeperator1": ",",
              "iTblCellThresholds-oid1": null,
              "iTblCellThresholdsText1": null,
              "g_iTableCol-1": true,
              "iColShow2": "true",
              "iColName2": "Meldungsart",
              "iColAttr2": "meldungsart",
              "iTblCellPlaceholder2": null,
              "iColWidth2": null,
              "iColPreText2": null,
              "iColAfterText2": null,
              "iTblHeadTextAlign2": "center",
              "iTblTextAlign2": "left",
              "iTblCellFormat2": "normal",
              "iTblCellDatetimeFormat2": null,
              "iTblCellDatetimeFormatInfo2": null,
              "iTblCellImageSize2": "200",
              "iTblCellBooleanCheckbox2": "false",
              "iTblCellBooleanColorFalse2": "",
              "iTblCellBooleanColorTrue2": "",
              "iTblCellNumberDecimals2": "2",
              "iTblCellNumberDecimalSeperator2": ".",
              "iTblCellNumberThousandSeperator2": ",",
              "iTblCellThresholds-oid2": null,
              "iTblCellThresholdsText2": null,
              "g_iTableCol-2": true,
              "iColShow3": "true",
              "iColName3": "Name",
              "iColAttr3": "common_name",
              "iTblCellPlaceholder3": null,
              "iColWidth3": null,
              "iColPreText3": null,
              "iColAfterText3": null,
              "iTblHeadTextAlign3": "center",
              "iTblTextAlign3": "left",
              "iTblCellFormat3": "normal",
              "iTblCellDatetimeFormat3": null,
              "iTblCellDatetimeFormatInfo3": null,
              "iTblCellImageSize3": "200",
              "iTblCellBooleanCheckbox3": "false",
              "iTblCellBooleanColorFalse3": "",
              "iTblCellBooleanColorTrue3": "",
              "iTblCellNumberDecimals3": "2",
              "iTblCellNumberDecimalSeperator3": ".",
              "iTblCellNumberThousandSeperator3": ",",
              "iTblCellThresholds-oid3": null,
              "iTblCellThresholdsText3": null,
              "g_iTableCol-3": true,
              "iColShow4": "true",
              "iColName4": "ID",
              "iColAttr4": "id_name",
              "iTblCellPlaceholder4": null,
              "iColWidth4": null,
              "iColPreText4": null,
              "iColAfterText4": null,
              "iTblHeadTextAlign4": "center",
              "iTblTextAlign4": "left",
              "iTblCellFormat4": "normal",
              "iTblCellDatetimeFormat4": null,
              "iTblCellDatetimeFormatInfo4": null,
              "iTblCellImageSize4": "200",
              "iTblCellBooleanCheckbox4": "false",
              "iTblCellBooleanColorFalse4": "",
              "iTblCellBooleanColorTrue4": "",
              "iTblCellNumberDecimals4": "2",
              "iTblCellNumberDecimalSeperator4": ".",
              "iTblCellNumberThousandSeperator4": ",",
              "iTblCellThresholds-oid4": null,
              "iTblCellThresholdsText4": null,
              "g_iTableCol-4": true,
              "iColShow5": "true",
              "iColName5": "Status",
              "iColAttr5": "status",
              "iTblCellPlaceholder5": null,
              "iColWidth5": null,
              "iColPreText5": null,
              "iColAfterText5": null,
              "iTblHeadTextAlign5": "center",
              "iTblTextAlign5": "left",
              "iTblCellFormat5": "normal",
              "iTblCellDatetimeFormat5": null,
              "iTblCellDatetimeFormatInfo5": null,
              "iTblCellImageSize5": "200",
              "iTblCellBooleanCheckbox5": "false",
              "iTblCellBooleanColorFalse5": "",
              "iTblCellBooleanColorTrue5": "",
              "iTblCellNumberDecimals5": "2",
              "iTblCellNumberDecimalSeperator5": ".",
              "iTblCellNumberThousandSeperator5": ",",
              "iTblCellThresholds-oid5": null,
              "iTblCellThresholdsText5": null,
              "g_iTableCol-5": true,
              "iColShow6": true,
              "iColName6": "Message",
              "iColAttr6": "status_message",
              "iTblCellPlaceholder6": null,
              "iColWidth6": null,
              "iColPreText6": null,
              "iColAfterText6": null,
              "iTblHeadTextAlign6": "center",
              "iTblTextAlign6": "left",
              "iTblCellFormat6": "normal",
              "iTblCellDatetimeFormat6": null,
              "iTblCellDatetimeFormatInfo6": null,
              "iTblCellImageSize6": "200",
              "iTblCellBooleanCheckbox6": "false",
              "iTblCellBooleanColorFalse6": "",
              "iTblCellBooleanColorTrue6": "",
              "iTblCellNumberDecimals6": "2",
              "iTblCellNumberDecimalSeperator6": ".",
              "iTblCellNumberThousandSeperator6": ",",
              "iTblCellThresholds-oid6": null,
              "iTblCellThresholdsText6": null,
              "g_iTableCol-6": true,
              "iTblFixedHead": true,
              "iBorderRemoveDouble": true,
              "g_css_font_text": true
            },
            "style": {
              "bindings": [],
              "left": "0px",
              "top": "326px",
              "width": "862px",
              "height": "287px",
              "text-align": "left",
              "z-index": 4
            },
            "widgetSet": "vis-inventwo",
            "_id": "i000001"
          }
        ]
        
        1 Reply Last reply Reply Quote 1
        • E
          emil70 last edited by

          HAbe es gerade mal getestet. Bekomme beim start und Neustart folgende Meldung

          javascript.0
          	2024-11-05 18:53:12.131	warn	script.js.common.Test: More than 500 subscriptions registered. Check your script!
          javascript.0
          	2024-11-05 18:53:12.128	warn	script.js.common.Test: More than 400 subscriptions registered. Check your script!
          javascript.0
          	2024-11-05 18:53:12.125	warn	script.js.common.Test: More than 300 subscriptions registered. Check your script!
          javascript.0
          	2024-11-05 18:53:12.122	warn	script.js.common.Test: More than 200 subscriptions registered. Check your script!
          javascript.0
          	2024-11-05 18:53:12.120	warn	script.js.common.Test: More than 100 subscriptions registered. Check your script!
          

          Screenshot 2024-11-05 at 18-54-11 objects - c085e79aaebc.png
          ist das bekannt?

          L 1 Reply Last reply Reply Quote 0
          • L
            looxer01 @emil70 last edited by looxer01

            @emil70
            Hi
            es scheint, dass du viele Geräte hast und damit viele Datenpunkte.
            Bei mir sind es 270 Datenpunkte bei 80 Geräten.
            Bei dir sind es 565 Datenpunkte - wieviel Geräte hast du ?

            Die Meldung kommt nur beim Start des Scripts. Das kannst du aktzeptieren die Warnmeldung in den Einstellungen des Javascript Adapters hochsetzen.

            vG Looxer

            Edit:
            Alternativ kannst du diese Einstellung verwenden:
            // wenn GeraeteIDTrigger auf true gestellt wird, dann wird fuer jeden Datenpukt mit Relevanz fuer eine Servicemeldung eine subscription angelegt.
            // Vorteil ist, dass auch eine Historie und ein Log fuer Servicemeldungen geschrieben werden kann: Nachteil: bei 80 CCU Geraeten ungefaehr 300 Susbsriptions
            // Wenn die variable auf false steht, dann wird auf hm.rega.0.maintenance eine subsription angelegt: Vorteil: 1 Subscription , Nachteil: keine Servicemeldungs Historie
            const GeraeteIDTrigger = false;
            bei false wird nicht über die Geräte-IDs getriggert.
            Das hat aber dann funktional Einschränkungen zur Folge:

            • keine vergangene Servicemeldungen
            • kein Externes Log
            E Samson71 2 Replies Last reply Reply Quote 0
            • E
              emil70 @looxer01 last edited by emil70

              @looxer01 sagte in [Vorlage] Servicemeldungen Volume2:

              habe ca 130 Homematic Geräte, wenn du die meinst

              Schau ich mir mal an

              Edit:

              const GeraeteIDTrigger = true; 
              

              steht so

              Edit 2: bei

              const GeraeteIDTrigger = false; 
              

              kommt die Meldung nicht

              L 1 Reply Last reply Reply Quote 0
              • Samson71
                Samson71 Global Moderator @looxer01 last edited by

                @looxer01
                Die Info ist für mich ziemlich wichtig. Danke. Ich komme erst am WE zum Testen, aber dann mit gut 180 Geräten. Das dürfte dann deutlich heftiger ausfallen als mit nur 80. Da werde ich dann auf jeden Fall besser auf die Historie verzichten.

                L 1 Reply Last reply Reply Quote 0
                • L
                  looxer01 @emil70 last edited by

                  @emil70 sagte in [Vorlage] Servicemeldungen Volume2:

                  kommt die Meldung nicht

                  genau, da wird nur eine einzige subscription geschrieben.

                  1 Reply Last reply Reply Quote 0
                  • L
                    looxer01 @Samson71 last edited by looxer01

                    @samson71 sagte in [Vorlage] Servicemeldungen Volume2:

                    Da werde ich dann auf jeden Fall besser auf die Historie verzichten.

                    teste doch beides und schau mal ob sich in der performance Unterschiede zeigen.
                    Ich bin eher der Meinung, dass die Zahl der Subscriptions vermutlich nicht so ausschlaggebend ist.
                    Sie kosten etwas (minimal) Speicher.
                    Die Performance wird konsumiert, wenn subscriptions ausgelöst werden und wenn dies oft passiert.

                    BTW: ich habe eine Sicherheit eingebaut , wenn es mehr als 50 IDS sind, die innerhalb kurzer Zeit ausgelöst werden.
                    Dann pausiert das script für 5 Minuten, bis dann irgendwann der workload abgearbeitet ist.
                    So möchte ich verhindern, dass es einen overload in Extremsituationen gibt
                    (z.B. bei Stromausfall und einer USV, die CCU und iobroker alive hält. In dieser Situation gäbe es eine Menge Servicemeldungen)

                    vG Looxer

                    Edit:
                    Ich hatte für eine ganze Zeit das alte Servicemeldungssript parallel im Einsatz und damit mehr als doppelt soviel IDs subcribed. (ca 570 subscriptions). Ich habe keinen Unterschied bemerkt, allerdings habe ich einen recht performanten Rechner.

                    1 Reply Last reply Reply Quote 0
                    • L
                      looxer01 last edited by

                      Hi

                      Ich habe im ersten post noch ein script eingestellt, das die Batterien eurer Geräte checkt.
                      Wenn ihr Geräte habt, die noch nicht in der Liste des Servicemeldungsscripts enthalten sind, dann werden diese gelistet
                      Ihr könnt die mir dann mitteilen, idealerweise gleich Native Bezeichnung (aus dem Script) und der Bezeichnung der
                      Batterien. Wird dann in das Servicemeldungsscript eingepflegt.

                      vG Looxer

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

                        @looxer01 Schönes Script!

                        Es wäre noch gut, wenn man eine Messenger Instanz und einen Empfänger eintragen könnte.
                        Ich habe es mit Telegram probiert und da bekommen alle eine Meldung.
                        Oder habe ich etwas übersehen?

                        Grüße

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

                          @rantanplan
                          Hi, bin gerade beruflich unterwegs.
                          Anschauen kann ich mir das nächste Woche.
                          Was meinst du mit , dass alle eine Meldung bekommen?

                          Vg looxer

                          rantanplan Quarkmax 2 Replies Last reply Reply Quote 0
                          • rantanplan
                            rantanplan @looxer01 last edited by

                            @looxer01 sagte in [Vorlage] Servicemeldungen Volume2:

                            Was meinst du mit , dass alle eine Meldung bekommen?

                            Hi, ich habe mehrere Telegram-Benutzer, die unterschiedliche Meldungen aus ioBroker bekommen.
                            Die Servicemeldungen aus Deinem Script werden an alle Benutzer gesendet, die in der Instanz Telegram.0 eingetragen sind.

                            Grüße

                            1 Reply Last reply Reply Quote 0
                            • Quarkmax
                              Quarkmax @looxer01 last edited by

                              @looxer01

                              zum Batteriescript als Ergänzung

                              2x AAA: , 'HmIP-STV', 'HmIP-WKP'
                              2x AA: , 'ELV-SH-SW1-BAT'
                              3x AA: , 'HmIP-ASIR-2'
                              

                              Danke

                              1 Reply Last reply Reply Quote 1
                              • L
                                looxer01 last edited by looxer01

                                Hi,
                                neue Versionen sind online.

                                Servicmeldungsscript Version 1.05:

                                • Fix fuer Status 0 fuer historische Meldungen. Text aus Tabelle: StandardstatusMessages verwendet // Text angepasst in Tabelle fuer 0
                                • Batteriemeldung erweitert
                                • Telegram Instanz und User hinzugefügt
                                • WICHTIGE Aenderung fuer REGA subscription: Intelligenterer Umgang bei vielen Aenderungen von Anzahl der Servicmeldungen aus der CCU

                                Batteriescript Version 1.1

                                • doppelte Listungen verhindert, wenn alle Geräte gelistet werden
                                • Native IDs für aa und aaa batterien hinzugefügt // Danke an Quarkmax
                                1 Reply Last reply Reply Quote 4
                                • Knallochse
                                  Knallochse last edited by Knallochse

                                  Ich habe eine Sabotage Meldung provoziert. Die Nachricht wird auch versendet (Telegram) aber der Zähler (Anzahl_SABOTAGE) steht bei mir auf 0

                                  Screenshot 2024-11-11 071658.png

                                  Es wäre super, wenn man noch die Anzahl der zu überwachenden Instanzen konfigurieren könnte.
                                  Ich habe 4 rpc Instanzen.
                                  rpc.0 = CUxD
                                  rpc.1 = Homematic
                                  rpc.2 = Homematic IP
                                  rpc.3 = Virtuelle (Gruppen)

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

                                    @knallochse
                                    Hi,
                                    bei Homematic classic werden die Sabotage Meldungen unter MessageType "Error" geführt und da ist auch der Zähler bei dir auf 1. Das ist anders bei HMIP. Da werden die Sabotage Meldungen unter Sabotage geführt.
                                    Ich könnte das zwar code technisch abfangen. Das wäre aber irgendwie schon sehr Spaghetti.

                                    zu den instanzen.
                                    CUxD. Das sind ja vermutlich keine HM-Geräte, die darunter laufen. Da also die Datenstrukturen vermutlich anders sind, sind dann auch die Meldungen nicht identisch. Ich habe keine Ahnung wie das funktioniert.

                                    Die anderen schaue ich mir an.
                                    Die virtuellen Gruppen habe ich z.Zt draußengelassen. Der Mehrwert bei Meldungen zur Gruppe ist ohnehin fragwürdig. Allerdings sind die nur auskommentiert im Coding und lassen sich einfach aktivieren.

                                    vG Looxer

                                    Edit: also eigentlich lassen sich die Instanzen ja jetzt schon konfigurieren.
                                    Im Grunde müssen ja nur die vorgegebenen Instanzen um 1 erhöht werden.
                                    Das befindet sich in den "Experteneinstellungen":

                                    const idsUNREACH = [];
                                    // @ts-ignore
                                    $('state[id=hm-rpc.0.*.UNREACH_ALARM]').each(id => idsUNREACH.push(id));
                                    // @ts-ignore
                                    $('state[id=hm-rpc.1.*.UNREACH_ALARM]').each(id => idsUNREACH.push(id));
                                    // @ts-ignore
                                    // $('state[id=hm-rpc.2.*.UNREACH_ALARM]').each(id => idsUNREACH.push(id)); // auskommentiert keine Gruppenmeldungen
                                    
                                    const idsSTICKY_UNREACH = [];
                                    // @ts-ignore
                                    $('state[id=hm-rpc.0.*.STICKY_UNREACH_ALARM]').each(id => idsSTICKY_UNREACH.push(id));
                                    // @ts-ignore
                                    $('state[id=hm-rpc.1.*.STICKY_UNREACH_ALARM]').each(id => idsSTICKY_UNREACH.push(id));
                                    // @ts-ignore
                                    $('state[id=hm-rpc.2.*.STICKY_UNREACH_ALARM]').each(id => idsSTICKY_UNREACH.push(id));      // auskommentiert keine Gruppenmeldungen
                                    
                                    const idsConfig_Pending = [];
                                    // @ts-ignore
                                    $('state[id=hm-rpc.0.*.CONFIG_PENDING_ALARM]').each(id => idsConfig_Pending.push(id));
                                    // @ts-ignore
                                    $('state[id=hm-rpc.1.*.CONFIG_PENDING_ALARM]').each(id => idsConfig_Pending.push(id));
                                    // @ts-ignore
                                    // $('state[id=hm-rpc.2.*.CONFIG_PENDING_ALARM]').each(id => idsConfig_Pending.push(id));   // auskommentiert keine Gruppenmeldungen
                                    
                                    const idsUPDATE_PENDING_ALARM = [];
                                    // @ts-ignore
                                    $('state[id=hm-rpc.0.*.UPDATE_PENDING_ALARM]').each(id => idsUPDATE_PENDING_ALARM.push(id));
                                    // @ts-ignore
                                    $('state[id=hm-rpc.1.*.UPDATE_PENDING_ALARM]').each(id => idsUPDATE_PENDING_ALARM.push(id)); 
                                    // @ts-ignore
                                    //$('state[id=hm-rpc.2.*.UPDATE_PENDING_ALARM]').each(id => idsUPDATE_PENDING_ALARM.push(id)); // auskommentiert keine Gruppenmeldungen
                                    
                                    const idsLOWBAT_ALARM = [];
                                    // @ts-ignore
                                    $('state[id=hm-rpc.0.*.LOWBAT_ALARM]').each(id =>  idsLOWBAT_ALARM.push(id));
                                    // @ts-ignore
                                    $('state[id=hm-rpc.1.*.LOW_BAT_ALARM]').each(id => idsLOWBAT_ALARM.push(id));
                                    // @ts-ignore
                                    $('state[id=hm-rpc.2.*.LOW_BAT_ALARM]').each(id => idsLOWBAT_ALARM.push(id));                   // auskommentiert keine Gruppenmeldungen
                                    
                                    const idsDEVICE_IN_BOOTLOADER_ALARM = [];
                                    // @ts-ignore
                                    $('state[id=hm-rpc.0.*.DEVICE_IN_BOOTLOADER_ALARM]').each(id => idsDEVICE_IN_BOOTLOADER_ALARM.push(id)); // nur HM-Classic
                                    
                                    const idsERROR = [];
                                    // @ts-ignore
                                    $('state[id=hm-rpc.0.*.ERROR]').each(id => idsERROR.push(id));
                                    // @ts-ignore
                                    $('state[id=hm-rpc.1.*.ERROR]').each(id => idsERROR.push(id));
                                    // @ts-ignore
                                    // $('state[id=hm-rpc.2.*.ERROR]').each(id => idsERROR.push(id));                               // auskommentiert keine Gruppenmeldungen
                                    
                                    const idsFAULT_REPORTING = [];
                                    // @ts-ignore
                                    $('state[id=hm-rpc.0.*.FAULT_REPORTING]').each(id => idsFAULT_REPORTING.push(id));              // nur HM-Classic
                                    
                                    const idsSABOTAGE_ALARM = [];
                                    // @ts-ignore
                                    $('state[id=hm-rpc.0.*.SABOTAGE_ALARM]').each(id => idsSABOTAGE_ALARM.push(id));
                                    // @ts-ignore
                                    $('state[id=hm-rpc.1.*.SABOTAGE_ALARM]').each(id => idsSABOTAGE_ALARM.push(id));
                                    // @ts-ignore
                                    //$('state[id=hm-rpc.2.*.SABOTAGE_ALARM]').each(id => idsSABOTAGE_ALARM.push(id));              // auskommentiert keine Gruppenmeldungen
                                    
                                    const idsERROR_NON_FLAT_POSITIONING_ALARM = [];
                                    // @ts-ignore
                                    $('state[id=hm-rpc.0.*.ERROR_NON_FLAT_POSITIONING_ALARM]').each(id => idsERROR_NON_FLAT_POSITIONING_ALARM.push(id));
                                    // @ts-ignore
                                    $('state[id=hm-rpc.1.*.ERROR_NON_FLAT_POSITIONING_ALARM]').each(id => idsERROR_NON_FLAT_POSITIONING_ALARM.push(id));
                                    
                                    
                                    Knallochse 1 Reply Last reply Reply Quote 0
                                    • Knallochse
                                      Knallochse @looxer01 last edited by Knallochse

                                      @looxer01 sagte in [Vorlage] Servicemeldungen Volume2:

                                      @knallochse
                                      Hi,
                                      bei Homematic classic werden die Sabotage Meldungen unter MessageType "Error" geführt und da ist auch der Zähler bei dir auf 1. Das ist anders bei HMIP. Da werden die Sabotage Meldungen unter Sabotage geführt.
                                      Ich könnte das zwar code technisch abfangen. Das wäre aber irgendwie schon sehr Spaghetti.

                                      Dann hab ich es verstanden. Ich bräuchte keine Änderung.

                                      zu den instanzen.
                                      CUxD. Das sind ja vermutlich keine HM-Geräte, die darunter laufen. Da also die Datenstrukturen vermutlich anders sind, sind dann auch die Meldungen nicht identisch. Ich habe keine Ahnung wie das funktioniert.

                                      Eine Überwachung der CUxD Geräte vom Skript ist nicht nötig. Aber die rpc.0 Instanz wird ja überwacht, und die Geräte zur Überwachung befinden sich ja in anderen Instanzen. Wird dann noch alles richtig zugeordnet bzw. überwacht?

                                      Die anderen schaue ich mir an.
                                      Die virtuellen Gruppen habe ich z.Zt draußengelassen. Der Mehrwert bei Meldungen zur Gruppe ist ohnehin fragwürdig. Allerdings sind die nur auskommentiert im Coding und lassen sich einfach aktivieren.

                                      In den Gruppen befinden sich ja die einzelnen Geräte und diese werden ja schon überwacht.

                                      vG Looxer

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

                                        Von meiner Seite vielen Dank für dein Skript. Schön, dass du dich der Sache annimmst.

                                        1 Reply Last reply Reply Quote 1
                                        • L
                                          looxer01 @Knallochse last edited by looxer01

                                          @knallochse sagte in [Vorlage] Servicemeldungen Volume2:

                                          Eine Überwachung vom Skript ist nicht nötig. Aber die rpc.0 Instanz wird ja überwacht, und die Geräte zur Überwachung befinden sich ja in anderen Instanzen. Wird dann noch alles richtig zugeordnet bzw. überwacht?

                                          ich denke ja. Dann muß also CuxD einfach nur auschgeschlossen werden.

                                          @knallochse sagte in [Vorlage] Servicemeldungen Volume2:

                                          In den Gruppen befinden sich ja die einzelnen Geräte und diese werden ja schon überwacht.

                                          genau, also ist die Hinzunahme der Gruppen nicht notwendig.

                                          Ich habe für dich die Configuration im folgenden Code gemacht. Diesen müßtest du durch den Vorhandenen ersetzen.

                                          const idsUNREACH = [];
                                          // @ts-ignore
                                          $('state[id=hm-rpc.1.*.UNREACH_ALARM]').each(id => idsUNREACH.push(id));
                                          // @ts-ignore
                                          $('state[id=hm-rpc.2.*.UNREACH_ALARM]').each(id => idsUNREACH.push(id));
                                          // @ts-ignore
                                          // $('state[id=hm-rpc.3.*.UNREACH_ALARM]').each(id => idsUNREACH.push(id)); // auskommentiert keine Gruppenmeldungen
                                          
                                          const idsSTICKY_UNREACH = [];
                                          // @ts-ignore
                                          $('state[id=hm-rpc.1.*.STICKY_UNREACH_ALARM]').each(id => idsSTICKY_UNREACH.push(id));
                                          // @ts-ignore
                                          $('state[id=hm-rpc.2.*.STICKY_UNREACH_ALARM]').each(id => idsSTICKY_UNREACH.push(id));
                                          // @ts-ignore
                                          //$('state[id=hm-rpc.3.*.STICKY_UNREACH_ALARM]').each(id => idsSTICKY_UNREACH.push(id));      // auskommentiert keine Gruppenmeldungen
                                          
                                          const idsConfig_Pending = [];
                                          // @ts-ignore
                                          $('state[id=hm-rpc.1.*.CONFIG_PENDING_ALARM]').each(id => idsConfig_Pending.push(id));
                                          // @ts-ignore
                                          $('state[id=hm-rpc.2.*.CONFIG_PENDING_ALARM]').each(id => idsConfig_Pending.push(id));
                                          // @ts-ignore
                                          // $('state[id=hm-rpc.3.*.CONFIG_PENDING_ALARM]').each(id => idsConfig_Pending.push(id));   // auskommentiert keine Gruppenmeldungen
                                          
                                          const idsUPDATE_PENDING_ALARM = [];
                                          // @ts-ignore
                                          $('state[id=hm-rpc.1.*.UPDATE_PENDING_ALARM]').each(id => idsUPDATE_PENDING_ALARM.push(id));
                                          // @ts-ignore
                                          $('state[id=hm-rpc.2.*.UPDATE_PENDING_ALARM]').each(id => idsUPDATE_PENDING_ALARM.push(id)); 
                                          // @ts-ignore
                                          //$('state[id=hm-rpc.3.*.UPDATE_PENDING_ALARM]').each(id => idsUPDATE_PENDING_ALARM.push(id)); // auskommentiert keine Gruppenmeldungen
                                          
                                          const idsLOWBAT_ALARM = [];
                                          // @ts-ignore
                                          $('state[id=hm-rpc.1.*.LOWBAT_ALARM]').each(id =>  idsLOWBAT_ALARM.push(id));
                                          // @ts-ignore
                                          $('state[id=hm-rpc.2.*.LOW_BAT_ALARM]').each(id => idsLOWBAT_ALARM.push(id));
                                          // @ts-ignore
                                          //$('state[id=hm-rpc.3.*.LOW_BAT_ALARM]').each(id => idsLOWBAT_ALARM.push(id));                   // auskommentiert keine Gruppenmeldungen
                                          
                                          const idsDEVICE_IN_BOOTLOADER_ALARM = [];
                                          // @ts-ignore
                                          $('state[id=hm-rpc.1.*.DEVICE_IN_BOOTLOADER_ALARM]').each(id => idsDEVICE_IN_BOOTLOADER_ALARM.push(id)); // nur HM-Classic
                                          
                                          const idsERROR = [];
                                          // @ts-ignore
                                          $('state[id=hm-rpc.1.*.ERROR]').each(id => idsERROR.push(id));
                                          // @ts-ignore
                                          $('state[id=hm-rpc.2.*.ERROR]').each(id => idsERROR.push(id));
                                          // @ts-ignore
                                          // $('state[id=hm-rpc.3.*.ERROR]').each(id => idsERROR.push(id));                               // auskommentiert keine Gruppenmeldungen
                                          
                                          const idsFAULT_REPORTING = [];
                                          // @ts-ignore
                                          $('state[id=hm-rpc.1.*.FAULT_REPORTING]').each(id => idsFAULT_REPORTING.push(id));              // nur HM-Classic
                                          
                                          const idsSABOTAGE_ALARM = [];
                                          // @ts-ignore
                                          $('state[id=hm-rpc.1.*.SABOTAGE_ALARM]').each(id => idsSABOTAGE_ALARM.push(id));
                                          // @ts-ignore
                                          $('state[id=hm-rpc.2.*.SABOTAGE_ALARM]').each(id => idsSABOTAGE_ALARM.push(id));
                                          // @ts-ignore
                                          //$('state[id=hm-rpc.3.*.SABOTAGE_ALARM]').each(id => idsSABOTAGE_ALARM.push(id));              // auskommentiert keine Gruppenmeldungen
                                          
                                          const idsERROR_NON_FLAT_POSITIONING_ALARM = [];
                                          // @ts-ignore
                                          $('state[id=hm-rpc.1.*.ERROR_NON_FLAT_POSITIONING_ALARM]').each(id => idsERROR_NON_FLAT_POSITIONING_ALARM.push(id));
                                          // @ts-ignore
                                          $('state[id=hm-rpc.2.*.ERROR_NON_FLAT_POSITIONING_ALARM]').each(id => idsERROR_NON_FLAT_POSITIONING_ALARM.push(id));
                                          
                                          1 Reply Last reply Reply Quote 1
                                          • Knallochse
                                            Knallochse last edited by

                                            @looxer01 Vielen Dank.
                                            Ich habe den Code durch deinen ersetzt. Ich beobachte das ganze mal eine Weile.
                                            Schade, dass sich Batteriemeldungen schlecht simulieren lassen.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            492
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            12
                                            219
                                            17931
                                            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