Import von Code Snippets

Aus FHEMWiki
Wechseln zu: Navigation, Suche

Manchmal ist es (oder scheint es) erforderlich, eine neue Device mittels eines Editors direkt in fhem.cfg einzutragen. Das ist allerdings hoch gefährlich, es wird strikt davon abgeraten. Mit dem "grünen Kreuz" gibt es nun eine Möglichkeit, diesen direkten Eintrag über die Weboberfläche von FHEM auszuführen, gleichzeitig findet ein Syntax- und Fehlercheck statt:

Sorgfältig vorbereitete Code Snippets, mit exportdevice erzeugter Code oder mit Raw definition ausgegebene Gerätedefinitionen können im FHEMWEB-Frontend über Raw definition importiert werden.

Info blue.png
Wie das Befehl-Eingabefeld unterstützt auch das Dialogfeld zur RAW-Definition Syntax highlighting und die geänderten bzw. importierten Anweisungen werden bei der Ausführung einer Syntaxprüfung unterzogen. So lassen sich eventuelle Fehler häufig schnell erkennen.


Voraussetzung

"f18" ist ein FHEMWEB Style, was man unter "Select style" auswaehlen kann. Nur wenn der Style "f18" eingestellt wurde, kann man die hier beschriebene Methode nutzen.

Wie finde ich Raw definition?

Button

Um schnell zu einem Eingabefeld für Raw definition zu gelangen, klicken Sie einfach auf das + neben dem Kommandofeld. Es öffnet sich ein leeres Dialogfeld, in den man RAW-Code direkt eingeben bzw. am Stück eingeben kann.

Über die Geräte-Detailansicht

Zur Raw definition kommt man über die Gerätedetailansicht eines beliebigen Gerätes. Der Link Raw definition steht in der letzten Zeile der Seite. Raw definition.png Diesen Weg sollten Sie wählen, wenn Sie Code für andere bereit stellen wollen.

Erstellen eines Importgerätes

Zur Übung kann man dieses Importgerät importieren.

define Import dummy
attr Import group Entwicklung
attr Import room Entwicklung
save

Direktzugriff über das FHEM-Menü

Der angelegte Import-Dummy kann direkt aufgerufen werden, wenn man einen Meüeintrag anlegt. Im entsprechenden FHEMWEB-Gerät das Attribut menuEntries erzeugen mit

attr WEB menuEntries CodeImport,/fhem?detail=Import#

oder ergänzen mit

CodeImport,/fhem?detail=Import#

Vorgehensweise beim Import

Als erstes die Geräteansicht eines beliebigen Gerätes aufrufen, dann den Link Raw definition anklicken.
Jetzt den angezeigten Inhalt des sich öffnenden Eingabefeldes mit der oben stehenden Definition überschreiben und danach den erschienenen Button Execute commands drücken.
Wenn die Meldung "Wrote configuration to fhem.cfg" erscheint, war der Import erfolgreich, andernfalls gibt es eine Fehlermeldung und der Import wird an dieser Stelle abgebrochen.
Das Gerät müsste jetzt im Raum Entwicklung zu finden sein.
Zukünftig kann dieses Gerät zum Importieren genutzt werden, damit sinkt die Wahrscheinlichkeit eine bestehende Definition zu beeinträchtigen.

Zum Erstellen eigener Definitionen ist der DEF-Editor das empfohlene Werkzeug.

Sonstiges

Geräte zwischen Installationen verschieben

Möchte man eigene Geräte zwischen unterschiedlichen Installationen verschieben, z.B. aus einem Test- in das Produktivsystem, kann man sich mit den erweiterten Optionen von list die Informationen aus dem Ausgangssystem so anzeigen lassen, dass diese direkt samt derzeitiger Zustände ins Zielsystem übernommen werden können.

attrTemplate

attrTemplate ist für Geräte-Typen, die dies unterstützen, eine weitere Option, Geräte schnell mit einer typischen Konfiguration einzurichten.

Links