Ich verwende im IOBroker fürs Backup die FritzNas. Funktioniert prima.
Jetzt möchte ich Historywerte über 'fs.WriteFile' ebenfalls in der FritzNas speichern.
Das Schreiben bringt Fehler. Vermutlich wegen fehlens der Zugriffsberechtigung.
Mein Problem: Wo gibt man den Usernamen & Passwort an?
NEWS
Best posts made by esp
-
Historywerte auf FritzNas speichern
Latest posts made by esp
-
RE: Steckdose abfragen ob manuell eingeschaltet wurde?
Für meine E-Auto-Steckdose (Shelly plus 1pm) habe ich im Script einen Switch 'manu'/'auto' eingebaut. Dieser Switch wird in der VIS gesetzt. Im Status 'manu' wird wird keine Steuerung über den 'Einspeisungswert' vorgenommen.
-
RE: Historywerte auf FritzNas speichern
@thomas-braun
Es tut mir leid, aber diese Frage ist nicht zielführend.
Konkrete Hinweise (Code-Snip) wären hilfreich. -
RE: Historywerte auf FritzNas speichern
@thomas-braun
Wie macht man es denn richtig?
Das was du siehst ist es falsch, wenn ja an welcher Stelle? -
RE: Historywerte auf FritzNas speichern
@djmarc75
Das 'BACKITUP' funktioniert so, wie ich es geschrieben habe. Die bereits erfolgten Backups sind auf der NAS im entsprechendem Verzeichnis vorhanden. Das Protokoll des Backups bestätigt die korrekte Durchführung.
Die NAS ist am USB-Anschluss der FritzBox, der Name ist 'SAVE'. Das Laufwerk wird am PC mit diesen Namen gemountet.
-
RE: Historywerte auf FritzNas speichern
@thomas-braun
Meine NAS ist ein USB-Laufwerk (USB 3.0) und ist seit jahren im (problemlosen) Einsatz.
Zum Hintergrund: Ich möchte die Historywerte auf den PC (dort liegt mein Zentralarchiv) übernehmen und sie dort langfristig speichern, auswerten und mit anderen Daten verknüpfen. D.h. ist ein Monat rum, dann den vergangenen Monat übernehmen und in der History löschen. Die historywerte kann man ja auch mit 'DOWNLOAD' (=manuell) auf dem PC speichern. Das ist doch bei diesen Systemmöglichkeiten eine Primitiv-Lösung.
Es geht doch nur darum, wie schreibt man Daten auf die NAS (mit Username und Passwort). Sowa muss doch das 'FileSystem' hergeben. -
RE: Historywerte auf FritzNas speichern
Als 80-jähriger Raspi/IObroker-Neuling bin ich in vielen Dingen noch nicht in die Tiefen vorgedrungen. Mein EnergieManagementSystem habe ich schon gut hinbekommen und das Laden meines E-Auto sowie die Schaltung einiger Steckdosen incl, Visualisierung funktioniert prima.
Zum Thema BACKITUP habe ich Screenshots gemacht (am PC bin ich halt besser drauf). So funktioniert es.
SAVE ist der USB-Speicher (SD-Karte) an der FritzBox, den am PC als Laufwerk mounte.
-
RE: Historywerte auf FritzNas speichern
Hallo,
im 'BACKITUP' verwende ich folgende Einstellungen:
Verbindungstyp: 'CIFS'
Server: 'FritzBox'
Pfad: 'FritzNas/SAVE/Sicherungen/backupDir'
In der 'FritzBox' ist eingetragen
FRITZ!Box-Name: 'FritzBox'
Der Benutzer ist der, der auch im BACKITUP verwendet wird.Was muss ich eintragen, um das Verzeichnis einzubinden?
Grüße aus Franken
Erwin -
RE: Historywerte auf FritzNas speichern
@esp
Leider konnte mir bis jetzt keiner helfen. Ein neuer Versuch Unterstützung zu bekommen.
Das Script:// Historywerte speichern const objId = '0_userdata.0.Netz.EinspwertStunde'; const csvDateFormat = 'DD.MM.YYYY hh:mm:ss'; //const fileName = 'http:\\\\IOBroker:Iedc3sx2wB@FritzBox\\FritzNas\\SAVE\\Sicherungen\\Netz_EinspwertStunde.csv'; const fileName = '\\\\IOBroker:Iedc3sx2wB@FritzBox\\FritzNas\\SAVE\\Sicherungen\\Netz_EinspwertStunde.csv'; var fs = require('fs'); // Save every monday @ 00:00 //schedule('0 0 * * 1', async () => { const end = new Date().getTime(); const start = end - (60 * 60 * 24 * 2 * 1000); // last 2 days getHistory('history.0', { id: objId, start: start, end: end, aggregate: 'none', timeout: 2000 }, (err, result) => { if (err) { console.error(`Unable to get history of ${objId}: ${err}`); } else if (result) { let csvData = ['timestamp;value']; for (var i = 0; i < result.length; i++) { csvData.push('${formatDate(result[i].ts, csvDateFormat)};${result[i].val}'); } fs.writeFile(fileName, csvData.join("\n"),"utf8", function(err) { if(err) { return console.log(err); } console.log(fileName); console.log(" --> was saved"); }) } }); //});
Das Script läuft, aber es wird keine Datei geschrieben!
11.6.2023, 09:45:00.321 [info ]: javascript.0 (810) Start javascript script.js.common._Hist_SaveAsCsvToFile 11.6.2023, 09:45:00.334 [info ]: javascript.0 (810) script.js.common._Hist_SaveAsCsvToFile: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions 11.6.2023, 09:45:00.354 [info ]: javascript.0 (810) script.js.common._Hist_SaveAsCsvToFile: http:\\IOBroker:Iedc3sx2wB@FritzBox\FritzNas\SAVE\Sicherungen\Netz_EinspwertStunde.csv 11.6.2023, 09:45:00.355 [info ]: javascript.0 (810) script.js.common._Hist_SaveAsCsvToFile: --> was saved 11.6.2023, 09:45:02.513 [info ]: javascript.0 (810) Stop script script.js.common._Hist_SaveAsCsvToFile 11.6.2023, 09:49:02.575 [info ]: javascript.0 (810) Start javascript script.js.common._Hist_SaveAsCsvToFile 11.6.2023, 09:49:02.587 [info ]: javascript.0 (810) script.js.common._Hist_SaveAsCsvToFile: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions 11.6.2023, 09:49:02.608 [info ]: javascript.0 (810) script.js.common._Hist_SaveAsCsvToFile: \\IOBroker:Iedc3sx2wB@FritzBox\FritzNas\SAVE\Sicherungen\Netz_EinspwertStunde.csv 11.6.2023, 09:49:02.609 [info ]: javascript.0 (810) script.js.common._Hist_SaveAsCsvToFile: --> was saved 11.6.2023, 09:49:03.893 [info ]: javascript.0 (810) Stop script script.js.common._Hist_SaveAsCsvToFile
MOD-EDIT: Code in code-tags gesetzt!
Das Backup auf FritzNas funktioniert.
Brauche dringend Hilfe! -
RE: Historywerte auf FritzNas speichern
javascript.0 (814) script.js.common._Hist_SaveAsCsvToFile: {'errno':-2,'code':'ENOENT','syscall':'open','path':'http://FritzBox/FritzNas/Sicherungen/Netz.EinspwertStunde.csv'}
MOD-EDIT: Code in code-tags gesetzt!
-
RE: Historywerte auf FritzNas speichern
// Histarywerte speichern const objId = '0_userdata.0.Netz.EinspwertStunde'; const csvDateFormat = 'DD.MM.YYYY hh:mm:ss'; //const fileName = `${objId}.csv`; const fileName = `Netz.EinspwertStunde.csv`; const filePath = `http://FritzBox/FritzNas/Sicherungen/${fileName}`; var fs = require('fs'); // Save every monday @ 00:00 //schedule('0 0 * * 1', async () => { const end = new Date().getTime(); const start = end - (60 * 60 * 24 * 2 * 1000); // last 2 days getHistory('history.0', { id: objId, start: start, end: end, aggregate: 'none', timeout: 2000 }, (err, result) => { if (err) { console.error(`Unable to get history of ${objId}: ${err}`); } else if (result) { let csvData = ['timestamp;value']; for (var i = 0; i < result.length; i++) { csvData.push('${formatDate(result[i].ts, csvDateFormat)};${result[i].val}'); log(`${formatDate(result[i].ts, csvDateFormat)};${result[i].val}`); } fs.writeFile(filePath, csvData.join("\n"),"utf8", function(err) { if(err) { return console.log(err); } console.log("The file was saved!"); }) } }); //});
MOD-EDIT: Code in code-tags gesetzt!