NEWS
Aus javascript in Textdatei schreiben [Gelöst]
-
Hallo Freunde,
ich würde gerne den Status eines Datenpunktes in eine neue Textdatei schreiben, um ihn dann später auf dem Pi zu verarbeiten. Ich benutze den Iobroker auf einem Raspberry Pi 4.
Ich hatte gedacht diese Methode wäre effizienter, als die States.json im iobroker-data Ordner zu verarbeiten. Falls ihr da doch noch andere Ideen habt, gerne her damit.Nun habe ich schon diesen Thread durchgearbeitet, leider ohne Erfolg.
Leider wirft mir der Befehl
writeFile(null, '/meinedatei.txt',"test text", function (error) { });
immer folgende Fehlermeldung aus
Cannot write file /test.txt: javascript is not an object of type "meta".
Selbst wenn ich den Wert "null" in ein beliebiges Verzeichnis ändere, bekomme ich die selbe Fehlermeldung. Bin für jegliche Denkanstöße dankbar!
Grüße
-
@bobby
Hab den Befehl zwar noch nie benutzt, aber / ist root und da darf üblicherweise nur root schreiben.Ist Quark, kann leider nicht helfen
-
@bobby
Ich habe das gerade auf meiner Installation ausprobiert, und bei mir funktioniert das so, wie du es versucht hast.
Du machst also wohl nichts grundsätzlich falsch. Evtl. ein Problem mit deiner Installation? Da müssen dann wohl die Fachleute ran. -
@bobby sagte in Aus javascript in Textdatei schreiben:
writeFile(null, '/meinedatei.txt',"test text", function (error) { });
ich habe mal folgenden code probiert
writeFile('javascript.admin', '/meinedatei.txt', "testx test", function (error) { console.log('file written'); }); readFile('javascript.admin', '/meinedatei.txt', function (error, data) { console.log("mein text: ----:"+data.substring(0, 50)); });
die daten werden geschrieben und die daten werden gelesen.
lustigerweise wird die datei aber nicht geschrieben
gemäß diesem thread müsste sie
https://forum.iobroker.net/topic/25541/gelöst-wie-writefile-in-js-script-nutzen/12
sich im verzeichnis
/opt/iobroker/iobroker-data/files/javascript.admin
befinden -
@oliverio sagte in Aus javascript in Textdatei schreiben:
writeFile('javascript.admin', '/meinedatei.txt', "testx test", function (error) {
funktioniert (ohne slash vor datei):
writeFile('javascript.admin', 'meinedatei.txt', "testx test", function (error) { console.log('file written'); });
-
@liv-in-sky Das hat funktioniert!
Ich danke dir/euch für die Hilfe