[gelöst] Zufallsgenerator

Begonnen von MarkoP, 23 Juli 2020, 15:43:44

Vorheriges Thema - Nächstes Thema

MarkoP

Also kann nicht einfach eine Zeitspanne an den Trigger angehängt werden, sondern es muss die Ausführung mit einem Wartebefehl (Sleep) unterbrochen werden.
Gibt es da keine einfachere Möglichkeit?

Bei der 2. Variante ist ein at im notify definiert, sehr umständlich finde ich.
Frage mich zusätzlich ob das so überhaupt funktionieren würde wenn das notify außerhalb von 17:00 Uhr - 17:20 Uhr ausgelöst würde.
Oder muss ich den Code so verstehen, dass das innere at um 17 Uhr + (20) Minuten nur dann ausgeführt wurde, wenn irgendwann vorher das notify ausgeführt ausgelöst wurde?
Fhem-Server läuft per Bridge mit eigener IP auf einem Docker-Container auf meinem NAS. Alle Geräte haben eine statische IP im Netzwerk und laufen im gleichen Subnetzwerk. DHCP ist deaktiviert. DNS läuft über den Router (Fritzbox Cable), alternative über Googles 8.8.8.8

Otto123

Ich weiß ja nicht was Du machen willst :)

Ein notify reagiert auf events und ein at reagiert auf eine Zeit.
Man kann ein notify noch auf einen Zeitraum beschränken (disabledForIntervals)

Was ist daran kompliziert? Du hast ein Ereignis und willst nicht sofort etwas ausführen sondern verzögert?

Die 2. Variante kannst Du beliebig verwenden. So wie ich geschrieben habe drückst Du einen Knopf und damit wird 17:00 Uhr + etwas ausgeführt
Du kannst auch define xyz at +{strftime("%H:%M",gmtime(rand(20)*60))} set ... schreiben, das wäre analog dem sleep Befehl: Die Ausführung wird verzögert.
Genau genommen macht ein sleep intern nichts anderes: es definiert intern ein (quasi unsichtbares) at.

Du kannst auch sleep {strftime("%H:%M",gmtime(rand(20)*60))}; set ... schreiben. Siehe auch - help sleep - ;)

Gruß Otto

Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

MarkoP

Das mit dem notify ist aktuell mehr Neugierde.

Zufall ist meiner Meinung halt das Stichwort beim Thema Einbruchsabschreckung. Deshalb finde ich starre Ereignisse zu immer wiederkehrenden Zeitpunkten nicht unbedingt sinnvoll.
Diebe sind ja nicht dumm und beobachten in der Regel vorher bevor sie einbrechen. Und Hausautomatic ist auch unter Dieben inzwischen bekannt. So können potentielle Einbrecher auch feststellen, dass es nur Fake ist wenn das Licht jeden Tag exakt zum gleichen Zeitpunkt an-/ausgeht. Was den Abschreckungseffekt verpuffen lässt.

Mit kompliziert meinte ich eher die Schreibweise, aber der letzte Ansatz gefällt mir sehr gut
define xyz notify dummy:on sleep {strftime("%H:%M",gmtime(rand(20)*60))}; set ...
Das ist auch nach 6 Monaten noch nachvollziehbar.
Außerdem ist es kurz und kompakt in der Schreibweise.

Danke für alle Hinweise. Jetzt bin ich erst mal ein Stück weiter.
Fhem-Server läuft per Bridge mit eigener IP auf einem Docker-Container auf meinem NAS. Alle Geräte haben eine statische IP im Netzwerk und laufen im gleichen Subnetzwerk. DHCP ist deaktiviert. DNS läuft über den Router (Fritzbox Cable), alternative über Googles 8.8.8.8

Beta-User

Wenn du Anwesenheitssimulation machen willst, solltest du evtl. doch nochmal einen Blick auf RandomTimer werfen. Der ist zwar "ein bißchen starr", aber vermutlich mußt du auch eine selbstgestrickte Lösung irgendwie an Rahmenbedingungen knüpfen und irgendwann beginnen und enden lassen.... Vermutlich bietet der RandomTimer ausreichend Optionen, das Ergebnis undeterministisch aussehen zu lassen ;) .
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

Christoph Morrison

Zitat von: MarkoP am 27 Juli 2020, 15:20:30
Diebe sind ja nicht dumm und beobachten in der Regel vorher bevor sie einbrechen. Und Hausautomatic ist auch unter Dieben inzwischen bekannt. So können potentielle Einbrecher auch feststellen, dass es nur Fake ist wenn das Licht jeden Tag exakt zum gleichen Zeitpunkt an-/ausgeht. Was den Abschreckungseffekt verpuffen lässt.

Hast du dich bezüglich Einbruchsprävention schon mal beraten lassen?

Wuppi68

es gibt immer noch 2 Typen von Einbrechern ...

welche die geplant Dein Besitz an sich nehmen wollen
und solche die spontan die Gelegenheit nutzen

Die ersten haben einen Plan und lassen sich kaum aufhalten
und unsere Heim Automation kann im Normalfall nur reaktiv arbeiten - also nur wenn es "zu spät" ist
FHEM unter Proxmox als VM