2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-05-03 19:49:02 +00:00

Preparing THE SPLIT

git-svn-id: https://svn.fhem.de/fhem/trunk@2075 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
rudolfkoenig 2012-11-04 13:29:55 +00:00
parent 82b312330b
commit 6bfffbb57b
10 changed files with 1327 additions and 1270 deletions

View File

@ -7,6 +7,7 @@
- feature: optional second parameter to fhem() to make it silent - feature: optional second parameter to fhem() to make it silent
- feature: autoloading commands, XmlList/etc renamed from 99 to 98. - feature: autoloading commands, XmlList/etc renamed from 99 to 98.
- feature: FHEMWEB returns external files in chunks to save memory - feature: FHEMWEB returns external files in chunks to save memory
- feature: commandref.html splitted: documentation is now appended to the modules.
- 2012-10-28 (5.3) - 2012-10-28 (5.3)
- feature: added functions trim, ltrim, rtrim, UntoggleDirect, UntoggleIndirect - feature: added functions trim, ltrim, rtrim, UntoggleDirect, UntoggleIndirect

View File

@ -475,13 +475,3 @@ ZWave_Undef($$)
} }
1; 1;
=begin html
<a name="CUL"></a>
<h3>CUL</h3>
<ul>
text
</ul>
=end html

View File

@ -333,3 +333,5 @@ energy_Undef($$)
return undef; return undef;
} }
1;

View File

@ -345,3 +345,4 @@ if ( $kind ne 0 ){
} }
} }
1;

View File

@ -0,0 +1,74 @@
#!/usr/bin/perl
use strict;
use warnings;
my $docIn = "docs/commandref_frame.html";
my $docOut = "docs/commandref.html";
my @modDir = ("FHEM");
open(IN, "$docIn") || die "Cant open $docIn: $!\n";
open(OUT, ">$docOut") || die "Cant open $docOut: $!\n";
my %mods;
foreach my $modDir (@modDir) {
opendir(DH, $modDir) || die "Cant open $modDir: $!\n";
while(my $l = readdir DH) {
next if($l !~ m/^\d\d_.*\.pm$/);
my $of = $l;
$l =~ s/.pm$//;
$l =~ s/^[0-9][0-9]_//;
$mods{$l} = "$modDir/$of";
}
}
# First run: check what is a command and what is a helper module
my $status;
my %noindex;
while(my $l = <IN>) {
last if($l =~ m/<h3>Introduction/);
$noindex{$1} = 1 if($l =~ m/href="#(.*)"/);
}
seek(IN,0,0);
# Second run: create the file
# Header
while(my $l = <IN>) {
print OUT $l;
last if($l =~ m/#global/);
}
# index for devices.
foreach my $mod (sort keys %mods) {
next if($noindex{$mod});
print OUT " <a href='#$mod'>$mod</a> &nbsp;\n";
}
# Copy the middle part
while(my $l = <IN>) {
last if($l =~ m/name="perl"/);
print OUT $l;
}
# Copy the doc part from the module
foreach my $mod (sort keys %mods) {
open(MOD, $mods{$mod}) || die("Cant open $mods{$mod}:$!\n");
my $skip = 1;
while(my $l = <MOD>) {
if($l =~ m/^=begin html/) {
$skip = 0;
} elsif($l =~ m/^=end html/) {
$skip = 1;
} elsif(!$skip) {
print OUT $l;
}
}
close(MOD);
}
# Copy the tail
print OUT '<a name="perl"></a>',"\n";
while(my $l = <IN>) {
print OUT $l;
}
close(OUT);

View File

@ -0,0 +1,63 @@
#!/usr/bin/perl
use strict;
use warnings;
my $docIn = "docs/commandref.html";
my $docOut = "docs/commandref_frame.html";
my @modDir = ("FHEM", "contrib", "webfrontend/pgm5");
open(IN, "$docIn") || die "Cant open $docIn: $!\n";
open(OUT, ">$docOut") || die "Cant open $docOut: $!\n";
my %mods;
foreach my $modDir (@modDir) {
opendir(DH, $modDir) || die "Cant open $modDir: $!\n";
while(my $l = readdir DH) {
next if($l !~ m/^\d\d_.*\.pm$/);
my $of = $l;
$l =~ s/.pm$//;
$l =~ s/^[0-9][0-9]_//;
$mods{lc($l)} = "$modDir/$of" if(!$mods{lc($l)});
}
}
my %fnd;
my $modFileName;
while(my $l = <IN>) {
$l =~ s/[\r\n]//g;
if($l =~ m,^<a name="(.*)"></a>$,) {
if($modFileName) {
print MODOUT "=end html\n=cut\n";
close(MODOUT);
rename "$modFileName.NEW", $modFileName;
}
my $mod = lc($1);
if($mods{$mod}) {
print "Double-Fnd: $mod\n" if($fnd{$mod});
$fnd{$mod} = 1;
$modFileName = $mods{$mod};
open(MODIN, "$modFileName") || die("Cant open $modFileName: $!\n");
open(MODOUT, ">$modFileName.NEW") || die("Cant open $modFileName.NEW: $!\n");
my $seen1;
while(my $l = <MODIN>) {
$seen1 = 1 if($l =~ m/^1;[\r\n]*/);
last if($l =~ m/=pod/ && $seen1);
print MODOUT $l;
}
print MODOUT "\n\=pod\n=begin html\n\n";
} else {
print "Not a module: $mod\n";
$modFileName = "";
}
}
if($modFileName){
print MODOUT "$l\n";
} else {
print OUT "$l\n";
}
}
foreach my $mod (sort {$mods{$a} cmp $mods{$b}} keys %mods) {
print "Missing doc for $mods{$mod}\n" if(!$fnd{$mod});
}

View File

@ -56,7 +56,6 @@
<a href="#sleep">sleep</a> &nbsp; <a href="#sleep">sleep</a> &nbsp;
<a href="#trigger">trigger</a> &nbsp; <a href="#trigger">trigger</a> &nbsp;
<a href="#update">update</a> &nbsp; <a href="#update">update</a> &nbsp;
<a href="#updatefhem">updatefhem</a> &nbsp;
<a href="#usb">usb</a> &nbsp; <a href="#usb">usb</a> &nbsp;
<a href="#xmllist">xmllist</a> &nbsp; <a href="#xmllist">xmllist</a> &nbsp;
@ -813,10 +812,6 @@ A line ending with \ will be concatenated with the next one, so long lines
version after the update has finished. version after the update has finished.
<br> <br>
<br> <br>
Notice: The former used command "updatefhem" will be replaced by the new
command "update" in the 5.3 distribution.
<br>
<br>
The new update function will process more advanced distribution information The new update function will process more advanced distribution information
as well as control commands for updating, removing or renaming existing files. as well as control commands for updating, removing or renaming existing files.
New file structures can also be set up by the new control command files. New file structures can also be set up by the new control command files.
@ -844,77 +839,6 @@ A line ending with \ will be concatenated with the next one, so long lines
</ul> </ul>
</ul> </ul>
<a name="updatefhem"></a>
<h3>updatefhem</h3>
<ul>
<code>updatefhem [&lt;changed&gt;|&lt;filename&gt;|&lt;housekeeping&gt; [&lt;clean&gt;] [&lt;yes&gt;]|&lt;preserve&gt; [&lt;filename&gt;]]</code> <br>
<br>
<b>This command is deprecated as of Fhem 5.3</b>
<br>
<br>
Update the fhem modules and documentation from a nightly SVN checkout. For
this purpose Fhem contacts http://fhem.de/fhemupdate, compares the stored
timestamps of the local files with the filelist on the server, and
downloads the files changed on the server. For all downloaded modules a
reload will be scheduled if the corresponding module is loaded.
<br>
<br>
Note: Since Version 5.3 a new directory structure is used by Fhem. The
WebInterface pgm2 is separated from <a href="#modpath">modpath</a>/FHEM
directory. The directory modpath/www/pgm2 is the new home of pgm2 and
of its files. It is recommended to update to the new structure via the
&lt;housekeeping&gt; arguments.
<br>
<br>
The complete installation of Fhem will be saved via the <a href="#backup">backup</a>
command on every update. You can skip this backups by setting
the global attribute <a href="#backup_before_update">backup_before_update</a> to 0.
<br>
<br>
Have you change or replace original files of the Fhem Distribution,
these files will normally be overwritten during an update. To protect
your locally modified or replaced files during an update, you can exclude
these files with the global attribute <a href="#exclude_from_update">exclude_from_update</a>.
<br>
<br>
If &lt;changed&gt; is specified, updatefhem returns a list of new or
modified files since the last update. Furthermore it returns the last
changes from the CHANGED file (if the file exists on the update server).
<br>
<br>
If an explicit &lt;filename&gt; is given, then only this file will be
downloaded.
<br>
<br>
If &lt;housekeeping&gt; is specified, then updatefhem switch your Fhem
installation to the new directory structure for the pgm2 WebInterface.
The old files are archived like the &lt;backup&gt; argument and the new
files are stored to modpath/www/pgm2. None of the existing files of pgm2
in modpath/FHEM will be deleted, but are no longer in use.<br>
If you like to delete the no more needed files for pgm2 in modpath/FHEM,
you should call &lt;housekeeping&gt; with the argument &lt;clean&gt; &lt;yes&gt;.
All files of pgm2 are removed from modpath/FHEM and files like
.*example.*, .gplot, .html .css, .js, and .(gif|jpg|png|svg) are moved
to modpath/www/pgm2.
<br>
<br>
If &lt;preserve&gt; is specified, you could preserve the old directory
structure. All files of pgm2 are updated and stored in modpath/FHEM like
the former (before Fhem 5.3) updatefhem funktion. To update an explicit
file to the old structure append the file as &lt;filename&gt;.<br>
Note: After running the housekeeping process, the argument &lt;preserve&gt;
is no longer necessary and no more supported.
<br>
<br>
Notes:
<ul>
<li>If the main program (fhem.pl) is changed, a manual restart of fhem
will be necessary to apply the changes.</li>
<li>After running &lt;housekeeping&gt; it is recommended to restart Fhem.</li>
</ul>
<br>
</ul>
<a name="CULflash"></a> <a name="CULflash"></a>
<h3>CULflash</h3> <h3>CULflash</h3>
<ul> <ul>
@ -1230,8 +1154,6 @@ A line ending with \ will be concatenated with the next one, so long lines
</pre> </pre>
</ul> </ul>
<h2>Devices</h2>
<a name="global"></a> <a name="global"></a>
<h3>global</h3> <h3>global</h3>
<ul> <ul>
@ -2517,7 +2439,7 @@ A line ending with \ will be concatenated with the next one, so long lines
<br> <br>
<br> <br>
<a name="FHT8Vdefine"></a> <a name="PIDdefine"></a>
<b>Define</b> <b>Define</b>
<ul> <ul>
<code>define &lt;name&gt; PID sensor[:reading:regexp] actor[:cmd:min:max] [p i d]</code> <code>define &lt;name&gt; PID sensor[:reading:regexp] actor[:cmd:min:max] [p i d]</code>
@ -2566,14 +2488,14 @@ A line ending with \ will be concatenated with the next one, so long lines
</ul> </ul>
<br> <br>
<a name="FHT8Vget"></a> <a name="PIDget"></a>
<b>Get </b> <b>Get </b>
<ul> <ul>
N/A N/A
</ul> </ul>
<br> <br>
<a name="FHT8Vattr"></a> <a name="PIDattr"></a>
<b>Attributes</b> <b>Attributes</b>
<ul> <ul>
<li><a href="#disable">disable</a></li> <li><a href="#disable">disable</a></li>
@ -5118,7 +5040,6 @@ A line ending with \ will be concatenated with the next one, so long lines
<br> <br>
<a name="KS300define"></a> <a name="KS300define"></a>
<a name="KS300"></a>
<b>Define</b> <b>Define</b>
<ul> <ul>
<code>define &lt;name&gt; KS300 &lt;housecode&gt; [ml/raincounter [wind-factor]]</code> <code>define &lt;name&gt; KS300 &lt;housecode&gt; [ml/raincounter [wind-factor]]</code>
@ -5223,6 +5144,7 @@ To send the data, both send or write could be used.<br>
</ul> </ul>
</ul> </ul>
<br><br> <br><br>
<a name="MSGFile"></a> <a name="MSGFile"></a>
<h3>MSGFile</h3> <h3>MSGFile</h3>
<ul> <ul>
@ -5233,7 +5155,8 @@ To send the data, both send or write could be used.<br>
A MSGFile device needs the operating systems rights to write to the filesystem. A MSGFile device needs the operating systems rights to write to the filesystem.
To set the rights for a directory, please use OS related commands. To set the rights for a directory, please use OS related commands.
<br><br> <br><br>
<a name="#MSGFileDefine"></a>
<a name="MSGFileDefine"></a>
<b>Define</b> <b>Define</b>
<ul><br> <ul><br>
<code>define &lt;name&gt; MSGFile &lt;filename&gt;</code><br><br> <code>define &lt;name&gt; MSGFile &lt;filename&gt;</code><br><br>
@ -5245,7 +5168,8 @@ To send the data, both send or write could be used.<br>
<ul> <ul>
<code>define myFile MSGFile</code> <code>define myFile MSGFile</code>
</ul><br> </ul><br>
<a name="#MSGFileSet"></a> <a name="MSGFileSet"></a>
<b>Set</b><br> <b>Set</b><br>
<ul><code>set &lt;name&gt; add|clear|list [text]</code><br> <ul><code>set &lt;name&gt; add|clear|list [text]</code><br>
Set is used to manipulate the message buffer of the device. The message Set is used to manipulate the message buffer of the device. The message
@ -5274,6 +5198,7 @@ To send the data, both send or write could be used.<br>
<code>set myMsg write myFile</code><br> <code>set myMsg write myFile</code><br>
<code>set myFile clear</code><br> <code>set myFile clear</code><br>
</ul><br> </ul><br>
<a name="MSGFileVattr"></a> <a name="MSGFileVattr"></a>
<b>Attributes</b> <b>Attributes</b>
<ul> <ul>
@ -5304,7 +5229,8 @@ To send the data, both send or write could be used.<br>
To send an email, a MSG device is necessary.<br> To send an email, a MSG device is necessary.<br>
<b>MAIL::Lite</b> and <b>Net::SMTP::SSL</b> from CPAN is needed to use MSGMail!! <b>MAIL::Lite</b> and <b>Net::SMTP::SSL</b> from CPAN is needed to use MSGMail!!
<br><br> <br><br>
<a name="#MSGMailDefine"></a>
<a name="MSGMailDefine"></a>
<b>Define</b> <b>Define</b>
<ul><br> <ul><br>
<code>define &lt;name&gt; MSGMail &lt;from&gt; &lt;to&gt; &lt;smtphost&gt; &lt;authfile&gt;</code><br><br> <code>define &lt;name&gt; MSGMail &lt;from&gt; &lt;to&gt; &lt;smtphost&gt; &lt;authfile&gt;</code><br><br>
@ -5317,7 +5243,8 @@ To send the data, both send or write could be used.<br>
<ul> <ul>
<code>define myMail MSGMail from@address.com to@address.com smtp.provider.host /etc/msgauthfile</code> <code>define myMail MSGMail from@address.com to@address.com smtp.provider.host /etc/msgauthfile</code>
</ul><br> </ul><br>
<a name="#MSGMailSet"></a>
<a name="MSGMailSet"></a>
<b>Set</b><br> <b>Set</b><br>
<ul><code>set &lt;name&gt; add|clear|list [text]</code><br> <ul><code>set &lt;name&gt; add|clear|list [text]</code><br>
Set is used to manipulate the message buffer of the device. The message Set is used to manipulate the message buffer of the device. The message
@ -6167,7 +6094,7 @@ To send the data, both send or write could be used.<br>
<br> <br>
<br> <br>
<a name="POKEYS_define"></a> <a name="POKEYSdefine"></a>
<b>Define</b> <b>Define</b>
<ul> <ul>
<code>define &lt;name&gt; POKEYS &lt;ip-address&gt; &lt;pin&gt; &lt;io-state&gt; [&lt;time in ms&gt;]</code> <br> <code>define &lt;name&gt; POKEYS &lt;ip-address&gt; &lt;pin&gt; &lt;io-state&gt; [&lt;time in ms&gt;]</code> <br>
@ -6189,7 +6116,7 @@ To send the data, both send or write could be used.<br>
</ul> </ul>
</ul> <br> </ul> <br>
<a name="POKEYS_set"></a> <a name="POKEYSset"></a>
<b>Set</b> <b>Set</b>
<ul> <ul>
<code>set &lt;name&gt; &lt;state&gt; [&lt;time in ms&gt;]</code> <br> <code>set &lt;name&gt; &lt;state&gt; [&lt;time in ms&gt;]</code> <br>
@ -6204,7 +6131,7 @@ To send the data, both send or write could be used.<br>
</ul> </ul>
</ul><br> </ul><br>
<a name="POKEYS_get"></a> <a name="POKEYSget"></a>
<b>Get</b> <b>Get</b>
<ul> <ul>
<code>get &lt;name&gt; &lt;type&gt; </code> <br> <code>get &lt;name&gt; &lt;type&gt; </code> <br>
@ -6219,7 +6146,7 @@ To send the data, both send or write could be used.<br>
</ul> </ul>
</ul><br> </ul><br>
<a name="POKEYS_attr"></a> <a name="POKEYSattr"></a>
<b>Attributes</b> <b>Attributes</b>
<ul> <ul>
todo <br> todo <br>
@ -7918,7 +7845,7 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
<li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li> <li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li>
</ul> </ul>
</ul> </ul>
<!--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-->
<a name="OWAD"></a> <a name="OWAD"></a>
<h3>OWAD</h3> <h3>OWAD</h3>
<ul>FHEM module to commmunicate with 1-Wire A/D converters<br /><br /> Note:<br /> This <ul>FHEM module to commmunicate with 1-Wire A/D converters<br /><br /> Note:<br /> This
@ -8055,7 +7982,7 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
<li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li> <li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li>
</ul> </ul>
</ul> </ul>
<!--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-->
<a name="OWCOUNT"></a> <a name="OWCOUNT"></a>
<h3>OWCOUNT</h3> <h3>OWCOUNT</h3>
<ul>FHEM module to commmunicate with 1-Wire Counter/RAM DS2423 #<br /><br /> Note:<br /> <ul>FHEM module to commmunicate with 1-Wire Counter/RAM DS2423 #<br /><br /> Note:<br />
@ -8165,7 +8092,7 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
<li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li> <li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li>
</ul> </ul>
</ul> </ul>
<!--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-->
<a name="OWID"></a> <a name="OWID"></a>
<h3>OWID</h3> <h3>OWID</h3>
<ul>FHEM module for 1-Wire devices that know only their unique ROM ID<br /> <ul>FHEM module for 1-Wire devices that know only their unique ROM ID<br />
@ -8200,7 +8127,7 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
</ul> </ul>
<br /> <br />
</ul> </ul>
<!--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-->
<a name="OWLCD"></a> <a name="OWLCD"></a>
<h3>OWLCD</h3> <h3>OWLCD</h3>
<ul>FHEM module to commmunicate with the <a <ul>FHEM module to commmunicate with the <a
@ -8288,7 +8215,7 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
<li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li> <li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li>
</ul> </ul>
</ul> </ul>
<!--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-->
<a name="OWMULTI"></a> <a name="OWMULTI"></a>
<h3>OWMULTI</h3> <h3>OWMULTI</h3>
<ul>FHEM module to commmunicate with 1-Wire multi-sensors, currently the DS2438 smart battery monitor<br /><br /> Note:<br /> This <ul>FHEM module to commmunicate with 1-Wire multi-sensors, currently the DS2438 smart battery monitor<br /><br /> Note:<br /> This
@ -8392,9 +8319,9 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
</ul> </ul>
</li> </li>
<li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li> <li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li>
</ul> </ul>
<!--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++--> </ul>
<a name="OWSWITCH"></a> <a name="OWSWITCH"></a>
<h3>OWSWITCH</h3> <h3>OWSWITCH</h3>
<ul>FHEM module to commmunicate with 1-Wire Programmable Switches <br /><br /> Note:<br /> <ul>FHEM module to commmunicate with 1-Wire Programmable Switches <br /><br /> Note:<br />
@ -8493,7 +8420,7 @@ The one byte hex string is generated by the Oregon sensor when is it powered on.
<li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li> <li>Standard attributes alias, comment, <a href="#eventMap">eventMap</a>, <a href="#loglevel">loglevel</a>, <a href="#webCmd">webCmd</a></li>
</ul> </ul>
</ul> </ul>
<!--+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-->
<a name="OWTHERM"></a> <a name="OWTHERM"></a>
<h3>OWTHERM</h3> <h3>OWTHERM</h3>
<ul>FHEM module to commmunicate with 1-Wire bus digital thermometer devices<br /><br /> <ul>FHEM module to commmunicate with 1-Wire bus digital thermometer devices<br /><br />
@ -9807,7 +9734,6 @@ href="http://www.elv.de/output/controller.aspx?cid=74&detail=10&detail2=29870">U
<br> <br>
</ul> </ul>
<a name="TCM120"></a>
<a name="TCM"></a> <a name="TCM"></a>
<h3>TCM</h3> <h3>TCM</h3>
<ul> <ul>
@ -10388,6 +10314,7 @@ volume</pre>
</ul> </ul>
<br> <br>
</ul> </ul>
</ul>
<a name="ZWDongle"></a> <a name="ZWDongle"></a>
<h3>ZWDongle</h3> <h3>ZWDongle</h3>
@ -11504,13 +11431,13 @@ volume</pre>
"Put" the newly created device in this room. The name can contain the "Put" the newly created device in this room. The name can contain the
wildcards %TYPE and %NAME, see the example above.</li><br> wildcards %TYPE and %NAME, see the example above.</li><br>
<a name="filelog"></a> <a name="filelogattr"></a>
<li>filelog<br> <li>filelog<br>
Create a filelog associated with the device. The filename can contain Create a filelog associated with the device. The filename can contain
the wildcards %TYPE and %NAME, see the example above. The filelog will the wildcards %TYPE and %NAME, see the example above. The filelog will
be "put" in the same room as the device.</li><br> be "put" in the same room as the device.</li><br>
<a name="weblink"></a> <a name="weblinkattr"></a>
<li>weblink<br> <li>weblink<br>
Create a weblink associated with the device/filelog.</li><br> Create a weblink associated with the device/filelog.</li><br>
@ -12126,6 +12053,7 @@ volume</pre>
</ul> </ul>
<br> <br>
</ul> </ul>
</ul>
<a name="watchdog"></a> <a name="watchdog"></a>
<h3>watchdog</h3> <h3>watchdog</h3>
@ -12183,7 +12111,6 @@ volume</pre>
<li>a generic watchdog (one watchdog responsible for more devices) is <li>a generic watchdog (one watchdog responsible for more devices) is
currently not possible.</li> currently not possible.</li>
</ul> </ul>
</ul>
<br> <br>
</ul> </ul>
@ -12204,7 +12131,6 @@ volume</pre>
</li> </li>
</ul> </ul>
<br> <br>
</ul> </ul>
<a name="telnet"></a> <a name="telnet"></a>

View File

@ -75,7 +75,7 @@
Nightly SVN version: a Nightly SVN version: a
<a href="http://www.dhs-computertechnik.de/downloads/fhem-cvs.tgz"> <a href="http://www.dhs-computertechnik.de/downloads/fhem-cvs.tgz">
tarball</a>, or from the fhem commandline via <a tarball</a>, or from the fhem commandline via <a
href="commandref.html#updatefhem">updatefhem</a>. <br><br> href="commandref.html#update">update</a>. <br><br>
Please fill out our <a href="survey.pl">survey</a>, Please fill out our <a href="survey.pl">survey</a>,