From 9cd13cee27bf7e5246feec13590591c6bc6b50e8 Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Mon, 26 Dec 2011 14:07:50 +0000 Subject: [PATCH 1/4] on-till, toggle added. Icon link remains in the room git-svn-id: https://fhem.svn.sourceforge.net/svnroot/fhem/trunk/fhem@1143 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- webfrontend/pgm2/01_FHEMWEB.pm | 2 ++ webfrontend/pgm2/on-till.png | Bin 0 -> 2984 bytes webfrontend/pgm2/toggle.png | Bin 0 -> 3242 bytes 3 files changed, 2 insertions(+) create mode 100644 webfrontend/pgm2/on-till.png create mode 100644 webfrontend/pgm2/toggle.png diff --git a/webfrontend/pgm2/01_FHEMWEB.pm b/webfrontend/pgm2/01_FHEMWEB.pm index b97ac43b0..3db6c10bc 100755 --- a/webfrontend/pgm2/01_FHEMWEB.pm +++ b/webfrontend/pgm2/01_FHEMWEB.pm @@ -1868,6 +1868,8 @@ FW_devState($$) } if($link) { + my $room = AttrVal($d, "room", undef); + $link .= "&room=$room" if($room); if($FW_longpoll) { $txt = "$txt"; diff --git a/webfrontend/pgm2/on-till.png b/webfrontend/pgm2/on-till.png new file mode 100644 index 0000000000000000000000000000000000000000..f54efc9f52c46c4050846222cdca1c1f17ca05cb GIT binary patch literal 2984 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 literal 0 HcmV?d00001 From 9d5d8085fa3dbf40c670e79f5a62f4174a9be50b Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Mon, 26 Dec 2011 14:13:57 +0000 Subject: [PATCH 2/4] More device examples git-svn-id: https://fhem.svn.sourceforge.net/svnroot/fhem/trunk/fhem@1144 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- examples/sample_pgm2 | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/examples/sample_pgm2 b/examples/sample_pgm2 index fac6e4d33..4dbc629b4 100644 --- a/examples/sample_pgm2 +++ b/examples/sample_pgm2 @@ -7,9 +7,6 @@ attr global port 7072 global # our TCP/IP port attr global statefile /tmp/fhem.save # where to save the state of the devices attr global verbose 3 # "normal" verbosity (min 1, max 5) -#define CUL CUL /dev/ttyACM0 1234 -#define FHZ FHZ /dev/USB0 - define WEB FHEMWEB 8083 global define WEBphone FHEMWEB 8084 global @@ -18,7 +15,7 @@ attr WEBphone smallscreen define WEBtablet FHEMWEB 8085 global attr WEBtablet touchpad -# Fake logfile, to access the global log +# Fake FileLog entry, to access the fhem log from FHEMWEB define Logfile FileLog /tmp/fhem-%Y-%m.log fakelog define autocreate autocreate @@ -27,3 +24,15 @@ attr autocreate device_room %TYPE attr autocreate filelog /tmp/%NAME-%Y.log attr autocreate weblink attr autocreate weblink_room Plots + + +# You probably have to enable some of the following lines. +# Verify first that /dev/xxx ist correct. + +#define FHZ FHZ /dev/USB0 +#define CUL CUL /dev/ttyACM0@9600 1234 +#attr CUL rfmode HomeMatic + +#define EUL TCM 310 /dev/ttyACM0@57600 +#define BscBor TCM 120 /dev/ttyUSB0@9600 +#define BscSmartConnect TCM 310 /dev/ttyUSB0@57600 From 60083fdf2a11240e5da6d04479a04a42d3ccb636 Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Mon, 26 Dec 2011 14:14:49 +0000 Subject: [PATCH 3/4] Test-Mode with the FHEM.X directory git-svn-id: https://fhem.svn.sourceforge.net/svnroot/fhem/trunk/fhem@1145 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- FHEM/99_updatefhem.pm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/FHEM/99_updatefhem.pm b/FHEM/99_updatefhem.pm index 026fe726c..d44cec46e 100644 --- a/FHEM/99_updatefhem.pm +++ b/FHEM/99_updatefhem.pm @@ -35,8 +35,7 @@ CommandUpdatefhem($$) my ($cl, $param) = @_; my $lt = ""; my $ret = ""; - my $moddir = "$attr{global}{modpath}/FHEM"; - #my $moddir = "XXX"; + my $moddir = (-d "FHEM.X" ? "FHEM.X" : "$attr{global}{modpath}/FHEM"); ## backup by RueBe my @commandchain = split(/ +/,$param); From 16637471b4920af4672c961b01b8973c97d0640f Mon Sep 17 00:00:00 2001 From: rudolfkoenig Date: Mon, 26 Dec 2011 14:32:39 +0000 Subject: [PATCH 4/4] shutdown restart added git-svn-id: https://fhem.svn.sourceforge.net/svnroot/fhem/trunk/fhem@1146 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- CHANGED | 3 ++- TODO | 4 +--- docs/commandref.html | 8 +++++--- fhem.pl | 5 ++++- 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/CHANGED b/CHANGED index 346a6f0dd..6cdf1d784 100644 --- a/CHANGED +++ b/CHANGED @@ -10,7 +10,7 @@ - bugfix: FHEM2FHEM should work with CUL again, after syntax change - feature: CUL directio mode (No Device::SerialPort needed) - feature: FritzBox 7270 ZIP file - - buxgfix: prevent fhem from stalling if telnet times out in 66_ECMD.pm + - bugfix: prevent fhem from stalling if telnet times out in 66_ECMD.pm - feature: added postproc ability to classdef in 66_ECMD.pm (Boris, Heinz) - feature: FHEMWEB longpoll mode, small fixes, tuned smallscreen mode - feature: average module added @@ -27,6 +27,7 @@ - feature: FHEMWEB save button, smallscreen first screen fix - feature: FHEMWEB encoding is now UTF-8, alias attribute is respected - change: HTTPS certs directory moved from cwd into modpath + - feature: shutdwown parameter restart added - 2011-07-08 (5.1) diff --git a/TODO b/TODO index 3e4e83b1c..eeb1734a6 100644 --- a/TODO +++ b/TODO @@ -1,14 +1,12 @@ FHEM: -- uniform .gplot "set title" and naming (ks300_1.gplot -> tempRain.gplot) +- FHEM2FHEM reconnect - HomeMatic set log 2 -- mergelog - autodetect physical hardware - RFR: Error message for uncomplete last message - implement wiki decisions Webpgm2 -- setting the dummy state via dropdown is not possible - click on the graph only correct for the day zoom - integrate weblink details in the SVG - autocreate: multiple plots diff --git a/docs/commandref.html b/docs/commandref.html index 77b5bca04..de75c9bac 100644 --- a/docs/commandref.html +++ b/docs/commandref.html @@ -962,14 +962,16 @@ A line ending with \ will be concatenated with the next one, so long lines

shutdown

    - shutdown + shutdown [restart]

    Shut down the server (after saving the state information - ). It triggers the global:SHUTDOWN event. + ). It triggers the global:SHUTDOWN event. If the optional restart + parameter is specified, fhem tries to restart itself.

    Example:
      - shutdown + shutdown
      + shutdown restart
diff --git a/fhem.pl b/fhem.pl index a3d2c4984..b1ea080de 100755 --- a/fhem.pl +++ b/fhem.pl @@ -233,7 +233,7 @@ my $commonAttr = "eventMap"; "setdefaultattr" => { Fn=>"CommandDefaultAttr", Hlp=>" ,set attr for following definitions" }, "shutdown"=> { Fn=>"CommandShutdown", - Hlp=>",terminate the server" }, + Hlp=>"[restart],terminate the server" }, "sleep" => { Fn=>"CommandSleep", Hlp=>",sleep for sec, 3 decimal places" }, "trigger" => { Fn=>"CommandTrigger", @@ -1042,6 +1042,9 @@ CommandShutdown($$) WriteStatefile(); unlink($attr{global}{pidfilename}) if($attr{global}{pidfilename}); + if($param && $param eq "restart") { + system("(sleep 2; exec perl $0 $attr{global}{configfile})&"); + } exit(0); }