Notify bei Save fhem.cfg

Begonnen von afroasiate, 01 Januar 2016, 19:45:47

Vorheriges Thema - Nächstes Thema

afroasiate

Hallo an alle ich hoffe ihr seit gut ins neue Jahr gekommen.

Habe da eine Frage bezüglich eines notifys den ich mir gebaut habe. Ich möchte das wenn ich auf "Save fhem.cfg" klicke das folgende notify ausgeführt wird.


define hciconfig.restart notify global:SAVE {\
system(sudo hciconfig hci0 down);;\
system(sudo hciconfig hci0 up);;\
}


Es wird scheinbar nicht ausgeführt oder macht dieses notify nur sinn wenn man fhem restartet?

Grüße
Martin

Icinger

Warum der Umweg über perl?

ZitatIf <command> is enclosed in {}, then it is a perl expression, if it is enclosed in "", then it is a shell command

Und wenn schon über Perl, dann musst du den Shell-Befehl in "" setzen:

{system("command arg1 arg2 arg3");}

lg, Stefan
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

afroasiate

Okay!

klappt aber immer noch nicht:


define hciconfig.restart notify global:SAVE {\
system("sudo hciconfig hci0 down");;\
system("sudo hciconfig hci0 up");;\
}

Icinger

Was klappt nicht? Die Befehle oder das notify?

Befehle zuerst mal zum testen in der commandlind ausführen, notify mit Trigger testen, evtl. statt den system-Befehlen ein "Log 3,"irgendwas" ins notify einschleusen.
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

afroasiate

Das notify funktioniert nicht.


define test dummy
attr test room egal

define hciconfig.restart notify global:SAVE {\
system("sudo hciconfig hci0 down");;\
system("sudo hciconfig hci0 up");;\
fhem ("set test on");;\
}


Wie eingangsbeschrieben möchte ich wenn ich auf "Save fhem.cfg" klicke das notify ausgeführt wird. Ist das global:SAVE den richtig?


Icinger

[qoute]Following special events will be generated for the device "global"

    INITIALIZED after initialization is finished.
    REREADCFG after the configuration is reread.
    SAVE before the configuration is saved.
    SHUTDOWN before FHEM is shut down.
    DEFINED <devname> after a device is defined.
    DELETED <devname> after a device was deleted.
    RENAMED <old> <new> after a device was renamed.
    UNDEFINED <defspec> upon reception of a message for an undefined device.
[/quote]

define hciconfig.restart notify global:SAVE {Log 3,"Save-Test"}
funktioniert bei mir bei einem Klick auf "Save"!:
Zitat2016.01.01 21:27:07 3: Save-Test
Verwende deine Zeit nicht mit Erklärungen. Die Menschen hören (lesen) nur, was sie hören (lesen) wollen. (c) Paulo Coelho

afroasiate

#6
Hmm merkwürdig SAVE geht nicht aber REREADCFG!!!

Damit kann ich leben verstehe aber nicht warum SAVE nicht geht!

Grüße
Martin

viegener

Zitat von: afroasiate am 02 Januar 2016, 12:38:08
Hmm merkwürdig SAVE geht nicht aber REREADCFG!!!

Sorry was geht nicht bei SAVE?
Hast Du mal den Test-Notify von Icinger bei Dir angelegt und Dein Log-File kontrolliert?
Es wäre verwunderlich, wenn das bei Dir nicht gehen würde. Dann müsstest Du vermutlich mehr über Deine Installation verraten, denn das sind grundsätzliche Funktionen die so problemlos gehen müssen...

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

afroasiate

#8
Wenn ich SAVE verwende finde ich nichts in meiner Log Datei.

Was braucht ihr dann von meiner fhem.cfg? Die installation ist ziemlich frisch, sie soll für einen Infoscreen vor der Bürotür dienen.


attr global userattr cmdIcon devStateIcon devStateStyle icon sortby webCmd widgetOverride fp_screen
attr global autoload_undefined_devices 1
attr global logfile ./log/fhem-%Y-%m.log
attr global modpath .
attr global statefile ./log/fhem.save
attr global updateInBackground 1
attr global verbose 3



Das hier sagt fheminfo:


Fhem info:
  Release  : 5.7 FeatureLevel: 5.7
  OS       : linux
  Arch     : arm-linux-gnueabihf-thread-multi-64int
  Perl     : v5.20.2
  uniqueID : 5fee8e29e05cfc937b781ae8bd87b155
  upTime   : 1 day, 00:02:13

Defined modules:
  FHEMWEB    : 3
  FLOORPLAN  : 1
  FileLog    : 6
  PRESENCE   : 4
  Weather    : 1
  at         : 2
  autocreate : 1
  dummy      : 5
  eventTypes : 1
  notify     : 6
  telnet     : 1
  watchdog   : 1
  weblink    : 4

Transmitting this information during an update: no
You can change this via the global attribute sendStatistics

viegener

Dann versuch mal folgendes notify:

define hciconfig.restart2 notify global:SAVE {Debug "Save-Test"}

Und schaue dann nach einem save in den log file ob auch das nicht ankommt



Johannes
Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

afroasiate

Hi das klappt leider nicht! Wie bereits beschrieben erscheint im LOG nichts. Mit REREADCFG funktioniert es.

Grüße

viegener

Dann stimmt irgendetwas in Deiner FHEM-Installation nicht, denn hier handelt es sich um grundlegende Funktionalität.
Ansätze:
- Ist Die Installation aktuell
- DBLog oder normaler Filelog
- Exotische Einstellungen
- Hast Du einen zweite Installation in der Du testen kannst?
- Unerklärliche Fehlermeldungen im FHEM-Log?
...

Kein Support über PM - Anfragen gerne im Forum - Damit auch andere profitieren und helfen können

frank

Zitat von: afroasiate am 13 Januar 2016, 20:52:59
Hi das klappt leider nicht! Wie bereits beschrieben erscheint im LOG nichts. Mit REREADCFG funktioniert es.
öffne mal den eventmonitor und klicke auf save config. dann sollte so etwas erscheinen:

2016-01-14 11:17:23.238 Global global SAVE

wenn das save-event kommt, ändere mal die regex des notify ein wenig:

global.SAVE.*
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

P.A.Trick

Hier mal meine funktionierende DOIF Lösung wenn du magst!

define di_FHEM_save DOIF ([global:?SAVE]) (say "FHEM Konfiguration wurde gesichert")

Cubietruck,RPI,QNAP Ts-419p+, FS20, FRITZ!DECT200, 7 MAX! Thermostate, 3 MAX! Fensterkontakte, Kodi, CUL V3.3, EM1000S, LW12, LD382, HUE, HM-CFG-USB-2, 1x HM-LC-SW1-FM, 2x HM-LC-SW2-FM, 2x HM-LC-Sw1PBU-FM, 3xHM-LC-Bl1PBU-FM,HM-SEC-RHS, 2xHM-SEC-SD,HM-WDS30-T-O, 3x HM-LC-Dim1TPBU-FM, RPI+AddOn