Auslöser eines Programmes finden und loggen

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

Moderator: Co-Administratoren

thfrank
Beiträge: 248
Registriert: 16.05.2020, 12:54
System: CCU
Hat sich bedankt: 48 Mal
Danksagung erhalten: 1 Mal

Re: Auslöser eines Programmes finden und loggen

Beitrag von thfrank » 13.07.2020, 18:38

Hatte gar nicht geschrieben, dass das etwas mit dem Skript zu tun hat, das zeigt lediglich die - wie ich finde - schwer nachvollziehbare Programmlogik.

Es geht in dem Programm auch nicht um die Prüfung des Zustandes bei Aktivierung des Alarmes (dafür habe ich ein eigenes Programm, was auch tut, was es soll - pardon, was ich erwarten würde), sondern um die Meldung einer Änderung bei aktiver Alarmanlage. Und die einzige Änderung, die mich hier interessiert, ist von geschlossen nach geöffnet. Das Schließen eines Fensters ist ja nicht von Interesse, und zwar völlig unabhängig vom Zustand der anderen Kontakte.

Der von MichaeLN verwiesene Thread wird mit „Fehlfunktion“ überschrieben. Das scheint es für mich dann auch irgendwie zu sein...

Thomas

MichaelN
Beiträge: 9656
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 697 Mal
Danksagung erhalten: 1617 Mal

Re: Auslöser eines Programmes finden und loggen

Beitrag von MichaelN » 13.07.2020, 18:43

Nein, nur ein falsches Verständnis oder eine falsche Erwartungshaltung. Du kannst jetzt Jammern oder es akzeptieren.

Das was du möchtest geht so eben nicht. Da müsstest du wieder ein Skript bemühen. Was man mit $src anfängt, weißt du ja jetzt
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

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

Re: Auslöser eines Programmes finden und loggen

Beitrag von alchy » 13.07.2020, 21:47

thfrank hat geschrieben:
13.07.2020, 18:38
Hatte gar nicht geschrieben, dass das etwas mit dem Skript zu tun hat, das zeigt lediglich die - wie ich finde - schwer nachvollziehbare Programmlogik.
Genau dafür habe ich es ja auch geschrieben. :wink:
Nur kann man es eben sehen wie man will. Das Script macht keine Logik - es soll nur die Ergebnisse derselben zeigen um sie verstehen zu können. Das die Logik dir vielleicht nicht gefällt ist doch hier in dem Thread weniger von Belang, oder?
thfrank hat geschrieben:
13.07.2020, 18:38
Und die einzige Änderung, die mich hier interessiert, ist von geschlossen nach geöffnet.
Dann aktiviere die Alarmanlage nur wenn ALLE im Programm überwachte Kontakte geschlossen sind oder benutze eine andere Logik oder auch andere Sensoren. :cry:

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.

thfrank
Beiträge: 248
Registriert: 16.05.2020, 12:54
System: CCU
Hat sich bedankt: 48 Mal
Danksagung erhalten: 1 Mal

Re: Auslöser eines Programmes finden und loggen

Beitrag von thfrank » 13.07.2020, 22:05

alchy hat geschrieben:
13.07.2020, 21:47
benutze eine andere Logik
Also, da wäre ich natürlich für jeden Tipp dankbar. War der Ursprung meines Posts. Offene Türen / Fenster sollten idealerweise erlaubt sein. Ansonsten würde es ziemlich kompliziert, müsste dann irgendwie noch die Anwesenheit in einem Raum geprüft werden.

MichaelN
Beiträge: 9656
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 697 Mal
Danksagung erhalten: 1617 Mal

Re: Auslöser eines Programmes finden und loggen

Beitrag von MichaelN » 13.07.2020, 22:35

Seit wann kann man Alarmanlagen bei offenen Sicherheitsverschlüssen scharf schalten?
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

Xel66
Beiträge: 14149
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 583 Mal
Danksagung erhalten: 1497 Mal

Re: Auslöser eines Programmes finden und loggen

Beitrag von Xel66 » 14.07.2020, 00:13

MichaelN hat geschrieben:
13.07.2020, 22:35
... bei offenen Sicherheitsverschlüssen scharf schalten?
Bei Alarmanlagen geht sowas ja aus gutem Grunde nicht. Nur meinen viele Anwender, sie könnten eine solche mit den Mitteln von Homematic gleichwertig abbilden. Das mag zwar für die grundsätzlichen Funktionen gelten, allerdings müsste man sie dann auch wirklich alle umsetzen. Und das ist hier in dem Falle eben nicht erfolgt. Eine selbst programmierte Alarmierungsfunktion ist eben doch keine Alarmanlage und Homematic ist dafür auch nur begrenzt geeignet (um nicht zu sagen nicht geeignet). Für die Beruhigung des persönlichen Gewissens kann man aber sowas durchaus zusammenklicken. Nur darf man eben nicht die gleichen Ansprüche daran wie an eine richtige Alarmanlage stellen. Es ist und bleibt eine funktionsbeschränkte Bastellösung.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

PHundhausen
Beiträge: 107
Registriert: 20.02.2019, 10:42
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 37 Mal
Danksagung erhalten: 4 Mal

Re: Auslöser eines Programmes finden und loggen

Beitrag von PHundhausen » 14.07.2020, 09:29

thfrank hat geschrieben:
13.07.2020, 22:05
alchy hat geschrieben:
13.07.2020, 21:47
benutze eine andere Logik
Also, da wäre ich natürlich für jeden Tipp dankbar. War der Ursprung meines Posts. Offene Türen / Fenster sollten idealerweise erlaubt sein. Ansonsten würde es ziemlich kompliziert, müsste dann irgendwie noch die Anwesenheit in einem Raum geprüft werden.
Also, so ganz ist mir nicht klar geworden, was nun wirklich dein Problem ist. Dich stören die Benachrichtigungen wegen "geschlossen"?

Natürlich ist da ein dicker Fehler in deiner Logik, aber wenn du den nicht suchen und abstellen willst, hast du immer noch die Möglichkeit, beim Versenden des Pushover Meldungen, die geschlossen melden, einfach zu unterdrücken. Wäre dann die einfachste Art eine andere Logik zu verwenden :roll:
------------------------------------------
Stand 27.01.2024:

Home (RaspberryMatic auf RP4 mit HB-RF-ETH): 1203 Kanäle in 202 Geräten und 16 CUxD-Kanäle in 1 CUxD-Geräten
Office (RaspberryMatic auf CCU3): 359 Kanäle in 51 Geräten und 16 CUxD-Kanäle in 1 CUxD-Geräten:
------------------------------------------

thfrank
Beiträge: 248
Registriert: 16.05.2020, 12:54
System: CCU
Hat sich bedankt: 48 Mal
Danksagung erhalten: 1 Mal

Re: Auslöser eines Programmes finden und loggen

Beitrag von thfrank » 14.07.2020, 14:57

PHundhausen hat geschrieben:
14.07.2020, 09:29
Also, so ganz ist mir nicht klar geworden, was nun wirklich dein Problem ist. Dich stören die Benachrichtigungen wegen "geschlossen“
Besser: ich verstehe sie nicht. Es geht auch nicht darum, ob die Homematic eine Alarmanlage ersetzt. Mit ging es tatsächlich ganz allein um die Logik. Mein Verständnis war, dass die Funktion „bei Änderung“ eben prüft, ob sich der in der Bedingung angegebene Zustand jetzt gerade eingestellt hat (hier also: Zustand ist jetzt offen und war vorher anders). Genauso funktionieren ja auch alle anderen Sensoren. Wenn ich eine bestimmte Helligkeit auf Änderung prüfe, dann wird ausgelöst, wenn diese Bedingung erfüllt ist und nicht das Gegenteil. Ansonsten wäre das Bedingungsfeld ja überflüssig. Die Homematic weiß auch nicht, ob ich damit eine Alarmanlage steuere oder den Rollladen oder die Gartenbeleuchtung, wird ihr auch ziemlich egal sein.

In meiner sog. Alarmanlage habe ich übrigens die gleiche Logik verwendet, wie vielfach in diesem Forum oder in den einschlägigen Video-Portalen beschrieben. Da gibts so weit ich sehen kann keinen Unterschied. Dass bei Aktivierung einer Alarmanlage alle Fenster geschlossen sein sollten, ist natürlich klar, sollte aber ja nichts an der logischen Funktion des einzelnen Sensors ändern.

Thomas

MichaelN
Beiträge: 9656
Registriert: 27.04.2020, 10:34
System: CCU
Hat sich bedankt: 697 Mal
Danksagung erhalten: 1617 Mal

Re: Auslöser eines Programmes finden und loggen

Beitrag von MichaelN » 14.07.2020, 15:02

"bei Änderung" ist nur der Trigger, der das Programm auslöst. Wenn sich der referenzierte Wert ändert, wird der Trigger ausgelöst. Der Trigger prüft nicht den Wahrheitsgehalt der Bedingung. Sonst würde ja ggf. der SONST-Zweig des Programms nie laufen.

Bei Bereichen "zwischen 0 und 10 bei Änderung" springt der Trigger sowohl beim Eintritt in den Bereich (von unten oder oben), als auch beim Austritt aus dem Bereich (nach unten oder oben) an.

Und bei booleschen Werten eben bei jeder Änderung des Wertes. Ob von WAHR nach FALSCH oder andersrum.

Der Trigger löst das Programm aus. DANN erst wird von oben nach unten JEDE Bedingung auf den Wahrheitsgehalt geprüft. Und nicht nur die, die den Trigger enthält.

Du hast die Anfängertips nicht durchgelesen?! Hier nochmal der Link:
viewtopic.php?f=31&t=4251
LG, Michael.

Wenn du eine App zur Bedienung brauchst, dann hast du kein Smarthome.

Wettervorhersage über AccuWeather oder OpenWeatherMap+++ Rollladensteuerung 2.0 +++ JSON-API-Ausgaben auswerten +++ undokumentierte Skript-Befehle und Debugging-Tipps +++

PHundhausen
Beiträge: 107
Registriert: 20.02.2019, 10:42
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 37 Mal
Danksagung erhalten: 4 Mal

Re: Auslöser eines Programmes finden und loggen

Beitrag von PHundhausen » 14.07.2020, 15:56

MichaelN hat geschrieben:
14.07.2020, 15:02
Der Trigger löst das Programm aus. DANN erst wird von oben nach unten JEDE Bedingung auf den Wahrheitsgehalt geprüft. Und nicht nur die, die den Trigger enthält.
Ich bin mal so frei, diesen Satz noch mal extra hervorzuheben. Ich habe mich sehr schwer getan (und tue es wahrscheinlich immer noch) , das zu verinnerlichen. Aber es ist so
MichaelN hat geschrieben:
14.07.2020, 15:02
Du hast die Anfängertips nicht durchgelesen?! Hier nochmal der Link:
viewtopic.php?f=31&t=4251
Eigentlich sind das keine Anfängertips, sondern dann, wenn man vom Anfänger zum Profi wechseln möchte. Ich bin mehrere Jahre gut ohne die "Anfänger-" Tips ausgekommen, heute hätte ich schon alles wieder verkauft ohne diese Tips und dieses Forum :D
------------------------------------------
Stand 27.01.2024:

Home (RaspberryMatic auf RP4 mit HB-RF-ETH): 1203 Kanäle in 202 Geräten und 16 CUxD-Kanäle in 1 CUxD-Geräten
Office (RaspberryMatic auf CCU3): 359 Kanäle in 51 Geräten und 16 CUxD-Kanäle in 1 CUxD-Geräten:
------------------------------------------

Antworten

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