FHEM Command Beispiele
Beispiele für FHEM-Befehle
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, finden Sie einen Verweis auf diese.
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 mitgeloggten Informationen fest.
Hat X den Wert
- 0 wird nur der Start und das Beenden des FHEM-Servers mitgeschnitten.
- 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 sehen Sie, 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 der Verbose-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. in der Kommandozeile der FHEM-Oberfläche, veranlasst ein Neueinlesen aller oder einzelner Konfigurationsdateien (*.cfg-Dateien). Im letzteren Fall muss der Name der neu einzulesenden Datei explizit angegeben werden.
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.