FHEM Command Beispiele: Unterschied zwischen den Versionen
Krikan (Diskussion | Beiträge) K (Hinweis auf neuen update-Befehl / Include-Hinweis zugefügt (würde include lieber löschen)) |
K (Kategorie geändert; Ergänzungen zum Befehl rereadcfg) |
||
Zeile 1: | Zeile 1: | ||
== Allgemeines == | |||
Dies soll kein Ersatz für die [[FHEM Command Reference]] sein. Es geht hier vorwiegend um voll ausgeschriebene Befehle zum besseren Verständnis. Die ''Command Reference'' listet alle Befehle, Optionen und Möglichkeiten auf, aber manchmal übersieht man in der Vielzahl an Informationen eine Kleinigkeit und schon funktioniert es nicht. Es werden nicht alle Optionen erläutert. | |||
Sofern es im Wiki schon Beiträge gibt, die einzelne Befehle ähnlich diesem Beitrag abhandeln, erfolgt ein Verweis auf diese; alle existierenden Beiträge zu Fhem-Befehlen sind zudem in der Kategorie [[:Kategorie:FhemBefehl|FhemBefehl]] aufgelistet. | |||
=== at === | === at === | ||
''at'' kann man vergleichen mit den "Geplanten Tasks" (Windows) oder "cron" (Linux). Abhängig von der Uhrzeit (immer um 04:00 Uhr) bzw. abgelaufenen Zeitspannen (alle 5 Minuten) werden weitere Befehle ausgelöst. | ''at'' kann man vergleichen mit den "Geplanten Tasks" (Windows) oder "cron" (Linux). Abhängig von der Uhrzeit (immer um 04:00 Uhr) bzw. abgelaufenen Zeitspannen (alle 5 Minuten) werden weitere Befehle ausgelöst. | ||
* [[AT zu einem absoluten Datum ausführen]] | |||
* | * [[Sunset Sunrise]] | ||
* | |||
=== attr === | === attr === | ||
Zeile 20: | Zeile 15: | ||
Wert für die geographische Breite (früher Breitengrad) setzen. Erforderlich vor Nutzung der Sonnenauf- / Sonnenuntergangsfunktionen (sunrise/sunset usw.) | Wert für die geographische Breite (früher Breitengrad) setzen. Erforderlich vor Nutzung der Sonnenauf- / Sonnenuntergangsfunktionen (sunrise/sunset usw.) | ||
* | * [[Sunset Sunrise]] | ||
==== attr global longitude 6.XYZ ==== | ==== attr global longitude 6.XYZ ==== | ||
Wert für die geographischen Länge (früher Längengrad) setzen. Erforderlich vor Nutzung der Sonnenauf- / Sonnenuntergangsfunktionen (sunrise/sunset usw.) | Wert für die geographischen Länge (früher Längengrad) setzen. Erforderlich vor Nutzung der Sonnenauf- / Sonnenuntergangsfunktionen (sunrise/sunset usw.) | ||
* | * [[Sunset Sunrise]] | ||
==== attr global verbose X ==== | ==== attr global verbose X ==== | ||
Mit dem Wert "X" legt man die Detailtiefe der | Mit dem Wert "X" legt man die Detailtiefe der protokollierten Informationen fest. | ||
Hat X den Wert | Hat X den Wert | ||
* 0 wird nur der Start und das Beenden des FHEM-Servers | * 0 wird nur der Start und das Beenden des FHEM-Servers protokolliert | ||
* 1 werden zusätzlich Fehlermeldungen und unbekannte Pakete ausgegeben. | * 1 werden zusätzlich Fehlermeldungen und unbekannte Pakete ausgegeben. | ||
* 2 erfolgt eine Ausgabe der wichtigen Ereignisse (events) und Alarmmeldungen. | * 2 erfolgt eine Ausgabe der wichtigen Ereignisse (events) und Alarmmeldungen. | ||
* 3 werden ausgesendete Befehle geloggt. | * 3 werden ausgesendete Befehle geloggt. | ||
* 4 | * 4 wird protokolliert, was von den verschiedenen Geräte empfangen wurde. | ||
* 5 wird alles ausgegeben ("debugging", Fehlersuche) | * 5 wird alles ausgegeben ("debugging", Fehlersuche) | ||
Ein größerer Wert führt also zu einer höheren Detailtiefe. | Ein größerer Wert führt also zu einer höheren Detailtiefe. | ||
Für den '''Normalgebrauch''' wird | Für den '''Normalgebrauch''' wird Level 3 empfohlen. | ||
==== attr <Geräte-Name> ignore X ==== | ==== attr <Geräte-Name> ignore X ==== | ||
Ausblenden von fremden Geräten aus der FHEM-Konfiguration. | Ausblenden von fremden Geräten aus der FHEM-Konfiguration. | ||
* | * [[Fremdgeräte ignorieren]] | ||
==== attr <Geräte-Name> room <Raum1>[,Raum2] ==== | ==== attr <Geräte-Name> room <Raum1>[,Raum2] ==== | ||
Über dieses (optionale) Attribut weist man ein FHEM-Gerät einem Raum oder mehreren Räumen zu, der in der linken Spalte der FHEM-Weboberfläche erscheint. Alle diesem Raum zugewiesenen Geräte bzw. FHEM-Einträge tauchen nach einem Klick dieses Raumes dann auf der entsprechenden Raumseite auf. | Über dieses (optionale) Attribut weist man ein FHEM-Gerät einem Raum oder mehreren Räumen zu, der in der linken Spalte der FHEM-Weboberfläche erscheint. Alle diesem Raum zugewiesenen Geräte bzw. FHEM-Einträge tauchen nach einem Klick dieses Raumes dann auf der entsprechenden Raumseite auf. | ||
Zeile 65: | Zeile 63: | ||
=== backup === | === backup === | ||
* [[Backup]] | * [[Backup]] | ||
=== include === | === include === | ||
Zeile 99: | Zeile 95: | ||
<ins>Beispiel:</ins> ''reload 99_myUtils'' | <ins>Beispiel:</ins> ''reload 99_myUtils'' | ||
=== [http://fhem.de/commandref.html#rereadcfg rereadcfg] === | |||
Dieser Befehl, abgesetzt z.B. über das Befehls-Eingabefeld der Fhem-Oberfläche, veranlasst ein Neueinlesen der aktuellen oder einer alternativen [[Konfiguration]]. Im letzteren Fall muss der Name der neu einzulesenden Konfiguration explizit angegeben werden. | |||
Es können '''nicht''' einzelne ''include'' Dateien auf diesem Weg neu eingelesen werden. Das "reread" bezieht sich immer auf eine komplette Konfiguration, also der Basisdatei (Standard: fhem.cfg) einschließlich aller eventuell darüber hinaus referenzierten ''include'' Dateien (siehe auch diesen {{Link2Forum|Topic=8686|Message=45609}})! | |||
=== twilight === | === twilight === | ||
* [[Twilight Anwendungsbeispiel]] | * [[Twilight Anwendungsbeispiel]] | ||
=== update ... === | === update ... === | ||
Zeile 146: | Zeile 139: | ||
[[Kategorie:FhemBefehl]] | |||
[[Kategorie: |
Version vom 26. August 2014, 12:28 Uhr
Allgemeines
Dies soll kein Ersatz für die FHEM Command Reference sein. Es geht hier vorwiegend um voll ausgeschriebene Befehle zum besseren Verständnis. Die Command Reference listet alle Befehle, Optionen und Möglichkeiten auf, aber manchmal übersieht man in der Vielzahl an Informationen eine Kleinigkeit und schon funktioniert es nicht. Es werden nicht alle Optionen erläutert.
Sofern es im Wiki schon Beiträge gibt, die einzelne Befehle ähnlich diesem Beitrag abhandeln, erfolgt ein Verweis auf diese; alle existierenden Beiträge zu Fhem-Befehlen sind zudem in der Kategorie FhemBefehl aufgelistet.
at
at kann man vergleichen mit den "Geplanten Tasks" (Windows) oder "cron" (Linux). Abhängig von der Uhrzeit (immer um 04:00 Uhr) bzw. abgelaufenen Zeitspannen (alle 5 Minuten) werden weitere Befehle ausgelöst.
attr
Mit attr weist man einem FHEM-Gerät bestimmte Attribute (Merkmale / Eigenschaften) zu. Weiterhin setzt man damit z.B. auch allgemein gültige (globale) Eigenschaften der FHEM-Installation (latitude, longitude, verbose).
attr global latitude 5X.XYZ
Wert für die geographische Breite (früher Breitengrad) setzen. Erforderlich vor Nutzung der Sonnenauf- / Sonnenuntergangsfunktionen (sunrise/sunset usw.)
attr global longitude 6.XYZ
Wert für die geographischen Länge (früher Längengrad) setzen. Erforderlich vor Nutzung der Sonnenauf- / Sonnenuntergangsfunktionen (sunrise/sunset usw.)
attr global verbose X
Mit dem Wert "X" legt man die Detailtiefe der protokollierten Informationen fest.
Hat X den Wert
- 0 wird nur der Start und das Beenden des FHEM-Servers protokolliert
- 1 werden zusätzlich Fehlermeldungen und unbekannte Pakete ausgegeben.
- 2 erfolgt eine Ausgabe der wichtigen Ereignisse (events) und Alarmmeldungen.
- 3 werden ausgesendete Befehle geloggt.
- 4 wird protokolliert, was von den verschiedenen Geräte empfangen wurde.
- 5 wird alles ausgegeben ("debugging", Fehlersuche)
Ein größerer Wert führt also zu einer höheren Detailtiefe.
Für den Normalgebrauch wird Level 3 empfohlen.
attr <Geräte-Name> ignore X
Ausblenden von fremden Geräten aus der FHEM-Konfiguration.
attr <Geräte-Name> room <Raum1>[,Raum2]
Über dieses (optionale) Attribut weist man ein FHEM-Gerät einem Raum oder mehreren Räumen zu, der in der linken Spalte der FHEM-Weboberfläche erscheint. Alle diesem Raum zugewiesenen Geräte bzw. FHEM-Einträge tauchen nach einem Klick dieses Raumes dann auf der entsprechenden Raumseite auf.
Mit der erstmaligen Verwendung eines Raumnamens (also neuer Name) wird automatisch dieser Raum erzeugt und in die Raumliste eingefügt.
Hinweis: Ein evtl. zweiter Raumname ist mit Komma vom ersten Raumnamen zu trennen. Nach dem Komma darf kein Leerzeichen stehen, sonst würde
attr MeinGerät room Keller, Zentrale
einen Raum " Zentrale" erstellen (also mit einem führenden Leerzeichen, das in der FHEM-Raumliste aber nicht sichtbar ist und die Fehlersuche erschwert).
Richtig lautet die o.a. Anweisung also
attr MeinGerät room Keller,Zentrale
Wenn Sie ein Device einem Raum "..., Zentrale" und ein anderes einem Raum "...,Zentrale" zuweisen, würden in der Raumliste dann 2 Räume mit dem Namen Zentrale erscheinen.
backup
include
Die Nutzung von include wird nur noch "Experten" empfohlen. Der Sinn wird zunehmend (auch von Experten) angezweifelt. Siehe auch Konfiguration.
Wer es nicht lassen kann:
Man kann - z.B. aus Gründen der Übersichtlichkeit, Struktur, Ordnung - Teile der fhem.cfg in separate Dateien auslagern. Mittels des Befehls include können diese "Auslagerungsdateien" dann wieder in FHEM eingebunden werden.
Beispiel: include /opt/fhem/FHEM/homematic.cfg
Ein Vorteil - wenn man diese Dateien nicht im selben Ordner wie die fhem.cfg-Datei (hier wäre das /opt/fhem/), sondern in /opt/fhem/FHEM/ speichert - ist, dass diese Dateien dann innerhalb der FHEM-Weboberfläche über den Menüpunkt Edit files erreichbar (editierbar) sind. Sie stehen dann im Bereich der Own modules and helper files. Ansonsten muss man auf diese Dateien per remote-Sitzung oder einem anderen Programm (SSH / FTP) zugreifen.
Hinweis: Diese separaten Dateien können per rereadcfg <Pfad>/homematic.cfg einzeln wieder eingelesen werden. Die includes sollten unter der Hardwarekonfiguration (CUL/FHZ/...) in die fhem.cfg hinzugefügt werden, ansonsten bleiben die Aktoren ohne Funktion!
list
Mittels list können Sie sich z.B. die Eigenschaften / Auswirkungen eines at-Befehls oder eines Gerätes ausgeben lassen.
list .* DEF # Auflistung der Definitionen aller Geräte list wz.* DEF # Auflistung der Definitionen der Geräte, die mit wz beginnen.
notify
reload
Eine einzelne Moduldatei soll neu eingelesen werden. Dadurch werden - ohne Neustart - vorgenommene Änderungen in dieser Moduldatei verfügbar.
Beispiel: reload 99_myUtils
rereadcfg
Dieser Befehl, abgesetzt z.B. über das Befehls-Eingabefeld der Fhem-Oberfläche, veranlasst ein Neueinlesen der aktuellen oder einer alternativen Konfiguration. Im letzteren Fall muss der Name der neu einzulesenden Konfiguration explizit angegeben werden.
Es können nicht einzelne include Dateien auf diesem Weg neu eingelesen werden. Das "reread" bezieht sich immer auf eine komplette Konfiguration, also der Basisdatei (Standard: fhem.cfg) einschließlich aller eventuell darüber hinaus referenzierten include Dateien (siehe auch diesen Beitrag)!
twilight
update ...
FHEM ab Version 5.3
Syntax:
update [development|stable] [<file>|check|fhem|full] [force]
Seit dem 19.08.2014 wird ein neues Update-Modul (Thema) von Fhem verteilt. Die Syntax lautet:
update [<fileName>|all|check|force] [http://.../controlfile]
Hinweise:
- bis 18.08.2014: Fhem führt (so voreingestellt) ein Backup der bisherigen Installations- und Konfigurationsdateien vor einem Update durch.
- ab 19.08.2014: Fhem sichert "nur" die Modul(Installations-)dateien standardmäßig. Backup muss separat eingeschaltet werden. Details: Thema
- Lesen Sie aufmerksam die nach dem Update auf dem Monitor erscheinenden Meldungen.
- Nach einem Update ist immer ein shutdown restart erforderlich.
update
Die ganze Fhem-Installation wird auf die neueste Version gebracht.
update check
Es wird angezeigt, was alles neu ist. Es wird nicht installiert.
update development
-- In Fhem ab Stand 19.08.2014 nicht mehr enthalten --
Sie führen ein Update auf die in der Entwicklung befindliche FHEM-Version durch. Dies kann dazu führen, dass einiges nicht (mehr) so läuft, wie Sie es gewohnt sind. Für ein bisher stabiles und produktiv eingesetztes FHEM-System sollte daher besser nur der Befehl update stable genutzt werden. Dazu sollte man aber eins wissen: Es gibt faktisch keinen Unterschied zwischen stable und development, da nur eine Version gepflegt wird.
update force
Das Update wird erzwungen (falls es beim regulären update Probleme geben sollte).
update <Dateiname>
Mit z.B. update 02_HTTPSRV.pm installiert man nur eine neue Version der Datei 02_HTTPSRV.pm. Alle anderen FHEM-Dateien werden nicht angetastet.