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/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);
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/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
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);
}
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 000000000..f54efc9f5
Binary files /dev/null and b/webfrontend/pgm2/on-till.png differ
diff --git a/webfrontend/pgm2/toggle.png b/webfrontend/pgm2/toggle.png
new file mode 100644
index 000000000..79cf50ca7
Binary files /dev/null and b/webfrontend/pgm2/toggle.png differ