Hallo,
ich bevorzuge DOIF und IF und finde diese Module erheblich verständlicher und weniger Syntax-fehleranfällig.
Eine Sache bekomme ich aber nie hin.
Immer wenn ich Code in den eckigen Klammern verwende wie in der FHEM Referenz geschildert, erhalte ich Fehlermeldungen:
Der hier sollte oin einem DOIF auf alles reagieren, was ein "on" im Status (Auswertungsteil) beinhaltet:
Fehlermeldung: reading does not exist: [Flur_innen_BWM_BUERO:?on]
Internals:
BTN 85
CUL_0_MSGCNT 8
CUL_0_RAWMSG 810b04xx0101a0010000850011
CUL_0_RSSI -72
CUL_0_TIME 2015-03-05 20:04:02
DEF 0000 85
IODev CUL_0
LASTInputDev CUL_0
MSGCNT 8
NAME Flur_innen_BWM_BUERO
NR 689
STATE on
TYPE FS20
XMIT 0000
Code:
1 0000 85
Readings:
2015-03-06 13:57:48 state on
Attributes:
IODev CUL_0
room Flur innen
P.S. Flur_innen_BWM_BUERO existiert, s.o..
Für dämmerungsabhängige Dimmerschaltung nutze ich Twilight. Habe "LichtWetter" als Twilight definiert.
Internals:
CHANGED
CONDITION 33
CONDITION_TXT Fair
DEF 47.803149 9.434819 5 22528015
INDOOR_HORIZON 5
LATITUDE 47.803149
LONGITUDE 9.434819
NAME LichtWetter
NR 697
STATE 6
SUNPOS_OFFSET 300
TEMPERATUR -4
TYPE Twilight
WEATHER 22528015
WEATHER_CORRECTION 0
WEATHER_HORIZON 5
Abruf in einem DOIF mit vorangestellten ? (Änderung des Abfragewertes führt nicht zur Triggerung)
Hier die Fehler im Protokoll:
and ([?Flur_innen_Licht] eq "off"): Search pattern not terminated or ternary operator parsed as search pattern at (eval 838) line 1.
Error: ?LichtWetter has no TYPE
Type Twilight s.o.
Flur_innen_BWM_BUERO_DI: reading does not exist: [?LichtWetter:light]
test_doif4: reading does not exist: [LichtWetter:?light]
test_doif3: reading does not exist: [?LichtWetter:light]
test_doif2: internal does not exist: [LichtWetter?light:STATE]
eventTypes: DOIF test_doif1 error: reading does not exist: [?LichtWetter:light]
Das sind ja - soweit ich es verstehe - alles dokumentierte Funktionalitäten, irgend etwas muss ich grundsätzlich falsch machen?
Alle anderern von mir verwendeten Funktionen funktionieren wunderbar und die IF und DOIF finde ich eine tolle Sache!
Was ich noch anfügen möchte: alle obigen DOIFs funktionieren, wenn ich die Fragezeichen weglasse. Aber kein einziges funktioniert mit "?".
Zitat von: Fashionbye am 06 März 2015, 14:26:29
Was ich noch anfügen möchte: alle obigen DOIFs funktionieren, wenn ich die Fragezeichen weglasse. Aber kein einziges funktioniert mit "?".
Dann solltest du dein System mal updaten - du hast eine alte Version von DOIF ;)
Gruß
Damian
OK, beim Befehl update restart sagt mir fhem: nothing to do.
Installation etwa eine Woche alt FHEM-5.6.deb. Und nun?
Muss man da was manuell installieren?
Zitat von: Fashionbye am 06 März 2015, 20:11:23
OK, beim Befehl update restart sagt mir fhem: nothing to do.
Installation etwa eine Woche alt FHEM-5.6.deb. Und nun?
Muss man da was manuell installieren?
Mit version kannst du dir die Versionsnummern der einzelnen Module anschauen.
Das aktuell eingecheckte DOIF-Modul hat die Version:
# $Id: 98_DOIF.pm 8031 2015-02-18 17:49:10Z damian-s $
Gruß
Damian
Wie kommt es eigentlich, dass sich das DOIF bei version nicht meldet?
Das ist mir schon ein paar mal aufgefallen, dass DOIF dort nicht auftaucht.
Gerade habe ich im Test mal ein "update force" gemacht. Dann ein restart.
Sicherheitshalber danach mal ein Test DOIF angelegt und nach einem version taucht dies nicht auf.
Es steht aber mit einer $Id in der Datei auf dem Server bereit.
Hallo,
Zitat von: Fashionbye am 06 März 2015, 20:11:23
Installation etwa eine Woche alt FHEM-5.6.deb. Und nun?
Muss man da was manuell installieren?
So wie überall beschrieben:
FHEM-5.6 war aktuell als das Release veröffentlicht wurde.
Da FHEM aber lebt gibt es beinahe täglich Änderungen die sich nur und ausschliesslich per
update
über die FHEM-Befehlszeile einspielen lassen.
Achtung! Zu update bitte sämtliche Beiträge heraussuchen die sich auf einen Fehler in der Isntallation nach! einem update beziehen und gut durchlesen.
Auf einem Produktivsystem kann ein Update durchaus auch mal kontraproduktiv sein weil sich durchaus auch mal Fehler einschleichen können.
Grüße
Edith: Und man sollte sich auch mal die Zeit nehmen und das Forum durchschauen - es gibt durchaus Bereiche in denen einige Fragen besser aufgehoben wären.
DOIF = Automatisierung auch wenn man meint das es eine Anfängerfrage ist - wobei, die Suche nach dem Update ist durchaus eine Anfängerfrage die sich aber mit ein bischen lesen klären hätte lassen - siehe angepinnter Beitrag im Anfängerbereich:http://forum.fhem.de/index.php/topic,16311.0.html (http://forum.fhem.de/index.php/topic,16311.0.html)
version am Beaglebone mit FHEM 5.6 gibt bei mir aus:
# $Id: fhem.pl 6913 2014-11-08 10:32:44Z rudolfkoenig $
# $Id: 00_CUL.pm 6755 2014-10-12 13:12:10Z rudolfkoenig $
# $Id: 09_CUL_FHTTK.pm 6605 2014-09-23 19:49:18Z matscher $
# $Id: 14_CUL_WS.pm 5379 2014-03-30 16:34:01Z rudolfkoenig $
# $Id: 01_FHEMWEB.pm 6884 2014-11-04 22:03:52Z rudolfkoenig $
# $Id: 11_FHT.pm 5070 2014-02-28 07:48:55Z rudolfkoenig $
# $Id: 10_FS20.pm 5326 2014-03-26 07:15:25Z rudolfkoenig $
# $Id: 92_FileLog.pm 6769 2014-10-15 17:03:30Z rudolfkoenig $
# $Id: 12_HMS.pm 5097 2014-03-02 15:25:08Z rudolfkoenig $
# $Id: 99_SUNRISE_EL.pm 6765 2014-10-14 18:24:29Z rudolfkoenig $
# $Id: 98_SVG.pm 6756 2014-10-12 13:13:26Z rudolfkoenig $
# $Id: 59_Twilight.pm 6905 2014-11-06 20:35:21Z dietmar63 $
# $Id: 99_Utils.pm 6660 2014-10-03 06:35:43Z rudolfkoenig $
# $Id: 59_Weather.pm 6705 2014-10-07 17:41:42Z borisneubert $
# $Id: 90_at.pm 6797 2014-10-21 12:32:19Z rudolfkoenig $
# $Id: 98_autocreate.pm 6505 2014-09-06 12:24:48Z rudolfkoenig $
# $Id: 98_dummy.pm 4934 2014-02-15 08:23:12Z rudolfkoenig $
# $Id: 91_eventTypes.pm 6792 2014-10-19 16:03:13Z rudolfkoenig $
# $Id: 91_notify.pm 6371 2014-08-07 05:33:37Z rudolfkoenig $
# $Id: 98_telnet.pm 6611 2014-09-24 07:48:32Z rudolfkoenig $
# $Id: 98_weblink.pm 5608 2014-04-23 10:57:16Z rudolfkoenig $
Da ist gar kein DOIF drin und alles was ich per Suchfunktion im Forum & per Google gefunden habe besagt, dass das Modul DOIF per Update mit eingespielt wird. Was mache ich falsch? Ich bin kurz vor dem Hinschmeissen!
Ich habe beim Umstieg von der FB7390 vor 2 Wochen die fhem.cgf der Fritzbox in den Beaglebone am Webfrontend kopiert.
War das falsch? Auf der Fritzbox läuft:
# $Id: fhem.pl 8030 2015-02-18 17:32:56Z rudolfkoenig $
# $Id: 00_CUL.pm 7770 2015-01-30 07:04:52Z rudolfkoenig $
# $Id: 09_CUL_FHTTK.pm 7529 2015-01-11 18:52:43Z matscher $
# $Id: 14_CUL_WS.pm 5379 2014-03-30 16:34:01Z rudolfkoenig $
# $Id: 01_FHEMWEB.pm 8038 2015-02-19 06:13:22Z rudolfkoenig $
# $Id: 11_FHT.pm 5070 2014-02-28 07:48:55Z rudolfkoenig $
# $Id: 10_FS20.pm 7070 2014-11-27 12:45:34Z rudolfkoenig $
# $Id: 92_FileLog.pm 7854 2015-02-03 19:23:22Z rudolfkoenig $
# $Id: 12_HMS.pm 5097 2014-03-02 15:25:08Z rudolfkoenig $
# $Id: 99_SUNRISE_EL.pm 6765 2014-10-14 18:24:29Z rudolfkoenig $
# $Id: 98_SVG.pm 7981 2015-02-14 17:29:46Z rudolfkoenig $
# $Id: 59_Twilight.pm 7462 2015-01-06 17:13:36Z dietmar63 $
# $Id: 99_Utils.pm 7914 2015-02-08 11:14:10Z rudolfkoenig $
# $Id: 59_Weather.pm 6705 2014-10-07 17:41:42Z borisneubert $
# $Id: 90_at.pm 7563 2015-01-14 07:53:50Z rudolfkoenig $
# $Id: 98_autocreate.pm 6505 2014-09-06 12:24:48Z rudolfkoenig $
# $Id: 98_dummy.pm 4934 2014-02-15 08:23:12Z rudolfkoenig $
# $Id: 91_eventTypes.pm 7221 2014-12-15 10:02:49Z rudolfkoenig $
# $Id: 91_notify.pm 7854 2015-02-03 19:23:22Z rudolfkoenig $
# $Id: 98_telnet.pm 8017 2015-02-17 11:10:16Z rudolfkoenig $
# $Id: 98_weblink.pm 5608 2014-04-23 10:57:16Z rudolfkoenig $
@maxritti:
eben, das Problem habe ich auch!
Nächstes Problem: an meinem Beaglebone funktioniert der CUL urplötzlich nicht mehr.
Jetzt läuft FHEM seit einer Stunde auf einer älteren Version auf der FB7390.
Ich hab' hier noch eine Ezcontrol ungetestet rumliegen. Wenn mir fhem zu schwierig ist, sollte ich vielleicht umsteigen... .
@Puschel74:
sorry, wenn das die falsche Rubrik war.
Update hatte ich natürlich gemacht, trotzdem s.o. erscheint das Modul DOIF nicht unter "version".
Die Anfängerdoku habe ich gelesen, deshalb auch Update gemacht. Aber wenn es nicht hilft.
Kann man bei FHEM eigentlich nur alles falsch machen?
Ich sitze seit 2 Wochen da, lese Dokus, Beiträge, Manuals, Refs - meine Familie sieht mich seit Wochen nur noch beim Essen, aber bin kaum weiter wie am Anfang... .
mach einfach mal "update force".
update force und ein restart hat bei mir zumindest bzgl version nichts geändert.
Nach wie vor kein DOIF in der Liste.
Wenn Du meintest, dass könne bei dem Versionsproblem helfen ;)
das soll fashionbye helfen seine alten dateien auf dem beaglebone zu erneuern.
die versions "problematik" ist eventuell ein feature. ;) keine ahnung.
Es kann nur in der Liste erscheinen, wenn man auch ein DOIF definiert hat.
Bei global verbose = 5 sagt er dies:
2015.03.07 11:36:28 4: Looking for SVN Id in module DOIF
Dann habe ich habe mal den Anfang vom 98_DOIF.pm mit dem 90_at.pm verglichen.
Da steht in der $Id Zeile nur ein Leerzeichen vor dem $Id im gegensatz zum DOIF.
Das habe ich mal im DOIF manuell geändert auf das hier:
##############################################
# $Id: 98_DOIF.pm 8031 2015-02-18 17:49:10Z damian-s $
#
# This file is part of fhem.
#
...
Fhem restart und siehe da.
Auf einmal listet version auch DOIF auf.
Bug oder Feature Damian?
@marvin:
Ich habe mehrere DOIFs definiert, aber auch sicherheitshalber mal eins neu definiert.
Aber oben scheint die Lösung zumindest für mich gefunden zu sein.
/EDIT:
Wobei. Das wird dann wohl eher an einer anderen datei (fhem.pl?) liegen.
Zitat von: maxritti am 07 März 2015, 11:40:54
Bei global verbose = 5 sagt er dies:
2015.03.07 11:36:28 4: Looking for SVN Id in module DOIF
Dann habe ich habe mal den Anfang vom 98_DOIF.pm mit dem 90_at.pm verglichen.
Da steht in der $Id Zeile nur ein Leerzeichen vor dem $Id im gegensatz zum DOIF.
Das habe ich mal im DOIF manuell geändert auf das hier:
##############################################
# $Id: 98_DOIF.pm 8031 2015-02-18 17:49:10Z damian-s $
#
# This file is part of fhem.
#
...
Fhem restart und siehe da.
Auf einmal listet version auch DOIF auf.
Bug oder Feature Damian?
@marvin:
Ich habe mehrere DOIFs definiert, aber auch sicherheitshalber mal eins neu definiert.
Aber oben scheint die Lösung zumindest für mich gefunden zu sein.
/EDIT:
Wobei. Das wird dann wohl eher an einer anderen datei (fhem.pl?) liegen.
Ich habe es jetzt im DOIF-Modul auf ein Leerzeichen vor dem Id-String geändert. Kommt ins nächste Update.
Gruß
Damian
DOIF habe ich einige definiert, die laufen auch - außer die anfängliche beschriebene "?" Thematik
Kümmere mich gerade noch um mein disconntedes CUL_0. Fehler:
Can't open /dev/ttyACM0: No such file or directory. Ich finde in dem Pfad einige tty*-Dateien, aber nicht diese!
Zerschossen? Ein noch stärkeres Netzteil 5V/3A habe ich auch gerade verwendet (Hinweis aus dem Forum).
"update force" läuft schon eine kleine Ewigkeit. FHEM ist nicht zu erreichen, aber telnet geht. Er wird irgendwas tun... .
Offtopic: wenn diese "/dev/ttyACM0" fehlt.
Wird die erzeugt oder kommt die aus einem Paket?
Kann man das einfach nachinstallieren, oder muss man alles frisch aufsetzen?
Blöde Fragen, aber ich habe das Ding schon bestimmt vier oder fünf Mal neu installiert, bis es endlich lief; Freunde sind wir (noch) nicht geworden) und habe keine Linux-Kenntnisse, arbeite nur nach Anleitungen.
Zitat von: Fashionbye am 07 März 2015, 12:04:38
DOIF habe ich einige definiert, die laufen auch - außer die anfängliche beschriebene "?" Thematik
Was mit dem aktuellen Modul funktionieren muss:
define d_test dummy
define di_test DOIF ([d_test:?on]) (set bla on)
testen mit
set d_test on
oder
define di_test DOIF ([?d_test:on] or [d_test]) (set bla on)
und
set d_test on
Gruß
Damian
@ maxritti: wo finde ich die Datei, wo ich was editieren muss wie von Dir beschrieben und wie von Damian bestätigt?
Zitat von: maxritti am 07 März 2015, 11:40:54
Bei global verbose = 5 sagt er dies:
2015.03.07 11:36:28 4: Looking for SVN Id in module DOIF
Dann habe ich habe mal den Anfang vom 98_DOIF.pm mit dem 90_at.pm verglichen.
Da steht in der $Id Zeile nur ein Leerzeichen vor dem $Id im gegensatz zum DOIF.
Das habe ich mal im DOIF manuell geändert auf das hier:
##############################################
# $Id: 98_DOIF.pm 8031 2015-02-18 17:49:10Z damian-s $
#
# This file is part of fhem.
#
...
Fhem restart und siehe da.
Auf einmal listet version auch DOIF auf.
Bug oder Feature Damian?
@marvin:
Ich habe mehrere DOIFs definiert, aber auch sicherheitshalber mal eins neu definiert.
Aber oben scheint die Lösung zumindest für mich gefunden zu sein.
/EDIT:
Wobei. Das wird dann wohl eher an einer anderen datei (fhem.pl?) liegen.
@ maxritti:
hab' lange gesucht, aber jetzt die Datei 9
8_DOIF.pm genauso editiert, wie Du beschrieben hast.
Danach "shutdown restart" (mit restart passiert nichts) und jetzt wird DOI aufgeführt, allerdings als 97_DOIF.pm und NICHT als 98_DOIF.pm!?
Ist das ok so?
# $Id: 97_DOIF.pm 8031 2015-02-18 17:49:10Z damian-s $
Also Deine Datei heisst 98_DOIF.pm und liegt unter /opt/fhem/FHEM/ (Der Beginn des Pfades kann bei dir variieren)?
Und dort steht in der 2. Zeile
# $Id: 98_DOIF.pm 8031 2015-02-18 17:49:10Z damian-s $
Und dann listet version dies als 97_DOIF.pm auf?
Merkwürdig.
Warte mal morgen 8:00 ab. Denn wenn heute etwas eingecheckt wurde, kann man dies am nächsten Tag 8:00 mittels update aktualisieren.
Dann mal ein Update machen und mal schauen, wie das mit DOIF aussieht.
Da sollte alles mit 98_DOIF erscheinen. Auch bei version.
Zitat von: maxritti am 07 März 2015, 16:25:58
Also Deine Datei heisst 98_DOIF.pm und liegt unter /opt/fhem/FHEM/ (Der Beginn des Pfades kann bei dir variieren)?
Und dort steht in der 2. Zeile
# $Id: 98_DOIF.pm 8031 2015-02-18 17:49:10Z damian-s $
Und dann listet version dies als 97_DOIF.pm auf?
Merkwürdig.
Warte mal morgen 8:00 ab. Denn wenn heute etwas eingecheckt wurde, kann man dies am nächsten Tag 8:00 mittels update aktualisieren.
Dann mal ein Update machen und mal schauen, wie das mit DOIF aussieht.
Da sollte alles mit 98_DOIF erscheinen. Auch bei version.
Geänderte Version wurde eingecheckt. Änderungen sind nicht erforderlich.
Gruß
Damian
Es lag am alten Stand des DOIF-Moduls, welches durch "update restart" nicht geladen wurde.
Damian hat dies korrigiert, dann hat es automatisch geladen und das Problem ist behoben. Jetzt geht es.
Herzlichen Dank nochmals an Damian!!!