mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-01-31 06:39:11 +00:00
Added double ;;;;
git-svn-id: https://svn.fhem.de/fhem/trunk@3264 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
cbfd25095e
commit
e4d8f262b1
@ -214,6 +214,15 @@ off at 07:00.<br>
|
||||
define lampoff at 07:00 set Lamp1 off; set Lamp2 off<br>
|
||||
define lampoff at 07:00 set Lamp1 off;; set Lamp2 off<br>
|
||||
</ul>
|
||||
For every further indirection you need to double the semicolons:, e.g. to
|
||||
switch on every day 2 devices at 7:00 for 10 minutes you have to write:<br>
|
||||
<ul>
|
||||
define onAt at 07:00 set Lamp1 on;;set Lamp2 on;; define offAt at +00:10 set Lamp1 off;;;;set Lamp2 off
|
||||
</ul>
|
||||
Don't dispair, the previous example can also be written as
|
||||
<ul>
|
||||
define onAt at 07:00 set Lamp1,Lamp2 on-for-timer 600
|
||||
</ul>
|
||||
<br>
|
||||
|
||||
|
||||
|
@ -179,18 +179,23 @@ Die Kommunikation mit FHEM kann entweder in einer "session" (über telnet) o
|
||||
<h3>FHEM Befehlstypen</h3>
|
||||
<ul>
|
||||
Es gibt drei Arten von Befehlen: "fhem" Befehle (werden in diesem Dokument
|
||||
beschrieben), SHELL-Befehle (diese müssen von doppelten Anführungszeichen ""
|
||||
eingeschlossen werden) und PERL-Ausdrücken (von geschwungenen Klammern {}
|
||||
eingeschlossen). SHELL-Befehle oder PERL-Ausdrücke werden für komplexe <a href="#at">at</a>
|
||||
oder <a href="#notify">notify</a> Ausdrücke benötigt, können aber auch als "normale" Befehle angewendet werden.
|
||||
<p class="MsoNormal">Die folgenden drei Befehle bewirken z.B. dasselbe
|
||||
Ergebnis, wenn sie am "telnet"-Prompt eingegeben werden:
|
||||
beschrieben), SHELL-Befehle (diese müssen von doppelten
|
||||
Anführungszeichen "" eingeschlossen werden) und PERL-Ausdrücken (von
|
||||
geschwungenen Klammern {} eingeschlossen). SHELL-Befehle oder
|
||||
PERL-Ausdrücke werden für komplexe <a href="#at">at</a> oder <a
|
||||
href="#notify">notify</a> Ausdrücke benötigt, können aber auch
|
||||
als "normale" Befehle angewendet werden.
|
||||
<br>
|
||||
<br>
|
||||
|
||||
Die folgenden drei Befehle bewirken z.B. dasselbe Ergebnis, wenn sie am
|
||||
telnet-Prompt eingegeben werden:
|
||||
<ul>
|
||||
set lamp off<br>
|
||||
"fhem.pl 7072 "set lamp off""<br>
|
||||
{fhem("set lamp off")}<br>
|
||||
</ul>
|
||||
<p>SHELL-Kommandos werden im Hintergrund ausgeführt,
|
||||
SHELL-Kommandos werden im Hintergrund ausgeführt,
|
||||
PERL-Ausdrücke und FHEM-Kommandos werden im Haupt-"thread" ausgeführt. Um
|
||||
PERL-Ausdrücke leichter eingeben zu können, sind einige Spezialfunktionen und
|
||||
Variablen verfügbar. Lesen Sie sich bitte die Abschnitte
|
||||
@ -198,25 +203,39 @@ Variablen verfügbar. Lesen Sie sich bitte die Abschnitte
|
||||
Perl special</a> zum besseren Verständnis durch.</p>
|
||||
<p>Um FHEM-Befehle in einen SHELL-Script zu triggern (dies ist
|
||||
eine "andere" Möglichkeit), benutzen Sie bitte die oben beschriebene Client-Form
|
||||
der fhem.pl.</p>
|
||||
<p> </p>
|
||||
<p">Mehrere FHEM-Kommandos hintereinander werden mittels
|
||||
der fhem.pl.
|
||||
<br>
|
||||
|
||||
Mehrere FHEM-Kommandos hintereinander werden mittels
|
||||
Semikolon (;) getrennt. Weil Semikola auch in PERL-Code oder SHELL-Programmen
|
||||
benutzt werden, müssen sie mittels doppelten Semikola geschützt werden. Lesen
|
||||
Sie sich bitte die <b>Bermerkungen </b>des <a href="#notify">notify</a>-Abschnittes zu Kommandoparametern und Regeln durch.</p>
|
||||
<p>Z.B. schaltet die erste der folgenden Befehlszeilen die
|
||||
Lampe 1 nur/erst zur Uhrzeit 07:00 Uhr aus, die Lampe 2 aber sofort und die
|
||||
zweite Befehlszeile schaltet Lampe 1 und 2 um 7:00 Uhr gleichzeitig aus. </p>
|
||||
<p> </p>
|
||||
Sie sich bitte die <b>Bermerkungen </b>des <a href="#notify">notify</a>-Abschnittes zu Kommandoparametern und Regeln durch.
|
||||
<br>
|
||||
|
||||
Z.B. schaltet die erste der folgenden Befehlszeilen die Lampe 1 nur/erst zur
|
||||
Uhrzeit 07:00 Uhr aus, die Lampe 2 aber sofort und die zweite Befehlszeile
|
||||
schaltet Lampe 1 und 2 um 7:00 Uhr gleichzeitig aus.
|
||||
<ul>
|
||||
define lampoff at 07:00 set Lamp1 off; set Lamp2 off<br>
|
||||
define lampoff at 07:00 set Lamp1 off;; set Lamp2 off<br>
|
||||
</ul>
|
||||
<p">Befehle können entweder direkt eingegeben oder aus
|
||||
seiner Datei (z.B. am Start von FHEM aus der Konfugurationsdatei eingelesen
|
||||
werden. Die Befehle werden entweder direkt ausgeführt oder später wenn sie als
|
||||
Argumente eines <a href="#at">at</a> oder <a href="#notify">notify</a>-Befehles verwendet werden. </p>
|
||||
<p> </p>
|
||||
<br>
|
||||
Für jede weitere Indirektion muss man die Strichpunkte verdoppeln. Um also die beiden Lampen um 7:00 für 10 Minuten einzuschalten schreibt man:
|
||||
<ul>
|
||||
define onAt at 07:00 set Lamp1 on;;set Lamp2 on;; define offAt at +00:10 set Lamp1 off;;;;set Lamp2 off
|
||||
</ul>
|
||||
Keine Angst, das Vorherige kann in FHEM auch deutlich einfacher formuliert werden als:
|
||||
<ul>
|
||||
define onAt at 07:00 set Lamp1,Lamp2 on-for-timer 600
|
||||
</ul>
|
||||
<br>
|
||||
|
||||
Befehle können entweder direkt eingegeben oder aus einer Datei (z.B. am
|
||||
Start von FHEM aus der Konfugurationsdatei) eingelesen werden. Die Befehle
|
||||
werden entweder direkt ausgeführt oder später wenn sie als Argumente
|
||||
eines <a href="#at">at</a> oder <a href="#notify">notify</a>-Befehles verwendet
|
||||
werden.
|
||||
|
||||
<p>Eine mit einem \ abgeschlossene Zeile wird mit der
|
||||
nachfolgenden Zeile verbunden. Somit können lange Befehlszeilen (die z.B. aus
|
||||
mehreren PERL-Befehlen bestehen) auf mehrere Zeilen aufgteilt werden. Einige
|
||||
@ -229,7 +248,7 @@ Zeilen erstreckende Befehle, indem man keine \ am Zeilenende eingeben muss.</p>
|
||||
<a name="devspec"></a>
|
||||
<h3>Geräte-Spezifikation (devspec)</h3>
|
||||
<ul>
|
||||
<p>Die Befehle
|
||||
Die Befehle
|
||||
<a href="#attr">attr</a>,
|
||||
<a href="#deleteattr">deleteattr</a>,<a href="#delete">delete</a>,
|
||||
<a href="#get">get</a>,
|
||||
@ -238,7 +257,7 @@ Zeilen erstreckende Befehle, indem man keine \ am Zeilenende eingeben muss.</p>
|
||||
<a href="#setstate">setstate</a>,<a href="file:///C:/Inetpub/wwwroot/www.fhem.de/commandref_frame_DE.html#setstate"><span style="text-decoration: underline">
|
||||
</span></a>können eine komplexere
|
||||
Gerätespezifikation als Argumente enthalten, die auch eine Anzahl von Geräten
|
||||
betreffen kann. Eine Gerätespezifikation (Kurzfassung) kann z.B. so aussehen:</p>
|
||||
betreffen kann. Eine Gerätespezifikation (Kurzfassung) kann z.B. so aussehen:
|
||||
<ul>
|
||||
<li>ein einzelner Gerätename. Dies ist der
|
||||
meist vorkommende Fall.</li>
|
||||
@ -254,8 +273,7 @@ Zeilen erstreckende Befehle, indem man keine \ am Zeilenende eingeben muss.</p>
|
||||
Als Attribut können Sie entweder Attribute die mittels "attr"-Befehl oder
|
||||
eines der "internen" Attribute wie DEF, STATE oder TYPE angeben.</li>
|
||||
</ul>
|
||||
<p>
|
||||
Beispiele: </p>
|
||||
Beispiele:
|
||||
<ul>
|
||||
<code>set lamp1 on</code><br>
|
||||
<code>set lamp1,lamp2,lamp3 on</code><br>
|
||||
@ -267,8 +285,8 @@ Zeilen erstreckende Befehle, indem man keine \ am Zeilenende eingeben muss.</p>
|
||||
<code>list disabled=</code><br>
|
||||
<code>list TYPE=FS20</code><br>
|
||||
</ul>
|
||||
Bemerkungen: <br>
|
||||
<ul>
|
||||
Bemerkungen:
|
||||
<ul>
|
||||
<li>zuerst wird die durch Kommata getrennte
|
||||
Spezifikation abgearbeitet, dann folgen die Bereichsspezifikationen und die
|
||||
regulären Ausdrücke</li>
|
||||
|
Loading…
Reference in New Issue
Block a user