Hauptmenü

Mehrere Raffstore steuern

Begonnen von günther38, 16 Oktober 2020, 18:27:29

Vorheriges Thema - Nächstes Thema

günther38

Hallo zusammen!

Nach dem ich nun die Raffstore einzeln fahren kann (siehe https://forum.fhem.de/index.php/topic,114707.msg1091693.html#msg1091693)
, würde ich noch einen Schalter benötigen, mit dem ich alle Raffstore zusammen fahren kann.


Ich hätte es (analog zu den Einzelschaltungen) einmal so probiert,


define SchalterAll dummy
attr SchalterAll room RAFFSTORES
attr SchalterAll webCmd UP:DOWN

define RAFFSTORES.SchalterAll DOIF ([SchalterAll:"UP"]) ("wget -q -O /dev/null http://xxx.xxx.xxx.xxx/?rs1=up") ("wget -q -O /dev/null http://xxx.xxx.xxx.xxx/?rs2=up") ("wget -q -O /dev/null http://xxx.xxx.xxx.xxx/?rs3=up") ("wget -q -O /dev/null http://xxx.xxx.xxx.xxx/?rs4=up") DOELSEIF ([SchalterAll:"DOWN"]) ("wget -q -O /dev/null http://xxx.xxx.xxx.xxx/?rs1=down") ("wget -q -O /dev/null http://xxx.xxx.xxx.xxx/?rs2=down") ("wget -q -O /dev/null http://xxx.xxx.xxx.xxx/?rs3=down") ("wget -q -O /dev/null http://xxx.xxx.xxx.xxx/?rs4=down")
attr RAFFSTORES.SchalterAll do always



hat soweit mal funktioniert.

Bei einem Raffstore wurde jedoch nicht ausgelöst, ich nehme an da haben sich die Signale die zeitgleich versendet wurden überlagert.
Kann man die Befehle zeitversetzt abgeben?

Vielen Dank!
Günther


günther38

#1
Ich habe den Code jetzt mal um


attr RAFFSTORES.SchalterAll wait 0,5,5,5


ergänzt.
Aber es scheint so, als ob da keine Delay (jeweils 5 Sekunden) zwischen den einzelenen Fahrbefehlen wäre.

günther38

https://fhem.de/commandref_DE.html#DOIF_wait
hat die Anwort geliefert

Mit

attr RAFFSTORES.SchalterAll wait 0,5,5,5:0,5,5,5


sieht die Sache nun besser aus, ich teste das mal weiter aus.

Beta-User

Schau dir auch mal "structure" an. Das kann auch kurze Verzögerungen via Attribut.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

Müller

Hallo,

ich habe dies über einen Dummy (RolloAlle) gelöst und ein notify welches auf diesen Dummy reagiert.

RollosAlle:Auf|aktion {fhem("define tmp_time1 at +00:00:00 set Rollo1 Auf ; define tmp_time2 at +00:00:00 set Rollo2 Auf ;
define tmp_time3 at +00:00:00 set Rollo3 Auf ; define tmp_time4 at +00:00:00 set Rollo4 Auf ; define tmp_time5 at +00:00:00 set Rollo5 Auf ;
define tmp_time6 at +00:00:00 set Rollo6 Auf ;
define tmp_time7 at +00:00:00 set Rollo7 Auf ;")}


Bei mir macht FHEM automatisch eine Verzögerung (433Mhz) aber das könnte man auch im notify handisch machen.

Gruß
FHEM auf Raspberry, 433mHz & Zigbee für Rollläden, Gartenbewässerung, Beleuchtung, Fußbodenheizung

MadMax-FHEM

#5
Zitat von: Müller am 17 Oktober 2020, 09:35:19
Hallo,

ich habe dies über einen Dummy (RolloAlle) gelöst und ein notify welches auf diesen Dummy reagiert.

RollosAlle:Auf|aktion {fhem("define tmp_time1 at +00:00:00 set Rollo1 Auf ; define tmp_time2 at +00:00:00 set Rollo2 Auf ;
define tmp_time3 at +00:00:00 set Rollo3 Auf ; define tmp_time4 at +00:00:00 set Rollo4 Auf ; define tmp_time5 at +00:00:00 set Rollo5 Auf ;
define tmp_time6 at +00:00:00 set Rollo6 Auf ;
define tmp_time7 at +00:00:00 set Rollo7 Auf ;")}


Bei mir macht FHEM automatisch eine Verzögerung (433Mhz) aber das könnte man auch im notify handisch machen.

Gruß

Du kannst die Geschweiften Klammern weglassen, dann brauchst du auch den "fhem-Befehl" nicht:

{ -> wechsle nach Perl

fhem(" -> wechsle (zurück) nach fhem

EDIT: https://wiki.fhem.de/wiki/Klammerebenen

Und ich würde statt define defmod nehmen...

Bzw. überhaupt keine at definieren, sondern "einfach" sleep.
Ist in diesem "Konstrukt" ungefährlich (nicht blockierend)...

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)

Beta-User

*Kopfschüttel* Warum würgarounds optimieren und nicht das Original verwenden?....?!?
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors

TomLee

#7
Zitat von: Beta-User am 17 Oktober 2020, 11:01:45
*Kopfschüttel* Warum würgarounds optimieren ...

Ist doch offensichtlich, dem Vorschlag aus #3 sich mal mit structure zu beschäftigen, ist bisher keiner gefolgt.

Zitat von: Beta-User am 17 Oktober 2020, 11:01:45
... nicht das Original verwenden?....?!?

schlussfolgernd kann auch kein(e) Verbindung/Querverweis hergestellt werden was den nun das Original ist.
Auch wenn man sich mit structure beschäftigt hat, wird nicht jeder Anfänger (aber auch Fortgeschrittene) in den Quellcode schauen um festzustellen das structure mehr oder weniger genau das macht was der letzte Vorschlag zeigt. (ich hab bis jetzt auch nicht in den Modul-Code reingeschaut, aber meine Vorstellung sagt mir das er so oder ähnlich aufgebaut sein muss)




Also auch mein Vorschlag: schaut euch beide structure an, die Definition wird am Ende übersichtlicher und sehr viel kürzer sein.

Gruß

Thomas