Servicemeldungen *allinclusive* Script

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

Tibin
Beiträge: 507
Registriert: 26.10.2016, 16:08
System: CCU
Hat sich bedankt: 19 Mal
Danksagung erhalten: 15 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von Tibin » 05.02.2017, 13:30

blackhole hat geschrieben:Das kannst Du machen, es liegt aber mit an Sicherheit grenzender Wahrscheinlichkeit nicht an alchis Skript
Das ist mir schon klar, sonst hätten sich ja schon mehrere beschwert :mrgreen:
Ich würde nur zu gerne den Grund herausfinden und dachte nur, da du ja auch die gleichen HKT's benutzt...
Vielleicht sind meine ja ne Fehlproduktion :mrgreen:
homey21 hat geschrieben:Ich habe gerade ein Problem mit dem Skript, unter Verwendung von pushover. Die Nachricht wird zwar verschickt, danach friert die CCU jedoch ein. Wenn ich pushover deaktiviere und nur Email nutze, klappt es wunderbar (seit Monaten):
Dieses Phänomen hatte ich auch. Darf ich fragen welches Handy? Aber irgendwie hat das mit Pushover zu tun.
Meine Lösung:
Suche diese 3 Zeilen im Script

Code: Alles auswählen

           foreach(messageindex,message.Split(" ")) {newmessage = newmessage#messageindex#"%20";}
                  message = newmessage;
                  newmessage = "";
und setze Ausrufezeichen davor.

Code: Alles auswählen

    !     foreach(messageindex,message.Split(" ")) {newmessage = newmessage#messageindex#"%20";}
    !                 message = newmessage;
    !                 newmessage = "";
jetzt noch in dieser Zeile

Code: Alles auswählen

message = message.Substr(0, message.Length()-51);
die 51 in 48 ändern.
Seit dem geht es bei mir und einen Versuch ist es bei dir wert.
Gruß Tino.
Zuletzt geändert von Tibin am 05.02.2017, 14:44, insgesamt 2-mal geändert.

homey21
Beiträge: 1113
Registriert: 17.11.2013, 01:54
System: CCU
Hat sich bedankt: 36 Mal
Danksagung erhalten: 3 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von homey21 » 05.02.2017, 14:01

Tibin hat geschrieben: Dieses Phänomen hatte ich auch. Darf ich fragen welches Handy?
Also das ist beim HTC M9 passiert, allerdings habe ich im pushover 3 Handys drin, und a) bei allen drei und b) bei nur an HTC senden friert die CCU ein. Das normale Senden per pushover zB offene Fenster senden, klappt einwandfrei.

Tibin
Beiträge: 507
Registriert: 26.10.2016, 16:08
System: CCU
Hat sich bedankt: 19 Mal
Danksagung erhalten: 15 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von Tibin » 05.02.2017, 14:20

homey21 hat geschrieben:a) bei allen drei
Aha also Handyunabhängig...gut zu wissen. Habe ein S6.
Aber probiere es einfach aus. Meinen Beobachtungen zu Folge übersetzt Pushover wohl die Leerzeichen von allein.(Wenn ich mich nicht irre)
Dieses Problem hatte ich auch irgendwo in der Mitte dieses Threads mal berichtet. War damals aber keiner mit den selben Abstürzen.
homey21 hat geschrieben:Aktuell bleibt mir nur der Neustart via Strom rausziehen,
Damals hatte Alchy mir auch geholfen, dass das nicht unbedingt nötig ist :mrgreen:
Musst mal suchen..
Gruß Tino.
Zuletzt geändert von Tibin am 05.02.2017, 14:28, insgesamt 1-mal geändert.

homey21
Beiträge: 1113
Registriert: 17.11.2013, 01:54
System: CCU
Hat sich bedankt: 36 Mal
Danksagung erhalten: 3 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von homey21 » 05.02.2017, 14:26

Alles klar, hatte ich kurz gelesen. Ich versuche auch mal, die Message, die an PO gesendet wird, ein wenig zu kürzen. Lustigerweise klappt alles wunderbar, wenn ich die PO Message per Emailaddon an die PO_Emailadresse sende, dann hängt sich nichts auf. Liegt dann wohl an der PO-Routine/meiner CCU/meinem Handy...

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von alchy » 05.02.2017, 20:47

falke69 hat geschrieben: Wenn es wie aktuell bei mir viele verschiedene Fehlermeldungen gibt, werden diese in der Mail immer als "Fließtext" dargestellt.
Gibt es die Möglichkeit einer besseren und übersichtlichen Formatierung ggf. über Anpassen der TCL oder über das schreiben in eine Systemvariable?
im Original werden die Meldungen zeilenweise ausgegeben. Du kannst das weiter oder anders formatieren in dem du weitere Steuerzeichen und/oder html Codes verwendest.
Aber in jedem Fall diese Variable dann NICHT auf der Startseite anzeigen lassen.
homey21 hat geschrieben: Die Nachricht wird zwar verschickt, danach friert die CCU jedoch ein.
....
Gibt es eine Möglichkeit, den Fehler einzugrenzen oder so?
Was ich im Fehlerfall erwarte, steht im ersten Post des Thread. Und noch mal keine Infos - keine Hilfe von meiner Seite.
Ein Punkt ist das >> Fehlerprotokoll <<
Aus Erfahrung in anderen Threads mir dir, bin ich mir aber relativ sicher, das du so manches Problem hast,
aber das "hier besprochene" Script zählt nicht dazu. :roll:
Wie du in einem anderen Thread gepostet hast, stürzt deine Rega schon ab, wenn du anderweitig eine Pushovernachricht überhaupt verschickst usw.
Ich würde dir vorschlagen einen eigenen Thread aufzumachen oder einen deiner eigenen Threads dafür zu nutzen,
homey21 hat geschrieben: Aktuell bleibt mir nur der Neustart via Strom rausziehen, denn diese Bild bleibt dauerhaft stehen:
Die Rega kann man restarten ohne den Stecker zu ziehen.
Da du ja eh nicht nach der Lösung suchen wirst, hier für dich noch mal die Kurzfassung:
RegaHss checken und starten
  • SSH auf der CCU2 einschalten und ein Passwort vergeben wie >> H I E R << auf dem Bild angezeigt.
  • mittels >> PUTTY << musst du dann eine Verbindung per ssh zur CCU aufbauen

    Code: Alles auswählen

    ps|grep rega
    muss als Ausgabe so etwas

    Code: Alles auswählen

    /bin/ReGaHss -f /etc/rega.conf -l 2
    bringen
  • wenn nicht kannst du mit:

    Code: Alles auswählen

    /etc/init.d/S70ReGaHss start
    die ReGa neustarten.
homey21 hat geschrieben: Ich versuche auch mal, die Message, die an PO gesendet wird, ein wenig zu kürzen.
Wie lang sind denn deine Nachrichten - sprich wie viele Zeichen enthalten diese?
CUxD hatte mal einen ~1000 Zeichen Fehler, der sollte aber eigentlich behoben sein.

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.

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von alchy » 05.02.2017, 21:03

Tibin hat geschrieben: Das ist ja das Problem. Wie gesagt: die Servicemeldung erscheint erst in der WebUI wenn dein Skript bereits 1x durchgelaufen ist.
mag sein, das mein Script schneller startet als die internen Routinen, aber 3 min :shock:
das ist auch egal.
Es started erst nach Eingang einer Servicemeldung IN DER CCU !
Tibin hat geschrieben: Batteriesymbol erscheint auf dem Display des HM-CC-RT-DN
Interessiert wie ein Sack Reis, der Eingang in der CCU ist das Interessante
Tibin hat geschrieben: >> Skript läuft durch (OHNE MELDUNG IN DER WEBUI)>> Pushmeldung erfolgt korrekt>>
So soll es ja sein, abgesehen vom Detail, das dir die Klickibunti keine Servicemeldung anzeigt, was aber NICHTS mit dem Script zu tun hat.
Sicher das du nicht einen stehenden roten Punkt hast und die Klickibunti nicht mehr aktualisiert wird?
Tibin hat geschrieben: 3min später kommt die Meldung in der WebUI >> Skript läuft nochmal durch aber keine Pushmeldung.
Das wäre dann auch normal, wenn es denn so wäre. Es wird festgestellt, das es keine neue Servicemeldung gibt, also wird auch keine Nachricht verschickt.
Wenn du da eine erwartest, sind deine Erwartungen falsch.


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.

Tibin
Beiträge: 507
Registriert: 26.10.2016, 16:08
System: CCU
Hat sich bedankt: 19 Mal
Danksagung erhalten: 15 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von Tibin » 05.02.2017, 22:33

alchy hat geschrieben:Interessiert wie ein Sack Reis
Ich habe nur versucht, meinem Gegenüber, der ja nicht auf meinen Monitor gucken kann, es so Detailreich wie möglich zu schildern um evtl. der Lösung näher zu kommen.
Aber egal, muss ich halt mit leben, betrifft ja nur die HKT's.
Hintergrund des Ganzen waren ja auch nur die nicht verschickten Pushmeldungen der HKT's unter normalen Bedingungen.
Das was ich versucht habe zu schildern, sind ja provozierte Meldungen mit alten Batterien. Keine Ahnung wie ich das sonst testen soll.
alchy hat geschrieben:Sicher das du nicht einen stehenden roten Punkt hast
habe ich nicht drauf geachtet
alchy hat geschrieben:und die Klickibunti nicht mehr aktualisiert wird?
Denke das hätte ich bei bestimmt 20 Versuchen über mehrere Tage gemerkt.
Wie gesagt werde jetzt damit leben.
Dir trotzdem Danke für die Mühe die du dir machst.
Gruß Tino

alchy
Beiträge: 10754
Registriert: 24.02.2011, 01:34
System: CCU
Hat sich bedankt: 65 Mal
Danksagung erhalten: 673 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von alchy » 06.02.2017, 00:32

Nicht falsch verstehen, der "Sack Reis" sollte nicht negativ dir gegenüber rüberkommen, sondern nur eine Verdeutlichung des Ganzen darstellen. Deine Beobachtung am Gerät selber sind für das Programm / Script eben nicht greifend, da es das Script nicht interessiert.
Es gibt eben unterschiedliche Servicemeldungen, welche generiert die CCU selber, weil sie z.B. ein Gerät erreichen will, es aber nicht funktioniert. Batterieleermeldungen gehen i.d.R logischerweise aber erstmal vom Gerät selber aus. Das Gerät selber kann es zwar gerne eher anzeigen als es die CCU weiß, denn die erfährt es natürlich erst, wenn das Gerät es ihr auch mitteilt. Im Normalfall sollten solche Meldungen vom Gerät aber sofort übermittelt werden und nicht erst mit dem nächstem Turnustelegramm. So auch in deinem Fall.
Wenn das geschieht wird das Programm und damit das Script angeschoben, die in der CCU anliegenden Meldungen zum Zeitpunkt der Laufzeit des Scriptes werden ausgelesen und entsprechend verarbeitet.

Nun kann es nicht allzuviel geben,was die Ausführung wirklich verhindert.
Das eine wäre z.B. ein ultrakurzer Wischer einer Servicemeldung (was bei dir offensichtlich nicht vorliegt).
Servicemeldung aktiv - Script läuft an - Servicemeldung aber zur Laufzeit doch nicht mehr aktiv - Meldung bleibt aus.
Da ja die Pflicht bestand, nur zu melden, wenn neue Meldungen auftauchen, wird natürlich innerhalb des Scriptes noch mal gecheckt, ob es auch neue Meldungen gibt oder ob z.B. der Programmstart nur durch eine weggegangene Meldung generiert wurde. In dem Fall wird in meiner Version lediglich die Systemvariable aktualisiert, was auch im Lastenheft stand und logisch ist.

Was mir immer noch Kopfzerbrechen bereitet ist deine Schilderung, das die Meldung der Servicemeldung erst 3min später in der Klickibunti erscheint. Bei all meinen Tests war im Grunde keine Verzögerung zwischen Erzeugung Servicemeldung -> Programmstart und Anzeige in den Servicemeldungen in der KLickibunti festzustellen.
Warum sich die Thermostate bei dir so anders verhalten, kann ich aus Mangel an passenden Geräten nicht nachvollziehen. Leider habe ich auch nicht den Hauch einer Verwendungsmöglichkeit für ein solches Thermostat. Mal sehen, ob ich bei Gelegenheit mal auch noch ein solches Thermostat kaufe, nur um das nachzuvollziehen. Leider ist mein Gerätepark an nichtbenötigten aber zum Support gekauften Geräte nicht unbedingt klein.

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.

falke69
Beiträge: 61
Registriert: 05.11.2016, 19:51

Re: Servicemeldungen *allinclusive* Script

Beitrag von falke69 » 06.02.2017, 09:23

alchy hat geschrieben: im Original werden die Meldungen zeilenweise ausgegeben. Du kannst das weiter oder anders formatieren in dem du weitere Steuerzeichen und/oder html Codes verwendest.
Aber in jedem Fall diese Variable dann NICHT auf der Startseite anzeigen lassen.
Hi alchy,

vielen Dank für die schnelle Antwort. Da ich es nicht so mit Programierung habe (an jeder Hand 5 Daumen :o ), könntest Du mir bitte verraten, an welcher Stelle ich in Deinem Script den Schalter einfüge, damit nach der Uhrzeitangabe der Zeilenumbruch erzwungen wird?

Aktuell sieht es zwar ein wenig besser aus, aber schön ist anders.

------------------------------------------------------------------------------------------------------------------------------------------
NEUE SERVICEMELDUNG

Fensterkontakt Wohnzimmer : Sabotage. seit: 06.02.17 09:00 Uhr Außenbeleuchtung :
Kommunikation war gestört seit: 05.02.17 13:20 Uhr Außenbeleuchtung :
Kommunikation zur Zeit gestört seit: 05.02.17 13:20 Uhr
------------------------------------------------------------------------------------------------------------------------------------------

Tibin
Beiträge: 507
Registriert: 26.10.2016, 16:08
System: CCU
Hat sich bedankt: 19 Mal
Danksagung erhalten: 15 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von Tibin » 06.02.2017, 12:08

alchy hat geschrieben:Nicht falsch verstehen, der "Sack Reis" sollte nicht negativ dir gegenüber rüberkommen
Sorry, das hatte ich dann tatsächlich falsch verstanden.
Und danke für die ausführliche Beschreibung und deine Geduld für mein Generve :mrgreen: .
Aber ich denke und hoffe, den Sinn und Zweck deines Skriptes schon verstanden zu haben.
Bis auf...
alchy hat geschrieben:wird natürlich innerhalb des Scriptes noch mal gecheckt, ob es auch neue Meldungen gibt oder ob z.B. der Programmstart nur durch eine weggegangene Meldung generiert wurde
Würde das bedeuten, wenn tatsächlich die erste Meldung (bei der provozierten Meldung durch alte Batterien) von der ccu verschluckt wird (weil ja die Servicemeldung in der WEbUI auch nicht angezeigt wird) oder wie du schreibst: "ein ultrakurzer Wischer", die 2. Meldung nicht rausgeht weil sie intern schon existiert?
Hier nur nochmal die Abstände der Durchläufe. Unterscheiden sich immer nur um Sekunden.
  • Feb 3 14:10:12 homematic-ccu2 user.debug script: [ALCHY ALLINScript START]
    Feb 3 14:10:13 homematic-ccu2 user.debug script: [ALCHY ALLINScript ENDE]
    Feb 3 14:12:49 homematic-ccu2 user.debug script: [ALCHY ALLINScript START]
    Feb 3 14:12:51 homematic-ccu2 user.debug script: [ALCHY ALLINScript ENDE]
2 Durchläufe gibt es aber nur bei provozierten Meldungen durch alte Batterien.
Bei einer normalen Batteriemeldung durch einen HKT sehe ich die gelbe Lampe an der ccu2 blinken, aber ich habe keine Nachricht bekommen. Und es gibt auch nur einen Durchlauf des Skriptes. Komischerweise aktualisiert sich die Meldungszeit in der Klickibunti alle paar Minuten. Das ist aber vielleicht ok so?? Kein Plan...

Ich versuche ja einiges um dem Täter auf die Spur zu kommen. Habe gestern mal mit blackhole seinem Skript experimentiert weil ich dachte an der SV kann ich gleich sehen was passiert ohne Pushmeldung.
Wusste gar nicht mehr dass ich bei dir auch eine hätte aktivieren können:
alchy hat geschrieben:In dem Fall wird in meiner Version lediglich die Systemvariable aktualisiert
Wenn das von der Funktionsweise keinen Unterschied macht, könnte ich hier noch sagen...
Da ist es so, dass beim 1.Durchlauf die SV befüllt wird aber beim 2. Durchlauf (wenn die Klickibunti meint jetzt mal langsam die gelbe Lampe anschalten) die SV nicht aktualisiert wird.
Wie gesagt ich werde das jetzt mal eine Weile so laufen lassen und beobachten was bei der nächsten normalen HKT-Batteriemeldung passiert.
Achso, wenn die Leere Batterie- Meldung des HKT's schon in der Klickibunti steht und ich löse zusätzlich Sabotage aus,
kommt die PO Meldung incl. der richtigen HKT-Batterien. Also denke und hoffe ich, ist am Skript alles in Ordnung.(nicht dasss du denkst.. :D )
Sorry für die lange Lektüre
Gruß Tino

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“