Seite 1 von 1

Transformations JS Datei anlegen

Verfasst: 20. Dez 2021 12:25
von DeVesen
Hallo,
ich habe nun sehr viel gesucht, warscheinlich falsch, aber leider nichts gefunden.

Wie bekomme ich eine xxx.js Datei im Verzeichnis "/etc/openhab/transform" angelegt?

Ich habe ein HTTP Binding, bei dem ich vor dem PUT mittels JavaScript den Content erzeugen möchte. Leider kommt da immer

Code: Alles auswählen

An error occurred while loading JavaScript. /etc/openhab/transform/xxx.js (Datei oder Verzeichnis nicht gefunden)
Über die Console darf ich aus Benutzerrechtsgründen keine Datei erzeugen, und über die OptenHAB Oberfläche habe ich auch nichts gefunden.

Lieber Gruß

Re: Transformations JS Datei anlegen

Verfasst: 20. Dez 2021 12:33
von int5749
Hast Du denn schon die JS Transformation installiert?
Hast Du VSC zur Konfiguration im Einsatz??

Re: Transformations JS Datei anlegen

Verfasst: 20. Dez 2021 12:54
von DeVesen
Hallo,
JS-Transformation habe ich installiert ja.
Aber VSC leider nein. Hatte versucht das extension zu Verwenden, scheide aber an der Freigabe von "openHAB-conf" - kann also kein Netzlaufwerk erstellen.

Habe OpenHAB auf eniem RaspPi4 laufen.

Re: Transformations JS Datei anlegen

Verfasst: 20. Dez 2021 13:00
von int5749
DeVesen hat geschrieben: 20. Dez 2021 12:54 Habe OpenHAB auf eniem RaspPi4 laufen.
Hast Du openHAB manuell installiert oder mit openHABian?
Hintergrund: openHABian installiert Samba direkt mit.
Sonst mußt Du Samba manuell installieren und konfigureren.
Alternativ kannst Du die Files über eine Shell mittel wget holen.

Aber: Dann wird ein anpassen usw umso schwieriger.

Ich empfehle daher: hier im Forum zu suchen (es gibt schon viele threads dazu) wie VSC mit den OH Extension installiert wird.

Re: Transformations JS Datei anlegen

Verfasst: 20. Dez 2021 13:02
von DeVesen
Hatte es manuell installiert.

Ok, dann versuche ich diesen Weg.
Vielen Dank

Re: Transformations JS Datei anlegen

Verfasst: 20. Dez 2021 16:19
von udo1toni
Nur so als Tipp: Du darfst selbstverständlich eine Datei über die Konsole anlegen. Allerdings musst Du dabei den richtigen User verwenden.
Das Verzeichnis /etc/openhab/ mitsamt seinen Unterverzeichnissen gehört dem User openhab. Nur dieser darf dort Dateien anlegen oder ändern. (und der User root natürlich).
Es gibt nun zwei Möglichkeiten:
1. Anlegen mittels root:

Code: Alles auswählen

sudo nano /etc/openhab/transform/xxx.js
// Datei bearbeiten uns speichern
sudo chown openhab: /etc/openhab/transform/xxx.js
Der zweite Befehl ist notwendig, damit dei Datei dem User openhab gehört.
2. Anlegen mittels openhab:

Code: Alles auswählen

sudo -u openhab nano /etc/openhab/transform/xxx.js
Auch hier muss natürlich der Inhalt in die Datei und die Datei gespeichert werden, aber da die Datei als User openhab angelegt wurde, bedarf es keines zweiten Befehls.

Der angemeldete User muss natürlich zur Gruppe sudo gehören oder separat berechtigt sein. Dies trifft allgemein auf den User openhabian und den User pi zu, falls diese existieren.