Servicemeldungen *allinclusive* Script

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

Moderator: Co-Administratoren

jawr
Beiträge: 88
Registriert: 08.12.2016, 12:25
Hat sich bedankt: 2 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von jawr » 16.01.2017, 12:18

Dann versuche ich mal sachlich zu antworten. Ich habe ehrlich gesagt keine Ahnung wie du auf das schmale Brett mit der Verarsche kommst. Ich kenne dich doch nicht einmal, welches Interesse sollte ich verfolgen, das zu tun? Ich habe glücklicherweise andere Dinge im Leben zu tun als ausgerechnet dich zu verarschen. Scheinst ja ein eher dünnes Nervenkostüm zu besitzen. Idealerweise würde ich hier gar nicht posten, nämlich dann wenn das Skript bei mir einfach laufen würde (nicht als Angriff auf dein Skript verstehen, vermutlich mache ich ja was falsch). Da es das bei mir leider nicht tut, versuche ich hier gemeinsam eine Lösung zu finden. Daher auch der Ansatz mit dem Versand der Testnachricht. Egal, ich werde nun folgendes machen:

1. Ich schmeisse das Skript wieder raus und kopiere die Version von Seite 1
2. Systemvariable angelegt -> SysVar_Servicemeldung
3. Folgende Werte passe ich an, der Rest bleibt wie er ist:

var USE_TELEGRAM = "ja"; ! ja oder nein für die Verwendung TELEGRAM direkt im Script;
var CHATID = "meineID"; ! selbsterklärend
var BOTAPI = "meineAPI"; ! dito

var USE_SYSVAR = "ja"; ! ja / nein Speichern der Ausgabe des Scriptes in Systemvariable
var SYSVAR_NAME = "SysVar_Servicemeldung"; ! hier den Namen dieser Variablen eintragen

4. Abwarten was bei der nächsten Servicemeldung passiert, eine auslösen kann ich nicht. Aktuell habe ich kein Gerät mit Sabotageerkennung an dem ich einfach die Batterie entfernen könnte.

shen
Ehrenmitglied
Beiträge: 753
Registriert: 14.07.2006, 19:24
Wohnort: Wegberg
Kontaktdaten:

Re: Servicemeldungen *allinclusive* Script

Beitrag von shen » 16.01.2017, 12:42

Servicemeldungen lassen sich auch erzeugen, in dem man ein Gerät außer Betrieb nimmt und dieses dann zu steuern versucht. Also etwa einen Zwischenstecker stromlos machen, einem Heizkörperthermostat die Batterien klauen etc.
Gruß
Stefan Hendricks (ehemaliger HomeMatic-Forum Betreiber)

jawr
Beiträge: 88
Registriert: 08.12.2016, 12:25
Hat sich bedankt: 2 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von jawr » 16.01.2017, 12:44

Ok, das wusste ich nicht, vielen Dank für den Hinweis.

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 » 16.01.2017, 12:49

Ich habe auch anderes zu tun, als ein Script zu supporten, welches von dir verändert worden ist. Stundenlang wegen Dir Fehler zu suchen ist kein Spass. Denn ich teste i.d.R die Scripte die ich schreibe und bin mir relativ sicher, das sie so funktionieren sollten.
Das heißt natürlich aber nicht, das ich nicht auch Fehler machen kann, oder aber mein System reagiert durch verschiedene Änderungen nicht, wie ein Standard System eines anderen Users.
Es gibt viele Fallstricke. Die meisten sitzen davor - und das ist auch auf mich bezogen und keineswegs böse gemeint. Mein Nervenkostüm hat NICHTS damit zu tun.

Ich erwarte, das meine Fragen wahrheitsgemäß beantwortet werden, wenn sie nicht beantwortet werden können, dann erwarte ich eine Nachfrage, das ist kein Problem.
Wenn ich dich frage, welches Script du einsetzt und dann doch rauskommt, das du Änderungen durchgeführt hast, dann ist das für mich Verarsche.

Ich habe alles dazu geschrieben, wenn es dir nicht passt - nicht mein Problem.
Meine Blacklist ist meine private Entscheidung die ich mir auch als Mod zugestehe, genau wie ich jedem anderen auch zugestehe mich zu ignorieren.

und zum eigentlichen Thema:

Ich hoffe, du hast die Stringvariable SysVar_Servicemeldung auch in der Klickibunti angelegt, wie beschrieben. Da fehlt nämlich in deiner Aufzählung.

Alchy
jawr hat geschrieben:Aktuell habe ich kein Gerät mit Sabotageerkennung an dem ich einfach die Batterie entfernen könnte.
Die Batterien zu entfernen erzeugt erstmal gar keine Servicemeldung. (erst später, je nach Gerät eine Kommunikationsgestörtmeldung) das ist weniger zielführend. Den Sabotagekontakt auslösen, in dem man i.d.R bei bestimmten Geräten den Batteriedeckel entfernt dagegen schon. Das wurde vorgeschlagen von dtp. Da hast du wohl ebenfalls Verständnisprobleme.
Du kannst z.B. auch eine Servicemeldung erzeugen, wenn du z.B. einen Steckdosenaktor aus der Steckdose entfernst und diesen dann über die Klickibunti schaltest. Ich kenne deine Ausstattung nicht, kann also auch keine Aussagen der Möglichkeiten machen.

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.

jawr
Beiträge: 88
Registriert: 08.12.2016, 12:25
Hat sich bedankt: 2 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von jawr » 16.01.2017, 12:58

Ich hoffe, du hast die Stringvariable SysVar_Servicemeldung auch in der Klickibunti angelegt, wie beschrieben. Da fehlt nämlich in deiner Aufzählung.
Das meinte ich mit Punkt 2 meiner Auflistung, anlegen der Variable über die WebOberfläche
2. Systemvariable angelegt -> SysVar_Servicemeldung
Zu meiner Ausstattung: Da ich gerade erst damit anfange habe ich nur 2 Wandthermostate und Heizungsthermostate. Mehr kommt noch.

Gruß,

jawr

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 » 16.01.2017, 13:06

Dann kannst du (wie shen angedeutet hat) dem Wandthermostate auch die Batterien klauen und es dann über die Klickibunti ansteuern. Sollte auch funktionieren.

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.

jawr
Beiträge: 88
Registriert: 08.12.2016, 12:25
Hat sich bedankt: 2 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von jawr » 16.01.2017, 15:52

So, ich bekomme nun eine Nachricht zugestellt wenn es eine Servicemeldung gibt. Erklären kann ich mir das irgendwie nicht, aber es ist wie folgt:

Auch auf die Gefahr hin das es dir nicht gefällt habe ich weiter rumprobiert, es hat mir keine Ruhe gelassen. Es scheint im Wert slist nichts zu stehen in meinem Fall womit Telegram was anfangen kann, komischerweise geht das Skript aber dennoch in den Block mit

Code: Alles auswählen

if ( (GO) && (!slist == "") ) {
Das heisst ja nach meinem Verständniss das er nur dort abzweigt wenn slist nicht leer ist.

Dann habe ich noch hier Telegram ergänzt:

Code: Alles auswählen

if (( USE_PUSHOVER == "ja")  || ( USE_TELEGRAM == "ja") || ( USE_PROWL == "ja") || ( USE_PUSHBULLET == "ja")) {
Ich habe dann in der eigentlichen Zeile für den Versand der Nachricht slist durch message ersetzt:

Code: Alles auswählen

if ( (USE_TELEGRAM == "ja") && ( (dom.GetObject(ID_DATAPOINTS)).Get("CUxD."#TELEGRAM_CUXD_ID#".CMD_EXEC")) ){ 
(dom.GetObject(ID_DATAPOINTS)).Get("CUxD."#TELEGRAM_CUXD_ID#".CMD_EXEC").State("/usr/local/addons/cuxd/extra/curl -s -k https://api.telegram.org/bot"#BOTAPI#"/sendMessage -d text='"#message#"' -d chat_id="#CHATID);
Nun kommt auch was an über Telegram. Es wurde also immer eine Nachricht versendet, anscheinend aber ohne Inhalt. Du kannst meinen Post jetzt löschen oder was auch immer. Ich bekomme nun meine Meldung, das ist mir wichtig. #

Es ist aber echt komisch, meine Systemvariable wird auch ordentlich gefüllt, und zwar mit slist :shock:

Gruß,

jawr

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 » 17.01.2017, 01:18

slist ist im Script nie leer, abgesehen von der Deklaration am Anfang - die von dir angesprochenen Abfrage auf nicht leer ist ein Überbleibsel.
Die Verwendung von message bei der Versendung über telegram habe ich vorn ebenso eingefügt, so war es auch in der Version 1.4 und das macht sogar Sinn.
Da die Klickibunti nicht mit der Umcodierung klar kommt, muss bei Systemvariablen und bei Mail slist verwendet werden.
jawr hat geschrieben:Es wurde also immer eine Nachricht versendet, anscheinend aber ohne Inhalt.
Nein, es wurde in deinem Fall keine Nachricht per Telegram versendet, da du höchstwahrscheinlich Kommunikation ist gestört ausgelöst hast.
jawr hat geschrieben: Du kannst meinen Post jetzt löschen oder was auch immer. Ich bekomme nun meine Meldung, das ist mir wichtig. #
Ich habe keinen Anlass deine(n) Post(s) zu löschen.

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.

jawr
Beiträge: 88
Registriert: 08.12.2016, 12:25
Hat sich bedankt: 2 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von jawr » 17.01.2017, 08:45

Nein, es wurde in deinem Fall keine Nachricht per Telegram versendet, da du höchstwahrscheinlich Kommunikation ist gestört ausgelöst hast.
Ich habe immer das gleiche gemacht zum testen gestern. Ich habe die Batterie aus dem Wandthermostat genommen und versucht über die Weboberfläche zu steuern. Die so erzeugten Servicemeldungen wurden dann mit message halt versendet, mit slist nicht. Wie auch immer, es läuft jetzt, danke für das Skript!

Gruß,

jawr

mike08
Beiträge: 283
Registriert: 13.09.2015, 11:18
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 3 Mal
Danksagung erhalten: 2 Mal

Re: Servicemeldungen *allinclusive* Script

Beitrag von mike08 » 18.01.2017, 16:26

alchy hat geschrieben:DAS erklärt schon mal, warum du nicht den Wert übergeben bekommst, sondern eine Mail die du als Testmail bezeichnest.
Und nur diese Mail wird dir von meinem Script gesendet.

Der TCL haken muss natürlich rein in der Mailvorlage 01
Ist ja mein Fehler , stand ja nicht in der Anleitung. :cry:
........
Alchy
Hallo Alchy,

vielen vielen dank für Deine Unterstützung.

Ich habe das Problem gefunden.

Es lag einmal am TCL-Haken und das noch eine Programm lief, dass auch den Inhalt in der Systemvariable per Mail versendete.

Kurz gesagt "Problem TCL und vor dem Monitor"! :wink:

Grüße
Fritzbox 7590 mit 7.x (immer aktuell)
Raspberry Pi3b mit RM: Aktuell
CCU2: Abgeschaltet
Zusatzsoftware: CUx-Daemon, E-Mail CCU Addon, hm_pdetect, hm-Print
Skripte: Servicemeldung 1.x http://homematic-forum.de/forum/viewtop ... 18#p211604
ioBroker auf Synology DS916+II imTest;
Wandtermostat, Tür-/Fensterkontakt, Ausenthermostat, 1 Kanal Taster, 2 Kanal Taster, Hutch-4fach Aktor, 1fach UP-Aktor, 2fach UP-Aktor, E-Paper-Display; CUL868(v3), USB2.0-Ser! [FF]

Antworten

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