FHEM speichert "at" manchmal nicht

Begonnen von Nemo0815, 29 April 2015, 11:43:45

Vorheriges Thema - Nächstes Thema

mrbreil

aber müsste ich da nicht die cfg automatisch speichern. was ist wenn ich in der Zwischenzeit in der Weboberfläche Veränderungen durchführe und ich will gar nicht das jetzt schon gespeichert wird. Dann würde doch z.B. ein zufälliges notify das gerade  ausschlägt meine cfg speichern obwohl ich das gar nicht möchte.

Die andere Farge ist doch aber, wenn dieses attr nicht mehr unterstützt wird, warum kann ich es dann noch setzten?
Das klang jetzt böser als es sein sollte!
Ich denke ich könnte vieles auch über DOIF lösen, aber da fehlt mir das Verständnis.
Bei einem einfachen notify und at kann ich mich händisch durcharbeiten, da mir oft das Verständnis für Perl und die Syntax fehlt.
Wo ein Erfahren vielleicht zwei, drei Zeilen brauch, angele ich mich per at auf vielleicht zwanzig Zeilen zum Ziel.
Das funktioniert zwar dann, aber nach einem shutdown restart ist alles weg.
Möchte ja auch nicht für jedes meiner Probleme das Forum nerven. Ich habe Situation A, wenn ich Taser B drücke soll C ausgeführt werden, aber nur wenn Wert D = Wert E ist.

mrbreil

Zitat von: franky08 am 13 September 2015, 22:56:46
Mit  disable  ;)

P.S. Ein at , angelegt ohne relativ oder periodisch, verschwindet nach einmaliger Ausführung, dass dürfte aber bekannt sein
Vg
Frank

Habe deine Änderung erst jetzt gelesen, probiere es gleich mal aus.

mrbreil

#17
Zitat von: franky08 am 13 September 2015, 22:56:46
P.S. Ein at , angelegt ohne relativ oder periodisch, verschwindet nach einmaliger Ausführung, dass dürfte aber bekannt sein
Vg
Frank

Eins vorher noch.
Wo steht das?  ;)

P.S. Habe gerade gesehen wie spät es ist, wird heute nix mehr.
Aber erst mal vielen Dank für deine Hilfe.
Rückblickend auf diesen viel zu kurzen Sonntag, macht deine Aussage durch aus Sinn.
Könnte mir vorstellen das es daran lag, die at verschwunden sind waren alles absolute at.
Das erklärt zwar noch nicht warum ich irgendwann keine neuen at mehr anlegen kann, aber dank dir bin ich auf einem guten Weg.

franky08

Um Missverständnissen vorzubeugen:

at 23:00:00 wird einmal ausgeführt und verschwindet
at *23:00:00 OK
at +*23:00:00 OK

ZitatDefine
define <name> at <timespec> <command>

<timespec> Format:
  • [*{N}]<timedet>
    Das optionale + zeigt, dass die Angabe relativ ist (also zur jetzigen Zeit dazugezählt wird).
    Das optionale * zeigt, dass die Ausführung wiederholt erfolgen soll.
    Das optionale {N} nach dem * bedeutet, dass der Befehl genau N-mal wiederholt werden soll.
    <timedet> ist entweder HH:MM, HH:MM:SS oder {perlfunc()}, wobei perlfunc HH:MM or HH:MM:SS zurückgeben muss. Hinweis: {perlfunc()} darf keine Leerzeichen enthalten.
Steht übrigends in der commendref  :)

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

mrbreil

Ja, Danke das war mir bewusst.
Leider steht da aber nicht das ein at at 23:00:00 irgendwann gelöscht wird.
Werde es morgen nach der Abreibt ausprobieren, vielen Dank für eure Hilfe.

marvin78

Es wird auch nicht gelöscht. Es landet erst gar nicht in der config. Von Löschen kann hier nicht die Rede sein, da ein solches at ja nur zur einmaligen Ausführung gedacht ist. Und ja, das ist sehr wohl dokumentiert.

Nemo0815

#21
Ich habe das Problem auch immer noch (sporadisch), gerade eben. Das AT verschwindet sofort nach neustart von FHEM:

+*00:05:00 {
if ((Value("myTwilight") > 9) )
{
  fhem("set AbendDummy true");
}
elsif(($hms gt "01:30") && ($hms lt "06:00"))
{
  fhem("set AbendDummy false");
}
}


Beim ersten Versuch (erster Neustart) war wenigstens noch eine Klammer ("{") vorhanden, beim zweiten (nachdem ichs wieder neu angelegt hatte) ist es vollständig weg.

Angelegt über folgendes Kommando, dann editiert wie oben:

define SetAbendDummyAt at +*00:05:00 {}

Beim dritten Versuch bleibts jetzt anscheinend (hoffentlich) in der CFG gespeichert, aber schön ist das nicht...
(ich musste das übrigens so machen weil Twilight seit dem letzten Update keine Events mehr erzeugt...)

Nemo0815

Hallo zusammen,

mal wieder plötzlich ein Problem mit den ATs (bin mittlerweile auf ner anderen HW und SW!)

Ändere ich hier etwas und speichere, ist die Änderung nach FHEM restart wieder weg. Reproduzierbar mehrfach hintereinander versucht.
Ansonsten nichts geändert an der cfg. Nur von Zeit zu Zeit ein FHEM update durch geführt (ist auf aktuellem Stand).

Hat jemand ne Idee?


Internals:
   COMMAND    {
if(!$we && (Value("Urlaub") eq "nein") && (ReadingsVal("Aussentemperatur","temperature",0) > -1)) {
fhem("set Rollo.Buero Auf");;
#fhem("set Rollo.VorderesZimmer Auf");;
}
fhem ("set RolloTempschutzAktiv off");;
}
   DEF        *06:45 {
if(!$we && (Value("Urlaub") eq "nein") && (ReadingsVal("Aussentemperatur","temperature",0) > -1)) {
fhem("set Rollo.Buero Auf");;
#fhem("set Rollo.VorderesZimmer Auf");;
}
fhem ("set RolloTempschutzAktiv off");;
}
   NAME       RolloRauf
   NR         53
   PERIODIC   yes
   RELATIVE   no
   REP        -1
   STATE      Next: 06:45:00
   TIMESPEC   06:45
   TRIGGERTIME 1530333900
   TRIGGERTIME_FMT 2018-06-30 06:45:00
   TYPE       at
   READINGS:
     2018-06-29 08:09:07   state           Next: 06:45:00
Attributes:

Otto123

#23
Moin,

beschreibe doch mal exakt alle Handgriffe des Vorganges
ZitatÄndere ich hier etwas und speichere,

Da gibt es ja durchaus viele Möglichkeiten, siehe auch hier;)

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

betateilchen

Mich würde ja viel mehr interessieren, WAS da geändert wird.

Und vor allem, ob nach der Änderung die Konfiguration überhaupt gespeichert wird oder ob man dem Irrglauben verfällt, dass ein geändertes DEF automatisch in der Konfiguration gespeichert wird, wenn man auf "Modify" klickt.

Achja: die Internals die oben gepostet wurden, können m.E. nicht vollständig sein.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Nemo0815

#25
Hallo,

Die Änderung ist schon oben in dem Codeschnipsel enthalten, ich habe die eine Zeile mit der Raute auskommentiert.
Ist aber egal, hatte sie auch schon komplett rausgelöscht statt zu kommentieren mit dem exakt gleichen Resultat - nach fhem Neustart ist wieder der alte Stand da.

Ich drücke natürlich nach modifiy auf speichern und fhem bestätigt mir das auch mit der entsprechenden Meldung.

Und was da oben im Code steht ist alles was der List Befehl her gibt.
Das at hatte ich so schon einige Jahre in meiner config und es hat auch funktioniert, nur wollte ich jetzt einfach ein Rollo rausnehmen, was auch funktioniert, solange fhem nicht neu gestartet wird.

Otto123

#26
Guten Abend,

was ergibt denn in der Consolels -l /opt/fhem/fhem.cfg
Falls FHEM im Pfad /opt/fhem installiert ist  ;)
Oder im Browser
{qx "ls -l ./fhem.cfg"}


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

Nemo0815

Argh, danke. Daran hatte ich noch gar nicht gedacht. Hatte vor kurzem mal ein Backup wieder eingespielt, das hat mir wohl die Rechte verhunzt...

-rw-r--r-- 1 root root 54486 Jun  1 21:17 ./fhem.cfg

betateilchen

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