Befehle nacheinander ausführen klappt nicht

Begonnen von Komaandy, 31 März 2017, 16:05:28

Vorheriges Thema - Nächstes Thema

Komaandy

Hallo, ich habe einen Taster am Bett und beim betätigen sollen alle Lampen in der Wohnung ausgehen und DANACH dann der Lightstrip nochmal angehen.
Die Lampen gehen auch aus, der Strip geht an, aber dann sofort wieder aus ...


MasterMaster:.*off attr at_Bewegungsmelder disable 1;
{\fhem ("set Decken_Lampen off;set Steckdosen off;set Bewegungsmelder NACHT;set HUEDevice6 on")};


Kann mir jemand einen Tipp geben was ich falsch mache ?


Frank_Huber

das Attirbut im Code? sende doch lieber die RAW definition.
wozu gehst raus in Perl?

generell:

set Befehl1 ;Befehl2 ;Befehl3

oder besser lesbar bei längeren Befehlen:

Befehl1 ;
Befehl2 ;
Befehl3


als beispiel an einem Notify:

set OUT_1 PortB2,B3,B4,B5,B6,B7 $EVENT ;
set OUT_2 PortA0,A1,A2,A3,A4,A5 $EVENT


RAW definition:

define ALLE_LAMPEN_Hof_n notify ALLE_LAMPEN_Hof\
set OUT_1 PortB2,B3,B4,B5,B6,B7 $EVENT ;;\
set OUT_2 PortA0,A1,A2,A3,A4,A5 $EVENT
attr ALLE_LAMPEN_Hof_n room Licht


in der CFG werden die Zeilenumbrüche als "\" dargestellt und Semikolon gedoppelt. das darfst so in der DEF nicht eingeben.

Komaandy

Danke erstmal für die Antwort,

MasterMaster:.*off attr at_Bewegungsmelder disable 1;

das benutze ich um das at_Bewegungsmelder für die Nacht zu deaktivieren.
Das hier ist das at_Bewegungsmelder
+*00:01
{if
(Value("Light") < "40" )

{ fhem("set Bewegungsmelder AN") } else { fhem("set Bewegungsmelder AUS")}}



Ich weiß nicht was du mit RAW Definition meinst, sorry...



Frank_Huber

Zitat von: Komaandy am 31 März 2017, 16:38:38
Ich weiß nicht was du mit RAW Definition meinst, sorry...
öffne dein Device,
finde ganz unten den Link "RAW Definition"

Thorsten Pferdekaemper

Hi,
ich nehme mal an, dass Decken_Lampen ein structure Device oder sowas ist. Vermutlich schaltet das die einzelnen Lampen sozusagen "im Hintergrund" aus, also nicht sofort. Ich nehme auch an, dass HUEDevice6 eine der angeschlossenen Lampen ist. D.h. das Einschalten von HUEDevice6 passiert bevor eine der anderen Lampen ausgeschaltet wird. Dann werden alle ausgeschaltet, inklusive HUEDevice6.
Die Lösung ist, HUEDevice6 aus den structure rauszunehmen.
Gruß,
   Thorsten
FUIP

Komaandy

@Thorsten Pferdekaemper
Danke für deine Antwort,

ja das Verhalten habe ich mir eben auch mit dem structure erklärt. Deshalb wollte ich FHEM eben klarmachen, dass er die Befehle einzeln,komplett und in einer gewünschten Reihenfolge abarbeitet.
Nehme ich das HUEDevice6 aus dem Structure habe ich dann ein neues Problem. Das Structure ( kleine_Lampen) benutze ich eben an anderer Stelle noch ein paar Mal...
Ich dachte dass es eben so gedacht ist, dass man mit structure gleichartige devices zusammenfasst um nicht immer alle devices einzeln ansprechen zu müssen.

Thorsten Pferdekaemper

Zitat von: Komaandy am 31 März 2017, 18:21:28Ich dachte dass es eben so gedacht ist, dass man mit structure gleichartige devices zusammenfasst um nicht immer alle devices einzeln ansprechen zu müssen.
Das ist auch so, aber es ware schlimm, wenn structure blockieren würde, bis alles abgearbeitet ist.
Es spricht nichts dagegen, mehrere structure Devices zu haben. Ich glaube, dass man die sogar verschachteln kann. D.h. eine structure mit allen außer HUEDevice6 und eine, die die erste einbindet plus HUEDevice6.
Gruß,
   Thorsten
FUIP

fiedel

Zitat von: Frank_Huber am 31 März 2017, 16:57:48
öffne dein Device,
finde ganz unten den Link "RAW Definition"

Hey, das ist ja cool! Da kann ich ja jetzt doch wieder Beispiele "aus der CFG" posten, ohne ein schlechtes Gewissen zu haben...  ;D
FeatureLevel: 6.1 auf Wyse N03D ; Deb. 11 ; Perl: v5.14.2 ; IO: HM-MOD-RPI-PCB + VCCU|CUL 868 V 1.66|LinkUSBi |TEK603
HM: SEC-SCO|SCI-3-FM|LC-SW4-PCB|ES-PMSW1-PL|RC-4-2|SEN-MDIR-O|SEC-WDS-2
CUL: HMS100TF|FS20 S4A-2 ; OWDevice: DS18S20|DS2401|DS2406|DS2423

Thorsten Pferdekaemper

Zitat von: fiedel am 01 April 2017, 09:26:12
Hey, das ist ja cool! Da kann ich ja jetzt doch wieder Beispiele "aus der CFG" posten, ohne ein schlechtes Gewissen zu haben...  ;D
Theoretisch ja, aber wozu? In fast allen Fällen ist ein "list" aussagekräftiger.
Gruß,
   Thorsten
FUIP

justme1968

ein passendes sleep vor dem schalten der hue lampe sollte helfen.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Thorsten Pferdekaemper

Zitat von: justme1968 am 01 April 2017, 14:02:58
ein passendes sleep vor dem schalten der hue lampe sollte helfen.
Solche Lösungen mag ich persönlich nicht. Das klappt dann erstmal und später nimmt man dann noch drei Lampen dazu und schon geht's nicht mehr. ...oder es geht dann manchmal nicht, wenn das Timing so ungefähr "passt".
Vielleicht kann auch man die structure auch so einstellen, dass sie erst auf "off" geht, wenn wirklich alle Lampen abgefrühstückt sind und darauf dann per notify die eine wieder einschalten.
Gruß,
   Thorsten
FUIP

justme1968

damit kann man aber schnell prüfen ob es überhaupt daran liegt.

als dauerlösung kann man  die hue lampe dann per FILTER aus dem schalten über die structure ausschließen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968