2012-11-25 17:34:28 +00:00
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
2013-03-26 20:46:50 +00:00
< html >
< head >
2013-09-02 10:52:23 +00:00
< title > FHEM Referenz< / title >
2018-10-07 16:45:18 +00:00
< link rel = "stylesheet" type = "text/css" href = "../www/pgm2/style.css" / >
2012-11-25 17:34:28 +00:00
< meta http-equiv = "Content-type" content = "text/html; charset=UTF-8" >
2018-10-07 16:45:18 +00:00
< meta name = "viewport" content = "initial-scale=1.0,user-scalable=1" >
2013-03-26 20:54:06 +00:00
< link rel = "shortcut icon" href = "/fhem/icons/favicon.ico" / >
2012-11-25 17:34:28 +00:00
< / head >
2018-10-07 16:45:18 +00:00
< body style = "word-wrap: break-word;" class = "commandref" >
2014-10-17 18:27:05 +00:00
< div id = "menuScrollArea" >
2014-10-18 05:33:02 +00:00
< div id = "logo" > < / div >
< div id = "menu" >
< h3 > fhem.pl Referenz< / h3 >
2016-08-19 12:47:50 +00:00
< br > < br >
2018-10-07 16:45:18 +00:00
< a href = "#" > Zum Anfang< / a >
2016-08-19 12:47:50 +00:00
< br > < br >
2018-10-07 16:45:18 +00:00
< a style = "display:none" href = "#" name = "loadAll" > Alles laden< / a >
2016-08-19 12:47:50 +00:00
< br > < br >
< a id = "otherLang" style = "display:none" href = "#" name = "otherLang" >
< span style = "display:none" lang = "DE" > Deutsche< / span >
< span style = "display:none" lang = "EN" > Englische< / span >
Doku fü r < span class = "mod" > < / span > laden
< / a >
2014-10-18 05:33:02 +00:00
< / div >
2014-10-17 18:27:05 +00:00
< / div >
2012-11-25 17:34:28 +00:00
< div id = "right" >
< h3 > Inhalt< / h3 >
< ul >
< a href = "#intro" > Einleitung< / a > < br >
< a href = "#command" > FHEM Befehls-Typen< / a > < br >
2012-12-01 11:44:34 +00:00
< a href = "#devspec" > Gerä te-Spezifikation< / a > < br >
2014-10-04 11:30:39 +00:00
< a href = "#attributes" > Attribute< / a > < br >
2012-11-25 17:34:28 +00:00
< br >
< b > FHEM-Befehle< / b >
< ul >
2016-01-16 19:27:21 +00:00
<!-- header:command -->
2016-08-19 12:47:50 +00:00
< a href = "#apptime" > apptime< / a > <!-- liefert Daten über Ausführungszeiten -->
< a href = "#attr" > attr< / a > <!-- setzt ein Attribut für ein FHEM Gerät -->
< a href = "#cancel" > cancel< / a > <!-- bricht ein sleep ab -->
< a href = "#createlog" > createlog< / a > <!-- fügt ein FileLog und ein SVG an einem existierenden FHEM Gerät -->
< a href = "#define" > define< / a > <!-- definiert ein FHEM Gerät -->
< a href = "#defmod" > defmod< / a > <!-- definiert oder modifiziert ein FHEM Gerät -->
< a href = "#delete" > delete< / a > <!-- entfernt ein FHEM Gerät -->
< a href = "#deleteattr" > deleteattr< / a > <!-- entfernt ein Attribut -->
< a href = "#deletereading" > deletereading< / a > <!-- entfernt ein Reading -->
< a href = "#displayattr" > displayattr< / a > <!-- zeigt Attribute eines FHEM Gerätes -->
< a href = "#get" > get< / a > <!-- holt ein Wert von einem FHEM Gerät -->
< a href = "#IF" > IF< / a > <!-- bedingte Ausführung von FHEM Befehlen -->
< a href = "#include" > include< / a > <!-- liest eine Datei mit FHEM Befehlen ein -->
< a href = "#inform" > inform< / a > <!-- zeigt Events in einer telnet Verbindung -->
< a href = "#list" > list< / a > <!-- zeigt Definition,Readings und Attribute eines FHEM Gerätes -->
< a href = "#modify" > modify< / a > <!-- ändert die Definition eines FHEM Gerätes -->
< a href = "#notice" > notice< / a > <!-- zeigt und bestätigt Systemmeldungen -->
< a href = "#quit" > quit< / a > <!-- endet eine telnet Verbindung zu FHEM -->
< a href = "#reload" > reload< / a > <!-- lädt ein FHEM Modul (Programmdefinition) -->
< a href = "#rename" > rename< / a > <!-- benennt ein FHEM Gerät um -->
< a href = "#rereadcfg" > rereadcfg< / a > <!-- lädt die FHEM Konfiguration neu -->
< a href = "#save" > save< / a > <!-- speichert die FHEM Konfiguration -->
< a href = "#set" > set< / a > <!-- setzt ein Wert in einem FHEM Gerät -->
< a href = "#setdefaultattr" > setdefaultattr< / a > <!-- definiert ein "default" Attribut -->
< a href = "#setreading" > setreading< / a > <!-- setzt ein Reading für ein FHEM Gerät -->
< a href = "#setstate" > setstate< / a > <!-- setzt den Status eines FHEM Geräes -->
2019-01-18 09:27:06 +00:00
< a href = "#setuuid" > setuuid< / a > <!-- setzt den internen FUUID Wert -->
2019-02-18 08:14:24 +00:00
< a href = "#show" > show< / a > <!-- zeigt tempor&aunl;ren Raum. nur in FHEMWB -->
2016-08-19 12:47:50 +00:00
< a href = "#shutdown" > shutdown< / a > <!-- beendet FHEM -->
< a href = "#sleep" > sleep< / a > <!-- verzögerte Ausführung -->
< a href = "#trigger" > trigger< / a > <!-- generiert ein FHEM Event -->
< a href = "#usb" > usb< / a > <!-- sucht nach USB Geräten -->
2012-11-25 17:34:28 +00:00
< / ul >
< br >
2017-03-08 19:13:04 +00:00
< b > Gerä temodule< / b >
2012-11-25 17:34:28 +00:00
< ul >
< a href = "#global" > global< / a > < br >
2016-01-16 19:27:21 +00:00
<!-- header:device -->
2012-11-25 17:34:28 +00:00
< / ul >
< br >
< b > Hilfs (Erweiterungs-) Module< / b >
< ul >
2016-01-16 19:27:21 +00:00
<!-- header:helper -->
2012-11-25 17:34:28 +00:00
< / ul >
< br >
< a href = "#perl" > PERL Besonderheiten< / a > < br >
< a href = "#gnuplot-syntax" > gnuplot file Syntax< / a > < br >
< / ul >
< a name = "intro" > < / a >
< h3 > Einleitung< / h3 >
< ul >
2012-12-01 11:44:34 +00:00
< p > FHEM wird hauptsä chlich zur Heimautomatisierung benutzt,
ist aber ebenso fü r andere Aufgaben einsetzbar wo Benachrichtigungen,
2012-11-25 17:34:28 +00:00
Zeitschaltungen und Datensammlungen eine wichtige Rolle spielen.< / p >
2012-12-01 11:44:34 +00:00
< p > FHEM unterstü tzt verschiedene Hardwaregerä te die eine
2012-11-25 17:34:28 +00:00
Verbindung mittels unterschiedlicher Protokolle (z.B. FHZ1000 mit Interfaces vom
2012-12-01 11:44:34 +00:00
Typ FS20 und HMS, CM11 um mit X10 zu arbeiten) sowie logischer Gerä te wie FS20
oder FHT die einen Nachrichtenaustausch mit verschiedensten Gerä ten die diese
Protokolle verwenden ermö glichen.< / p >
2012-11-25 17:34:28 +00:00
< p >
2012-12-01 11:44:34 +00:00
FHEM ist modular. Abhä ngig von den unterschiedlichen Gerä ten werden in den
Modulen verschiedene Funktionen (z.B. define, get, set) realisiert. FHEM enthä lt
2012-11-25 17:34:28 +00:00
weitere Funktionen wie Trigger (< a href = "#notify" > notify< / a > ),
2012-12-01 11:44:34 +00:00
Zeitabhä ngige Funktionen (< a href = "#at" > at< / a > )
die die Funktionalitä t erweitern.< / p >
2012-11-25 17:34:28 +00:00
< p >
2012-12-01 11:44:34 +00:00
FHEM wird entweder ü ber einfache ASCII-Kommandozeilen gesteuert die in Dateien
wie z.B. der Konfigurationsdatei fhem.cfg gespeichert sind oder ü ber eine TCP/IP
Verbindung, entweder direkt in einer "telnet"-Sitzung, oder per fhem.pl im
Client-Modus oder ü ber eines der Webfrontends.< br > < / p >
< p class = "MsoNormal" > Wenn Sie den FHEM-Server starten, mü ssen Sie eine
Konfigurationsdatei auswä hlen:< / p >
2012-11-25 17:34:28 +00:00
< ul >
2012-12-28 12:11:44 +00:00
< code > perl fhem.pl fhem.cfg< / code >
2012-11-25 17:34:28 +00:00
< / ul >
2012-12-28 12:11:44 +00:00
< p > Nachstehend eine Minimal-Konfiguration Datei: < / p > < pre >
attr global < a href = "#logfile" > logfile< / a > log/fhem.log
attr global < a href = "#modpath" > modpath< / a > .
attr global < a href = "#statefile" > statefile< / a > log/fhem.save
2012-11-25 17:34:28 +00:00
attr global < a href = "#verbose" > verbose< / a > 3
2012-12-28 12:11:44 +00:00
define telnetPort < a href = "#telnet" > telnet< / a > 7072 global
define WEB < a href = "#FHEMWEB" > FHEMWEB< / a > 8083 global< / pre >
2012-11-25 17:34:28 +00:00
2012-12-28 12:11:44 +00:00
Die letzten zwei Zeilen definieren einen telnet und einen WEB Zugang, beide kö nnen aber
bei Bedarf auch abgeschaltet werden.< br > < br >
Die WEB Schnittstelle kann ü ber
< ul >
http://< fhemhost> :8083
< / ul >
erreicht werden.
< br > < br >
2012-11-25 17:34:28 +00:00
2012-12-01 11:44:34 +00:00
Die Kommunikation mit FHEM kann entweder in einer "session" (ü ber telnet) oder
2012-12-28 12:11:44 +00:00
ü ber einzelne Klient-Kommandos (ü ber fhem.pl) erfolgen. Beispiel:
2012-11-25 17:34:28 +00:00
< ul >
2012-12-28 12:11:44 +00:00
< code > telnet < fhemhost> 7072< br >
2012-12-01 11:44:34 +00:00
< NL> < / code > (Die Betä tigung der " Enter" -Taste schaltet in den "prompt"
2012-11-25 17:34:28 +00:00
Modus)< code > < br >
< command> ...< br >
quit< / code > < br >
< / ul >
oder
< ul >
2012-12-28 12:11:44 +00:00
< code > fhem.pl < fhemhost> :7072 "< command> ..."< / code >
2012-11-25 17:34:28 +00:00
< / ul >
2017-03-23 06:54:13 +00:00
< br >
Falls FHEM als root gestartet wurde, und ein OS-Benutzer fhem existiert, dann
wechselt FHEM nach dem start zu diesem Benutzer (via setuid). < br >
2012-11-25 17:34:28 +00:00
< / ul >
2012-12-28 12:11:44 +00:00
< br >
2015-02-20 17:40:25 +00:00
<!-- intro end - diese Zeile nicht entfernen! -->
2012-11-25 17:34:28 +00:00
< a name = "command" > < / a >
< h3 > FHEM Befehlstypen< / h3 >
< ul >
2013-06-09 10:43:34 +00:00
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.
< br >
< br >
Die folgenden drei Befehle bewirken z.B. dasselbe Ergebnis, wenn sie am
telnet-Prompt eingegeben werden:
2012-11-25 17:34:28 +00:00
< ul >
set lamp off< br >
"fhem.pl 7072 "set lamp off""< br >
{fhem("set lamp off")}< br >
< / ul >
2013-06-09 10:43:34 +00:00
SHELL-Kommandos werden im Hintergrund ausgefü hrt,
2012-12-01 11:44:34 +00:00
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
2013-08-07 11:18:15 +00:00
Variablen verfü gbar. Lesen Sie sich bitte die Abschnitte < a href = "#perl" >
2012-12-01 11:44:34 +00:00
Perl special< / a > zum besseren Verstä ndnis durch.< / p >
2012-11-25 17:34:28 +00:00
< p > Um FHEM-Befehle in einen SHELL-Script zu triggern (dies ist
2012-12-01 11:44:34 +00:00
eine "andere" Mö glichkeit), benutzen Sie bitte die oben beschriebene Client-Form
2013-06-09 10:43:34 +00:00
der fhem.pl.
< br >
Mehrere FHEM-Kommandos hintereinander werden mittels
2012-11-25 17:34:28 +00:00
Semikolon (;) getrennt. Weil Semikola auch in PERL-Code oder SHELL-Programmen
2012-12-01 11:44:34 +00:00
benutzt werden, mü ssen sie mittels doppelten Semikola geschü tzt werden. Lesen
2013-06-09 10:43:34 +00:00
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.
2012-11-25 17:34:28 +00:00
< 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 >
2013-06-09 10:43:34 +00:00
< 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.
2012-11-25 17:34:28 +00:00
< p > Eine mit einem \ abgeschlossene Zeile wird mit der
2012-12-01 11:44:34 +00:00
nachfolgenden Zeile verbunden. Somit kö nnen lange Befehlszeilen (die z.B. aus
2012-11-25 17:34:28 +00:00
mehreren PERL-Befehlen bestehen) auf mehrere Zeilen aufgteilt werden. Einige
2012-12-01 11:44:34 +00:00
Web-Frontends (z.B. webpgm2) erleichtern die Eingabe von sich ü ber mehrere
2012-11-25 17:34:28 +00:00
Zeilen erstreckende Befehle, indem man keine \ am Zeilenende eingeben muss.< / p >
< p > < / p >
< / ul >
2015-02-20 17:40:25 +00:00
<!-- command end - diese Zeile nicht entfernen! -->
2012-11-25 17:34:28 +00:00
< a name = "devspec" > < / a >
2012-12-01 11:44:34 +00:00
< h3 > Gerä te-Spezifikation (devspec)< / h3 >
2012-11-25 17:34:28 +00:00
< ul >
2013-12-07 11:31:38 +00:00
Die Befehle
2012-11-25 17:34:28 +00:00
< a href = "#attr" > attr< / a > ,
< a href = "#set" > set< / a > ,
2013-08-07 11:18:15 +00:00
< a href = "#get" > get< / a > , usw.
2013-12-07 11:31:38 +00:00
< a href = "#attr" > attr< / a > ,
< a href = "#deleteattr" > deleteattr< / a > ,
< a href = "#displayattr" > displayattr< / a > ,
< a href = "#delete" > delete< / a > ,
< a href = "#get" > get< / a > ,
< a href = "#list" > list< / a > ,
< a href = "#set" > set< / a > ,
< a href = "#setreading" > setreading< / a > ,
< a href = "#setstate" > setstate< / a > ,
< a href = "#trigger" > trigger< / a >
2013-08-07 11:18:15 +00:00
kö nnen eine komplexere Gerä tespezifikation als Argumente enthalten,
die auch eine Anzahl von Gerä ten betreffen kann. Eine
2013-12-07 11:31:38 +00:00
Gerä tespezifikation kann folgendes sein:
2012-11-25 17:34:28 +00:00
< ul >
2013-12-07 11:31:38 +00:00
< li > ein einzelner Gerä tename. Dies ist der Normalfall< / li >
< li > eine durch Komma(,) getrennte Liste von Gerä tenamen< / li >
< li > ein regulä rer Ausdruck< / li >
< li > ein NAME=WERT Ausdruck, wo NAME ein "Internal" Wert wie TYPE ist, ein
Reading-Name oder ein Attribut. WERT ist ein regulä rer Ausdruck.
2015-12-19 20:36:40 +00:00
Um die Bedingung zu negieren, muss NAME!=WERT verwendet werden.
Um die Suche einzugrenzen, kann man als Praefix i: fü r internal
Werte, r: fü r Reading-Namen und a: fü r Attribute verwenden,
2018-02-13 21:19:52 +00:00
siehe das Beispiel unten. Groß -/Kleinschreibung wird durch die
Verwendung von ~ oder !~ ignoriert.
2013-12-07 11:31:38 +00:00
< / li >
< li > Falls die Spezifikation von :FILTER=NAME=WERT gefolgt wird,
dann wird die zuvor gefundene Liste durch diesen neuen Ausdruck
gefiltert.
2012-11-25 17:34:28 +00:00
< / ul >
2013-06-09 10:43:34 +00:00
Beispiele:
2012-11-25 17:34:28 +00:00
< ul >
< code > set lamp1 on< / code > < br >
< code > set lamp1,lamp2,lamp3 on< / code > < br >
< code > set lamp.* on< / code > < br >
< code > set room=kitchen off< / code > < br >
2013-12-07 11:31:38 +00:00
< code > set room=kitchen:FILTER=STATE=on off< / code > < br >
< code > set room=kitchen:FILTER=STATE!=off off< / code > < br >
2012-11-25 17:34:28 +00:00
< code > list disabled=< / code > < br >
2018-02-13 21:19:52 +00:00
< code > list room~office< / code > < br >
2013-12-07 11:31:38 +00:00
< code > list TYPE=FS20 STATE< / code > < br >
2015-12-19 20:36:40 +00:00
< code > list i:TYPE=FS20 STATE< / code > < br >
2012-11-25 17:34:28 +00:00
< / ul >
2013-06-09 10:43:34 +00:00
Bemerkungen:
< ul >
2013-12-07 11:31:38 +00:00
< li > die Spezifikation kann keine Leerzeichen enthalten.< / li >
< li > falls ein Gerä tename exakt dem Spezifikation entspricht, dann werden
keine regulä re Ausdrü cke oder Filter ausgewertet.
< li > zuerst wird die durch Komma getrennte Spezifikation abgearbeitet, dann
folgen die regulä ren Ausdrü cke und die Filter< / li >
< li > die Befehlszeile kann die selbe Gerä tebezeichnung mehrfach enthalten
z.B.: " set lamp3,lamp3 on" . Lamp3 wird hier zwei Mal
eingeschalten.< / li >
< li > um Strukturen mit komplexeren Anforderungen zu realisieren lesen Sie
bitte den Abschnitt zu < a href = "#structure" > structure< / a > .
< / ul >
2012-11-25 17:34:28 +00:00
< / ul >
2015-02-20 17:40:25 +00:00
<!-- devspec end - diese Zeile nicht entfernen! -->
2012-11-25 17:34:28 +00:00
2014-10-04 11:30:39 +00:00
< a name = "attributes" > < / a >
< h3 > Attribute< / h3 >
2013-08-07 11:18:15 +00:00
2014-10-04 11:30:39 +00:00
Alle Gerä te haben Attribute. Diese werden mittels des Befehls < a
href="#attr">attr< / a > gesetzt, angezeigt mit dem Befehl < a
href="#displayattr">displayattr< / a > , und mit dem Kommando < a
href="#deleteattr">deleteattr< / a > entfernt.< p >
2013-08-07 11:18:15 +00:00
2014-10-04 11:30:39 +00:00
Es gibt globale Attribute, die von allen Gerä ten genutzt werden, und lokale
Attribute, die nur auf individuelle Gerä teklassen zutreffen.< p >
Manche Gerä te (wie < a href = "#FHEMWEB" > FHEMWEB< / a > ) definieren automatisch
neue globale Attribute bei der ersten Definition eines Gerä tes dieses
Typs.< p >
Sie kö nnen den Befehl< p > < code > attr global userattr
< attributelist> < / code > < p > fü r das Gerä t < a
href="#global">global< / a > verwenden, um neue globale Attribute zu deklarieren,
und < p > < code > attr < devicespec> userattr
< attributelist> < / code > ,< p > um neue lokale Attribute fü r bestimmte
individuelle Gerä te gemä & szlig < a href = "#devspec" > devspec< / a > zu
deklarieren.
< code > < attributelist> < / code > ist eine durch Leerzeichen getrennte Liste,
die die Namen der zusä tzlichen Attribute enthä lt. In der
Dokumentation zum Befehl < a href = "#attr" > attr< / a > sind Beispiele.< p >
Seien Sie vorsichtig und ü berschreiben Sie keine zusä tzlichen
globale Attribute, die bereits zuvor durch Sie selbst oder ein Gerä t
definiert wurden. < code > attr global userattr < attributelist> < / code >
sollte so frü h wie mö glich in der Konfiguration erscheinen.
< h4 > Gerä tespezifische Attribute< / h4 >
Gerä tespezifische Attribute sind in dem jeweiligen Abschnitt zum
Gerä t dokumentiert.
< h4 > Globale Attribute fü r alle Gerä te< / h4 >
< ul >
2012-11-25 17:34:28 +00:00
< a name = "alias" > < / a >
2016-09-21 19:02:22 +00:00
< li > alias< br >
2013-08-18 14:13:59 +00:00
Wird in FHEMWEB benutzt, um ein en anderen Namen fü r ein Gerä t
anzuzeigen z.B. wenn Sonderzeichen/Leerzeichen nicht in der
Gerä tedefinition verwendet werden kö nnen.
2016-09-21 19:02:22 +00:00
< / li > < br >
2013-08-18 14:13:59 +00:00
2016-09-21 19:02:22 +00:00
< a name = "comment" > < / a >
< li > comment< br >
Fü gt einen beliebigen Kommentar hinzu.
< / li > < br >
2012-11-25 17:34:28 +00:00
2014-10-04 11:30:39 +00:00
< a name = "eventMap" > < / a >
< li > eventMap< br >
Ersetze Event Namen und setze Argumente. Der Wert dieses Attributes
besteht aus einer Liste von durch Leerzeichen getrennte Werten. Jeder
Wert ist ein durch Doppelpunkt getrenntes Paar. Der erste Teil stellt den
"alten" Wert, der zweite Teil den "neuen" Wert dar. Wenn der erste Wert
ein Slash (/) oder ein Komma (,) ist, dann wird nicht durch Leerzeichen
sondern durch das vorgestellte Zeichen getrennt.
2017-09-21 08:12:53 +00:00
Optional kann man auch ein widgetOverride angeben (angehä ngt nach
einem Doppelpunkt (z.Bsp. on-for-timer:OnFor:texField). Die
Voreinstellung ist :noArg, um das Input Feld bei cmdList zu vermeiden.
2014-10-04 11:30:39 +00:00
Beispiele:
< ul > < code >
attr store eventMap on:open off:closed< br >
attr store eventMap /on-for-timer 10:open/off:closed/< br >
set store open
< / code > < / ul >
2015-06-04 16:47:20 +00:00
Die explizite Variante dieses Attributes hat folgenden Syntax:
< ul > < code >
2018-02-03 18:34:23 +00:00
attr store eventMap { dev=>{'on'=>'open'}, usr=>{'open'=>'on'} }< br >
attr store eventMap { dev=>{'^on(-for-timer)?(.*)'=>'open$2'},
usr=>{'^open(.*)'=>'on$1'},
fw=>{'^open(.*)'=>'open'} }
2015-06-04 16:47:20 +00:00
< / code > < / ul >
Diese Variante muss dann verwendet werden, falls das Mapping nicht
symmetrisch ist. Der erste Teil (dev) spezifiziert dabei die Richtung
Gerä t zu Benutzer, d.h. falls das Gerä t on 100 oder
on-for-timer 100 meldet, dann wird der Benutzer open 100 zu sehen
bekommen. Der zweite Teil (usr) spezifiziert die Richtung Benutzer zu
Gerä t, d.h. wenn man "set XX open 100" eingibt, dann wird das
Kommando "on 100" an das Gerä t gesendet. In beiden Fä llen wird
der Schlü ssel zuerst direkt, und dann als Regexp mit dem Wert
verglichen. Falls man Regexps mit Wildcards im usr Teil verwendet, dann
muss man den fw Teil mit dem exakt gleichen Schlü sseln
ausfü llen, damit FHEMWEB in der Detail-Ansicht den set-Auswahl
richtig anzeigen kann.
2014-10-04 11:30:39 +00:00
< / li > < br >
2016-09-21 19:02:22 +00:00
< a name = "genericDisplayType" > < / a >
< li > genericDisplayType< br >
Wird von bestimmten Frontends (aber nicht FHEMWEB) verwendet, um
fü r das Gerä t passende Voreinstellungen (Bild/Befehle/etc)
anzubieten. Z.Zt werden folgende Werte unterstü tzt:
switch,outlet,light,blind,speaker,thermostat
< / li > < br >
< a name = "group" > < / a >
< li > group< br >
Gerä tegruppen. FHEMWEB zeigt Gerä te die in die gleiche Gruppe
gehö ren auch in einer gemeinsamen Box an. Ein Gerä t kann zu
mehr als einer Gruppe gehö ren. In diesem Fall mü ssen die
entsprechenden Gruppen durch Kommata getrennt eingetragen werden. Wenn
dieses Attribut nicht gesetzt ist, wird der in der Gerä tegruppe
gesetzte Gerä tetyp verwendet.
< / li > < br >
< a name = "room" > < / a >
< li > room< br >
Filtert/gruppiert Gerä te.
Ein Gerä t kann zu mehr als einem Raum zugeordnet werden. In diesem
Fall mü ssen die Raumzuordnungen durch Kommata getrennt
angegeben werden.< br >
Gerä te, die dem Raum mit der Bezeichnung "hidden" zugeordnet
werden, erscheinen nicht auf der Webseite.
2018-01-05 20:46:21 +00:00
Mit -> werden Rä ume strukturiert, z.Bsp. OG-> Schlafzimmer
2016-09-21 19:02:22 +00:00
< / li > < br >
< a name = "showtime" > < / a >
< li > showtime< br >
Wird im FHEMWEB verwendet, um die Zeit der letzten Aktivitä t
anstelle des Status in der Gesamtansicht anzuzeigen. Nü tzlich z.B.
fü r FS20 PIRI Gerä te.
< / li > < / br >
< a name = "suppressReading" > < / a >
< li > suppressReading< br >
Wird verwendet, um nicht gewollte Readings zu entfernen. Der Wert ist
ein Regular Expression, ergä nzt mit ^ und $. Wird nur in
Ausnahmefä llen benö tigt.
< / li > < br >
< a name = "verbose" > < / a >
< li > verbose< br >
Setzt den Schwellwert fü r die Logfile-Meldungen.
Mö gliche Werte sind:
< ul >
< li > 0 - Server start/stop< / li >
< li > 1 - Fehlermeldungen oder unbekannte Pakete< / li >
< li > 2 - bedeutende Ereigbisse/Alarme.< / li >
< li > 3 - ausgesendete Kommandos werden gelogged.< / li >
< li > 4 - von den einzelnen Gerä ten empfangene Daten.< / li >
< li > 5 - Fehlersuche.< / li >
< / ul >
Der fü r die < a href = "#global" > global< / a > Instanz gesetzte Wert gilt
als Voreinstellung fü r die Instanzen, die dieses Attribut nicht
gesetzt haben.
< / li > < br >
2014-10-04 11:30:39 +00:00
< / ul >
< a name = "readingFnAttributes" > < / a >
< h4 > readingFnAttribute< / h4 >
2013-01-03 13:08:39 +00:00
Die folgenden Attribute werden bei Modulen verwendet, die standardisierte
"readings" Aktualisierung der fhem.pl benutzen. Informieren Sie sich in der
Liste der Modulattribute wenn Sie wissen mö chten ob dies
unterstü tzt wird.< br > < br >
2014-10-04 11:30:39 +00:00
< ul >
2013-01-03 13:08:39 +00:00
< a name = "stateFormat" > < / a >
< li > stateFormat< br >
Ä ndert den Gerä testatus, dies ist z.Bsp. in der Ausgabe des list
Kommandos zu sehen, oder in der Raum& uumlbersicht von FHEMWEB. Falls
nicht gesetzt, dann wird das state Reading ü bernommen. Sonst werden
alle Wö rter im Wert des Attributes durch das entsprechende Reading des
Gerä tes ersetzt (soweit vorhanden). Falls der Wert in {}
eingeschlossen ist, dann wird es als Perl Ausdruck ausgewertet. Die
2017-04-07 10:51:47 +00:00
Auswertung passiert bei jeder Ä nderung eines Readings.< br >
Die < a href = "#set" > hier< / a > beschriebene "set magic" wird auch angewendet.
2013-01-03 13:08:39 +00:00
< / li >
2012-11-25 17:34:28 +00:00
< a name = "event-on-update-reading" > < / a >
< li > event-on-update-reading< br >
2013-01-03 13:08:39 +00:00
Wenn nicht gesetzt, erzeugt jede Verä nderung eines "readings" ein
Ereignis, welches z.B. von < a href = "#notify" > notify< / a > oder< a
href="FileLog"> FileLog< / a > berü cksichtigt wird. Wenn gesetzt erzeugen
2014-12-22 07:12:41 +00:00
nur Aktualisierungen der eingetragenen "readings" ein Ereignis.
2012-11-25 17:34:28 +00:00
< / li >
< a name = "event-on-change-reading" > < / a >
< li > event-on-change-reading< br >
2013-01-03 13:08:39 +00:00
Dieses Attribut enthä lt eine durch Kommata getrennte Liste von
"readings". Wenn gesetzt, erzeugen nur Verä nderungen der gelisteten
"readings" ein Ereignis. Wenn die aktualiserten Werte der gelisteten
2014-12-22 07:12:41 +00:00
"readings" identisch sind, wird kein Ereignis generiert.< br >
Wenn hinter dem Namen eines "readings" eine :Schwelle angegeben ist, wird
das Event nur getriggert wenn die Ä nderung grö sser als diese
Schwelle ist.
< / li >
2013-09-07 06:07:34 +00:00
Die unterschiedlichen Bedeutungen von event-on-update-reading und
event-on-change-reading sind folgende:
< ol >
2013-01-03 13:08:39 +00:00
< li > Wenn beide Attribute nicht gesetzt sind erzeugt jede Aktualisierung
eines jeden "readings" eines Gerä tes ein Ereignis.< / li >
< li > Wenn eines der Attribute gesetzt ist, erzeugen nur Updates oder
2016-01-31 17:59:54 +00:00
ä nderungen von "readings" die in einem der Attribute gesetzt
2013-01-03 13:08:39 +00:00
sind ein Ereignis.< / li >
< li > Wenn ein "reading" in event-on-update-reading aufgefü hrt ist,
erzeugt eine Aktualisierung ein Ereignis unabhä ngig ob das
"reading" auch in event-on-change-reading aufgelistet ist.< / li >
2013-09-07 06:07:34 +00:00
< / ol >
2013-03-01 11:09:18 +00:00
2016-04-25 08:13:57 +00:00
< a name = "timestamp-on-change-reading" > < / a >
< li > timestamp-on-change-reading< br >
Dieses Attribut enthä lt eine durch Kommata getrennte Liste von
"readings". Wenn gesetzt, werden die Zeitstempel der gelisteten "readings"
nicht aktualisiert wenn durch ein ebenfalls gesetztes event-on-change-reading
fü r dieses "reading" kein Ereignis erzeugen wü rde.
< / li >
< p >
2015-01-25 17:37:12 +00:00
< a name = "event-aggregator" > < / a >
< li > event-aggregator< / li >
The primary uses of this attribute are to calculate (time-weighted) averages of
readings over time periods and to throttle the update rate of readings and thus
the amount of data written to the logs.< p >
2016-02-21 17:18:03 +00:00
This attribute takes a comma-separated list of < code > reading:interval:method:function:holdTime< / code >
quintuples. You may use regular expressions for < code > reading< / code > . If set, updates for the
2015-01-25 17:37:12 +00:00
listed readings are ignored and associated events are suppressed for a black-out period of at
2016-02-21 17:18:03 +00:00
least < code > interval< / code > seconds (downsampling). After the black-out period has expired, the reading is
2015-01-25 17:37:12 +00:00
updated with a value that is calculated from the values and timestamps of the previously ignored
updates within the black-out period as follows:
< table >
< tr > < th > function< / th > < th > description< / th > < / tr >
< tr > < td > v< / td > < td > the last value encountered< / td > < / tr >
< tr > < td > v0< / td > < td > the first value encountered< / td > < / tr >
< tr > < td > min< / td > < td > the smallest value encountered< / td > < / tr >
< tr > < td > max< / td > < td > the largest value encountered< / td > < / tr >
< tr > < td > mean< / td > < td > the arithmetic mean of all values< / td > < / tr >
< tr > < td > sd< / td > < td > the standard deviation from the mean< / td > < / tr >
2016-02-21 17:18:03 +00:00
< tr > < td > median< / td > < td > the median of all values (requires holdTime and function none)< / td > < / tr >
2016-01-09 15:17:20 +00:00
< tr > < td > integral< / td > < td > the arithmetic sum (if not time-weighted) or integral area (if time-weighted) of all values< / td > < / tr >
2016-02-21 17:18:03 +00:00
< tr > < td > n< / td > < td > number of samples< / td > < / tr >
< tr > < td > t< / td > < td > timestamp of the last value< / td > < / tr >
< tr > < td > t0< / td > < td > timestamp of the first value< / td > < / tr >
2015-01-25 17:37:12 +00:00
< / table >
< p >
If < code > method< / code > is < code > none< / code > , then that's all there is. If < code > method< / code >
is < code > const< / code > or < code > linear< / code > , the time-weighted series of values is taken into
account instead. The weight is the timespan between two subsequent updates.
With the < code > const< / code > method, the value is the value of the reading at the beginning of
the timespan; with the < code > linear< / code > method, the value is the arithmetic average of
the values at the beginning and the end of the timespan.
Rollovers of black-out periods are handled as one would expect it.< p >
One would typically use the < code > linear< / code > method with the < code > mean< / code > function for
quantities continuously varying over time like electric power consumption, temperature or speed.
For cumulative quantities like energy consumed, rain fallen or distance covered,
the < code > none< / code > method with the < code > v< / code > function is used. The < code > constant< / code >
method is for discrete quantities that stay constant until the corresponding reading is updated,
e.g. counters, switches and the like.< p >
2016-02-21 17:18:03 +00:00
If the < code > holdTime< / code > in seconds is defined, the samples will be kept in memory allowing
the calculation of floating statistics instead of blocked statistics. With < code > holdTime< / code >
defined the < code > interval< / code > can be kept undefined so that the readings update rate is unchanged
or it can be set to a value less then < code > holdTime< / code > for downsampling as described above
with a full history of the readings in memory. Note that the historic samples are not persistent
and will be lost when restarting FHEM.< p >
2015-01-25 17:37:12 +00:00
The event aggregator only takes into consideration those updates that remain after preprocessing
according to the < code > event-on-update-reading< / code > and < code > event-on-change-reading< / code >
directives. Besides which, any update of a reading that occurs within a timespan from the preceding
update that is smaller than the resolution of FHEM's time granularity is ditched.< p >
2016-02-21 17:18:03 +00:00
When more than one function should be calculated for the same reading, the original reading must be
multiplied (e.g. by using a notify) before applying the event-aggregator to the derived readings.< p >
2015-01-25 17:37:12 +00:00
2016-02-21 17:18:03 +00:00
Examples:< br >
< code > attr myPowerMeter event-aggregator EP_POWER_METER:300:linear:mean,EP_ENERGY_METER:300:none:v< / code > < br >
< code > attr myBadSensor event-aggregator TEMP::none:median:300< / code > < br >
< code > attr mySunMeter event-aggregator SUN_INTENSITY_24H::const:integral:86400< / code >
2015-01-25 17:37:12 +00:00
< / li >
2013-03-01 11:09:18 +00:00
< a name = "event-min-interval" > < / a >
< li > event-min-interval< br >
Dieses Attribut enthä lt eine durch Kommata getrennte Liste von
"readings:minInterval" Paare. readings kann ein regexp sein. Ein Event wird
nur dann generiert, falls seit dem letzten Auftreten des gleichen Events
2017-03-08 19:13:04 +00:00
mindestens minInterval Sekunden vergangen sind. Falls
event-on-change-reading auch spezifiziert ist, dann werden sie mit ODER
kombiniert, d.h. wenn einer der beiden Bedingungen wahr ist.
2013-09-07 06:07:34 +00:00
< / li >
2018-03-09 07:45:43 +00:00
< a name = "oldreadings" > < / a >
< li > oldreadings< br >
Dieses Attribut enthä lt eine durch Kommata getrennte Liste von
Readings. regex sind erlaubt. Fü r jedes Reading aus der Liste
speichert FHEM intern den vorherigen Wert wenn sich das Reading
ä ndert. Zum Zugriff auf die Werte gibt es die OldReadings.* Routinen.
< / li >
2013-01-13 15:16:31 +00:00
< a name = "userReadings" > < / a >
< li > userReadings< br >
2013-05-17 18:16:54 +00:00
Komma getrennte Liste von benutzerdefinierten Readings. Jede Definition hat
folgendes Format:
< ul > < code >
< reading> [:< trigger> ] [< modifier> ] { < perl code> }
< / code > < / ul >
Diese benutzerdefinierte Readings werden bei jeder Aktualisierung der
Gerä tereadings gesetzt, indem das spezifizierte < a href = "#perl" > perl
code< / a > < code > { < perl code> }< / code > ausgefü hrt wird, und
dessen Wert dem Reading zugewiesen wird.
Falls < trigger> spezifiziert ist, dann findet diese Ausfü hrung
nur dann statt, falls einer der aktualisierten Readings dem regexp
< trigger> entspricht (matched). < br >
Beispiele:
< ul > < code >
attr myEnergyMeter userReadings energy
{ ReadingsVal("myEnergyMeter","counters.A",0)/1250.0;; }< br >
attr myMultiMeter userReadings
2016-04-24 16:54:46 +00:00
energy1:counters.A.* {ReadingsVal("myMultiMeter","counters.A",0)/1250.0},
energy2:counters.B.* {ReadingsVal("myMultiMeter","counters.B",0)/1250.0}
2013-05-17 18:16:54 +00:00
< / code > < / ul >
< code > < modifier> < / code > kann die folgenden Werte haben:
2013-02-10 09:57:02 +00:00
< ul >
2013-05-17 18:16:54 +00:00
< li > none: als ob man es gar nicht spezifiziert hä tte.< / li >
< li > difference: das Reading wird auf die Differenz zw. dem aktuellen und
dem vorherigen Wert gesetzt.< / li >
< li > differential: das Reading wird auf die Differenz zw. dem aktuellen und
dem vorherigen Wert, geteilt durch die Sekunden zw. der aktuellen Zeit
und der letzten Auswertung, sekundengenau. Kein Wert wird berechnet,
2013-07-03 19:09:06 +00:00
falls der Unterschied unter eine Sekunde liegt.< / li >
2014-08-19 20:55:00 +00:00
< li > integral: das Gegenteil von differential. Das Ergebnis wird um das
Produkt aus der Zeit-Differenz und der Durschnittswert der letzten zwei
Readings erhö ht.< br >
result += (time - timeold) * (oldval + value) / 2
< / li >
2013-07-03 19:09:06 +00:00
< li > offset: wenn der aktuellen Wert kleiner als der vorherige Wert ist
2014-08-19 20:55:00 +00:00
wird der vorherige Wert zum Reading addiert. Das Reading kann dann als
offset verwendet werden um einen Zä hler der durch Sromverlust
zurü ckgesetzt wird zu korrigieren.< / li >
< li > monotonic: wenn die Differenz zw. dem aktuellen und dem vorherigen
Wert positiv ist wird diese Differenz zum Reading addiert. Damit
lä sst sich von einem Zä hler der bei Stromverlust
zurü ckgesetzt wird ein monoton wachsender Zä hler
ableiten.< / li >
2013-05-17 18:16:54 +00:00
< / ul >
Beispiel:
< ul > < code >
attr myPowerMeter userReadings power differential
{ ReadingsVal("myPowerMeter","counters.A",0)/1250.0}
< / code > < / ul >
2014-04-09 16:12:49 +00:00
Achtung:< ul >
< li > Falls difference oder differential spezifiziert ist, dann werden
fü r die Berechnung ä ltere Werte benö tigt, d.h. der Wert
wird frü hestens beim zweiten Ä nderung gesetzt.< / li >
< li > der Name der definierten Readings besteht aus alphanumerischen
Zeichen, Unterstrich (_) und Minus-Zeichen (-).< / li >
< / ul >
2013-01-13 15:16:31 +00:00
< / li > < br >
2012-11-25 17:34:28 +00:00
2013-05-17 18:16:54 +00:00
2014-10-04 11:30:39 +00:00
< / ul >
< h4 > Allgemeine Attribute< / h4 >
2015-02-01 12:43:13 +00:00
Die folgenden lokalen Attribute werden von mehreren Gerä ten verwendet:
2014-10-04 11:30:39 +00:00
< ul >
< a name = "IODev" > < / a >
< li > IODev< br >
2015-02-01 12:43:13 +00:00
Setzt das IO oder das physische Device, welches zum Senden der Signale an
2014-10-04 11:30:39 +00:00
dieses logische Device verwendet werden soll (Beispielsweise FHZ oder
CUL). Hinweis: Beim Start weist FHEM jedem logischen Device das letzte
physische Device zu, das Daten von diesem Typ empfangen kann. Das
2015-02-01 12:43:13 +00:00
Attribut IODev muss nur gesetzt werden, wenn mehr als ein physisches
Device fä hig ist, Signale von diesem logischen Device zu empfangen.
2014-10-04 11:30:39 +00:00
< / li > < br >
2015-02-01 12:43:13 +00:00
< li > Attribut "disable" umschalten< br / >
Das Attribut "disable" kann, sofern vom Gerä temodul bereitgestellt,< br / >
mit folgendem Befehl einfach umgeschaltet werden:< / br >
< br / >
< code > attr < device> disable toggle< / code > < br / >
< / li >
2014-10-04 11:30:39 +00:00
< / ul >
2015-02-20 17:40:25 +00:00
<!-- attributes end - diese Zeile nicht entfernen! -->
2014-10-04 11:30:39 +00:00
< br > < br >
< a name = "attr" > < / a >
< h3 > attr< / h3 >
< ul >
2018-01-27 22:06:08 +00:00
< code > attr [-a|-r] < devspec> < attrname> [< value> ]< / code > < br >
2014-10-04 11:30:39 +00:00
< br >
Dieser Befehl setzt ein Attribut fü r ein Gerä t welches mit < a
2018-01-30 08:26:21 +00:00
href="#define">define< / a > definiert wurde. value ist optional, und ist 1
falls nicht spezifiziert. Sie kö nnen auch Ihre eigenen
2014-10-04 11:30:39 +00:00
Attribute definieren, um sie in anderen Applikationen anzuwenden. Geben Sie
"< attr < name> ?" ein, um eine Liste verfü gbarer Attribute
anzuzeigen.
Siehe den Abschnitt ü ber < a href = "#devspec" > Gerä te-Spezifikation< / a >
fü r Details der < devspec> .< br >
2012-11-25 17:34:28 +00:00
2013-01-03 13:08:39 +00:00
Gerä tespezifische Attribute sind in der Beschreibung zum jeweiligen
Gerä t aufgefü hrt.
2014-10-15 17:11:07 +00:00
Nach der Durchfü hrung das globale Ereignis "ATTR" wird generiert.
2012-11-25 17:34:28 +00:00
< br >
2018-01-27 22:06:08 +00:00
Falls die Option -a spezifiziert ist, dann wird value zum aktuellen Wert
hinzugefü gt. Achtung: falls value nicht mit einem Komma (,)
anfä ngt, dann wird es mit einem Leerzeichen angehä ngt.
< br >
Mit der -r Option kann man Teile eines Attributes wieder entfernen.< br >
< br >
2012-11-25 17:34:28 +00:00
Beispiele:
2018-01-27 22:06:08 +00:00
< ul > < code >
attr global verbose 3< br >
attr lamp room kitchen< br >
attr lamp group lights< br >
attr lamp loglevel 6< br >
attr weatherstation event-on-update-reading wind,temperature,humidity< br >
attr weatherstation event-on-change-reading israining< br >
attr weatherstation event-on-change-reading israining,state< br >
attr heating stateFormat Temp:measured-temp, Valve:actuator< br >
attr -a TYPE=SVG room ,SvgRoom< / br >
attr -r TYPE=SVG room ,SvgRoom< / br >
< / code > < / ul >
2012-11-25 17:34:28 +00:00
< br >
Bemerkungen:< br >
< ul >
< li > Lesen Sie unter < a href = "#deleteattr" > deleteattr< / a > nach um Attribute
2012-12-01 11:44:34 +00:00
zu lö schen.< / li >
2012-11-25 17:34:28 +00:00
< / ul >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- attr end -->
2012-11-25 17:34:28 +00:00
2015-11-28 08:02:51 +00:00
< a name = "cancel" > < / a >
< h3 > cancel< / h3 >
< ul >
2016-04-25 08:13:57 +00:00
< code > cancel [< id> [quiet]]< / code >
2015-11-28 08:02:51 +00:00
< br > < br >
Entfernt ein benanntes < a href = "#sleep" > sleep< / a > .
< / ul >
2017-08-06 11:59:03 +00:00
<!-- cancel end -->
2012-11-25 17:34:28 +00:00
< a name = "define" > < / a >
< h3 > define< / h3 >
< ul >
2015-08-23 12:43:56 +00:00
< code > define [option] < name> < type> < type-specific> < / code > < br >
2012-11-25 17:34:28 +00:00
< br >
2015-04-15 13:21:04 +00:00
Definiert ein Gerä t. Sie mü ssen Gerä te einrichten um sie zu
beeinflussen (z.B. das Kommando set on/off auszufü hren). Gleichfalls
ist das Logfile besser lesbar wenn es z.B. "lamp off" anstatt "Device 5673,
Button 00, Code 00 (off)" als Text enthä lt. < br >
Nach der Durchfü hrung wird das globale Ereignis "DEFINED" generiert.
2012-11-25 17:34:28 +00:00
< br > < br >
2015-04-15 13:21:04 +00:00
Je nach Typ benö tigt man unterscheidliche Argumente, lesen Sie sich
bitte die zu dem jeweiligen Gerä t gehö renden Abschnitte durch.
2015-08-23 12:43:56 +00:00
< br > < br >
Optionen:< br >
< ul >
< li > -temporary< br >
Setzt den TEMPORARY Marker, was das Abspeichern dieser Definition in
fhem.cfg verhindert.
< / li > < br >
< li > -ignoreErr< br >
Reduziert die Anzahl der Fehlermeldungen, falls ein FHEM-Modul nicht
geladen werden kann. Wird in fhem.cfg.demo verwendet, da das RSS Beispiel
etliche, normalerweise nicht installierte perl-Module benö tigt.
< / li > < br >
< / ul >
2015-04-15 13:21:04 +00:00
< / ul >
2017-08-06 11:59:03 +00:00
<!-- define end -->
2015-04-15 13:21:04 +00:00
< a name = "defmod" > < / a >
< h3 > defmod< / h3 >
< ul >
2018-04-29 22:18:58 +00:00
< code > defmod [-temporary] < name> < type> < type-specific> < / code > < br >
2015-04-15 13:21:04 +00:00
< br >
Definiert ein Gerä t, oder ä ndert es, falls es exisitiert. Um
z.Bsp. eine Lampe 10 Minuten nach der letzten Meldung eines Bewegungsmelders
abzuschalten, kö nnte man folgendes definieren:
< ul > < code >
define mdNtfy notify motionDetector defmod mdOff at +00:10 set lamp off
< / code > < / ul >
Falls man statt defmod ein define verwenden wü rde, dann wü rde eine
Meldung innerhalb von 10 Minuten nach der letzten Meldung zu einem Fehler
fü hren, da mdOff noch existiert.
2012-11-25 17:34:28 +00:00
< br >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- defmod end -->
2012-11-25 17:34:28 +00:00
2013-01-19 13:36:29 +00:00
< a name = "delete" > < / a >
< h3 > delete< / h3 >
< ul >
< code > delete < devspec> < / code > < br >
< br >
2013-08-07 11:18:15 +00:00
Lö scht etwas was mit dem < a href = "#define" > define< / a > Befehl erstellt
worden ist.< br >
Siehe den Abschnitt ü ber < a href = "#devspec" > Gerä te-Spezifikation< / a >
fü r Details der < devspec> .< br >
Nach dem lö schen, wird das globale Ereignis "DELETED" erzeugt.< br >
2013-01-19 13:36:29 +00:00
Beispiel:
< ul >
< code > delete lamp< / code > < br >
< / ul >
< br >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- delete end -->
2013-01-19 13:36:29 +00:00
2012-11-25 17:34:28 +00:00
< a name = "deleteattr" > < / a >
< h3 > deleteattr< / h3 >
< ul >
< code > deleteattr < devspec> [< attrname> ]< / code > < br >
< br >
2013-08-07 11:18:15 +00:00
Lö scht entweder ein einzelnes Attribut (siehe Abschnitt < a
href="#attr">attr< / a > ) oder alle Attribute eines Gerä tes (falls
kein < attrname> angegeben wird).< br >
Siehe den Abschnitt ü ber < a href = "#devspec" > Gerä te-Spezifikation< / a >
fü r Details der < devspec> .< br >
2014-10-15 17:11:07 +00:00
Nach der Durchfü hrung das globale Ereignis "DELETEATTR" wird generiert.
2012-11-25 17:34:28 +00:00
< br >
2012-11-30 17:21:43 +00:00
Beispiele:
2012-11-25 17:34:28 +00:00
< ul >
< code > deleteattr lamp follow-on-for-timer< / code > < br >
< code > deleteattr lamp< / code > < br >
< / ul >
< br >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- deleteattr end -->
2012-11-25 17:34:28 +00:00
2013-01-19 13:36:29 +00:00
< a name = "deletereading" > < / a >
< h3 > deletereading< / h3 >
2012-11-25 17:34:28 +00:00
< ul >
2013-01-19 13:36:29 +00:00
< code > deletereading < devspec> < readingname> < / code > < br >
2012-11-25 17:34:28 +00:00
< br >
2013-08-07 11:18:15 +00:00
Entfernt das Reading < readingname> fü r das spezifizierte
Gerä t. < readingname> ist ein perl Regular-Expression, was den
vollstä ndigen Namen des Readings erfassen muss.
Mit grö ß ter Sorgfalt verwenden! FHEM kann abstü rzen, falls
man lebenswichtige Readings entfernt.< br >
Siehe den Abschnitt ü ber < a href = "#devspec" > Gerä te-Spezifikation< / a >
fü r Details der < devspec> .< br >
2013-01-19 13:36:29 +00:00
< br >
2013-08-07 11:18:15 +00:00
Beispiele:
2012-11-25 17:34:28 +00:00
< ul >
2013-01-19 13:36:29 +00:00
< code > deletereading mySensor temp1< / code > < br >
< code > deletereading mySensor temp\d+< / code > < br >
2012-11-25 17:34:28 +00:00
< / ul >
< br >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- deletereading end -->
2012-11-25 17:34:28 +00:00
2013-08-07 11:18:15 +00:00
< a name = "displayattr" > < / a >
< h3 > displayattr< / h3 >
< ul >
< code > displayattr < devspec> [< attrname> ]< / code > < br >
< br >
Zeigt entweder den Wert eines Attributes an (falls < attrname>
spezifiziert wurde) oder alle Attribute eines Gerä tes.
Siehe den Abschnitt ü ber < a href = "#devspec" > Gerä te-Spezifikation< / a >
fü r Details der < devspec> .< br >
Falls mehrere Gerä te spezifiziert wurden, dann enthä lt die Ausgabe
den Namen der Gerä te.
< br >
Beispiele:
< ul >
< code >
fhem> di WEB< br >
menuEntries AlarmOn,/fhem?cmd=set%20alarm%20on< br >
room Misc.< br >
fhem& gt di WEB room< br >
Misc.< br >
< / code >
< / ul >
< br >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- displayattr end -->
2013-08-07 11:18:15 +00:00
2012-11-25 17:34:28 +00:00
< a name = "get" > < / a >
< h3 > get< / h3 >
< ul >
< code > get < devspec> < type-specific> < / code >
< br > < br >
2012-12-01 11:44:34 +00:00
Fragt einen Wert direkt (aktuell) vom Gerä t ab und wartet auf eine
Antwort. Eine allgemeine Liste mö glicher Paramter erhalten Sie mit< ul >
2012-11-25 17:34:28 +00:00
< code > get < device> ?< / code >
< / ul >
2013-08-07 11:18:15 +00:00
Siehe den Abschnitt ü ber < a href = "#devspec" > Gerä te-Spezifikation< / a >
fü r Details der < devspec> .< br >
2012-12-01 11:44:34 +00:00
Jedes Gerä t hat unterschiedliche " get" -Parameter. Lesen Sie Details bitte im
zugehö rigen Abschnitt nach.< br >
2012-11-25 17:34:28 +00:00
< br >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- get end -->
2012-11-25 17:34:28 +00:00
< a name = "getstate" > < / a >
< h3 > getstate< / h3 >
< ul >
< code > getstate < devspec> < / code >
< br > < br >
2012-12-01 11:44:34 +00:00
Gibt einen kurzen, durch Leerzeichen getrennte Statusliste fü r < devspec>
aus . Dies ist nü tzlich, um das Gerä t in z.B. Cacti zu beobachten.< br >
2012-11-30 17:21:43 +00:00
Beispiel:
2012-11-25 17:34:28 +00:00
< ul > < code >
getstate lamp< br >
state:1< br >
< br >
getstate fl< br >
ack:0 actuator:2 day-temp:21.5 desired-temp:22.5 [...] measured-temp:22.9 [...]
< / code > < / ul >
2012-12-01 11:44:34 +00:00
Bemerkung: Um diesen Befehl nutzen zu kö nnen, kopieren Sie bitte die
2012-11-30 17:21:43 +00:00
Datei 99_getstate.pm aus dem Verzeichnis contrib/getstate/ in Ihr FHEM
Verzeichnis.
2012-11-25 17:34:28 +00:00
< br >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- getstate end -->
2012-11-25 17:34:28 +00:00
< a name = "include" > < / a >
< h3 > include< / h3 >
< ul >
< code > include < filename> < / code > < br >
< br >
2016-05-31 08:55:42 +00:00
Liest (z.B. als Befehlszeile in der fhem.cfg) die in < filename>
angegebene Datei in FHEM ein und interpretiert jede Dateizeile als FHEM
Befehl. Dieses Befehl sollte nur von Experten verwendet werden.
2012-11-25 17:34:28 +00:00
< br >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- include end -->
2012-11-25 17:34:28 +00:00
< a name = "inform" > < / a >
< h3 > inform< / h3 >
< ul >
< code > inform {on|off|timer|raw} [regexp]< / code > < br >
< br >
2018-07-15 09:23:19 +00:00
Ermö glicht Event-Verfolgung ü ber das telnet Interface. Es ist das
telnet Equivalent des FHEMWEB Event-Monitors, es kann aber auch von weiteren
Programmen zur Benachrichtigung verwendet werden. Optionen:< br >
< ul >
< li > on< br >
aktiviert die Benachrichtigung.< / li >
< li > onWithState< br >
zeigt auch das zusä tzliche state Event< / li >
< li > off< br >
deaktiviert die Benachrichtigung (sowohl Events wie auch Logs, s.u.)< / li >
< li > raw< br >
zeigt (nur) die raw Events der physikalischen Module< / li >
< li > timer< br >
stellt der Daten ein Zeitstempel vor< / li >
< li > log< br >
zeigt die vom FHEM Log Interface protokollierten Daten< / li >
< li > status< br >
zeigt den aktuellen Status< / li >
< / ul >
2012-11-25 17:34:28 +00:00
< br >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- inform -->
2012-11-25 17:34:28 +00:00
< a name = "list" > < / a >
< h3 > list< / h3 >
< ul >
2016-10-24 06:21:37 +00:00
< code > list [devspec] [value]< / code > < br >
oder< br >
2016-12-14 13:04:42 +00:00
< code > list {-r|-R} devspec< / code > < br >
2012-11-25 17:34:28 +00:00
< br > < br >
2014-10-04 11:30:39 +00:00
Auflistung aller " definitions" , " notify" und
" at" -Definitionen. Dies ist eines der wenigen Befehle, die im
Normalfall eine Zeichenkette ausgeben.< br > Siehe den Abschnitt ü ber < a
href="#devspec">Gerä te-Spezifikation< / a > fü r Details der
< devspec> .< br >
2013-08-07 11:18:15 +00:00
2014-10-04 11:30:39 +00:00
< br > Wenn value angegeben ist, der von ( DEF, TYPE, usw) oder reading
(actuator, measured-temp) fü r alle Gerä te die in devspec angegeben
sind. < br > < br > Beispiel:
< pre > < code > fhem> list
2012-11-25 17:34:28 +00:00
Type list < name > for detailed info.
Internal:
global (Internal)
FHZ:
FHZ (fhtbuf: 23)
FS20:
Btn4 (on-old-for-timer)
Roll1 (on)
Stehlampe (off)
FHT:
fl (measured-temp: 21.1 (Celsius))
KS300:
out1 (T: 2.9 H: 74 W: 2.2 R: 8.2 IR: no)
at:
at_rollup (Next: 07:00:00)
notify:
ntfy_btn4 (active)
FileLog:
avglog (active)
< / name > < / code > < / pre >
2014-10-04 11:30:39 +00:00
Wenn Sie fü r < code > name< / code > einen Gerä tenamen eingeben, dann
erhalten Sie einen genauen Status fü r das in< code > name< / code >
angegebene Gerä t angezeigt, z.B.:
2012-11-25 17:34:28 +00:00
< pre > < code > fhem> list fl
Internals:
CODE 5102
DEF 5102
NAME fl
NR 15
STATE measured-temp: 21.1 (Celsius)
TYPE FHT
IODev FHZ
Attributes:
room Heizung
Readings:
2006-11-02 09:45:56 actuator 19%
[...]
< / code > < / pre >
2016-10-24 06:21:37 +00:00
Mit der -r (raw) Option werden die Daten in einem fü r fhem.cfg bzw.
2016-12-14 13:04:42 +00:00
fhem.state passenden Format generiert. -R liefert diese Daten auch fü r
alle von diesem Gerä t vermutlich benö gten Gerä te.
Achtung: die Bestimmung dieser Liste ist ungenau.
2012-11-25 17:34:28 +00:00
< / ul >
2017-08-06 11:59:03 +00:00
<!-- list end -->
2012-11-25 17:34:28 +00:00
< a name = "modify" > < / a >
< h3 > modify< / h3 >
< ul >
< code > modify < name> < type-dependent-options> < / code >
< br > < br >
2014-10-04 11:30:39 +00:00
Dieser Befehl wird benutzt, um Definitionen zu verä ndern. Er ist
nü tzlich, um < a href = "#at" > at< / a > oder < a href = "#notify" > notify< / a >
Definitionen zu verä ndern. Wenn Sie einen Wert einer an Definition
verä ndern, dann wird nur der fü r die Zeit zustä ndige Teil
geä ndert. Im Falle der Verä nderung einer Definition vom Typ
" notify" wird nur der regex Teil geä ndert. Alle anderen
2014-10-15 17:11:07 +00:00
Werte (Stati, Attribute, etc) bleiben erhalten.
After modify, the global event "MODIFIED" will be generated.
Nach der Durchfü hrung das globale Ereignis "MODIFIED" wird generiert.
< br > < br >
2014-10-04 11:30:39 +00:00
2012-11-30 17:21:43 +00:00
Beispiel:
2012-11-25 17:34:28 +00:00
< ul >
< code > define lampon at 19:00 set lamp on< / code > < br >
< code > modify lampon *19:00< / code > < br >
< code > modify lampon 19:00 set lamp on-for-timer 16< / code > < br >
< / ul >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- modify end -->
2012-11-25 17:34:28 +00:00
< a name = "quit" > < / a >
< h3 > quit< / h3 >
< ul >
< code > quit< / code >
< br > < br >
2012-11-30 17:21:43 +00:00
Dieser Befehl wird in einer TCP/IP Session benutzt um die Client-Sitzung zu
beenden.< br >
Wird dieser Befehl in einem Skript benutzt, wird das abarbeiten des Skriptes
beendet.
2012-11-25 17:34:28 +00:00
< br > < br >
2012-11-30 17:21:43 +00:00
Beispiel:
2012-11-25 17:34:28 +00:00
< ul >
< code > quit< / code >
< / ul >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- quit end -->
2012-11-25 17:34:28 +00:00
< a name = "reload" > < / a >
< h3 > reload< / h3 >
< ul >
< code > reload < module> < / code >
< br > < br >
Reload the given module from the module directory. It is a convenient way to
test modules whithout restarting the program.
< br > < br >
Example:
< ul >
< code > reload 99_PRIV< / code >
< / ul >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- reload end -->
2012-11-25 17:34:28 +00:00
< a name = "rename" > < / a >
< h3 > rename< / h3 >
< ul >
< code > rename < oldname> < newname> < / code >
< br > < br >
2014-10-04 11:30:39 +00:00
Benennt ein Gerä t von < oldname> in < newname> ,
einschliesslich der Attribute, um. Das globale Ereignis " RENAMED"
wird erstellt, Lesen Sie bitte den Abschnitt " notify" durch um
Details zu erfahren.
2012-11-25 17:34:28 +00:00
< br > < br >
2012-11-30 17:21:43 +00:00
Beispiel:
2012-11-25 17:34:28 +00:00
< ul >
< code > rename FHT_1234 fht.kitchen< / code >
< / ul >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- rename end -->
2012-11-25 17:34:28 +00:00
< a name = "rereadcfg" > < / a >
< h3 > rereadcfg< / h3 >
< ul >
< code > rereadcfg [fhem-config-file]< / code >
< br > < br >
2014-10-04 11:30:39 +00:00
Liest entweder die aktuelle Konfigurationsdatei oder die angegebene Datei
ein.< br > Der Ablauf ist dabei wie folgt: Zuerst wird das < a
href="#statefile">statefile< / a > gesichert. Dann werden alle Gerä te
gelö scht. Dann wird die aktuelle Konfigurationsdatei (oder die
angegebene Datei) eingelesen zuletzt wird das statefile neu eingelesen.< br >
Wenn dieser Ablauf abgeschlossen ist, wird das globale REREADCFG Ereignis
ausgelö st. Alle existierenden Verbindungenwerden bis zum
" rereadcfg" Ereignis getrennt.
2012-11-25 17:34:28 +00:00
< br > < br >
2012-11-30 17:21:43 +00:00
Beipiel:
2012-11-25 17:34:28 +00:00
< ul >
< code > rereadcfg< / code >
< / ul >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- rereadcfg end -->
2012-11-25 17:34:28 +00:00
< a name = "save" > < / a >
< h3 > save< / h3 >
< ul >
< code > save [< configfile> ]< / code >
< br > < br >
2012-11-30 17:21:43 +00:00
Sichert zuerst das < a href = "#statefile" > statefile< / a > und dann das
< a href = "#configfile" > configfile< / a > . Wenn ein Parameter angegeben wird dieser
anstelle der allgemeinen Konfigurationsdatei benutzt.< br > < br >
Hinweise:
2012-11-25 17:34:28 +00:00
< ul >
2014-10-04 11:30:39 +00:00
< li > Der Befehl speichert nur " definitions" und
" attributes" aber keine (set/get) Befehle die vorher Teil der
Konfigurationsdatei waren. Wenn Sie solche Befehle nach der
2015-04-06 07:36:54 +00:00
Initialisierung (z.B. < a href = "#FHZset" > FHTcode< / a > )
2014-10-04 11:30:39 +00:00
benö tigen,dann mü ssen Sie sie mit < a href = "#notify" > notify< / a >
triggern wenn das INITIALIZED Ereignis eintritt.< / li >
< li > Der Befehl " save" versucht Kommentarzeilen (Zeilen die
mit # beginnen) und " include" -Zeilen zu erhalten, aber arbeitet
nicht korrekt wenn FHEM fü r diese Dateien keine Schreibrechte
besitzt.< / li >
2012-11-25 17:34:28 +00:00
2017-11-01 16:59:23 +00:00
< li > Vor dem Ü berschreiben der Dateien wird die alte Version gesichert,
siehe < a href = "#restoreDirs" > restoreDirs< / a > fü r Einzelheiten.< / li >
2012-11-25 17:34:28 +00:00
< / ul >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- save end -->
2012-11-25 17:34:28 +00:00
< a name = "set" > < / a >
< h3 > set< / h3 >
< ul >
< code > set < devspec> < type-specific> < / code >
< br > < br >
2013-01-27 21:30:41 +00:00
Der Befehl setzt Gerä teparameter/sendet Signale an ein Gerä t. Sie
erhalten eine Liste verfü gbarer Parameter wenn Sie folgendes eingeben:
2012-11-25 17:34:28 +00:00
< ul >
< code > set < name> ?< / code >
< / ul >
2013-08-07 11:18:15 +00:00
Siehe den Abschnitt ü ber < a href = "#devspec" > Gerä te-Spezifikation< / a >
fü r Details der < devspec> .< br >
Der " set" -Befehl gibt nur bei Fehler einen Wert zurü ck.
2013-01-27 21:30:41 +00:00
< br > < br >
Jedes Gerä t hat verschiedene Parameter die mit " set" gesetzt
werden kö nnen. Lesen Sie bitte den entsprechenden Abschnitt fü r
das Gerä t fü r Details durch.
2015-06-22 18:24:59 +00:00
< br > < br >
2018-06-14 13:06:30 +00:00
Ab featurelevel 5.7 ersetzt der set und setreading Befehl
2015-06-22 18:24:59 +00:00
< ul >
2017-04-04 14:45:48 +00:00
< li > [device:name] mit dem Wert des Readings, Internals oder Attributes
fü r device, falls sowohl device, als auch Reading, Internal oder
2017-04-05 11:36:44 +00:00
Attribut existiert, und nicht leer ist.
< ul >
< li > Man kann einen der Prä fixe r:, i: oder a: verwenden, um die
Suche einzuschrä nken, genau wie im devspec.< / li >
2017-04-05 12:27:20 +00:00
< li > Das Suffix :d extrahiert die erste Zahl.< / li >
< li > Das Suffix :i extrahiert die erste Zahl als Ganzzahl.< / li >
2017-04-05 11:36:44 +00:00
< li > Das Suffix :r< n> extrahiert die erste Zahl, und rundet sie auf
< n> Dezimalstellen. Falls < n> fehlt, dann wird auf eine
Dezimalstelle gerundet.< / li >
< li > Das Suffix :t liefert den Zeitstempel des Readings< / li >
< li > Das Suffix :sec liefert Anzahl der Sekunden seit Ä nderung
des Readings.< / li >
< / ul >
Beispiel:
< ul >
set Lamp blink [blinkDummy:number] [r:blinkDummy:duration:d]
< / ul >
< / lu >
2016-08-30 13:05:47 +00:00
< li > {(perlExpression)} mit dem Ergebnis der perlExpression.
2016-08-30 14:07:21 +00:00
$DEV wird dabei mit dem Namen des vom set betroffenen Gerä tes ersetzt.
2016-08-30 13:05:47 +00:00
< / li >
2015-06-22 18:24:59 +00:00
< / ul >
2017-04-07 10:51:47 +00:00
Diese Ersetzungen sind unter dem Namen "set magic" bekannt.
2015-06-22 18:24:59 +00:00
< br > < br >
2012-11-25 17:34:28 +00:00
2013-01-27 21:30:41 +00:00
< a name = "setExtensions" > < / a >
Manche Module unterstü tzen die sog. < b > set extensions< / b > , und in der
entsprechenden Dokumentation ist ein Link auf diesem Text zu finden. Falls im
Modul selber einer der unten aufgefü hrten Befehle implementiert ist, dann
wird die Modul-Implementation verwendet.
< ul >
< li > on-for-timer < sekunden& gt< br >
Das Gerä t wird per "on" eingeschaltet, und ein interner Zeitgeber
wird erstellt, um nach < sekunden> ein "off" Kommando
auszufü hren. Um diesen Zeitgeber zu entfernen sollte man das
Kommando mit dem Argument 0 erneut aufrufen. Achtung: dieser Zeitgeber
wird bei einem restart nicht gespeichert.< / li >
< li > off-for-timer < sekunden& gt< br >
siehe on-for-timer.< / li >
< li > on-till < timedet& gt< br >
Das Gerä t wird per "on" eingeschaltet, und ein at Instanz wird
definiert, um es um < timedet> (Format: HH:MM[:SS]) per off
auszuschalten. Diese at Instanz ist sichtbar unter dem Namen
gerä teName+"_till". Um das Ausschalten zu deaktivieren
2015-10-09 13:13:11 +00:00
lö scht man diese at Definition. Achtung: das Ein/Ausschalten wird
nicht durchgefü hrt, falls die aktuelle Uhrzeit nach der
spezifizierten Zeit ist, um folgende Szenarien zu vereinfachen:
< ul > < code >
define morningLight at *06:00 set Lamp on-till {sunrise()}
< / code > < / ul >
< / li >
< li > on-till-overnight < timedet& gt< br >
Wie on-till, aber die aktuelle Uhrzeit wird nicht mit der
Spezifizierten verglichen, damit folgendes funktioniert:
< ul > < code >
define nightLight at *{sunset()} set Lamp on-till-overnight 01:00
< / code > < / ul >
< / li >
2013-01-27 21:30:41 +00:00
< li > off-till < timedet& gt< br >
siehe on-till.< / li >
2015-10-09 13:13:11 +00:00
< li > off-till-overnight < timedet& gt< br >
siehe on-till-overnight.< / li >
2013-01-27 21:30:41 +00:00
< li > blink < anzahl> < blink-periode> < br >
Das Gerä t wird mit "on" fü r die < blink-periode>
eingeschaltet, und das wird nach < blink-periode> wiederholt. Um
das Blinken vorzeitig zu stoppen spezifiziert man "0 0" als
Argument.< / li >
< li > intervals < from1> -< till1> < from2> -< till2> ...
< / br >
Das Gerä t wird fü r die spezifizierten Intervalle
eingeschaltet. Die einzelnen Intervalle sind Leerzeichen getrennt, und
ein Intervall besteht aus zwei Zeitspezifikationen, die mit einem "-"
getrennt sind.
< / li >
2018-02-13 21:14:43 +00:00
< li > toggle< br >
Das Gerä t wird mit "on" eingeschaltet, falls STATE "off" ist (oder
dim 0), sonst wird es mit "off" ausgeschaltet.
2013-01-27 21:30:41 +00:00
< / ul >
Beispiele:
< ul >
< code >
set switch on-for-timer 12.5< br >
set switch on-till {sunset()}< br >
set switch blink 3 1< br >
set switch intervals 08:00-12:00 13:00-18:00< br >
< / code >
< / ul >
2018-11-17 22:57:02 +00:00
< br > < br >
< a name = "attrTemplate" > < / a >
attrTemplate< br >
mit diesem Befehl kann man eine Menge an vordefinierten Attributen setzen.
Die Einträ ge befinden sich in Dateien im FHEM/lib/AttrTemplate
Verzeichnis. Einträ ge kö nnen modul-spezifisch sein, und
mö glicherweise erfordern weitere Parameter.
2012-11-25 17:34:28 +00:00
< / ul >
2017-08-06 11:59:03 +00:00
<!-- set end -->
2012-11-25 17:34:28 +00:00
2016-08-19 12:47:50 +00:00
< a name = "setdefaultattr" > < / a >
< h3 > setdefaultattr< / h3 >
< ul >
< code > setdefaultattr [< attrname> [< value> ]] < / code > < br >
< br >
Fü gt Sie ein Standardattribut hinzu. Jedem nach dieser Zuweisung definierte
Gerä t wird dieses Attribut zugewiesen. Wenn kein "attrname" angegeben wird,
dann wird die Liste der Standardattribute gelö scht.
< br > < br >
Beispiel, um das Attribut "room kitchen" und "loglevel 4" allen Lampen
zuzuweisen:
< ul >
< code > setdefaultattr room kitchen< / code > < br >
< code > setdefaultattr loglevel 4< / code > < br >
< code > define lamp1 FS20 1234 11< / code > < br >
< code > define lamp2 FS20 1234 12< / code > < br >
< code > define lamp3 FS20 1234 13< / code > < br >
< code > setdefaultattr< / code > < br >
< / ul >
< br >
Anmerkungen:< br >
< ul >
< li > es gibt keine Mö glichkeit, ein einzelnes Standardattribut aus der Liste
tu lö schen.< / li >
< / ul >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- setdefaultattr end -->
2016-08-19 12:47:50 +00:00
2012-11-25 17:34:28 +00:00
2013-08-22 15:13:44 +00:00
< a name = "setreading" > < / a >
< h3 > setreading< / h3 >
< ul >
2013-12-02 18:56:31 +00:00
< code > setreading < devspec> < reading> < value> < / code >
2013-08-22 15:13:44 +00:00
< br > < br >
Der Befehl setzt das Reading < reading> auf den Wert < value> ohne
Signale an das betroffene Gerä t zu senden, generiert aber Ereignisse und
die ü bliche eventMap und stateFormat Umwandlung wird auch
durchgefü hrt.
< br >
Siehe den Abschnitt ü ber < a href = "#devspec" > Gerä te-Spezifikation< / a >
2015-11-30 06:32:35 +00:00
fü r Details der < devspec> und die Beschreibung des set Befehls
fü r Ersetzung.< br >
2013-08-22 15:13:44 +00:00
< br >
Beispiel:
< ul >
setreading lampe state on
< / ul >
2014-10-18 09:08:22 +00:00
Achtung: setreading generiert kein Event fü r ein Gerä t X, falls es
aus einem notify fü r Gerä t X aufgerufen wurde. In so einem Fall
kö nnte man auf "sleep 0.1; setreading X Y Z" ausweichen.
2013-08-22 15:13:44 +00:00
< / ul >
2017-08-06 11:59:03 +00:00
<!-- setreading end -->
2013-08-22 15:13:44 +00:00
2012-11-25 17:34:28 +00:00
< a name = "setstate" > < / a >
< h3 > setstate< / h3 >
< ul >
< code > setstate < devspec> < value> < / code >
< br > < br >
2015-06-04 16:47:20 +00:00
Der Befehl setzt den STATE Eintrag des Gerä tes direkt, ohne Ereignisse
2014-10-04 11:30:39 +00:00
zu generieren oder ein Signal an das Gerä t zu senden. Dieser Eintrag ist
maß gebend fü r die Status-Anzeige in diversen Frontends. Dieser
Befehl wird auch im < a href = "#statefile" > statefile< / a > benutzt.< br > Siehe den
Abschnitt ü ber < a href = "#devspec" > Gerä te-Spezifikation< / a > fü r
Details der < devspec> .< br > < br >
2013-08-22 15:13:44 +00:00
Beispiel:
2012-11-25 17:34:28 +00:00
< ul >
2013-08-22 15:13:44 +00:00
setstate lampe An
2012-11-25 17:34:28 +00:00
< / ul >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- setstate end -->
2012-11-25 17:34:28 +00:00
2019-01-18 09:27:06 +00:00
< a name = "setuuid" > < / a >
< h3 > setuuid< / h3 >
< ul >
< code > setuuid < device> < uuid> < / code >
< br > < br >
Systembefehl, um den FUUID internen Wert zu setzen.
Ist nicht vom Benutzer zu verwenden.
< / ul >
<!-- setstate end -->
2019-02-18 08:14:24 +00:00
< a name = "show" > < / a >
< h3 > show< / h3 >
< ul >
< code > show < devspec> < / code >
< br > < br >
Zeigt einen temporä ren Raum mit Gerä ten aus < devspec> ,
verfü gbar nur ü ber FHEMWEB.< br > Siehe den Abschnitt ü ber < a
href="#devspec">Gerä te-Spezifikation< / a > fü r Details der
< devspec> .< br >
< br > < br >
Example:
< ul >
< code > show TYPE=CUL_HM< / code > < br >
< / ul >
< / ul >
<!-- show end -->
2012-11-25 17:34:28 +00:00
< a name = "shutdown" > < / a >
< h3 > shutdown< / h3 >
< ul >
2017-12-09 10:40:21 +00:00
< p >
< code > shutdown [< var > restart< / var > ] [< var > exitValue< / var > ]< / code >
< / p >
< p >
Der Befehl fä hrt < abbr > FHEM< / abbr > herunter (nach dem Sichern aller < a
href="#statefile">Gerä testatus< / a > ). Er triggert den < code > global:SHUTDOWN< / code > -< span lang = "en" > Event< / span > .
Mit dem optionalen Parameter < var lang = "en" > restart< / var > startet < abbr > FHEM< / abbr > danach neu.
Der < var lang = "en" > exitValue< / var > ist möglicherweise bei bestimmten Start-Skripten zur korrekten Funktion
vonnö ten < abbr > bzw.< / abbr > wichtig.
< / p >
2012-11-30 17:21:43 +00:00
Beispiel:
2012-11-25 17:34:28 +00:00
< ul >
< code > shutdown< / code > < br >
2015-12-21 12:43:26 +00:00
< code > shutdown restart< / code > < br >
< code > shutdown 1< / code >
2012-11-25 17:34:28 +00:00
< / ul >
< / ul >
2017-08-06 11:59:03 +00:00
<!-- shutdown end -->
2012-11-25 17:34:28 +00:00
< a name = "sleep" > < / a >
< h3 > sleep< / h3 >
< ul >
2017-05-25 08:10:23 +00:00
< code > sleep < sec> [< id> ] [quiet]< / code >
2012-11-25 17:34:28 +00:00
< br > < br >
2015-07-29 05:46:10 +00:00
sleep gefolgt von weiteren Befehlen ist vergleichbar mit einem namenlosen < a
href="#at">at< / a > Kommando, es fü hrt die nachfolgenden Befehle aus,
nachdem es die spezifizierte Zeitspanne gewartet hat. Die Einheit ist
Sekunde, Millisekunden genau, da man Nachkommastellen spezifizieren
kann.< br > < br >
2017-05-25 08:10:23 +00:00
Ein sleep mit einer < id> ersetzt ein sleep mit der gleichen < id>
2015-11-28 08:02:51 +00:00
and can mit < a href = "#cancel" > cancel< / a > entfernt werden.
2013-07-25 07:35:49 +00:00
Falls sleep in at/notify/etc aufgerufen wurde, und die nachfolgenden
2015-05-24 09:00:53 +00:00
Kommandos einen nicht leeren Text zurü ckgeliefert haben, dann wird
dieser Text mit loglevel 2 protokolliert.< br >
2013-07-25 07:35:49 +00:00
quiet vermeidet diese Protokollierung.
2012-11-25 17:34:28 +00:00
< br > < br >
2013-07-25 07:35:49 +00:00
Beispiele:
2012-11-25 17:34:28 +00:00
< ul >
< code > sleep 0.5< / code > < br >
2013-07-25 07:35:49 +00:00
< code > define n3 notify btn3.* set lamp toggle;;sleep 0.5;;set lamp
toggle< / code > < br >
< code > define a3 at +*00:05 set Windsensor 1w_measure;; sleep 2 quiet;; get
Windsensor 1w_temp< / code >
2012-11-25 17:34:28 +00:00
< / ul >
< br >
2015-07-29 05:46:10 +00:00
Bemerkung: falls sleep von keinem Befehl gefolgt wird, dann wird FHEM
blockiert. Das ist unerwü nscht, und im FHEM-Log wird eine Warnung
protokolliert.
2012-11-25 17:34:28 +00:00
< / ul >
2017-08-06 11:59:03 +00:00
<!-- sleep end -->
< a name = "trigger" > < / a >
< h3 > trigger< / h3 >
< ul >
< code > trigger < devspec> < event> < / code >
< br > < br >
Generiert das Ereignis < event> , was z.Bsp. ein < a
href="#notify">notify< / a > anstoß en kann, oder den FileLog zum
protokollieren dieser Zeile bewegen kann.< br >
Siehe den Abschnitt ü ber < a href = "#devspec" > Gerä te-Spezifikation< / a >
fü r Details der < devspec> .< br >
< br >
Beispiel:
< ul >
< code > trigger btn3 on< / code >
< / ul >
< / ul >
<!-- trigger end -->
2015-02-20 17:40:25 +00:00
<!-- commands end - diese Zeile nicht entfernen! -->
2013-07-13 11:56:22 +00:00
2012-11-25 17:34:28 +00:00
< a name = "global" > < / a >
< h3 > global< / h3 >
< ul >
2014-10-04 11:30:39 +00:00
Das " global" Gerä t wird benutzt, um allgemeingü ltige
Attribute zu setzen. Es wird automatisch erstellt und kann nicht
gelö scht oder umbenannt werden. Es hat keine " set" oder
" get" Parameter.< br >
2012-11-25 17:34:28 +00:00
< br >
< b > Define< / b > < ul > N/A< / ul > < br >
< b > Set < / b > < ul > N/A< / ul > < br >
< b > Get< / b > < ul > N/A< / ul > < br >
< b > Attributes< / b >
< ul >
2019-01-17 19:47:40 +00:00
< a name = "altitude" > < / a >
< li > altitude< br >
Hö he in Metern ü ber dem Meeresspiegel, Voreinstellung ist 0.
< / li > < br >
2012-11-25 17:34:28 +00:00
< li > < a href = "#archivedir" > archivedir< / a > < / li >
< li > < a href = "#archivecmd" > archivecmd< / a > < / li >
2017-03-01 15:54:06 +00:00
< li > < a href = "#nrarchive" > nrarchive< / a > < / li >
< a name = "archivesort" > < / a >
< li > archivesort< br >
archivesort kann auf dem (voreingestellten) Wert alphanum oder timestamp
gesetzt werden, und bestimmt die Methode fü r die
Reihenfolgenberechnung der Dateien fü r nrarchive.< br >
< / li > < br >
2012-11-25 17:34:28 +00:00
< a name = "autoload_undefined_devices" > < / a >
< li > autoload_undefined_devices< br >
2013-06-30 19:42:31 +00:00
wenn dieses Attribut gesetzt ist, werden die zu einer neu empfangenen
Nachricht zugehö rigen Module automatisch geladen. Dies
erfolgt vom < a href = "#autocreate" > autocreate< / a > Gerä t, um so
automatisch ein FHEM-Gerä t bei erreichen einer entsprechenden
Nachricht zu erstellen.
2012-11-25 17:34:28 +00:00
< / li > < br >
< a name = "backupcmd" > < / a >
< li > backupcmd< br >
2014-10-04 11:30:39 +00:00
Sie kö nnen das Update durch Ihre eigenen Befehle/Skripts
durchfü hren indem Sie dieses Attribut setzen. Wenn dieses
Attribut gesetzt ist, dann startet es als ein SHELL-Befehl und erstellt
eine durch Leerzeichen getrennte Liste von Dateien/Verzeichnissen als
< strong > ein< / strong > Argument zum Befehl, z.B.:
2012-11-25 17:34:28 +00:00
< br >
< ul >
< code > "/etc/fhem.cfg /var/log/fhem/fhem.save /usr/share/fhem/contrib
/usr/share/fhem/FHEM /usr/share/fhem/foo /usr/share/fhem/foobar
/usr/share/fhem/www"< / code >
< / ul >
2014-10-04 11:30:39 +00:00
Bemerkung: Ihr Befehl/Skript muss die Zeichenkette "backup done"
zurü ckgeben oder eine entsprechende Zeichenkette um
2017-01-25 20:28:06 +00:00
Fehlermeldungen auszugeben, damit die Zusammenarbeit mit update
2014-10-04 11:30:39 +00:00
funktioniert!< br > Dieses Attribut wird vom < a href = "#backup" > backup< / a >
Befehl benutzt.< br >
2012-11-30 17:21:43 +00:00
Beispiel:< br >
2012-11-25 17:34:28 +00:00
< ul >
attr global backupcmd /usr/local/bin/myBackupScript.sh
< / ul >
< / li > < br >
< a name = "backupdir" > < / a >
< li > backupdir< br >
2012-11-30 17:21:43 +00:00
Ein Ordner um die komprimierten Sicherheitsdateien zu speichern.
2014-10-04 11:30:39 +00:00
Dieses Attribut wird vom < a href = "#backup" > backup< / a > Befehl
benutzt.< br > Beispiel:< br >
2012-11-25 17:34:28 +00:00
< ul >
attr global backupdir /Volumes/BigHD
< / ul >
< / li > < br >
< a name = "backupsymlink" > < / a >
< li > backupsymlink< br >
2014-10-04 11:30:39 +00:00
Wenn dieses Attribut auf etwas anderes als "no", dann unterstü tzt
der Archviierungsbefehl " tar" symbolische Links in Ihrem
Backup. Andererseits, wenn dieses Attribut auf "no" gesetzt ist werden
symbolische Links vom Befehl " tar" ignoriert. Dieses
Attribut wird vom < a href = "#backup" > backup< / a > Befehl benutzt.< br >
2012-11-30 17:21:43 +00:00
Beispiel:< br >
2012-11-25 17:34:28 +00:00
< ul >
2014-09-20 19:44:12 +00:00
attr global backupsymlink yes
2012-11-25 17:34:28 +00:00
< / ul >
< / li > < br >
2016-08-07 16:41:53 +00:00
< a name = "blockingCallMax" > < / a >
< li > blockingCallMax< br >
Begrenzt die Anzahl der parallel laufenden Prozesse, die von der
BlockingCall FHEM Hilfsroutine gestartet wurden. Sinnvoll auf weniger
leistungsfaehigen Hardware.
< / li > < br >
2012-11-25 17:34:28 +00:00
< a name = "configfile" > < / a >
< li > configfile< br >
2016-08-06 12:46:47 +00:00
Enthä lt den Namen der FHEM Konfigurationsdatei. Wenn < a
href="#save">save< / a > ohne Argumente aufgerufen wird dann wird die
Ausgabedatei unter diesem Dateinamen gespeichert.
2012-11-25 17:34:28 +00:00
< / li > < br >
2016-08-19 13:25:20 +00:00
< a name = "commandref" > < / a >
< li > commandref< br >
Falls der Wert "full" (die Voreinstellung) ist, dann wird nach jedem
update ein komplettes commandref.html generiert. Falls der Wert
"modular" ist, dann wird die Moduldokumentation erst nach Bedarf
waehrend der Laufzeit per JavaScript geladen.
< / li > < br >
2017-10-18 19:46:13 +00:00
< a name = "dnsHostsFile" > < / a >
< li > dnsHostsFile< br >
Falls dnsServer gesetzt ist, wird die angegebene Datei nach dem
Hostnamen durchsucht. Um die vom System verwendete Datei zu benutzen,
ist es unter Linux/Unix/OSX auf /etc/hosts und unter Windows auf
2017-10-19 13:26:08 +00:00
C:\windows\system32\drivers\etc\hosts zu setzen. Achtung: es wird nur
IPv4 unterstü tzt.
2017-10-18 19:46:13 +00:00
< / li > < br >
2016-08-06 12:46:47 +00:00
< a name = "dnsServer" > < / a >
< li > dnsServer< br >
Enthä lt die IP Adresse des DNS Servers. Die von bestimmten Modulen
(oder eigenen Code) aufgerufene HttpUtils_NonblockingGet wird auch bei
der DNS Auflö sung nicht mehr blockieren, falls dieses Attribut
gesetzt ist, da es in diesem Fall FHEM eigene Routinen aufgerufen
werden. Sonst werden die OS-eigenen, blockierenden Routinen inet_aton
bzw gethostbyname aufgerufen.
< / li > < br >
2017-12-07 10:48:50 +00:00
< a name = "featurelevel" > < / a >
< li > featurelevel< br >
Aktiviere bzw. deaktiviere bestimmte alte oder neue Funktionen, basierend
auf die FHEM Version. Z.Bsp. das $value hash fü r notify wird nur bis featurelevel 5.6
befü llt, da es unerwü nscht ist. Stattdessen sollte man die
Value() Funktion verwenden.
< / li > < br >
2016-08-06 12:46:47 +00:00
2012-11-25 17:34:28 +00:00
< a name = "holiday2we" > < / a >
< li > holiday2we< br >
2015-06-22 18:24:59 +00:00
Wenn dieses Attribut gesetzt wurde, dann wird die < a
href="#perl">$we< / a > Variable als " true" betrachtet, wenn der
Wert der < a href = "#holiday" > holiday< / a > Variable zu diesem Attribut
nicht " none" ist.< br >
2017-12-27 19:35:48 +00:00
Falls es eine Komma getrennte Liste ist, dann ist es wahr, falls einer
der referenzierten Instanzen nicht " none" ist.< br >
2012-11-30 17:21:43 +00:00
Beispiel:< br >
2012-11-25 17:34:28 +00:00
< ul >
attr global holiday2we hessen
< / ul >
< / li > < br >
2017-12-07 10:48:50 +00:00
< a name = "httpcompress" > < / a >
< li > httpcompress< br >
das HttpUtils Modul wird von etlichen FHEM modulen verwendet und
aktiviert Komprimierung in der Voreinstellung. Falls man
httpcompress auf 0 setzt, wird die Komprimierung deaktiviert.
2015-06-22 18:24:59 +00:00
< / li > < br >
2018-05-15 20:06:23 +00:00
< a name = "keyFileName" > < / a >
< li > keyFileName< br >
FHEM Module speichern Passwö rter und IDs in der Datei
FHEM/FhemUtils/uniqueID. Um mehrere FHEM-Instanzen im gleichen
Verzeichnis starten zu kö nnen, kann man dieses Attribut setzen,
dessen Wert an FHEM/FhemUtils/ angehä ngt wird.
< / li > < br >
2019-01-17 19:47:40 +00:00
< a name = "latitude" > < / a >
< li > latitude< br >
Geographische Breite in Dezimalgrad, Voreinstellung ist 50.112,
Frankfurt am Main.
< / li > < br >
< a name = "longitude" > < / a >
< li > longitude< br >
Geographische Lä nge in Dezimalgrad, Voreinstellung ist 8.686,
Frankfurt am Main.
< / li > < br >
2017-02-18 20:43:23 +00:00
< a name = "logdir" > < / a >
< li > logdir< br >
Falls gesetzt, wird %L in dem logfile Attribut (oder in der Dateinamen
Spezifikation des FileLog Moduls) durch den Wert des Attributes ersetzt.
Achtung: ä ndern des Wertes bewirkt nicht das Verschieben bereits
erstellter Dateien, und kann zu diversen Problemen fü hren.
2012-11-25 17:34:28 +00:00
< / li > < br >
< a name = "logfile" > < / a >
< li > logfile< br >
2017-02-18 20:43:23 +00:00
Gibt das Logfile an, in welches gespeichert werden soll. Sie
kö nnen "-" fü r die Ausgabe in das stdout-Gerä t. In
diesem Fall stellt sich der Server nicht selbst in den Hintergrund.< br >
Der Name der Logdatei kann auch " wildcards" enthalten, um
eine einfachere Abfolge fü r die Dateien zu erreichen. Lesen Sie
bitte den Abschnitt < a href = "#FileLog" > FileLog< / a > . Fü gen Sie die
Attribute < code > archivecmd / archivedir / nrarchive< / code > zum
< code > global< / code > Gerä t hinzu wie Sie es auch bei einem FileLog
device tun kö nnten.< br > Sie kö nnen den Namen der Logdatei
mit < code > { $currlogfile }festlegen< / code > .
2012-11-25 17:34:28 +00:00
< / li > < br >
2019-03-05 15:02:55 +00:00
< a name = "maxChangeLog" > < / a >
< li > maxChangeLog< br >
FHEM speichert Strukturä nderungen, diese Daten kann man mit
"save -r" oder mittels Klick auf das rote Fragezeichen in FHEMWEB
anzeigen. Per Voreinstellung ist diese Liste auf 10 Einträ ge
begrenzt, mit diesem Attribut kann man diesen Wert ä ndern.
< / li > < br >
2019-01-14 10:04:43 +00:00
< a name = "maxShutdownDelay" > < / a >
< li > maxShutdownDelay< br >
Einige Module benö tigen Zeit zum Aufrä umen beim shutdown,
aber FHEM begrenzt diese Zeit auf 10 Sekunden. Mit diesem Attribut
kann man sie anpassen.
< / li > < br >
2012-11-25 17:34:28 +00:00
< a name = "modpath" > < / a >
< li > modpath< br >
2017-10-09 13:28:23 +00:00
Mit modpath geben Sie den Pfad zu dem Verzeichnis der < code > FHEM< / code >
Module an. Der Pfad enthä lt < b > nicht< / b > das Verzeichnis FHEM.
2014-04-15 09:56:40 +00:00
Durch das setzen der Attribute, wird das Verzeichnis nach Dateinamen in
2017-10-09 13:28:23 +00:00
der Form NN_< NAME> .pm durchsucht, und sie werden fü r die
Definition von Gerä ten unter dem Namen < NAME> verfü gbar
gemacht. Wenn das erste Gerä t des Typs < NAME> definiert
wird, werden die entsprechenden Module geladen und in dem Modul die
entsprechende Funktion mit dem Namen < NAME> _Initialize wird
aufgerufen. Eine Ausnahme bilden Module die mit der Nummer 99 im
Dateinamen beginnen. Diese enthalten PERL-Hilfsfunktionen und
werden zur Startzeit geladen.
2017-02-18 20:43:23 +00:00
< / li > < br >
2012-11-25 17:34:28 +00:00
< a name = "motd" > < / a >
< li > motd< br >
2014-10-04 11:30:39 +00:00
Nachricht des Tages. Wird im Begrü & szligungsbildschirm von FHEM
2014-04-15 09:56:40 +00:00
angezeigt, oder direkt beim Start einer " telnet" Sitzung,
bevor der fhem> Prompt erscheint. Der SecurityCheck setzt motd wenn
es bisher nicht gesetzt ist. Um das zu verhindern, kö nnen sie den
Wert von motd auf " none" setzen.
motd wird auch verwendet, um Fehlermeldungen wä hrend des
2017-01-25 20:28:06 +00:00
FHEM-Starts zu sammeln und anzuzeigen.
2012-11-25 17:34:28 +00:00
< / li > < br >
< a name = "mseclog" > < / a >
< li > mseclog< br >
2014-04-15 09:56:40 +00:00
Wenn dieses Attribut gesetzt ist, enthalten Datums/Zeiteinträ ge
(timestamp) in der Logdatei einen Millisekunden-Eintrag.
2012-11-25 17:34:28 +00:00
< / li > < br >
< a name = "nofork" > < / a >
< li > nofork< br >
2013-08-24 14:28:14 +00:00
Wenn dieses Attribut oder "attr global logfile -" gesetzt ist,
dann wird FHEM nicht im Hintergrund abgearbeitet.
Dieses Attribut ist bei einigen FHEM Installationen auf FRITZ!-Boxen
notwendig, und wid fuer Windows automatisch gesetzt.
2012-11-25 17:34:28 +00:00
< / li > < br >
< a name = "pidfilename=" > < / a >
< li > pidfilename< br >
2017-09-05 22:07:18 +00:00
Schreibt die PERL Prozess-ID in die angegebene Datei. Der Server
lä uft als Daemon und einige Distributionen wollen anhand der PID
testen, ob der FHEM Prozess lä uft. Die Datei wird bei
Ausfü hrung des " shutdown" -Kommandos gelö scht.
2012-11-25 17:34:28 +00:00
< / li > < br >
2017-09-05 22:07:18 +00:00
< a name = "proxy" > < / a >
< li > proxy< br >
IP:PORT des proxy Servers, wird von HttpUtils benutzt.
< / li > < br >
2017-09-09 10:20:16 +00:00
< a name = "proxyAuth" > < / a >
< li > proxyAuth< br >
Base64 kodiertes Benutzername:Passwort
< / li > < br >
2017-09-05 22:07:18 +00:00
< a name = "proxyExclude" > < / a >
< li > proxyExclude< br >
Regexp, um bestimmte Hosts nicht via proxy zu kontaktieren.
< / li > < br >
2017-11-01 16:59:23 +00:00
< a name = "restoreDirs" > < / a >
< li > < a name = "restoreDirs" > restoreDirs< / a > < br >
update sichert jede Datei vor dem Ü berschreiben mit der neuen
2018-03-17 16:31:45 +00:00
Version aus dem Web. Fü r diesen Zweck wird zuerst ein
restoreDir/update Verzeichnis in der global modpath Verzeichnis
angelegt, und danach ein Unterverzeichnis mit dem aktuellen Datum. In
diesem Verzeichnis werden vor dem Ü berschreiben die alten
Versionen der Dateien gerettet. Die Voreinstellung ist 3, d.h. die
letzten 3 Datums-Verzeichnisse werden aufgehoben, und die ä lteren
entfernt.
2017-11-01 16:59:23 +00:00
< br >
Auch fhem.cfg und fhem.state wird auf diese Weise vor dem ausfü ren
2018-03-17 16:31:45 +00:00
von save gesichert, diesmal in das restoreDir/save Verzeichnis. Zum
restaurieren der alten Dateien kann man das restore Befehl
verwenden.< br >
2017-11-01 16:59:23 +00:00
Falls man den Wert auf 0 setzt, dann ist dieses Feature deaktiviert.
< / li > < br >
2017-09-05 22:07:18 +00:00
2016-02-03 16:38:46 +00:00
< li > < a href = "#fheminfo" > sendStatistics< / a > < br >
2012-12-02 19:37:50 +00:00
2012-11-25 17:34:28 +00:00
< a name = "statefile" > < / a >
< li > statefile< br >
2013-07-25 07:35:49 +00:00
Dieses Attribut legt den Namen der Datei fest, in die
Statusinformationen aller Gerä te gespeichert werden bevor der
Server heruntergefahren wird. Falls diese Datei nicht angegeben wird, so
werden keinerlei Informationen gesichert.
2012-11-25 17:34:28 +00:00
< / li > < br >
2016-02-03 16:38:46 +00:00
< li > < a href = "#title" > title< / a > < br >
2012-11-25 17:34:28 +00:00
2017-08-22 17:28:46 +00:00
< a name = "useInet6" > < / a >
< li > useInet6< br >
Die HttpUtils Routinen verwenden IPv6 fü r die Kommunikation, falls
der Server eine IPv6 Adresse hat. Achtung: das Perl-Modul
IO::Socket::INET6 wird benö tigt.
< / li > < br >
2012-11-25 17:34:28 +00:00
< a name = "userattr" > < / a >
< li > userattr< br >
2014-09-29 19:52:15 +00:00
Enthä lt eine durch Leerzeichen getrennte Liste in welcher die
Namen zusä tzlicher Attribute aufgefü hrt sind. Diese
mü ssen zuerst in dieser Liste definiert werden, bevor sie
(bei allen Gerä ten) angewendet werden kö nnen.< br >
userattr kann auch fü r einzelne Gerä te spezifiziert werden,
um weitere Attribute fü r diese Gerä te zu definieren.
2012-11-25 17:34:28 +00:00
< / li > < br >
< a name = "dupTimeout" > < / a >
< li > dupTimeout< br >
2013-01-03 13:08:39 +00:00
Definert die Wartezeit, nach der 2 identische Ereignisse zweier
Empfä nger als Duplikat angesehen werden. Voreingestellt sind 0,5
Sekunden.
2012-11-25 17:34:28 +00:00
< / li > < br >
2013-01-03 13:08:39 +00:00
< a name = "showInternalValues" > < / a >
< li > showInternalValues< br >
Attribute/Gerä te-Eintraege/Readings die mit Punkt (.) anfangen
werden nicht angezeigt, es sei denn das globale Attribut
showInternalValues ist gesetzt. Diese Variable wird bei dem list und
xmllist Befehl, und bei der FHEMWEB Raumansicht geprü ft.
2015-04-17 16:14:45 +00:00
< / li > < br >
2013-01-03 13:08:39 +00:00
2015-07-13 12:30:26 +00:00
< a name = "sslVersion" > < / a >
< li > sslVersion< br >
Setzt die akzeptierten Crypto-Algorithmen im TcpServices Hilfsmodul.
Die Voreinstellung TLSv12:!SSLv3 wird als sicherer erachtet als die
vorherige SSLv23:!SSLv3:!SSLv2, aber sie kann Probleme mit nicht
ausreichend aktualisierten Netzwerk-Diensten verursachen.
< / li > < br >
2014-10-09 17:47:29 +00:00
< a name = "stacktrace" > < / a >
< li > stacktrace< br >
Falls gesetzt (auf 1), schreibt ins FHEM-Log zusä tzlich zu jedem
"PERL WARNING" den stacktrace.
2015-04-17 16:14:45 +00:00
< / li > < br >
< a name = "restartDelay" > < / a >
< li > restartDelay< br >
2015-08-22 13:18:56 +00:00
Setzt die Verzö gerung beim Neustart mit shutdown restart, die
2015-04-17 16:14:45 +00:00
Voreinstellung ist 2 (Sekunden).
2015-08-22 13:18:56 +00:00
< / li > < br >
< a name = "autosave" > < / a >
< li > autosave< br >
Erlaubt manchen Modulen save auszufü hren, nach einer automatischen
Ä nderung der Konfiguration, z.Bsp. nachdem ein Gerä t angelegt
wurde. Die Voreinstellung ist 1 (wahr), man kann es ausschalten, indem
man den Wert auf 0 setzt.
2014-10-09 17:47:29 +00:00
< / li >
2016-08-31 17:19:58 +00:00
< / ul >
2015-04-17 16:14:45 +00:00
2016-08-31 17:19:58 +00:00
< br > < br >
< b > Events< / b >
< ul >
< li > INITIALIZED< br > sobald die Initialization vollstä ndig ist.< / li >
< li > REREADCFG< br > nachdem die Konfiguration erneut eingelesen wurde.< / li >
< li > SAVE< br > bevor die Konfiguration gespeichert wird.< / li >
< li > SHUTDOWN< br > bevor FHEM heruntergefahren wird.< / li >
< li > DEFINED < devname> < br > nach dem Definieren eines
Gerä tes.< / li >
< li > DELETED < devname> < br > nach dem Lö schen eines
Gerä tes.< / li >
< li > RENAMED < old> < new> < br > nach dem Umbenennen eines
Gerä tes.< / li >
< li > UNDEFINED < defspec> < br > beim Auftreten einer Nachricht fü r
ein undefiniertes Gerä t.< / li >
< li > MODIFIED < defspec> < br > nach Ä nderung einer
Gerä tedefinition.< / li >
< li > UPDATE< br > nach Abschluss eines Updates.< / li >
2012-11-25 17:34:28 +00:00
< / ul >
2016-08-31 17:19:58 +00:00
2012-11-25 17:34:28 +00:00
< / ul >
2015-02-20 16:50:20 +00:00
<!-- global end - diese Zeile nicht entfernen! -->
2012-11-25 17:34:28 +00:00
2012-12-01 11:44:34 +00:00
2012-11-25 17:34:28 +00:00
< a name = "perl" > < / a >
< h3 > Perl specials< / h3 >
2014-10-04 11:30:39 +00:00
Wenn Sie einige Aufgaben automatisieren wollen, dann sollten Sie die Befehle
< a href = "#at" > at< / a > oder < a href = "#notify" > notify< / a > nutzen. Fü r
2017-11-11 15:22:42 +00:00
komplexere Aufgaben sollten Sie lieber ein SHELL-Skript oder einen PERL
2014-10-04 11:30:39 +00:00
"oneliner" als das at/notify argument anwenden. Dieser Abschnitt gibt Ihnen
einige Tipps zur Anwendung der PERL-oneliner.< br > < br >
< li > Um PERL-" oneliner" zu testen, geben Sie diese am
" telnet" Prompt (oder in der FHEMWEB Text-Eingabezeile)
eingeschlossen von geschweiften Klammern {} in einer Zeile ein. Die letzte
Beispielzeile schreibt nur etwas in die Logdatei, wä hrend das Ergebnis
der anderen Zeilen direkt auf der Webseite sichtbar ist.< ul >
2012-11-30 17:21:43 +00:00
Beispiele:< p > { "Hello" }< br >
2012-11-25 17:34:28 +00:00
{ 1+3*4 }< br >
{ `ls /etc` }< br >
{ Log 1, "Hello" }< br >
2012-11-30 17:21:43 +00:00
< / p >
2012-11-25 17:34:28 +00:00
< / ul >
< br >
2014-10-04 11:30:39 +00:00
< / li >
< li >
PERL Ausdrü cke werden durch ein Semikolon (;) getrennt. In FHEM
" oneliners" mü ssen sie durch ein weiteres Semikolon (;;)
" escaped" (maskiert) werden< br >
2012-11-30 17:21:43 +00:00
Beispiel:< ul >
2012-11-25 17:34:28 +00:00
{ my $a = 1+1;; Log 1, "Hello $a" }
< / ul >
2014-10-04 11:30:39 +00:00
< / li > < br >
2012-11-25 17:34:28 +00:00
2014-10-04 11:30:39 +00:00
< li > Um FHEM-Kommandos in den PERL-Ausdrü cken zu verwenden, benutzen
2017-11-11 15:22:42 +00:00
Sie bitte die Funktion < var > fhem()< / var > , mit einem Textargument. Dieser Text wird als
2014-10-04 11:30:39 +00:00
FHEM-Kommando interpretiert.< br >
2012-11-30 17:21:43 +00:00
< p > Beispiel< ul >
2014-10-04 11:30:39 +00:00
2012-11-25 17:34:28 +00:00
{ fhem "set light on" }< br >
define n1 notify piri:on { fhem "set light on" }
2012-11-30 17:21:43 +00:00
< p > < / p >
2012-11-25 17:34:28 +00:00
< / ul >
2013-09-02 10:52:23 +00:00
Bemerkung: Wenn diese Funktion einen wert zurü ck liefert, wird dieser
in der allgemeinen Logdatei gespeichert.. Benutzen sie " 1" als
zweites Argument um dieses speichern zu verhindern. Sinnvoll ist dieses
Argument bei der Abfrage von Werten mittels "get...".
2014-10-04 11:30:39 +00:00
< / li > < br >
2012-11-25 17:34:28 +00:00
2013-09-02 10:52:23 +00:00
< li > Notify kann auch dazu verwendet werden, um Macros manuell
auszufü hren. Verwenden Sie den < a href = "#trigger" > trigger< / a > -Befehl
um das Makro zu starten:< br >
2012-11-25 17:34:28 +00:00
< ul >
define MyMacro notify MyMacro { Log 1, "Hello"}< br >
trigger MyMacro< br >
define MacroWithArg notify MyMacro { Log 1, "Hello %"}< br >
trigger MyMacro MyArg< br >
< / ul >
< br >
2013-09-02 10:52:23 +00:00
< / li >
< li > Um die Verwendung von Datum und Zeitangaben zu vereinfachen, wurden die
2017-11-11 15:22:42 +00:00
Variablen < var > $sec< / var > , < var > $min< / var > , < var > $hour< / var > , < var > $mday< / var > ,
< var > $month< / var > , < var > $year< / var > , < var > $wday< / var > , < var > $yday< / var > , < var > $isdst< / var > und < var > $hms< / var >
2013-09-02 10:52:23 +00:00
fü r die Verwendung in PERL-" oneliners" eingefü hrt (s.
2017-11-11 15:22:42 +00:00
unter < var > perldoc -f localtime< / var > ). Ausnahmen: < var > $month< / var > hat einen Wertebereich von 1
bis 12 und < var > $year< / var > ist korrigiert von 1900.
Weiterhin enthä lt < var > $hms< / var > die Zeit in dem HH:MM:SS Format und < var > $today< / var > das
2017-09-10 08:52:14 +00:00
aktuellen Datum in YYYY-MM-DD Format.
2013-09-02 10:52:23 +00:00
< br >
2012-11-25 17:34:28 +00:00
2017-11-11 15:22:42 +00:00
Die Variabe < var > $we< / var > hat den Wert 1 wenn der abgefragte Tag auf ein Wochenende
fä llt (Z.B. < var > $wday< / var > == 0 [Sonntag] oder < var > $wday< / var > == 6 [Samstag]), und 0
2013-09-02 10:52:23 +00:00
fü r die anderen Wochentage. Wenn man das global < a
2017-12-08 21:58:31 +00:00
href="#holiday2we">holiday2we< / a > Attribut setzt, dann ist < var > $we< / var > ebenfalls 1
2013-09-02 10:52:23 +00:00
bei Urlaubstagen.< br >
2012-11-25 17:34:28 +00:00
< ul >
define n2 notify piri:on { if($hour > 18 || $hour < 5) {
fhem "set light on" } }< br >
define roll_en *07:45:00 { fhem "trigger SwitchAllRoll on" if(!$we) }< br >
define roll_en *08:30:00 { fhem "trigger SwitchAllRoll on" if($we) }< br >
< / ul >
< br >
< / li > < li >
2017-11-11 15:22:42 +00:00
Die folgenden Hilfsfunktionen sind in der Datei 99_Util.pm definiert (wird
wie jede mit 99_ beginnende Datei automatisch geladen):
2012-11-25 17:34:28 +00:00
< ul >
< li > min(a,b), max(a,b)< / li >
2013-09-02 10:52:23 +00:00
< li > time_str2num("YYYY-MM-DD HH:MM:SS") gibt einen numerischen Wert
zurü ck, der die Berechnung von Zeitdifferenzen vereinfacht< / li >
2012-11-30 17:21:43 +00:00
< li > abstime2rel("HH:MM:SS") wandelt absolute in relative Zeitangaben um
2013-09-02 10:52:23 +00:00
< / li >
2012-11-25 17:34:28 +00:00
< / ul >
< / li >
< li >
2017-11-11 15:22:42 +00:00
Um auf die Gerä testatus/Attribute zuzugreifen benutzen Sie bitte die
2012-11-30 17:21:43 +00:00
folgenden Funktionen:
2012-11-25 17:34:28 +00:00
< br >
< ul >
< li > Value(< devicename> )< br >
2013-06-25 08:55:15 +00:00
gibt den Status eines Gerä tes zurü ck (entsprechend dem
Ausdruck in Klammern, den Sie beim List-Befehl sehen).
< / li > < br >
2014-10-04 11:30:39 +00:00
2013-06-25 08:55:15 +00:00
< li > OldValue(< devicename> )< / li >
< li > OldTimestamp(< devicename> )< br >
2012-12-01 11:44:34 +00:00
gibt den vorherigen Wert/Zeitstempel des Gerä tes zurü ck.
2013-06-25 08:55:15 +00:00
< / li > < br >
2014-10-04 11:30:39 +00:00
2013-06-25 08:55:15 +00:00
< li >
2012-11-25 17:34:28 +00:00
ReadingsVal(< devicename> ,< reading> ,< defaultvalue> )< br >
2014-10-04 11:30:39 +00:00
Gibt den Inhalt der " readings" zurü ck (den Inhalt der in
dem " Readings" -Abschnitt von "list device" angezeigt wird)
2013-06-25 08:55:15 +00:00
< / li > < br >
2014-10-18 05:33:02 +00:00
< li >
2017-04-05 11:36:44 +00:00
ReadingsNum(< devicename> ,< reading> ,
< defaultvalue> ,< round> )< br >
Gibt die erste Zahl aus dem Readingswert zurü ck.
Falls < round> spezifiziert ist, wird sie auf diese Anzahl von
Dezimalstellen gerundet.
2014-10-18 05:33:02 +00:00
< / li > < br >
2017-04-04 16:37:53 +00:00
< li > ReadingsTimestamp(< devicename> ,
< reading> ,< defaultvalue> )< br >
2017-04-04 14:45:48 +00:00
gibt den Zeitstempel des Readings zurü ck.
< / li > < br >
< li > ReadingsAge(< devicename> ,< reading> ,< defaultvalue> )
< br >
gibt das Alter des Readings in Sekunden zurü ck.
< / li > < br >
2018-03-09 07:45:43 +00:00
< li >
OldReadingsVal(< devicename> ,< reading>
,< defaultvalue> )< br >
OldReadingsNum(< devicename> ,< reading> ,
< defaultvalue> ,< round> )< br >
OldReadingsTimestamp(< devicename> ,< reading>
,< defaultvalue> )< br >
OldReadingsAge(< devicename> ,< reading> ,<
defaultvalue> )< br >
analog zu den Routinen oben, aber zum Zugriff auf die vorherigen Werte.
siehe: < a href = "#oldreadings" > oldreadings< / a > < br >
< / li > < br >
2013-06-25 08:55:15 +00:00
< li >
2012-11-25 17:34:28 +00:00
AttrVal(< devicename> ,< attribute> ,< defaultvalue> )< br >
2017-04-05 11:36:44 +00:00
Gibt das entsprechende Attribut des Gerä tes zurü ck
2012-11-25 17:34:28 +00:00
< br > < br >
{ Value("wz") }< br >
{ OldValue("wz") }< br >
{ time_str2num(OldTimestamp("wz")) }< br >
{ ReadingsVal("wz", "measured-temp", "20")+0 }< br >
{ ReadingsTimestamp("wz", "measured-temp", 0)}< br >
{ AttrVal("wz", "room", "none") }< br >
2013-06-25 08:55:15 +00:00
< / li > < br >
< li >
2017-04-05 11:36:44 +00:00
AttrNum(< devicename> ,< attribute> ,
< defaultvalue> ,< round> )< br >
Gibt die erste Zahl aus dem Attributwert zurü ck.
Falls < round> spezifiziert ist, wird sie auf diese Anzahl von
Dezimalstellen gerundet.
< / li > < br >
< li >
InternalVal(< devicename> ,< internal> ,
< defaultvalue> )< br >
2013-06-25 08:55:15 +00:00
Gibt den Inhalt der " internal" zurü ck (den Inhalt der in
dem " Internals" -Abschnitt von "list device" angezeigt wird)
< / li > < br >
2017-04-05 11:36:44 +00:00
< li >
InternalNum(< devicename> ,< internal> ,
< defaultvalue> ,< round> )< br >
Gibt die erste Zahl aus dem " internal" zurü ck.
Falls < round> spezifiziert ist, wird sie auf diese Anzahl von
Dezimalstellen gerundet.
< / li > < br >
2013-06-25 08:55:15 +00:00
< / ul >
2012-11-25 17:34:28 +00:00
< / li > < li >
2014-10-04 11:30:39 +00:00
Wenn Sie das 99_SUNRISE_EL.pm Modul benutzen, haben Sie zugriff auf
folgende Funktionen: < br >
2012-11-25 17:34:28 +00:00
< ul >
2014-10-04 11:30:39 +00:00
sunset($offset, $min, $max)< br >
sunrise($offset, $min, $max)< br >
isday()< br >
2012-11-25 17:34:28 +00:00
< / ul >
2014-10-04 11:30:39 +00:00
Der Wert von " offset" wird in Sekunden angegeben und das Format
fü r min/max ist "HH:MM" oderr "HH:MM:SS". isday gibt 1 zurü ck,
wenn die Sonne sichtbar ist und ansonsten den Wert 0. < / li >
2012-11-25 17:34:28 +00:00
< br >
< br >
2015-02-20 17:40:25 +00:00
<!-- perl end - diese Zeile nicht entfernen! -->
2012-11-25 17:34:28 +00:00
< a name = "gnuplot-syntax" > < / a >
< h3 > gnuplot file syntax< / h3 >
2014-10-04 11:30:39 +00:00
Die .gplot Dateien werden ebenso von den < a href = "#FHEMWEB" > FHEMWEB< / a > /SVG
Modulen falls das < a href = "#plotmode" > plotmode< / a > -Attribut auf SVG gesetzt
ist. In diesem Fall wird nur eine geringere Anzahl der .gnuplot Attribute
benutzt, und einige Linien haben eine besondere Bedeutung: Die Unterschiede
werden in diesem Kapitel erklä rt. Lesen Sie bitte auch < a
2017-01-25 20:28:06 +00:00
href="http://wiki.fhem.de/wiki/Creating_Plots"> diesen< / a > FHEM Wiki Eintrag
2014-10-04 11:30:39 +00:00
zur Erstellung von Logdateien.< br > Im folgenden ist eine minimale .gplot
Definition (gü ltig nur bei Plotmode SVG):< br >
2012-11-25 17:34:28 +00:00
< pre > set terminal size < SIZE>
#FileLog 4:::
plot title 'Temperature' with lines
< / pre >
2012-11-30 17:21:43 +00:00
Die .gnuplot Datei besteht aus 3 Teilen:
2012-11-25 17:34:28 +00:00
< ul >
2012-11-30 17:21:43 +00:00
< li > set Befehle< br >
Folgende " sets" werden erkannt:
2012-11-25 17:34:28 +00:00
< ul >
2014-10-04 11:30:39 +00:00
< li > terminal, nur die Grö & szligenparameter.< br >
Dieser ist in der Regel auf < SIZE> gesetzt, welcher ersetzt wird
durch das < a href = "#plotsize" > plotsize< / a > Attribut von FHEMWEB oder
einer Weblink-Instanz.< / li >
2012-11-25 17:34:28 +00:00
< li > title< br >
2014-10-04 11:30:39 +00:00
Normalerweise gesetzt auf < TL> welcher durch das Weblink < a
href="#title">title< / a > -Attribut, oder durch < Lx> , welches
wiederum vom Weblink < a href = "#label" > label< / a > Attribut ersetzt
wird.< / li >
2012-11-25 17:34:28 +00:00
< li > ylabel,y2label< br >
2014-10-04 11:30:39 +00:00
Linke und rechte vertikale Achsenbeschriftungen. Are also subject to
label replacement.< / li >
2012-11-25 17:34:28 +00:00
< li > yrange,y2range< br >
2014-10-04 11:30:39 +00:00
Legen den Wertebereich der linken und rechten y-Achse fest.
Beispiele:< br >
2012-11-25 17:34:28 +00:00
< ul >
set yrange [-0.1:1.1]< br >
set y2range [0:]< br >
< / ul >
< / li >
< li > ytics,y2tics< br >
2014-10-04 11:30:39 +00:00
Beschriftung fü r die Werte der rechten/linken y-Achse.
Beispiele:< br >
2012-11-25 17:34:28 +00:00
< ul >
set ytics ("on" 0, "off" 1)< br >
set y2tics< br >
< / ul >
< / li >
< / ul >
< / li >
< br >
2012-12-01 11:44:34 +00:00
< li > #FileLog Einträ ge< br >
Jede Line des Plots muss eine dazugehö rige #FileLog
2014-10-04 11:30:39 +00:00
Zeile haben. Zur Syntax lesen Sie bitte den Abschnitt " column_spec
paragraph" von der < a href = "#FileLogget" > Filelog get< / a >
Beschreibung. Beachten sie bitte, das bei SVG-Plots die erste Spalte der
Datei unbedingt im FHEM-Zeitstempelformat (YYYY-MM-DD_HH:MM:SS)
formatiert sein muss
2012-11-25 17:34:28 +00:00
< / li >
< br >
2012-12-01 11:44:34 +00:00
< li > Plot Einträ ge< br >
2014-10-04 11:30:39 +00:00
bestehen immer aus einem Plotbefehl und aus durch Kommata getrenne
Argumentblö cke. Jeder Argumentblock reprä sentiert eine
darzustellende Linie und hat seine eigenen Paramter.
2012-11-30 17:21:43 +00:00
Folgende Parameter werden are anerkannt:
2012-11-25 17:34:28 +00:00
< ul >
< li > axes x1y1 / x1y2< br >
2014-10-04 11:30:39 +00:00
weist das Programm an die aktuelle Zeile einer der beiden Achsen (links
oder rechts) zuzuweisen.
2012-11-25 17:34:28 +00:00
< / li >
2014-10-04 11:30:39 +00:00
2012-11-25 17:34:28 +00:00
< li > title< br >
2014-10-04 11:30:39 +00:00
Beschriftung der Linie. Wenn man auf diesen Titel klickt, dann
ä ndert ein kleines Javascript-Programm den Titel auf die min/max
und last-Werte des Plots, Weiterhin erlaubt das Programm diese Linie zu
kopieren oder eine bereits kopierte Linie einzufü gen (die
existierende Skalierung des Plots wird dabei nicht verä ndert, nur
die eingefü gte Linie wird skaliert/angepasst. Andere Linien des
Plots werden zeitweise nicht angezeigt.< / li >
2012-11-25 17:34:28 +00:00
< li > with < linetype> < br >
2014-10-04 11:30:39 +00:00
spezifiziert die Art der Linie. Folgende Linienarten kö nnen
verwendet werden: points, steps, fsteps, histeps and lines. Nicht
bekannte Linienarten werden als Typ " lines" dargestellt.
2015-01-22 06:39:03 +00:00
SVG Spezial: cubic und quadratic werden zu den SVG path Typen C und Q
gewandelt.
2012-11-25 17:34:28 +00:00
< / li >
2014-10-04 11:30:39 +00:00
2012-11-25 17:34:28 +00:00
< li > ls < linestyle> < br >
2014-10-04 11:30:39 +00:00
Der Linienstil stellt die erste Linie als l0 dar, die zweite
Linie als l1 und so weiter. Definiert ist dies in der svg_style.css
Datei. Darin sind zwei Sets definiert: l0-l8 and l0fill-l6fill. Das
zweite Set muss aber explizit angegeben werden. Wenn der Name des
Linienstils das Wort " fill" enthä lt, dann haben Plots
des Linientyps "lines" ein zusä tzliches Start- und Endsegment
fü r eine korrekte Darstellung.< br > Bitte lesen sie die SVG
Spezifikationen, um Details ü ber diese css-Datei zu erfahren.
Notiz: Wenn Sie dieses Attribut einsetzen mö chten, mü ssen Sie
es fü r alle Linien (Attributblocks) im Plotbefehl spezifizieren.
2012-11-25 17:34:28 +00:00
< / li >
2014-10-04 11:30:39 +00:00
2012-11-25 17:34:28 +00:00
< li > lw < linewidth> < br >
2014-10-04 11:30:39 +00:00
Setzt die Linienbreite der Linie. Dieses Attribut ist veraltet. Das
entprechende Feature der css-Datei/(Attribut ls) muss verwendet werden.
2012-11-25 17:34:28 +00:00
< / li >
< / ul >
< / li > < / ul >
2016-08-19 12:47:50 +00:00
< / div > <!-- right -->
< / body >
< / html >