NEWS
Wie Werte von Datenpunkten in andere Installation übertragen
-
Hi Leute, haut mich bitte nicht, aber ich steh gerade vor einer Wand ... oder vielleicht doch nicht?
Ich habe eine neue Installaton von ioBroker. Ich habe alle Adapter frisch installiert, soweit alles ok. Nur ich habe ein paar Adapter, für die ich gerne die aktuellen Werte der Datenpunkte übernehmen würde. Die Datenpunkte ansich sind angelegt, nur die Werte sollte ich noch übernehmen. Wie macht man das am geschicktesten?
Danke für euren Support.
-
Hi Leute, haut mich bitte nicht, aber ich steh gerade vor einer Wand ... oder vielleicht doch nicht?
Ich habe eine neue Installaton von ioBroker. Ich habe alle Adapter frisch installiert, soweit alles ok. Nur ich habe ein paar Adapter, für die ich gerne die aktuellen Werte der Datenpunkte übernehmen würde. Die Datenpunkte ansich sind angelegt, nur die Werte sollte ich noch übernehmen. Wie macht man das am geschicktesten?
Danke für euren Support.
@jpgorganizer sagte in Wie Werte von Datenpunkten in andere Installation übertragen:
Wie macht man das am geschicktesten?
abtippen

Müssen die Werte regelmäßig überrtragen werden? -> MQTT
Müssen sie überhaupt übertragen werden oder füllen sich die Werte nach und nach?Ansonsten s.o.
-
@jpgorganizer sagte in Wie Werte von Datenpunkten in andere Installation übertragen:
Wie macht man das am geschicktesten?
abtippen

Müssen die Werte regelmäßig überrtragen werden? -> MQTT
Müssen sie überhaupt übertragen werden oder füllen sich die Werte nach und nach?Ansonsten s.o.
@homoran sagte in Wie Werte von Datenpunkten in andere Installation übertragen:
@jpgorganizer sagte in Wie Werte von Datenpunkten in andere Installation übertragen:
Wie macht man das am geschicktesten?
abtippen

hab ich befürchtet, aber kann das denn wahr sein ???
Müssen die Werte regelmäßig überrtragen werden? -> MQTT
nein, nur einmal oder wiedermal, wenn ein neues System auf der grünen Wiese aufgesetzt wird
Müssen sie überhaupt übertragen werden oder füllen sich die Werte nach und nach?
füllen sich nicht automatisch, wurden im laufenden Betrieb händisch eingegeben
Ansonsten s.o.
ok, ich schreib mir ein Script, das eine Textdatei (ein anderes Script) erzeugt.
-
@homoran sagte in Wie Werte von Datenpunkten in andere Installation übertragen:
@jpgorganizer sagte in Wie Werte von Datenpunkten in andere Installation übertragen:
Wie macht man das am geschicktesten?
abtippen

hab ich befürchtet, aber kann das denn wahr sein ???
Müssen die Werte regelmäßig überrtragen werden? -> MQTT
nein, nur einmal oder wiedermal, wenn ein neues System auf der grünen Wiese aufgesetzt wird
Müssen sie überhaupt übertragen werden oder füllen sich die Werte nach und nach?
füllen sich nicht automatisch, wurden im laufenden Betrieb händisch eingegeben
Ansonsten s.o.
ok, ich schreib mir ein Script, das eine Textdatei (ein anderes Script) erzeugt.
@jpgorganizer wenn die neue Installation Ersatz für die alte ist, spielst du doch einfach ein Backup ein.
Da sind doch die Werte drin, oder? -
@jpgorganizer wenn die neue Installation Ersatz für die alte ist, spielst du doch einfach ein Backup ein.
Da sind doch die Werte drin, oder?@homoran sagte in Wie Werte von Datenpunkten in andere Installation übertragen:
@jpgorganizer wenn die neue Installation Ersatz für die alte ist, spielst du doch einfach ein Backup ein.
Da sind doch die Werte drin, oder?ja, aber ich will nicht alles aus dem Backup, nur zwei Adapter und das geht ja auch nicht, dass man raussuchen kann, was übernommen werden soll
-
@homoran sagte in Wie Werte von Datenpunkten in andere Installation übertragen:
@jpgorganizer wenn die neue Installation Ersatz für die alte ist, spielst du doch einfach ein Backup ein.
Da sind doch die Werte drin, oder?ja, aber ich will nicht alles aus dem Backup, nur zwei Adapter und das geht ja auch nicht, dass man raussuchen kann, was übernommen werden soll
Folgendes Script auf der alten Maschine ausführen.
txt.Datei ändern.
Und den Text in der neuen Maschine ausführen.// Script um die eigenen DP mit den States zu sichern in einer txt Datei // diese Datei einfach öffnen und den Inhalt in ein Script einfügen und starten - dann werden die DP wieder mit dem richtigen Inhalt befüllt. // ursprünglich geschrieben von @liv-in-sky https://forum.iobroker.net/topic/31769/objekte-sichern/17?page=1 // umgeschrieben und erweitert von @bahnuhr // 09/2022 // Variablen var java = 'javascript.0.System.System.akt_Datum_'; // Variablen - zum ändern var wo_DP = "javascript.0" // oder z.B. "0_userdata.0" // Variablen - nicht ändern var fs = require('fs'); var now = new Date(); // store current date and time var Thour = now.getHours(); if (Thour < 10) { Thour = "0" + Thour; }; var Tmin = now.getMinutes(); if (Tmin < 10) { Tmin = "0" + Tmin; }; var Tsec = now.getSeconds(); if (Tsec < 10) { Tsec = "0" + Tsec; }; var datei = "/home/iobroker/states.txt"; //Sicherung_States(); schedule('2 19 * * *', function () { Sicherung_States(); }); // Schedule einstellen // Scripte async function Sicherung_States() { var cacheSelectorState = $('[id=' + wo_DP + '.*]'); cacheSelectorState.each(function (id, i) { if (!id.includes('scriptEnabled') && !id.includes('scriptProblem') && !id.includes('debug') && !id.includes('variables') ){ var val1 = getState(id).val; if (val1 == null ) {log(id + " hat keinen state");} else {var zk = "setState('"+id+"', "+val1 +");\n"; if(typeof val1 === "string" && !val1.includes('span') && !val1.includes('class')) { zk = "setState('"+id+"', '"+val1+"');\n"; fs.appendFileSync(datei, zk);} else { fs.appendFileSync(datei, zk);} }; } }); const client = new ftp.Client(); client.ftp.verbose = true try { await client.access({ host: v_host, user: v_user, password: v_pass, secure: false }) var Jahr = getState(java + 'Jahr').val; var Monat = getState(java + 'Monat').val; if (Monat < 10) { Monat = "0" + Monat; }; var Tag = getState(java + 'Tag').val; if (Tag < 10) { Tag = "0" + Tag; }; var wohin = "Sicherung/Sicherung ioBroker/States/"+ Jahr + "_" + Monat + "_" + Tag; await client.ensureDir(wohin); await client.clearWorkingDir() await client.uploadFrom(datei, "states.txt") } catch(err) { console.log(err) } client.close() log("Backup : iobroker States gesichert auf NAS Synology"); sendTo('telegram.0', { user: "Dieter", text: "Backup : iobroker-States\ngesichert auf NAS Synology", parse_mode: 'HTML' }); setTimeout(function() { if (fs.existsSync(datei)) { Datei_loeschen(datei); } }, 5000); } //Sicherung_States();Script musst du natürlich auf deine Verhältnisse anpassen.
-
Folgendes Script auf der alten Maschine ausführen.
txt.Datei ändern.
Und den Text in der neuen Maschine ausführen.// Script um die eigenen DP mit den States zu sichern in einer txt Datei // diese Datei einfach öffnen und den Inhalt in ein Script einfügen und starten - dann werden die DP wieder mit dem richtigen Inhalt befüllt. // ursprünglich geschrieben von @liv-in-sky https://forum.iobroker.net/topic/31769/objekte-sichern/17?page=1 // umgeschrieben und erweitert von @bahnuhr // 09/2022 // Variablen var java = 'javascript.0.System.System.akt_Datum_'; // Variablen - zum ändern var wo_DP = "javascript.0" // oder z.B. "0_userdata.0" // Variablen - nicht ändern var fs = require('fs'); var now = new Date(); // store current date and time var Thour = now.getHours(); if (Thour < 10) { Thour = "0" + Thour; }; var Tmin = now.getMinutes(); if (Tmin < 10) { Tmin = "0" + Tmin; }; var Tsec = now.getSeconds(); if (Tsec < 10) { Tsec = "0" + Tsec; }; var datei = "/home/iobroker/states.txt"; //Sicherung_States(); schedule('2 19 * * *', function () { Sicherung_States(); }); // Schedule einstellen // Scripte async function Sicherung_States() { var cacheSelectorState = $('[id=' + wo_DP + '.*]'); cacheSelectorState.each(function (id, i) { if (!id.includes('scriptEnabled') && !id.includes('scriptProblem') && !id.includes('debug') && !id.includes('variables') ){ var val1 = getState(id).val; if (val1 == null ) {log(id + " hat keinen state");} else {var zk = "setState('"+id+"', "+val1 +");\n"; if(typeof val1 === "string" && !val1.includes('span') && !val1.includes('class')) { zk = "setState('"+id+"', '"+val1+"');\n"; fs.appendFileSync(datei, zk);} else { fs.appendFileSync(datei, zk);} }; } }); const client = new ftp.Client(); client.ftp.verbose = true try { await client.access({ host: v_host, user: v_user, password: v_pass, secure: false }) var Jahr = getState(java + 'Jahr').val; var Monat = getState(java + 'Monat').val; if (Monat < 10) { Monat = "0" + Monat; }; var Tag = getState(java + 'Tag').val; if (Tag < 10) { Tag = "0" + Tag; }; var wohin = "Sicherung/Sicherung ioBroker/States/"+ Jahr + "_" + Monat + "_" + Tag; await client.ensureDir(wohin); await client.clearWorkingDir() await client.uploadFrom(datei, "states.txt") } catch(err) { console.log(err) } client.close() log("Backup : iobroker States gesichert auf NAS Synology"); sendTo('telegram.0', { user: "Dieter", text: "Backup : iobroker-States\ngesichert auf NAS Synology", parse_mode: 'HTML' }); setTimeout(function() { if (fs.existsSync(datei)) { Datei_loeschen(datei); } }, 5000); } //Sicherung_States();Script musst du natürlich auf deine Verhältnisse anpassen.
@bahnuhr sagte in Wie Werte von Datenpunkten in andere Installation übertragen:
Folgendes Script auf der alten Maschine ausführen.
txt.Datei ändern.
Und den Text in der neuen Maschine ausführen.danke, das hilft
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden