Hauptmenü

isday geht nicht mehr.

Begonnen von Badflex, 24 Februar 2018, 16:07:29

Vorheriges Thema - Nächstes Thema

Badflex

Hallo,
hat sich an isday was verändert?

2 Jahre hat das gut geklappt:

define TuerAufRolloHoch notify Terrassentuer:open {if(!isday()) {fhem("set Rollo_Flur off") }}
define TuerZuRolloRunter notify Terrassentuer:closed {if (!isday()) {fhem("set Rollo_Flur on") }}
define TuerGekipptRollo20 notify Terrassentuer:tilted  {if(!isday()){fhem("set Rollo_Flur 80") }}

Seit einem update erkennt er nicht mehr das es noch Tag ist.
Das rollo fährt immer hoch wenn man die Tür auf macht und immer runter wenn man sie schließt.
????????????
Raspberry Pi, CUL868(SlowRF), FB 7490, SmartVisu, fast nur HomeMatic wenig FS20, Netatmo

betateilchen

gib doch mal {isday} in die FHEM Befehlszeile ein, da sollte jetzt (jetzt bezieht sich auf die aktuelle Uhrzeit 16:15) eine 1 als Ergebnis kommen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Badflex

#2
Ja, da kommt eine 1

Sollte da nicht bei {!isday} auch eine 0 Kommen?
Da kommt nix
Raspberry Pi, CUL868(SlowRF), FB 7490, SmartVisu, fast nur HomeMatic wenig FS20, Netatmo

kumue

Zitat von: Badflex am 24 Februar 2018, 16:36:52
Sollte da nicht bei {!isday} auch eine 0 Kommen?

Selbstverständlich

loki> {isday}
0
loki> {!isday}
1
loki> exit
Bye...
Connection closed by foreign host.
pi@loki:~ $ date
Sa 24. Feb 19:47:57 CET 2018


Badflex

{!isday} da kommt komischerweise nix sobald es hell ist.
Wenn es dunkel ist kommt die 0 :-\
Raspberry Pi, CUL868(SlowRF), FB 7490, SmartVisu, fast nur HomeMatic wenig FS20, Netatmo

betateilchen

Die Funktion arbeitet wie sie soll. Die letzte Änderung an der Funktion isday() war im November 2015.

Es könnte aber sein, dass sich das Verhalten von perl geändert hat, wenn es um das negieren von Funktionsergebnissen geht.
Bei mir kommt nämlich die 0 auch nicht mehr, aber ich hatte deshalb noch kein Problem.



fhem-rpi3> {isday}
1
fhem-rpi3> {!isday}

fhem-rpi3>


Probiere mal folgendes:



define TuerAufRolloHoch notify Terrassentuer:open {fhem("set Rollo_Flur off") unless (isday() eq "1")}



Das grundsätzliche Thema (perl Verhalten) werde ich mal im Developerbereich zur Diskussion stellen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

@kumue: kannst Du das bei Dir mal tagsüber testen, um zu sehen, ob die Negierung auch von 1 auf 0 funktioniert?

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

kumue

die Null wird nicht ausgegeben... :o


loki> {isday}
1
loki> {!isday}

loki> exit
Bye...
Connection closed by foreign host.
pi@loki:~ $ date
So 25. Feb 09:17:47 CET 2018
pi@loki:~ $ perl -v
This is perl 5, version 20, subversion 2 (v5.20.2) built for arm-linux-gnueabihf-thread-multi-64int

Happy Fhem User

#8
Wenn ihr eine bool'sche Bedingung prüfen wollt, müsst ihr aber


{isday()?1:0}


benutzen, bzw. angelehnt an obiges

{!isday()?'machen':'nicht machen'}


@Badflex: Btw. funktioniert vielleicht folgendes?

define TuerAufRolloHoch notify Terrassentuer:open { fhem("set Rollo_Flur off") if !isday() }


Badflex

Ich glaub ich bin auf dem falschen Dampfer.
Ich glaube ich habe aus versehen den Türkontakt mit dem Rolloschalter beides Homematic gepairt nach Batteriewechsel.
Kann das sein das dann das Rollo automatisch hoch und runter geht?
Habe die define's mal komplett rausgenommen und das Rollo fährt immer noch runter wenn ich die Tür schließe. Lol

Sehe aber auf anhieb nur das airing mit dem Cul!?
Mhhh

Raspberry Pi, CUL868(SlowRF), FB 7490, SmartVisu, fast nur HomeMatic wenig FS20, Netatmo

Otto123

Das peering wird im Gerät eingetragen, wenn Du das wirklich gemacht hast kannst DU alles aus machen, die Geräte reden trotzdem miteinander solange sie selbst Strom haben.

Das mit dem isday bei mir auch so, habe ich gestern schon beobachtet. Tagsüber liefert die Negation nix zurück. Nachts dann eine 1 - das hat mich leicht verwundert.

Aber das ist wohl so bei boolschen Variablen - wie Happy Fhem User zeigt.

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