[GELÖST] - Reihenfolge: Wenn x an und dann y, tue...

Begonnen von 87insane, 14 Oktober 2019, 07:54:40

Vorheriges Thema - Nächstes Thema

87insane

Hallo zusammen,

ich habe eine Lampe mit integriertem Bewegungsmelder. Diese hängt an einem Shelly der den Strom messen kann. Wenn Lampe an, dann Watt = ca. 11W.
Dazu habe ich einen Türkontakt an der entsprechenden Tür. Nun würde ich gerne, wenn die Lampe draußen angeht und danach die Tür geöffnet wird, das Licht im Flur einschalten.

ABER das soll nur in genau der Reihenfolge passieren. Wenn zuerst Tür auf und dann Lampe an, soll nichts passieren.

Klar, man könnte das ReadingsAge auslesen usw. Die Frage die ich mir stelle ist aber ob es nicht schon ein Modul oder Befehl gibt der mir sowas wie "Reihenfolge" erlaubt. Ansonsten müsste ich mir was bauen (notify / doif), was wenn Lampe an und dann Tür auf, ReadingsAge von Lampe prüft .... Lange Rede, kurzer Sinn. Ich habe ein wenig gesucht aber erstmal nichts gefunden. Denke mir aber, ich bin nicht der erste mit der Anforderung und da wird es sicher was geben, was ich einfach nicht gefunden habe.

Danke @ all!

DeeSPe

Schau dir das Modul sequence an.

Gruß
Dan
MAINTAINER: 22_HOMEMODE, 98_Hyperion, 98_FileLogConvert, 98_serviced

Als kleine Unterstützung für meine Programmierungen könnt ihr mir gerne einen Kaffee spendieren: https://buymeacoff.ee/DeeSPe

MadMax-FHEM

Sequence sollte das leicht möglich machen...

Siehe auch hier: https://forum.fhem.de/index.php?topic=58171.0

Oder nat. commandref... ;)

EDIT: hmmm, 2ter Gewinner... ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Byte09


87insane

Danke Euch !

Ohne es bereits gelesen zu haben. Ich versuche immer alles so minimal wie nur möglich laufen zu lassen. Hätte eine der Möglichkeiten Vor.-/Nachteile?

PS: So schnelle Antworten von mehreren, habe ich selten erlebt - Danke!

Byte09

Zitat von: 87insane am 14 Oktober 2019, 08:30:26
Danke Euch !

Ohne es bereits gelesen zu haben. Ich versuche immer alles so minimal wie nur möglich laufen zu lassen. Hätte eine der Möglichkeiten Vor.-/Nachteile?

PS: So schnelle Antworten von mehreren, habe ich selten erlebt - Danke!

- mit sequenze benötigst du ein weiteren eventhandler dder auf sequenze reagiert - also 2 devices

- bei mswitch kommst du mit einem device aus , das modul ist aber recht komplex , müsstest dich wohl reinarbeiten, wobei diese anwendung recht einfach umzusetzen ist.
Ich kann dich aber gerne auch telefonisch unterstützen

gruss Byte09


87insane

Telefon Support machen wir mittlerweile auch? Glaube mal gelesen zu haben das es sogar dein Modul ist. Super lieb. Aber ich lese erstmal und teste. Sollte ich nicht weiter kommen, melde ich mich nochmal.

Zuerst muss ich nun aber mal arbeiten. Ich danke für die schnellen und qualifizierten antworten. Danke Danke!

Gesendet von meinem LG-H850 mit Tapatalk


Byte09

Zitat von: 87insane am 14 Oktober 2019, 08:41:01
Telefon Support machen wir mittlerweile auch? Glaube mal gelesen zu haben das es sogar dein Modul ist. Super lieb. Aber ich lese erstmal und teste. Sollte ich nicht weiter kommen, melde ich mich nochmal.

Zuerst muss ich nun aber mal arbeiten. Ich danke für die schnellen und qualifizierten antworten. Danke Danke!

Gesendet von meinem LG-H850 mit Tapatalk

naja, warum nicht , wen nich Zeit habe. Ist in der Regel wohl einfacher und schneller als über das Forum.
Aber nur bei Leuten , bei denen ich davon ausgehe, das die Fhemgrundlagen klar sind , sonst ist es so oder so für die Füsse  ;)

gruss Byte09

Damian

Zitat von: 87insane am 14 Oktober 2019, 07:54:40
Hallo zusammen,

ich habe eine Lampe mit integriertem Bewegungsmelder. Diese hängt an einem Shelly der den Strom messen kann. Wenn Lampe an, dann Watt = ca. 11W.
Dazu habe ich einen Türkontakt an der entsprechenden Tür. Nun würde ich gerne, wenn die Lampe draußen angeht und danach die Tür geöffnet wird, das Licht im Flur einschalten.

ABER das soll nur in genau der Reihenfolge passieren. Wenn zuerst Tür auf und dann Lampe an, soll nichts passieren.

Klar, man könnte das ReadingsAge auslesen usw. Die Frage die ich mir stelle ist aber ob es nicht schon ein Modul oder Befehl gibt der mir sowas wie "Reihenfolge" erlaubt. Ansonsten müsste ich mir was bauen (notify / doif), was wenn Lampe an und dann Tür auf, ReadingsAge von Lampe prüft .... Lange Rede, kurzer Sinn. Ich habe ein wenig gesucht aber erstmal nichts gefunden. Denke mir aber, ich bin nicht der erste mit der Anforderung und da wird es sicher was geben, was ich einfach nicht gefunden habe.

Danke @ all!

Es ist doch ganz einfach, z.B.

DOIF ([?lampe] eq "on" and [?lampe:state:sec] < 10 and [Tür:"auf"]) (...

heißt: wenn Tür aufgeht und Lampe seit maximal 10 Sekunden an, dann ...
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

87insane

Mit doif/notify geht es sicherlich. Ich Frage mich am ende was Ressourcen schonender ist. Eine eventbasierte Überwachung via Lösungen, die bereits genannt wurden oder zb in deiner Form.

Es gibt viele Lösungen. Da ich aber nie genau weiß, was mehr frisst, frage ich lieber mal. Zb für die ganzen Rom los könnte ich das Rollo Modul nutzen. Da sind aber x dinge drin, die ich nicht brauche, also nutze ich das nicht und habe die benötigten Dinge selber gebaut. Da ist die Entscheidung einfach.

Bei den aktuell drei Lösungen hier, ist mir das aber nicht so klar....

Gesendet von meinem LG-H850 mit Tapatalk


Damian

Wenn du ein Modul ohnehin nutzt, dann ist es bereits geladen. Da wir hier von Ereignissteuerung reden und nativer Perl-Auswertung, brauchst du dir bei solchen Definitionen keine Gedanken über Speicher, Systemlast oder Performance zu machen ;)
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

87insane

Das heißt grundsätzlich....

Egal ob ich ein Modul nutze oder nicht -> die last ist gleich.

Hinzu kann natürlich keiner sagen wie ich es am ende am schönsten finde. Klappen würden alle drei Wege. Korrekt?



Gesendet von meinem LG-H850 mit Tapatalk


nils_

irgendwie verstehe ich die problematik nicht....

du willst doch eigentlich nur beim tür öffnen entscheiden, ob eine lampe schon angeschaltet ist (außen?) und dann eine andere lampe (innen?) dazuschalten?!

da brauchst du doch nur im moment des tür öffnen events nach deiner außenlampe "gucken".
das löst einfach mit nem notify (DOIF, MSwitchm .... geht auch!), und von systemlast wirste sehr wahrscheinlich bei keiner der lösungen etwas merken.
viele Wege in FHEM es gibt!

87insane

Besteht quasi aus zwei Dingen:

1. Was gibt es dafür alles? Wurde sehr gut und ausführlich beantwortet :)

2. Gibt es Performance Unterschiede? Wurde auch beantwortet. Ich selber habe mein FHEM auf einem Raspi 3. Der wird zwangsläufig irgendwann an seine Grenzen stoßen. Weswegen es aus meiner Sicht, Sinn macht, Personen die ggf. tiefer im Quellcode stecken zu fragen. Ich selber hatte vor x Jahre in der Berufsschule mal programmieren und dort wurde zB erklärt welche Schleife man für was nehmen sollte usw. Hier stellte sich diese Frage dann nachdem direkt viele Infos kamen zu den Möglichkeiten. Im Eingangspost schrieb ich ja schon, ich könnte das über notify oder DOIF bauen. Klar - geht alles aber wenn nun jemand gesagt hätte, für diesen Anwendungsfall besser Dies oder das nehmen, würde ich ja auch wissen wollen warum.

Ich bedanke mich nochmal bei allen und werde mir die Lösungen im einzelnen ansehen. Dazu benötige ich für ein paar Tests und einlesen natürlich Zeit.

PS: Ich bin immer wieder begeistert wie schnell hier gute Antworten kommen. Bitte weiter so :)

nils_

Zitat von: 87insane am 14 Oktober 2019, 13:35:31
Ich selber habe mein FHEM auf einem Raspi 3. Der wird zwangsläufig irgendwann an seine Grenzen stoßen.
würde ich so pauschal nicht sagen.
mein fhem z.B. läuft auf nem 2er.


Zitat von: 87insane am 14 Oktober 2019, 13:35:31
Ich selber hatte vor x Jahre in der Berufsschule mal programmieren und dort wurde zB erklärt welche Schleife man für was nehmen sollte usw.
oha.... das würde mich jetzt aber interessieren. (vor allem hinsichtlich performance-unterschiede.....)




wir müssen hier aber keine weitere diskussion führen, denn das eingangsproblem/die fragestellung wurde ja beantwortet!
viele Wege in FHEM es gibt!