Hauptmenü

Uhrzeit wird nicht eingetragen

Begonnen von holzwurm83, 01 Mai 2018, 16:17:05

Vorheriges Thema - Nächstes Thema

holzwurm83

Hallo zusammen,

irgendwie stehe ich gerade auf dem schlauch! Ich versuche in einem DoIF eine Reading wie folgt zu setzen:
setreading Bewaessern Uhrzeit [([{qx(date +%R)}] + 120)]

Nur setzt er mir immer den Code in das Reading und nicht die aktuelle Zeit + 2 Minuten.


[([{qx(date +%R)}] + 120)]
- Fhem auf einem MacMini Server
- CUL; HMLAN; CUNO2 für FS20; HM-Wired RS485 LAN Gateway
- HMW_Sen_SC_12_FM; HMW_LC_Sw2_DR; HMW_LC_Bl1_DR; HMW_IO_12_Sw7; HMW_IO_12_Sw14_DR; HMW_IO_12_FM; HBW_1W_T10
- HM-TC-IT-WM-W-EU; HM-CC-RT-DN

Ellert


holzwurm83

Zitat von: Ellert am 01 Mai 2018, 19:04:09
https://fhem.de/commandref_DE.html#set , hier: "perlExpression"

Danke für dein Feedback, aber irgendwie verstehe ich das nicht. Ich möchte in dem Device das Reading Uhrzeit auf die aktuelle Uhrzeit + 120 sec setzen.

Wenn es jetzt 12:20 Uhr ist soll dann "12:22" eingetragen werden.
- Fhem auf einem MacMini Server
- CUL; HMLAN; CUNO2 für FS20; HM-Wired RS485 LAN Gateway
- HMW_Sen_SC_12_FM; HMW_LC_Sw2_DR; HMW_LC_Bl1_DR; HMW_IO_12_Sw7; HMW_IO_12_Sw14_DR; HMW_IO_12_FM; HBW_1W_T10
- HM-TC-IT-WM-W-EU; HM-CC-RT-DN

Otto123

#3
Hi,

lass doch date gleich rechnen
setreading Bewaessern Uhrzeit {(qx(date --date="120 sec now" +%R))}
Erklärung aus dem Link von Ellert:
{(perlExpression)}
perlExpression 3+4
kann man in FHEM Kommandozeile direkt testen {3+4}
Beim set Kommando muss noch ein () drumrum {(3+4)} sonst wird der Code nicht ausgeführt
So habe ich das zumindest verstanden und getestet.

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

holzwurm83

Zitat von: Otto123 am 01 Mai 2018, 19:34:13
setreading Bewaessern Uhrzeit {(qx(date --date="120 sec now" +%R))}

Danke dir, aber im Reading steht dann
{(qx(date --date="120 sec now" +%R))} und nicht z.B. 20:01Uhr.

- Fhem auf einem MacMini Server
- CUL; HMLAN; CUNO2 für FS20; HM-Wired RS485 LAN Gateway
- HMW_Sen_SC_12_FM; HMW_LC_Sw2_DR; HMW_LC_Bl1_DR; HMW_IO_12_Sw7; HMW_IO_12_Sw14_DR; HMW_IO_12_FM; HBW_1W_T10
- HM-TC-IT-WM-W-EU; HM-CC-RT-DN

amenomade

Kann es nicht verstehen, wenn Du es eingetragen hast, wie Otto es geschrieben hat . Zeig bitte ein "list Bewaessern".
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

holzwurm83

Internals:
   CFGFN     
   NAME       Bewaessern
   NR         50097
   STATE      on
   TYPE       dummy
   READINGS:
     2018-05-01 19:44:48   Uhrzeit         {(qx(date --date="120 sec now" +%R))}
     2018-05-01 19:43:14   Wann            Next
     2018-05-01 19:42:38   state           on
Attributes:
   devStateIcon on:sani_sprinkling@green:off off:sani_sprinkling:on .*:sani_sprinkling
   group      Automatik
   readingList Wann Uhrzeit
   room       Bewässerung
   setList    on off Wann:Zeitplan,Next Uhrzeit:Next,3:00,3:30,4:00,4:30,5:00,5:30,6:00,6:30,7:00
   webCmd     Wann:Uhrzeit
- Fhem auf einem MacMini Server
- CUL; HMLAN; CUNO2 für FS20; HM-Wired RS485 LAN Gateway
- HMW_Sen_SC_12_FM; HMW_LC_Sw2_DR; HMW_LC_Bl1_DR; HMW_IO_12_Sw7; HMW_IO_12_Sw14_DR; HMW_IO_12_FM; HBW_1W_T10
- HM-TC-IT-WM-W-EU; HM-CC-RT-DN

Otto123

#7
Keine Ahnung wie Du das machst, aber wenn ich  meinen Code in die FHEM Kommandozeile werfe funktioniert das genau wie gewünscht.

Da Du hier im Subforum DOIF gepostet hast, Du machst es in einem DOIF? Dann macht DOIF irgendetwas anders.

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

holzwurm83

ZitatDa Du hier im Subforum DOIF gepostet hast, Du machst es in einem DOIF? Dann macht DOIF irgendetwas anders.
Ja das ist in einem DoIF eingebaut, allerdings habe ich das nun auch wie du geschrieben hast in der FHEM Kommandozeile ausprobiert und habe dabei die gleiche Problematik.
- Fhem auf einem MacMini Server
- CUL; HMLAN; CUNO2 für FS20; HM-Wired RS485 LAN Gateway
- HMW_Sen_SC_12_FM; HMW_LC_Sw2_DR; HMW_LC_Bl1_DR; HMW_IO_12_Sw7; HMW_IO_12_Sw14_DR; HMW_IO_12_FM; HBW_1W_T10
- HM-TC-IT-WM-W-EU; HM-CC-RT-DN

amenomade

ohne die zusätzliche [] und () die du hieroben hattest?

Du kannst erstmal damit probieren:
Zitatsetreading Bewaessern Uhrzeit {(qx(date))}
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Otto123

Hi,

und wenn Du nur den Perl Teil in die Kommandozeile wirfst?
{(qx(date --date="120 sec now" +%R))}
Was bekommst Du zurück?

Wie alt ist FHEM? Was sagt version

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

holzwurm83

Zitatwenn Du nur den Perl Teil in die Kommandozeile wirfst?

Das was ich auch will
20:34

Das funktioniert...
- Fhem auf einem MacMini Server
- CUL; HMLAN; CUNO2 für FS20; HM-Wired RS485 LAN Gateway
- HMW_Sen_SC_12_FM; HMW_LC_Sw2_DR; HMW_LC_Bl1_DR; HMW_IO_12_Sw7; HMW_IO_12_Sw14_DR; HMW_IO_12_FM; HBW_1W_T10
- HM-TC-IT-WM-W-EU; HM-CC-RT-DN

Otto123

Dann keine Ahnung, bei mir funktioniert es.
setreading wert Uhrzeit {(qx(date --date="120 sec now" +%R))}
Internals:
   NAME       wert
   NR         49
   STATE      4
   TYPE       dummy
   READINGS:
     2018-04-05 13:04:51   Lily            0
     2018-04-05 13:04:51   Text_wert       15
     2018-05-01 20:44:49   Uhrzeit         20:46

     2017-08-13 21:16:34   Wert0           12
     2018-05-01 19:32:33   state           4
     2018-02-17 15:31:05   total_consumption.255 25
Attributes:
   room       Test


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

holzwurm83



Vielleicht liegt das auch daran.

Zitatfeaturelevel
Aktiviere bzw. deaktiviere bestimmte alte oder neue Funktionen, basierend auf die FHEM Version. Z.Bsp. das $value hash für notify wird nur bis featurelevel 5.6 befüllt, da es unerwünscht ist. Stattdessen sollte man die Value() Funktion verwenden.

bei mir steht das noch auf 5.6. Ich habe das nie umgebaut...
- Fhem auf einem MacMini Server
- CUL; HMLAN; CUNO2 für FS20; HM-Wired RS485 LAN Gateway
- HMW_Sen_SC_12_FM; HMW_LC_Sw2_DR; HMW_LC_Bl1_DR; HMW_IO_12_Sw7; HMW_IO_12_Sw14_DR; HMW_IO_12_FM; HBW_1W_T10
- HM-TC-IT-WM-W-EU; HM-CC-RT-DN

amenomade

Bestimmt

ZitatAb featurelevel 5.7 ersetzt das set und setreading Befehl

    [device:name] mit dem Wert des Readings, Internals oder Attributes für device, falls sowohl device, als auch Reading, Internal oder Attribut existiert, und nicht leer ist.
        Man kann einen der Präfixe r:, i: oder a: verwenden, um die Suche einzuschränken, genau wie im devspec.
        Das Suffix :d extrahiert die erste Zahl.
        Das Suffix :i extrahiert die erste Zahl als Ganzzahl.
        Das Suffix :r<n> extrahiert die erste Zahl, und rundet sie auf <n> Dezimalstellen. Falls <n> fehlt, dann wird auf eine Dezimalstelle gerundet.
        Das Suffix :t liefert den Zeitstempel des Readings
        Das Suffix :sec liefert Anzahl der Sekunden seit Änderung des Readings.
    Beispiel:
        set Lamp blink [blinkDummy:number] [r:blinkDummy:duration:d]
    {(perlExpression)} mit dem Ergebnis der perlExpression. $DEV wird dabei mit dem Namen des vom set betroffenen Gerätes ersetzt.

Diese Ersetzungen sind unter dem Namen "set magic" bekannt.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus