NEWS
Jarvis 3.1.8 - zukünftige Strompreise - Skalierung, Farben
-
Können bitte alle, die das Programm noch nutzen und nicht flexCharts, diesen Post hochvoten, damit ich abschätzen kann, ob sich eine Weiterentwicklung lohnt?
Danke. -
@mcu
Was ist flexcharts?Tibber hat gerade angekündigt auf 15min-Intervalle zu wechseln, da wäre also noch eine Anpassung nötig.
Bisher läuft das Script wunderbar.Grüße, Mika
@mike42 Statt 1Stunden Tarife gibt es dnn 15min Tarife? Oder wird dann alle 15 min aktualisiert?
Was ist flexcharts?
https://github.com/MyHomeMyData/ioBroker.flexcharts
flexcharts ist ein eigener Adapter, mit dem man jegliches eCharts erstellen kann, auch die, die man mit Jarvis oder eCharts-Adapter nicht erstellen kann, da dort die Einstellungen fehlen.
-
@mike42 Statt 1Stunden Tarife gibt es dnn 15min Tarife? Oder wird dann alle 15 min aktualisiert?
Was ist flexcharts?
https://github.com/MyHomeMyData/ioBroker.flexcharts
flexcharts ist ein eigener Adapter, mit dem man jegliches eCharts erstellen kann, auch die, die man mit Jarvis oder eCharts-Adapter nicht erstellen kann, da dort die Einstellungen fehlen.
@mcu said in Jarvis 3.1.8 - zukünftige Strompreise - Skalierung, Farben:
Statt 1Stunden Tarife gibt es dnn 15min Tarife? Oder wird dann alle 15 min aktualisiert?
Wie genau Tibber das bei der Api Abfrage realisiert weiß noch keiner genau. Tibber hat bisher nur angekündigt ab Juni auf 15min Intervalle umzustellen. D.H. das sich der Preis alle 15min ändert.
Inwieweit da die verschiedenen Abfrage Modelle der Api betroffen sind und wie die Darstellung dann aussehen soll kann man noch garnicht sagen. -
@mcu said in Jarvis 3.1.8 - zukünftige Strompreise - Skalierung, Farben:
Statt 1Stunden Tarife gibt es dnn 15min Tarife? Oder wird dann alle 15 min aktualisiert?
Wie genau Tibber das bei der Api Abfrage realisiert weiß noch keiner genau. Tibber hat bisher nur angekündigt ab Juni auf 15min Intervalle umzustellen. D.H. das sich der Preis alle 15min ändert.
Inwieweit da die verschiedenen Abfrage Modelle der Api betroffen sind und wie die Darstellung dann aussehen soll kann man noch garnicht sagen. -
Können bitte alle, die das Programm noch nutzen und nicht flexCharts, diesen Post hochvoten, damit ich abschätzen kann, ob sich eine Weiterentwicklung lohnt?
Danke. -
@mcu hier die Daten für morgen
tibberlink.0.Homes.xyz.PricesTomorrow.json
bei mir läuft "tibberHTML v1.0.30"
-
@mike42 Statt 1Stunden Tarife gibt es dnn 15min Tarife? Oder wird dann alle 15 min aktualisiert?
Was ist flexcharts?
https://github.com/MyHomeMyData/ioBroker.flexcharts
flexcharts ist ein eigener Adapter, mit dem man jegliches eCharts erstellen kann, auch die, die man mit Jarvis oder eCharts-Adapter nicht erstellen kann, da dort die Einstellungen fehlen.
@mcu die Umstellung auf 15min ist da…
6.0.0
• BREAKING: hourly price states (0...23) are now quarterhourly (0...95)
• BREAKING: adapted calculator time blocks need reentry of "AmountHours" values
• change price updates to 15 minutes resolution as default
• change current price updates to use existing today values instead of Tibber calls
• more timely precision for current price and calculator
• adapt chart generation
• fix error in efficiency loss
• adapt calculator time blocks
• update tibber-api to 5.5.2
• update typescript to 5.9.3 (#777)
• add names to price states foldersIm Script sieht das sehr gut aus… ich sehe 15 Minuten Segmente.
Das highlighten der aktuellen Stunde könnte man jetzt auf 15min umstellen, um nur 1 Segment hervorzuheben… -
@mcu die Umstellung auf 15min ist da…
6.0.0
• BREAKING: hourly price states (0...23) are now quarterhourly (0...95)
• BREAKING: adapted calculator time blocks need reentry of "AmountHours" values
• change price updates to 15 minutes resolution as default
• change current price updates to use existing today values instead of Tibber calls
• more timely precision for current price and calculator
• adapt chart generation
• fix error in efficiency loss
• adapt calculator time blocks
• update tibber-api to 5.5.2
• update typescript to 5.9.3 (#777)
• add names to price states foldersIm Script sieht das sehr gut aus… ich sehe 15 Minuten Segmente.
Das highlighten der aktuellen Stunde könnte man jetzt auf 15min umstellen, um nur 1 Segment hervorzuheben… -
@mcu - ich habe jetzt doch auf den Chart Output vom Tibberlink-Adapter umgestellt... jetzt stehe ich bei dem iFrame in Jarvis auf dem Schlauch - wie triggere ich ein Update von dem iFrame ohne den Tab wechseln zu müssen oder einen Browser Refresh zu machen. Ich ändere die Farbe der Balken, wenn sie den Grenzwert des Strompreises unterschreiten... wenn ich diesen Grenzwert ändere, dann würde ich gerne einen Refresh auslösen....geht das irgendwie?
-
@mcu - ich habe jetzt doch auf den Chart Output vom Tibberlink-Adapter umgestellt... jetzt stehe ich bei dem iFrame in Jarvis auf dem Schlauch - wie triggere ich ein Update von dem iFrame ohne den Tab wechseln zu müssen oder einen Browser Refresh zu machen. Ich ändere die Farbe der Balken, wenn sie den Grenzwert des Strompreises unterschreiten... wenn ich diesen Grenzwert ändere, dann würde ich gerne einen Refresh auslösen....geht das irgendwie?
-
@MCU ok... bei mir läuft jarvis.0, v3.2.0-rc.17
-
Script mit Datenpunkt und Widget-ID angepasst
-
in /opt/iobroker/iobroker-data/files/0_userdata.0/jarvis-scripts als iframereload.js gespeichert
-
versucht zu laden mit @import 'http://iob.lan:8400/user/iframereload.js' im Jarvis Scripts Editor
Der Eintrag verschwindet aus dem Script-Editor, soll das so sein?
Wie stelle ich fest, ob das Script geladen wurde?
Ein umschalten des Datenpunktes löst nichts aus.... irgendwas stimmt da noch nicht... -
-
@MCU ok... bei mir läuft jarvis.0, v3.2.0-rc.17
-
Script mit Datenpunkt und Widget-ID angepasst
-
in /opt/iobroker/iobroker-data/files/0_userdata.0/jarvis-scripts als iframereload.js gespeichert
-
versucht zu laden mit @import 'http://iob.lan:8400/user/iframereload.js' im Jarvis Scripts Editor
Der Eintrag verschwindet aus dem Script-Editor, soll das so sein?
Wie stelle ich fest, ob das Script geladen wurde?
Ein umschalten des Datenpunktes löst nichts aus.... irgendwas stimmt da noch nicht...- Gib man statt iob.lan die dazugehörige IP an.
- Instanz jarvis.0 einmal neustarten
Der Eintrag verschwindet aus dem Script-Editor
nein
Wie stelle ich fest, ob das Script geladen wurde?
F12 -> console.log

Du kannst noch nachschauen,ob das script gespiegelt wurde,dort muss es auch vorhanden sein!
/opt/iobroker/node_modules/iobroker.jarvis/www/userEvtl. wichtig, es läuft nur eine jarvis Instanz?
-
-
- Gib man statt iob.lan die dazugehörige IP an.
- Instanz jarvis.0 einmal neustarten
Der Eintrag verschwindet aus dem Script-Editor
nein
Wie stelle ich fest, ob das Script geladen wurde?
F12 -> console.log

Du kannst noch nachschauen,ob das script gespiegelt wurde,dort muss es auch vorhanden sein!
/opt/iobroker/node_modules/iobroker.jarvis/www/userEvtl. wichtig, es läuft nur eine jarvis Instanz?
- nur eine Jarvis Instanz
- das script wurde gespiegelt
- die Konsole sagt:
index-259e1438.js:108 App Welcome to jarvis v3.2.0-rc.17 index-259e1438.js:106 Socket Connected to ws://iob.lan:8400. index-259e1438.js:106 Socket Listen for messages.. index-259e1438.js:108 App using instance 0 and namespace "jarvis.#1546703216572457". index-259e1438.js:106 Pro Valid Pro User: xxx VM2589:1 Uncaught SyntaxError: Failed to execute 'appendChild' on 'Node': Unexpected identifier 'Object' at useCustomTag (index-259e1438.js:108:4182) at index-259e1438.js:108:71429- das Script sieht so aus:
// ********************* // iframeReload v1.0.1 // ********************* // Copyright ©MCU // reloadWidgetiFrame -> reload von iFrame // // reloadWidgetStateHTML -> reload von StateHTML // let timeInterval = 5*60*1000 // 5 Minuten let iframeReloadDP = '0_userdata.0.Tibber.EV_Charging.Tibber_Chart_Reload'; window.Socket.subscribeState(iframeReloadDP, ({ err, state }) => { if (state && typeof(state.val) == 'boolean') { if (state.val) { console.log('%cReload durchführen','color:orange;'); reloadWidgetiFrame('398b57ae-c6f0-4084-ba80-55294692cbec') } } }); docReady(function() { if (isConfig()){ }else{ console.log('%cStart iframeReload.js','color:yellow;'); /* setInterval(function(){ reloadWidgetiFrame('21120676-ba05-4e62-8b3a-c068baddd022') },timeInterval) */ } }); function reloadWidgetiFrame(widgetId){ const container = document.getElementById('iframes'); if (container) { container.querySelectorAll('iframe').forEach((iframe) => { console.log(iframe.title + ' neuladen'); const url = new URL(iframe.src, window.location.href); url.searchParams.set('_r', Date.now()); iframe.src = url.toString(); }); } } function reloadWidgetStateHTML(widgetId){ let widget = document.getElementsByClassName('jarvis-widget-'+widgetId) if(widget.length>0){ let containerSTH = widget[0].getElementsByClassName('jarvis-StateHTML-Container') if(containerSTH.length>0){ let iFrame = containerSTH[0].getElementsByClassName('jarvis-StateHTML-iFrame') if(iFrame.length>0){ iFrame[0].contentWindow.location.reload(); } } } } function isConfig(){ //console.log(document.baseURI); if (document.baseURI.indexOf('configuration') >=0){ //console.log('Konfig aktiv'); return true; }else{ //console.log('Konfig nicht aktiv'); return false; } } function docReady(fn) { // see if DOM is already available if (document.readyState === "complete" || document.readyState === "interactive") { // call on next available tick setTimeout(fn, 1000); } else { document.addEventListener("DOMContentLoaded", fn); } }Den Fehler in der Konsole kann ich nicht deuten...
-
- nur eine Jarvis Instanz
- das script wurde gespiegelt
- die Konsole sagt:
index-259e1438.js:108 App Welcome to jarvis v3.2.0-rc.17 index-259e1438.js:106 Socket Connected to ws://iob.lan:8400. index-259e1438.js:106 Socket Listen for messages.. index-259e1438.js:108 App using instance 0 and namespace "jarvis.#1546703216572457". index-259e1438.js:106 Pro Valid Pro User: xxx VM2589:1 Uncaught SyntaxError: Failed to execute 'appendChild' on 'Node': Unexpected identifier 'Object' at useCustomTag (index-259e1438.js:108:4182) at index-259e1438.js:108:71429- das Script sieht so aus:
// ********************* // iframeReload v1.0.1 // ********************* // Copyright ©MCU // reloadWidgetiFrame -> reload von iFrame // // reloadWidgetStateHTML -> reload von StateHTML // let timeInterval = 5*60*1000 // 5 Minuten let iframeReloadDP = '0_userdata.0.Tibber.EV_Charging.Tibber_Chart_Reload'; window.Socket.subscribeState(iframeReloadDP, ({ err, state }) => { if (state && typeof(state.val) == 'boolean') { if (state.val) { console.log('%cReload durchführen','color:orange;'); reloadWidgetiFrame('398b57ae-c6f0-4084-ba80-55294692cbec') } } }); docReady(function() { if (isConfig()){ }else{ console.log('%cStart iframeReload.js','color:yellow;'); /* setInterval(function(){ reloadWidgetiFrame('21120676-ba05-4e62-8b3a-c068baddd022') },timeInterval) */ } }); function reloadWidgetiFrame(widgetId){ const container = document.getElementById('iframes'); if (container) { container.querySelectorAll('iframe').forEach((iframe) => { console.log(iframe.title + ' neuladen'); const url = new URL(iframe.src, window.location.href); url.searchParams.set('_r', Date.now()); iframe.src = url.toString(); }); } } function reloadWidgetStateHTML(widgetId){ let widget = document.getElementsByClassName('jarvis-widget-'+widgetId) if(widget.length>0){ let containerSTH = widget[0].getElementsByClassName('jarvis-StateHTML-Container') if(containerSTH.length>0){ let iFrame = containerSTH[0].getElementsByClassName('jarvis-StateHTML-iFrame') if(iFrame.length>0){ iFrame[0].contentWindow.location.reload(); } } } } function isConfig(){ //console.log(document.baseURI); if (document.baseURI.indexOf('configuration') >=0){ //console.log('Konfig aktiv'); return true; }else{ //console.log('Konfig nicht aktiv'); return false; } } function docReady(fn) { // see if DOM is already available if (document.readyState === "complete" || document.readyState === "interactive") { // call on next available tick setTimeout(fn, 1000); } else { document.addEventListener("DOMContentLoaded", fn); } }Den Fehler in der Konsole kann ich nicht deuten...



