Servicemeldungen *allinclusive* Script
Moderator: Co-Administratoren
- HM-Villa
- Beiträge: 488
- Registriert: 24.01.2022, 10:13
- System: CCU
- Hat sich bedankt: 28 Mal
- Danksagung erhalten: 113 Mal
Re: Servicemeldungen *allinclusive* Script
@Alchy: Danke für dein tolles Script. Habe noch den Türschlosssensor HmIP-DLS mit 1x CR2032 und den Touch-Sensor HmIP-STI mit 2x LR6 gefunden.
______________________________________________________
950 Kanäle in 201 Geräten und 39 CUxD-Kanäle in 5 CUxD-Geräten
950 Kanäle in 201 Geräten und 39 CUxD-Kanäle in 5 CUxD-Geräten
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Servicemeldungen *allinclusive* Script
War drin oder ich habe es zwischendurch mal eingefügt.
Dankeschön, habe die 2 Geräte hinzugefügt. Versionsnummer wird aber nicht erhöht.
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
-
- Beiträge: 385
- Registriert: 26.08.2016, 19:26
- System: Alternative CCU (auf Basis OCCU)
- Wohnort: Erding
- Hat sich bedankt: 60 Mal
- Danksagung erhalten: 26 Mal
Re: Servicemeldungen *allinclusive* Script
Hallo Alchy,
.. aber das mußt Du mir erklären. Soweit sind meine Fähigkeiten noch nicht
Oder war das ein Test um festzustellen wie weit wir User uns einarbeiten.
Grüße
schlichi (der verwarnte)
.. aber das mußt Du mir erklären. Soweit sind meine Fähigkeiten noch nicht
Oder war das ein Test um festzustellen wie weit wir User uns einarbeiten.
Code: Alles auswählen
! Servicemeldungen auslesen und weiter verarbeiten
! v1.995 (c) by alchy https://homematic-forum.de/forum/viewtopic.php?f=31&t=24618
...
! Zeile 222
if ( (USE_SYSVAR == "ja") && (dom.GetObject(ID_SYSTEM_VARIABLES)).Get(SYSVAR_NAME) ){ (dom.GetObject(ID_SYSTEM_VARIABLES)).Get(SYSVAR_NAME).State(slist); }
! Zeile 223
} else { if ( (USE_SYSVAR == "ja") && (dom.GetObject(ID_SYSTEM_VARIABLES)).Get(SYSVAR_NAME) ){ (dom.GetObject(ID_SYSTEM_VARIABLES)).Get(SYSVAR_NAME).State(slist); }}
schlichi (der verwarnte)
... inzwischen autodidakter, fortgeschrittener Anfänger mit bestandener Einstiegsprüfung für den Expertenmodus Teil 3 (erfahrener Anwender)
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Servicemeldungen *allinclusive* Script
Was soll ich da erklären?
Die Ausgabe des Scriptes wird in der Systemvariablen gespeichert (sofern diese vorhanden und die Funktion aktiviert ist)
in der 222 sofern es sich um eine neue Servicemeldung handelt in der 223 sofern es sich um eine alte Servicemeldung handelt.
Hab mir das Script schon lange nicht mehr richtig angeschaut.
Mit einen Usertest hat das gar nix zu tun
Alchy
Die Ausgabe des Scriptes wird in der Systemvariablen gespeichert (sofern diese vorhanden und die Funktion aktiviert ist)
in der 222 sofern es sich um eine neue Servicemeldung handelt in der 223 sofern es sich um eine alte Servicemeldung handelt.
Hab mir das Script schon lange nicht mehr richtig angeschaut.
Mit einen Usertest hat das gar nix zu tun
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
-
- Beiträge: 38
- Registriert: 09.10.2020, 08:54
- System: Alternative CCU (auf Basis OCCU)
- Hat sich bedankt: 13 Mal
- Danksagung erhalten: 1 Mal
Re: Servicemeldungen *allinclusive* Script
Hallo Zusammen,
vielen Dank für das Script @alchy!
Ich habe die InThread Suche bemüht jedoch nichts gefunden, deshalb frage ich so:
Ist es möglich, dass man nur "Gerätekommunikation gestört" Meldungen ausblendet?
Hintergrund ist bei mir, dass leider manche HM IP Geräte auf Kante in der Reichweite sind und ich leider technisch keine Lösung habe, dass aktuell zu verbessern. Somit habe ich häufiger für Zeit X diese Servicemeldung stehen. Somit bekomme ich dann immer wieder PushNachrichten, die dann auf Dauer nerven.
Bislang habe ich dann das komplette Gerät geblacklisted. Dies hat nur leider zur Folge, dass ich ja auch besonders die "Batterie leer" Meldungen nicht mehr erhalte (die ich als wichtige Nutzung von dem Script sehe).
Deshalb die Frage, wie bzw. ob es möglich ist, nur die Servicemitteilungen raus zu filtern, die "Gerätekommunikation gestört" aufweisen?
Besten Dank!
vielen Dank für das Script @alchy!
Ich habe die InThread Suche bemüht jedoch nichts gefunden, deshalb frage ich so:
Ist es möglich, dass man nur "Gerätekommunikation gestört" Meldungen ausblendet?
Hintergrund ist bei mir, dass leider manche HM IP Geräte auf Kante in der Reichweite sind und ich leider technisch keine Lösung habe, dass aktuell zu verbessern. Somit habe ich häufiger für Zeit X diese Servicemeldung stehen. Somit bekomme ich dann immer wieder PushNachrichten, die dann auf Dauer nerven.
Bislang habe ich dann das komplette Gerät geblacklisted. Dies hat nur leider zur Folge, dass ich ja auch besonders die "Batterie leer" Meldungen nicht mehr erhalte (die ich als wichtige Nutzung von dem Script sehe).
Deshalb die Frage, wie bzw. ob es möglich ist, nur die Servicemitteilungen raus zu filtern, die "Gerätekommunikation gestört" aufweisen?
Besten Dank!
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Servicemeldungen *allinclusive* Script
Auch das sollte problemlos möglich sein. Am einfachsten wahrscheinlich mittels Ausnutzung von collect.
[EDIT]
z.B. das Einfügen von:
oberhalb der Zeile
sollte für das Gewünschte sorgen.
[/EDIT]
Alchy
[EDIT]
z.B. das Einfügen von:
Code: Alles auswählen
if ((sdesc == "UNREACH")) { collect = false;}
Code: Alles auswählen
if ( (BLOCK.Find(sserial)<0) && (collect) ) {
[/EDIT]
Alchy
Zuletzt geändert von alchy am 04.03.2022, 21:31, insgesamt 1-mal geändert.
Grund: [EDIT]
Grund: [EDIT]
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: Servicemeldungen *allinclusive* Script
Guten Abend Alchy!
Auch von mir ganz herzlichen Dank für das tolle Script und den umfangreichen Support.
Habe versucht, mich aufmerksam durch die 172 Seiten zu lesen und die aktuellste Version des Scripts auf meiner CCU2 auch erfolgreich installiert.
Bei den ersten Tests ist mir aufgefallen, dass die bereits aufgezeigte Problematik mit dem korrekten Befüllen der Systemvariablen bei identischen
Servicemeldungen noch nicht gelöst sein dürfte.
Ich hätte jedoch noch ein zweites Anliegen:
Nachdem ich den Inhalt der Systemvariablen in WisuWin anzeigen möchte und in Homeputer keine Möglichkeit gefunden habe, bei Aktualisierung
einer Systemvariablen eine Aktion auszulösen, bleibt aus meiner Sicht nur die Option, den Inhalt der Systemvariablen periodisch auszulesen.
Um dabei keine Servicemeldungen zu "übersehen" da diese ja unregelmäßig erzeugt werden, wäre es erforderlich, dass die Servicemeldungen nicht
überschrieben werden sondern erhalten bleiben und die neue Servicemeldung an die bestehende Meldung angehängt wird.
Der Inhalt der Systemvariablen sollte bei Bedarf manuell oder nach einer gewissen Anzahl von Servicemeldungen gelöscht werden.
Kannst Du oder ein anderer Profi in diesem Forum mir bitte bei der Realisierung behilflich sein oder mir Tipps für eine andere geeignete Lösung geben?
Vielen Dank
Gert
Auch von mir ganz herzlichen Dank für das tolle Script und den umfangreichen Support.
Habe versucht, mich aufmerksam durch die 172 Seiten zu lesen und die aktuellste Version des Scripts auf meiner CCU2 auch erfolgreich installiert.
Bei den ersten Tests ist mir aufgefallen, dass die bereits aufgezeigte Problematik mit dem korrekten Befüllen der Systemvariablen bei identischen
Servicemeldungen noch nicht gelöst sein dürfte.
Ich hätte jedoch noch ein zweites Anliegen:
Nachdem ich den Inhalt der Systemvariablen in WisuWin anzeigen möchte und in Homeputer keine Möglichkeit gefunden habe, bei Aktualisierung
einer Systemvariablen eine Aktion auszulösen, bleibt aus meiner Sicht nur die Option, den Inhalt der Systemvariablen periodisch auszulesen.
Um dabei keine Servicemeldungen zu "übersehen" da diese ja unregelmäßig erzeugt werden, wäre es erforderlich, dass die Servicemeldungen nicht
überschrieben werden sondern erhalten bleiben und die neue Servicemeldung an die bestehende Meldung angehängt wird.
Der Inhalt der Systemvariablen sollte bei Bedarf manuell oder nach einer gewissen Anzahl von Servicemeldungen gelöscht werden.
Kannst Du oder ein anderer Profi in diesem Forum mir bitte bei der Realisierung behilflich sein oder mir Tipps für eine andere geeignete Lösung geben?
Vielen Dank
Gert
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Servicemeldungen *allinclusive* Script
Da musst du genauer werden.
das rollende Speichern von Strings in einer Systemvariabel hatte ich hier mal veröffentlicht.
Reicht das?
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: Servicemeldungen *allinclusive* Script
Guten Morgen Alchy!
Vielen Dank für die Rückmeldung und den Link.
Werde versuchen damit eine Lösung zu "basteln", wird jedoch nicht ganz so einfach sein ...
Vorab ein Beispiel zu dem, was ich mit dem Befüllen der Variablen gemeint habe:
Es besteht eine Servicemeldung wegen Verbindungsfehler Gerät XXX und ich erhalte wie erwartet eine Meldung mit "ALTE Servicemeldung ... Verbindungsfehler Gerät XXX".
Abgesehen davon, dass die Meldung ja nicht unbedingt "ALT" ist wäre das aus meiner Sicht auch alles in Ordnung.
Nun behebe ich diese Fehlermeldung nicht und erzeuge eine neue Meldung, indem ich eine Sabotage auslöse.
Dann erhalte ich eine Sevicemeldung mit "NEUE Servicemeldung mit darauffolgender Angabe des alten Gerätes und erst nach dem Zeilenvorschub die Sabotagemeldung des neu erzeugten Events.
Erwarten würde ich hier eigentlich, dass das Gerät auf das sich die neue Fehlermeldung bezieht, direkt hinter dieser Meldung steht und erst im zweiten Block das Gerät zur älteren Meldung.
Mein Wunschziel wäre aber zu erreichen, dass im ersten Block die jeweils neueste Fehlermeldung steht und wenn diese behoben wurde das dort ebenfalls vermerkt wird. In den folgenden Blöcke würde ich gern alle bisherigen Servicemeldungen (egal ob aufrecht oder behoben aber möglichst mit Hinweis wenn das Problem noch besteht) in chronologischer Reihenfolge listen und das solange, bis die Systemvariable manuell gelöscht wird.
Vielleicht gelingt es mir ja das mithilfe der Informationen aus Deinem Link zu lösen, freue mich jedoch wenn Du mir dazu Tipps geben kannst.
Vielen Dank
Gert
Vielen Dank für die Rückmeldung und den Link.
Werde versuchen damit eine Lösung zu "basteln", wird jedoch nicht ganz so einfach sein ...
Vorab ein Beispiel zu dem, was ich mit dem Befüllen der Variablen gemeint habe:
Es besteht eine Servicemeldung wegen Verbindungsfehler Gerät XXX und ich erhalte wie erwartet eine Meldung mit "ALTE Servicemeldung ... Verbindungsfehler Gerät XXX".
Abgesehen davon, dass die Meldung ja nicht unbedingt "ALT" ist wäre das aus meiner Sicht auch alles in Ordnung.
Nun behebe ich diese Fehlermeldung nicht und erzeuge eine neue Meldung, indem ich eine Sabotage auslöse.
Dann erhalte ich eine Sevicemeldung mit "NEUE Servicemeldung mit darauffolgender Angabe des alten Gerätes und erst nach dem Zeilenvorschub die Sabotagemeldung des neu erzeugten Events.
Erwarten würde ich hier eigentlich, dass das Gerät auf das sich die neue Fehlermeldung bezieht, direkt hinter dieser Meldung steht und erst im zweiten Block das Gerät zur älteren Meldung.
Mein Wunschziel wäre aber zu erreichen, dass im ersten Block die jeweils neueste Fehlermeldung steht und wenn diese behoben wurde das dort ebenfalls vermerkt wird. In den folgenden Blöcke würde ich gern alle bisherigen Servicemeldungen (egal ob aufrecht oder behoben aber möglichst mit Hinweis wenn das Problem noch besteht) in chronologischer Reihenfolge listen und das solange, bis die Systemvariable manuell gelöscht wird.
Vielleicht gelingt es mir ja das mithilfe der Informationen aus Deinem Link zu lösen, freue mich jedoch wenn Du mir dazu Tipps geben kannst.
Vielen Dank
Gert
-
- Beiträge: 10752
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 672 Mal
Re: Servicemeldungen *allinclusive* Script
Das hier gepostete Script reagiert nur auf Servciemeldungen und bildet diese ab.
Grob eigentlich eben genau das was du in der Klickibunti oben rechts beim Klick auf Servicemeldungen eben auch lesen kannst. Mit ein wenig mehr Informationen vielleicht.
Den Gefallen macht dir das Script nicht, das stimmt.
Natürlich kann man die Ausgabe des Sciptes in einer Variablen rollend speichern.
Aber in diesem Speicher dann bei jedem Aufruf gespeicherte Meldungen auch noch zu editieren, chronologisch zu sortieren usw. halte ich für eher überzogen. Vielleicht verstehe ich aber auch nur den Sinn dahinter nicht.
Mal sehen. Aber es gibt ja hier auch noch andere Programmierer.
Alchy
Grob eigentlich eben genau das was du in der Klickibunti oben rechts beim Klick auf Servicemeldungen eben auch lesen kannst. Mit ein wenig mehr Informationen vielleicht.
Also die Anordnung in der Ausgabe meines Scriptes nach alt oder neu zu sortieren?
Den Gefallen macht dir das Script nicht, das stimmt.
Dein Wunschziel sollte sein, keine Servicmeldung zu haben.
Natürlich kann man die Ausgabe des Sciptes in einer Variablen rollend speichern.
Aber in diesem Speicher dann bei jedem Aufruf gespeicherte Meldungen auch noch zu editieren, chronologisch zu sortieren usw. halte ich für eher überzogen. Vielleicht verstehe ich aber auch nur den Sinn dahinter nicht.
Mal sehen. Aber es gibt ja hier auch noch andere Programmierer.
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.