NEWS
[solved] Übernahme einer Liste aus JS-funktion in Blockly?
-
Hallo zusammen,
aus dem Topic https://forum.iobroker.net/topic/15041/gelöst-zugriff-per-script-auf-history-daten würde ich gern die history-daten in einem Blockly weiterverwenden, habe aber keinerlei Idee, wie man dieses JAVA script eine entsprechende Liste für Blockly zurückgeben lässt.
könnte mir da jemand einen Tipp geben? I kann leider kein JS... :-(var end = Date.now(); sendTo('history.0', 'getHistory', { id: 'system.adapter.admin.0.memRss', options: { start: end - 3600000, end: end, aggregate: 'onchange' } }, function (result) { for (var i = 0; i < result.result.length; i++) { console.log(result.result[i].val + ' ' + new Date(result.result[i].ts).toISOString()); } }); -
Hallo zusammen,
aus dem Topic https://forum.iobroker.net/topic/15041/gelöst-zugriff-per-script-auf-history-daten würde ich gern die history-daten in einem Blockly weiterverwenden, habe aber keinerlei Idee, wie man dieses JAVA script eine entsprechende Liste für Blockly zurückgeben lässt.
könnte mir da jemand einen Tipp geben? I kann leider kein JS... :-(var end = Date.now(); sendTo('history.0', 'getHistory', { id: 'system.adapter.admin.0.memRss', options: { start: end - 3600000, end: end, aggregate: 'onchange' } }, function (result) { for (var i = 0; i < result.result.length; i++) { console.log(result.result[i].val + ' ' + new Date(result.result[i].ts).toISOString()); } });@chris299 sagte: eine entsprechende Liste für Blockly zurückgeben lässt.
Modifizierte Javascript-Funktion
history1h(id):var end = Date.now(); sendTo('history.0', 'getHistory', { id: id, options: { start: end - 3600000, end: end, aggregate: 'onchange' } }, function (result) { for (var i = 0; i < result.result.length; i++) { Liste.push(result.result[i].val); } });
-
Hallo zusammen,
aus dem Topic https://forum.iobroker.net/topic/15041/gelöst-zugriff-per-script-auf-history-daten würde ich gern die history-daten in einem Blockly weiterverwenden, habe aber keinerlei Idee, wie man dieses JAVA script eine entsprechende Liste für Blockly zurückgeben lässt.
könnte mir da jemand einen Tipp geben? I kann leider kein JS... :-(var end = Date.now(); sendTo('history.0', 'getHistory', { id: 'system.adapter.admin.0.memRss', options: { start: end - 3600000, end: end, aggregate: 'onchange' } }, function (result) { for (var i = 0; i < result.result.length; i++) { console.log(result.result[i].val + ' ' + new Date(result.result[i].ts).toISOString()); } });Habe neulich (auch mit Hilfe von @paul53 )was für eine SQL Abfrage gebaut.
Dort kannst du auch alles aus Blockly übergeben (start, Ende und den DP).Ist jetzt einiges drumherum gebaut......
Aber so sieht man ggf wie man noch mit arbeiten kann.
Die SQL Funktion fragt val und ts ab.
Im Beispiel verwende ich ts aber nicht.Die Funktion kann ich später senden. Am Handy klappt das c&p nicht....

Das Script sendet folgende Telegramm (falls es interessiert):

-
@chris299 sagte: eine entsprechende Liste für Blockly zurückgeben lässt.
Modifizierte Javascript-Funktion
history1h(id):var end = Date.now(); sendTo('history.0', 'getHistory', { id: id, options: { start: end - 3600000, end: end, aggregate: 'onchange' } }, function (result) { for (var i = 0; i < result.result.length; i++) { Liste.push(result.result[i].val); } });
@paul53 vielen Dank für Deine Hilfe! Verstehe ich aber richtig aus dem Post von @David-G (ebenfalls vielen Dank), dass es 1000ms Pause danach braucht, weil es etwas zeit braucht bis die Liste befüllt ist und der Rest des Blockly asynchron weiter läuft?
(Es ging jedenfalls bei mir nur mit einer Pause danach die Werte weiter zu verarbeiten....) -
@paul53 vielen Dank für Deine Hilfe! Verstehe ich aber richtig aus dem Post von @David-G (ebenfalls vielen Dank), dass es 1000ms Pause danach braucht, weil es etwas zeit braucht bis die Liste befüllt ist und der Rest des Blockly asynchron weiter läuft?
(Es ging jedenfalls bei mir nur mit einer Pause danach die Werte weiter zu verarbeiten....) -
@paul53 vielen Dank für Deine Hilfe! Verstehe ich aber richtig aus dem Post von @David-G (ebenfalls vielen Dank), dass es 1000ms Pause danach braucht, weil es etwas zeit braucht bis die Liste befüllt ist und der Rest des Blockly asynchron weiter läuft?
(Es ging jedenfalls bei mir nur mit einer Pause danach die Werte weiter zu verarbeiten....)
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