NEWS
Definizion des Datenpunkts bereits im Skript
-
Ist doch gaaaanz einfach.
der TE möchte, dass bei anlegen eines Datenpunktes über ein Skript… (klar soweit?)
...die Konfiguration für den History-Adapter :idea: direkt mit erledigt wird.
Diese ist nämlich standardmäßig:
@HKF8770:Aktiviert kein Häckchen
Nu Änderungen aufzeichen mit Häckchen
DB Vorhaltezeit ist glauch 1 Woche `
Gruß
Rainer
-
Ich habe auch länger gebraucht
Er möchte die Einstellungen für History schon beim Anlegen des Objektes in Javascript mit setzen.
(Objekt erstellt > dann soll kein manueller Eingiff mehr in den ioBroker Objekten für History nötig sein).
Das sieht createState() in Jvascript-Adapter nicht vor.
Wobei History ja auch wieder ein eigener Adapter ist.
-
OK, History…
Ich bin 'raus...
History ist Vergangenheit, was schert mich Vergangenheit
-
:lol: :mrgreen:
-
OK, History…
Ich bin 'raus...
History ist Vergangenheit, was schert mich Vergangenheit `
Danke, das wird der Denkfehler von Freddy sein.
Die von dir genannten Optionen sind nicht im Datenpunkt selbst, sondern werden im History-Adapter angelegt.
Ob diese Konfiguration über ein js-Skript zu bewerkstelligen ist kann ggf. Bluefox sagen.
Gruß
Rainer
2335_si04.jpg -
Sollte damit gehen:
createState('myData', 0,//default value false, // forceCreation {history: { enabled: true, changesOnly: true, minLength: 480, maxLength: 960, retention: 604800, debounce: 10000 }}// history einstellungen );
-
Danke Jungs…werde ich heute Abend gleich probieren
und ich gelobe Besserung und werde ganze Sätze formulieren .....sorry
2889_20-06-_2017_08-50-32.png -
Sollte damit gehen:
createState('myData', 0,//default value false, // forceCreation {history: { enabled: true, changesOnly: true, minLength: 480, maxLength: 960, retention: 604800, debounce: 10000 }}// history einstellungen ); ```` `
Das ist doch was!
Ich würde mir einen Parameter wünschen, mit dem ich beim Setzen des Datenpunkts verhindern kann, dass dafür History aktiviert werden kann.
Hintergrund: im Callmonitor wird jede Sekunde beim aktiven Call eine Liste erstellt. Wenn jemand in den Objekten global "alle Historypunkte" an setzt, würden dort relativ viele Daten anfallen. Wenn ich jetzt innerhalb eines Adapters beim Anlegen des Objekts/Datenpunkt schon verhindern könnte, dass dafür History aktiviert wird (weil es einfach keinen Sinn macht), wäre das ideal.
Ist so etwas denkbar?
870_iobroker-smarthome-struktur.jpg -
> Hintergrund: im Callmonitor wird jede Sekunde beim aktiven Call eine Liste erstellt. Wenn jemand in den Objekten global "alle Historypunkte" an setzt, würden dort relativ viele Daten anfallen. Wenn ich jetzt innerhalb eines Adapters beim Anlegen des Objekts/Datenpunkt schon verhindern könnte, dass dafür History aktiviert wird (weil es einfach keinen Sinn macht), wäre das ideal.
Sinn macht es wenig.Szenario 1: erst history aktivieren, dann fritzbox installieren
Alle neue Datenpunkte werden ohne History angelegt und Anwender muss nach dem Anlegen noch mal alle Datenpunkte anfassen
Szenario 2: erst fritzbox, dann History für alle Datenpunkte aktivieren
Fritzbox läuft schon und es werden keine Datenpunkte mehr angelegt und history bleibt aktiv.
Mann konnte, natürlich, aktiv die Fritzbox Objekte überwachen und auf deren Änderung prüfen ob history aktiviert ist…. Aber Wenn Anwender die History für alle Datenpunkte aktiviert, dann muss er wissen, was er macht.
-
mh… ich habe mir das wahrscheinlich zu simpel vorgestellt...
in der io-package.json ein:
"nohistory" : true
In den Objekten wird dann das Icon für History nicht angezeigt. Und wenn man man alle Historypunkte aktiviert, werden Punkte mit dem Flag ausgelassen.
Gesendet von iPhone mit Tapatalk
-
Sollte damit gehen:
createState('myData', 0,//default value false, // forceCreation {history: { enabled: true, changesOnly: true, minLength: 480, maxLength: 960, retention: 604800, debounce: 10000 }}// history einstellungen ); ```` `
Aus Zeitgründen habe ich das noch nicht ausprobiert. Aber geht das auch mit influx?
Denn mit dem neuen smartName-Parameter muss ich eh die meisten createStates überarbeiten. Da würde ich die histpry/influx/sql-Funktion gleich einbauen.
Vielleicht kriege ich's am Wochenende hin. Sind so viele andere Baustellen noch offen ….
Gruß
Pix
-
Die Struktur ist inzwischen anders! Der key heisst inzwischen "custom" anstelle "History" und hat dann die Histpry-Instanz als Unterkey.
Also untested:
custom: {'influxdb.0': {…}}
Am besten schau dir die raw Objektstruktur an von einem State wo Du es manuell eingeschaltet hast
-
Klappt super:
createState('Nachtruhe', false, false, { name: 'Status Nachtruhe', type: 'boolean', desc: 'Nachtruhe', role: 'switch', smartName: { 'de': 'Nachtruhe' }, custom: { "influxdb.0": { "enabled": true, "changesOnly": true, "debounce": "", "retention": 63072000 // 2 Jahre } } });
Danke!
Pix