@Thomas-Braun scheint zu funktionieren. Dankeschön!
NEWS
Best posts made by SMS
-
RE: Installation image vom 27.11.2019
-
RE: Probleme von 4.0.21 auf 4.0.23
pi@homee:/opt/iobroker $ iob upgrade self Update js-controller from @4.0.21 to @4.0.23 Stopped Objects DB Stopped States DB NPM version: 6.14.16 Installing iobroker.js-controller@4.0.23... (System call) > iobroker.js-controller@4.0.23 preinstall /opt/iobroker/node_modules/iobroker.js-controller > node lib/preinstallCheck.js NPM version: 6.14.16 > iobroker.js-controller@4.0.23 install /opt/iobroker/node_modules/iobroker.js-controller > node iobroker.js setup first object _design/system updated { "defaultPrivate": "-----BEGIN RSA PRIVATE KEY-----\r\nMIIEowIBAAKCAQEAqO9XJI4xN/hry/LNtCdStG1QBrOsCMuRZ5WVM8mM2b7/rc71\r\ngi3es6K13tbQHoPbUS3Os4XdV8Bt/Ye5W16HmDKBAcD+tpx4aJ5AqNtxO9iDGJV3\r\nZfl2+lXzcWgZBKwjYjOx+wD7L0n/aUMKuqbO10R69Hl3bkzH6KlzlqTWsbXFWbLZ\r\nmF6mkF3kU90B4/uOPWmpKUwjnIO5XdzOzKKH6EogOGxwyc7ec0NjkT+33rJkZ5TF\r\nsf1fEC3ei34LrRrtkq+iL1XS9/Ban94HjfS1bBxF9WDsCHIQpaAmsTEsE0IEl0zV\r\nB1li0dVgssjWN/3srbpybW1cZ7Y/J0EmWr/IAwIDAQABAoIBACikhEuYJgE4M/76\r\nKEEaYMxlrCYgndfz2cSY+S9fYxKT4AFZ1DkAfh6rm6PD/IgK4v3RznPkVc8hzZR8\r\nTbzMrkSQifb5Do6ycEmDIT0+pixmt4t3kiUncldhzFLRX4t/OngKxdwEbWoAHIGf\r\njno/XW3u3MHqYzBXKpUwB04L1FcmZtC5HBaEP5dnRBaOCUPJG073+u+n6DS6lfxi\r\nSDX79LbaRUJ+ocbYQX46cZQIdp4yjEQQQMTcX3SOxf/yXEDP3oDvd50r4ha+t8oo\r\nqh/JeuqYvunKrtVKgbOaIASq78P+CV1qStrD7ER2qdRWUqsBKUa0GRsJIGx10XSF\r\ndgkPkyECgYEA3e/Y4nAAGIguKmtWAqIZPpLqQA5qtNjBVJRa07aaa3dnY3mgEg9m\r\nyUtpx7A3q4HcOiO10o1eflOzQortwvOe3N3WRI7OjjQjikgN44adKxr1we+c7RkW\r\nepFu0uiC2kGvH58Nsjzl/z3/s85D1kubtC6fYiFcOl+ENUiNv6aRFnECgYEAwtz8\r\nOjhjpru3ELHsEmcsULyD9VQuehI3m/WFN+tw108t2GIv+eiIpb/jnRryN0f0LcMj\r\n09Zb0PSe7/90JKDNocxonGcsVx45VF0Q99/cgV6VXq+rmTr3IalstcpaoUPElp8d\r\nNq31ms692gvTUv/73JFl6rD9J5dyF7r3Ol6wB7MCgYEArnEvUAwohx/C6aSkXj17\r\nCiv/44lxZeRZUVmqam5EweOAaDfZEVj5uY6E/mgL2cqghzI6X9yuQS0Y4VzBtVI3\r\ns/LJz+lPgYaJyM8J26SbNJ5kPKNR/SqS+JQHP89xyouGUpx573becNkSewnNWErl\r\nf6KFtGP0Ug1xpU/52oHZ2IECgYBzctHM/JOtuRFgxskCrjXHL6lOtC1FDX383J2s\r\n38TfC34x8RpTib1L1kBYWBqhPfQhGLglTZ7gUc3IiySYftzVu3FPGKFgi/uTTAA9\r\nm1fdHdiJXLLh+dlpDCPoIJdJbAkQ4/w+5RnaOhqpENCHIDpsF4i2X13dExD5lj/b\r\nSTYpmQKBgBQwSm5rfIe3S3jYWOrJ3UiEind4sRmmrIvyq4RKAUbnbG+TVaXfyOpR\r\nf3R43SQ9fIe6I402TAnWTchGSqRzJyvLl1UkEnziH634c9niCKVhAm/GCRRAVwBJ\r\n8c+yRUy82NcZpXaF02W9GpliRchYH815EJbHG6qgSu5qOhmoPWcJ\r\n-----END RSA PRIVATE KEY-----\r\n", "defaultPublic": "-----BEGIN CERTIFICATE-----\r\nMIIDeDCCAmCgAwIBAgIJBDEGtcAA9/afMA0GCSqGSIb3DQEBCwUAMD4xETAPBgNV\r\nBAMTCGlvYnJva2VyMRYwFAYDVQQKEw1pb0Jyb2tlciBHbWJIMREwDwYDVQQLEwhp\r\nb2Jyb2tlcjAeFw0yMjA1MDIxMzEyMTJaFw0yMzA1MDIxMzEyMTJaMDsxDjAMBgNV\r\nBAMTBWhvbWVlMRYwFAYDVQQKEw1pb0Jyb2tlciBHbWJIMREwDwYDVQQLEwhpb2Jy\r\nb2tlcjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKjvVySOMTf4a8vy\r\nzbQnUrRtUAazrAjLkWeVlTPJjNm+/63O9YIt3rOitd7W0B6D21EtzrOF3VfAbf2H\r\nuVteh5gygQHA/raceGieQKjbcTvYgxiVd2X5dvpV83FoGQSsI2IzsfsA+y9J/2lD\r\nCrqmztdEevR5d25Mx+ipc5ak1rG1xVmy2ZheppBd5FPdAeP7jj1pqSlMI5yDuV3c\r\nzsyih+hKIDhscMnO3nNDY5E/t96yZGeUxbH9XxAt3ot+C60a7ZKvoi9V0vfwWp/e\r\nB430tWwcRfVg7AhyEKWgJrExLBNCBJdM1QdZYtHVYLLI1jf97K26cm1tXGe2PydB\r\nJlq/yAMCAwEAAaN8MHowDAYDVR0TAQH/BAIwADAPBgNVHQ8BAf8EBQMDB7+AMBAG\r\nA1UdEQQJMAeCBWhvbWVlMB0GA1UdDgQWBBSS5uyY6RgVQWUe42+4zl/OdbySPzAd\r\nBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYBBQUHAwIwCQYDVR0jBAIwADANBgkqhkiG\r\n9w0BAQsFAAOCAQEAfr9UgBs/4kXsreOE0czO7yN27Hkax0nE2kCOkqVnPaa97XDT\r\nQzGRVnhHtKaOMmckqtBOgGBagxCIcxWZoWIEUT2hhnKvAc4zZYW4+6/bBpE8kKju\r\nvL+hhRtS44jjFKwQYMldbvmzZngkgAMZAIyP+wn/gp7Qc7VDWEpqiil0PT2WnmB6\r\nMb4JYZURBVTrZveI2/p3+Rfk/6Ctbi/iltw7qTuBGxDIaTxO4jCuq+k9FleVKtPl\r\nSbR8SaBCJFrH1GEh0FKGiUaQBmtOC0hz3tTKzl4rPfrkXDglRd6igcH4ZQXw6bsa\r\nDtENDH2XeedS+IRTE8uD/gGLjylBE6+5PJ1eKw==\r\n-----END CERTIFICATE-----\r\n" } Update certificate defaultPrivate The object "system.certificates" was updated successfully. Update certificate defaultPublic The object "system.certificates" was updated successfully. ioBroker configuration updated + iobroker.js-controller@4.0.23 removed 8 packages and updated 24 packages in 206.607s 47 packages are looking for funding run `npm fund` for details pi@homee:/opt/iobroker $
Jetzt hat es geklappt. Muss ich das bei den Slaves auch machen?
-
RE: Vis nicht mehr erreichbar: File index.html not found :{}
kann es was mit dem Betriebssystem zu tun haben? Vorher hatte ich buster installiert, jetzt bullseye.
-
RE: TibberLink Adapter
@reblausgt sagte in TibberLink Adapter:
Hey ihr zwei..... das wird ja jetzt eine Selbsthilfegruppe... was hab ich nur mit der Beta zur FlexCharts Ausgabe angestellt....
Nee - im Ernst... Mal kurz zusammengefasst:Ich finde das SUPER! Bisher sah das bei mir so aus:
Jetzt ist das doch viiiiiieeeeel besser:
Ich hatte noch einen Fehler drin, deshalb hat es nicht richtig angezeigt. Jetzt muss ich noch ein bischen rumspielen bis es passt.!
DANKE!!
Latest posts made by SMS
-
RE: Test Adapter flexcharts - Stapeldiagramme und mehr
@merlin123 Bei mir nur wenn ich die Seite aktualisiere
-
RE: Test Adapter flexcharts - Stapeldiagramme und mehr
@jrbwh JA, vielen Dank dafür!
Wo kann ich denn die Balkenfarbe ändern?
Das hier ändert mir nur die seitlichen Achsen:xAxis: [{ type: "category", axisTick: { alignWithLabel: true }, data: []}], yAxis: [{ type: "value", position: "left", alignTicks: true, axisLine: { show: true, lineStyle: { color: "#5470C6" }}, axisLabel: { formatter: "{value} kWh" }}, { type: "value", position: "right", alignTicks: true, axisLine: { show: true, lineStyle: { color: "#91CC75" }}, axisLabel: { formatter: "{value} €" }}], series: [{ name: "Consumption", type: "bar", yAxisIndex: 0, data: []}, { name: "Cost", type: "bar", yAxisIndex: 1, data: []}]
Die Schriftfarbe müsste ich auch ändern, da ich einen dunklen Hintergrund habe. Eine Veränderung hier ändert abernichts:
} else { console.log('Invalid chart type >>'+myChart+'<<'); callback({title: { left: "center", textStyle: { color: "#ff0000" }, text: "INVALID
-
RE: Test Adapter flexcharts - Stapeldiagramme und mehr
@jrbwh Hi! Läuft seit heute morgen ca. 8Uhr! Scheint zu funktionieren.
-
RE: Support Adapter Energiefluss-erweitert v0.6.2
@wolfi913 Ich meinte in der Konfigurationsebene, nicht den Live-Modus.
Komischerweise komme ich jetzt nicht mehr zurück in den Konfigurationsmodus!? Ichh atte ausgewählt, dass das Zahnradsymbol nicht mehr eingeblendet wird.
Erledigt! Neue Instanz installiert und die Adresse kopiert! Jetzt passt es!
http//ip/energiefluss-erweitert/configuration.html?instance=0&theme=dark
Danke!
-
RE: Support Adapter Energiefluss-erweitert v0.6.2
Guten Morgen,
kann mir jemand sagen wo ich den dark-mode einschalte? Dachte eigentlich das ich das mal gefunden hatte, aber jetzt leider nicht mehr.
Danke!
-
RE: Test Adapter flexcharts - Stapeldiagramme und mehr
@jrbwh Dann würde ich sagen funktioniert es nicht! Das hier steht im Skript:
// // Create chart for Tibber hourly data to be used with flexcharts // const ID_TIBBER_HOURLY = '0_userdata.0.flexcharts.tibberLink.tibberHourly'; // State id containing tibber data (json format) const ID_CHART_HOURLY = '0_userdata.0.flexcharts.tibberLink.chartHourly'; // State id containing template for chart data (json format) const TITLE_HOURLY = 'Tibber hourly'; evalTibberData(ID_TIBBER_HOURLY, ID_CHART_HOURLY, TITLE_HOURLY); // Convert data on start of script on({id: ID_TIBBER_HOURLY, change: "any"}, function (obj) { evalTibberData(ID_TIBBER_HOURLY, ID_CHART_HOURLY, TITLE_HOURLY); }); function evalTibberData(idTibber, idChart, title) { const tibber = JSON.parse(getState(idTibber).val); // Read tibber data const chart = JSON.parse(getState(idChart).val); // Read chart template const xAxis = []; const yAxis0 = []; const yAxis1 = []; for (const data of Object.values(tibber)) { const isHourly = (new Date(data.from).getHours() != new Date(data.to).getHours()); // Hourly data? const xValue = (isHourly ? new Date(data.from).toLocaleTimeString() : new Date(data.from).toLocaleDateString()); xAxis.push(xValue); yAxis0.push((data.consumption ? data.consumption.toFixed(2) : 0)); // push 0 on null values yAxis1.push((data.cost ? data.cost.toFixed(2) : 0)); // push 0 on null values } chart.title.text = title; // Set chart title chart.xAxis[0].data = xAxis; // Set chart x-axis data chart.series[0].data = yAxis0; // Set chart y-values consumption chart.series[1].data = yAxis1; // Set chart y-values cost setState(idChart, JSON.stringify(chart), true); // Write changed chart data to state console.log('Evaluation of tibber hourly data done. Title: '+title); }
Das hier ist die ID vom tibberHourly:
Und hier vom chartHourly:
Muss noch irgendwo die ID von tibberlink rein?
-
RE: Test Adapter flexcharts - Stapeldiagramme und mehr
@jrbwh Muss ich in dem Skript noch irgendwas anpassen? Irgendeine ID?
Leider hat es jetzt nach der letzten Stunde nicht funktioniert. Der Zeitstempel vom DP tibberlink ändert bzw. aktualisiert sich, aber beim DP flexchart ändert sich nichts.Hier Zeitstempel tibberlink nach Neustart des Adapters:
Und hier von den angelegten DP's:
-
RE: Test Adapter flexcharts - Stapeldiagramme und mehr
@jrbwh Einen Schreibfehler habe ich gefunden. Aber irgendwas passt immer noch nicht:
// // Create chart for Tibber hourly data to be used with flexcharts // const ID_TIBBER_HOURLY = '0_userdata.0.flexcharts.tibberLink.tibberHourly'; // State id containing tibber data (json format) const ID_CHART_HOURLY = '0_userdata.0.flexcharts.tibberLink.chartHourly'; // State id containing template for chart data (json format) const TITLE_HOURLY = 'Tibber hourly'; // Title of chart evalTibberData(ID_TIBBER_HOURLY, ID_CHART_HOURLY, TITLE_HOURLY); // Convert data on start of script on({id: ID_TIBBER_HOURLY, change: "any"}, function (obj) { evalTibberData(ID_TIBBER_HOURLY, ID_CHART_HOURLY, TITLE_HOURLY); }); function evalTibberData(idTibber, idChart, title) { const tibber = JSON.parse(getState(idTibber).val); // Read tibber data const chart = JSON.parse(getState(idChart).val); // Read chart template const xAxis = []; const yAxis0 = []; const yAxis1 = []; for (const data of Object.values(tibber)) { xAxis.push(new Date(data.from).toLocaleDateString()); yAxis0.push(data.consumption.toFixed(2)); yAxis1.push(data.cost.toFixed(2)); } chart.title.text = title; // Set chart title chart.xAxis[0].data = xAxis; // Set chart x-axis data chart.series[0].data = yAxis0; // Set chart y-values consumption chart.series[1].data = yAxis1; // Set chart y-values cost setState(idChart, JSON.stringify(chart), true); // Write changed chart data to state console.log('Evaluation of tibber hourly data done. Title: '+title); }
Geändert habe ich weekly oder WEEKLY auf hourly oder HOURLY, also eigentlich genauso geschrieben (Groß- und Kleinbuchstaben). Da finde ich jetzt keinen Fehler mehr. Komischerweise hat es bei daily funktioniert. Außer das ich noch nicht weiß ob die Seite aktualisiert wird, da es heute morgen nicht geklappt hat.
Jede Abfrage hat jetzt ein eigenes Skript.
Kann es was mit der Uhrzeit zu tun haben?
In chartHourly steht:{ "tooltip": { "trigger": "axis", "axisPointer": { "type": "cross" } }, "legend": { "show": true, "orient": "horizontal", "left": "center", "top": 25 }, "title": { "left": "center", "text": "Tibber hourly" }, "grid": { "right": "20%" }, "toolbox": { "feature": { "dataView": { "show": true, "readOnly": false }, "restore": { "show": true }, "saveAsImage": { "show": true } } }, "xAxis": [ { "type": "category", "axisTick": { "alignWithLabel": true }, "data": [ "14:00", "15:00", "16:00" ] } ], "yAxis": [ { "type": "value", "position": "left", "alignTicks": true, "axisLine": { "show": true, "lineStyle": { "color": "#5470C6" } }, "axisLabel": { "formatter": "{value} kWh" } }, { "type": "value", "position": "right", "alignTicks": true, "axisLine": { "show": true, "lineStyle": { "color": "#91CC75" } }, "axisLabel": { "formatter": "{value} €" } } ], "series": [ { "name": "Consumption", "type": "bar", "data": [ "0.081", "0.096", "0.086" ] }, { "name": "Cost", "type": "bar", "yAxisIndex": 1, "data": [ "0.03", "0.03", "0.03" ] } ] }
Wobei ich die Uhrzeiten selbst eingetragen habe.
In tibberHourly steht:[ { "from": "2025-01-29T09:00:00.000+01:00", "to": "2025-01-29T10:00:00.000+01:00", "cost": 0.029134056, "unitPrice": 0.3641757, "unitPriceVAT": 0.0581457, "consumption": 0.08, "consumptionUnit": "kWh", "totalCost": 0.02616991475, "unitCost": 0.029134056, "currency": "EUR" }, { "from": "2025-01-29T10:00:00.000+01:00", "to": "2025-01-29T11:00:00.000+01:00", "cost": 0.0497585053, "unitPrice": 0.3339497, "unitPriceVAT": 0.0533197, "consumption": 0.149, "consumptionUnit": "kWh", "totalCost": 0.04679436405, "unitCost": 0.0497585053, "currency": "EUR" }, { "from": "2025-01-29T11:00:00.000+01:00", "to": "2025-01-29T12:00:00.000+01:00", "cost": 0.0412843487, "unitPrice": 0.3151477, "unitPriceVAT": 0.0503177, "consumption": 0.131, "consumptionUnit": "kWh", "totalCost": 0.03832020745, "unitCost": 0.0412843487, "currency": "EUR" }, { "from": "2025-01-29T12:00:00.000+01:00", "to": "2025-01-29T13:00:00.000+01:00", "cost": 0.021706314, "unitPrice": 0.3100902, "unitPriceVAT": 0.0495102, "consumption": 0.07, "consumptionUnit": "kWh", "totalCost": 0.01874217275, "unitCost": 0.021706314, "currency": "EUR" }, { "from": "2025-01-29T13:00:00.000+01:00", "to": "2025-01-29T14:00:00.000+01:00", "cost": 0.0307613691, "unitPrice": 0.3107209, "unitPriceVAT": 0.0496109, "consumption": 0.099, "consumptionUnit": "kWh", "totalCost": 0.02779722785, "unitCost": 0.0307613691, "currency": "EUR" }, { "from": "2025-01-29T14:00:00.000+01:00", "to": "2025-01-29T15:00:00.000+01:00", "cost": 0.0253746675, "unitPrice": 0.3132675, "unitPriceVAT": 0.0500175, "consumption": 0.081, "consumptionUnit": "kWh", "totalCost": 0.02241052625, "unitCost": 0.0253746675, "currency": "EUR" }, { "from": "2025-01-29T15:00:00.000+01:00", "to": "2025-01-29T16:00:00.000+01:00", "cost": 0.0317964192, "unitPrice": 0.3312127, "unitPriceVAT": 0.0528827, "consumption": 0.096, "consumptionUnit": "kWh", "totalCost": 0.02883227795, "unitCost": 0.0317964192, "currency": "EUR" }, { "from": "2025-01-29T16:00:00.000+01:00", "to": "2025-01-29T17:00:00.000+01:00", "cost": 0.0315452816, "unitPrice": 0.3668056, "unitPriceVAT": 0.0585656, "consumption": 0.086, "consumptionUnit": "kWh", "totalCost": 0.02858114035, "unitCost": 0.0315452816, "currency": "EUR" }, { "from": "2025-01-29T17:00:00.000+01:00", "to": "2025-01-29T18:00:00.000+01:00", "cost": 0.0228287815, "unitPrice": 0.3869285, "unitPriceVAT": 0.0617785, "consumption": 0.059, "consumptionUnit": "kWh", "totalCost": 0.01986464025, "unitCost": 0.0228287815, "currency": "EUR" }, { "from": "2025-01-29T18:00:00.000+01:00", "to": "2025-01-29T19:00:00.000+01:00", "cost": 0.0112388717, "unitPrice": 0.3875473, "unitPriceVAT": 0.0618773, "consumption": 0.029, "consumptionUnit": "kWh", "totalCost": 0.00827473045, "unitCost": 0.0112388717, "currency": "EUR" }, { "from": "2025-01-29T19:00:00.000+01:00", "to": "2025-01-29T20:00:00.000+01:00", "cost": 0.007660744, "unitPrice": 0.3830372, "unitPriceVAT": 0.0611572, "consumption": 0.02, "consumptionUnit": "kWh", "totalCost": 0.00469660275, "unitCost": 0.007660744, "currency": "EUR" }, { "from": "2025-01-29T20:00:00.000+01:00", "to": "2025-01-29T21:00:00.000+01:00", "cost": 0.0065872926, "unitPrice": 0.3659607, "unitPriceVAT": 0.0584307, "consumption": 0.018, "consumptionUnit": "kWh", "totalCost": 0.00362315135, "unitCost": 0.0065872926, "currency": "EUR" }, { "from": "2025-01-29T21:00:00.000+01:00", "to": "2025-01-29T22:00:00.000+01:00", "cost": 0.0063238266, "unitPrice": 0.3513237, "unitPriceVAT": 0.0560937, "consumption": 0.018, "consumptionUnit": "kWh", "totalCost": 0.00335968535, "unitCost": 0.0063238266, "currency": "EUR" }, { "from": "2025-01-29T22:00:00.000+01:00", "to": "2025-01-29T23:00:00.000+01:00", "cost": 0.0065019577, "unitPrice": 0.3422083, "unitPriceVAT": 0.0546383, "consumption": 0.019, "consumptionUnit": "kWh", "totalCost": 0.00353781645, "unitCost": 0.0065019577, "currency": "EUR" }, { "from": "2025-01-29T23:00:00.000+01:00", "to": "2025-01-30T00:00:00.000+01:00", "cost": 1.1309330053, "unitPrice": 0.3271429, "unitPriceVAT": 0.0522329, "consumption": 3.457, "consumptionUnit": "kWh", "totalCost": 1.12796886405, "unitCost": 1.1309330053, "currency": "EUR" }, { "from": "2025-01-30T00:00:00.000+01:00", "to": "2025-01-30T01:00:00.000+01:00", "cost": 0.1119367431, "unitPrice": 0.3189081, "unitPriceVAT": 0.0509181, "consumption": 0.351, "consumptionUnit": "kWh", "totalCost": 0.10897260185, "unitCost": 0.1119367431, "currency": "EUR" }, { "from": "2025-01-30T01:00:00.000+01:00", "to": "2025-01-30T02:00:00.000+01:00", "cost": 0.1058853908, "unitPrice": 0.3189319, "unitPriceVAT": 0.0509219, "consumption": 0.332, "consumptionUnit": "kWh", "totalCost": 0.10292124955, "unitCost": 0.1058853908, "currency": "EUR" }, { "from": "2025-01-30T02:00:00.000+01:00", "to": "2025-01-30T03:00:00.000+01:00", "cost": 0.0892808091, "unitPrice": 0.3200029, "unitPriceVAT": 0.0510929, "consumption": 0.279, "consumptionUnit": "kWh", "totalCost": 0.08631666785, "unitCost": 0.0892808091, "currency": "EUR" }, { "from": "2025-01-30T03:00:00.000+01:00", "to": "2025-01-30T04:00:00.000+01:00", "cost": 0.089474196, "unitPrice": 0.3195507, "unitPriceVAT": 0.0510207, "consumption": 0.28, "consumptionUnit": "kWh", "totalCost": 0.08651005475, "unitCost": 0.089474196, "currency": "EUR" }, { "from": "2025-01-30T04:00:00.000+01:00", "to": "2025-01-30T05:00:00.000+01:00", "cost": 0.1077989822, "unitPrice": 0.3189319, "unitPriceVAT": 0.0509219, "consumption": 0.338, "consumptionUnit": "kWh", "totalCost": 0.10483484095, "unitCost": 0.1077989822, "currency": "EUR" }, { "from": "2025-01-30T05:00:00.000+01:00", "to": "2025-01-30T06:00:00.000+01:00", "cost": 0.1200729635, "unitPrice": 0.3382337, "unitPriceVAT": 0.0540037, "consumption": 0.355, "consumptionUnit": "kWh", "totalCost": 0.11710882225, "unitCost": 0.1200729635, "currency": "EUR" }, { "from": "2025-01-30T06:00:00.000+01:00", "to": "2025-01-30T07:00:00.000+01:00", "cost": 0.0240216256, "unitPrice": 0.3753379, "unitPriceVAT": 0.0599279, "consumption": 0.064, "consumptionUnit": "kWh", "totalCost": 0.02105748435, "unitCost": 0.0240216256, "currency": "EUR" }, { "from": "2025-01-30T07:00:00.000+01:00", "to": "2025-01-30T08:00:00.000+01:00", "cost": 0.0121080358, "unitPrice": 0.3905818, "unitPriceVAT": 0.0623618, "consumption": 0.031, "consumptionUnit": "kWh", "totalCost": 0.00914389455, "unitCost": 0.0121080358, "currency": "EUR" }, { "from": "2025-01-30T08:00:00.000+01:00", "to": "2025-01-30T09:00:00.000+01:00", "cost": null, "unitPrice": 0.3996972, "unitPriceVAT": 0.0638172, "consumption": null, "consumptionUnit": "kWh", "totalCost": null, "unitCost": null, "currency": "EUR" } ]
Bez. wenn ich auf den Stift gehe unter Objektdaten bei chartHourly:
{ "common": { "name": "chartHourly", "desc": "Manuell erzeugt", "role": "state", "type": "json", "read": true, "write": true }, "type": "state", "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1738172595401, "_id": "0_userdata.0.flexcharts.tibberLink.chartHourly", "acl": { "object": 1638, "state": 1638, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
und bei tibberHourly:
{ "common": { "name": "tibberHourly", "desc": "Manuell erzeugt", "role": "state", "type": "json", "read": true, "write": true }, "type": "state", "native": {}, "from": "system.adapter.admin.0", "user": "system.user.admin", "ts": 1738172636549, "_id": "0_userdata.0.flexcharts.tibberLink.tibberHourly", "acl": { "object": 1638, "state": 1638, "owner": "system.user.admin", "ownerGroup": "system.group.administrator" } }
-
RE: Test Adapter flexcharts - Stapeldiagramme und mehr
@jrbwh Denke ich habe es hinbekommen:
könnte das richtig sein?
Daten eingefügt und alles wo weekly stand in daily bzw. hourly abgeänderthier habe ich einen Unterschied:
Frage zu Punkt 2 deine Anleitung:
welches soll ich nehmen?
nehme ich JS und füge alles ein (ich habe jetzt mal das Skript für daily und hourly geändert und drüber eingefügt// // Create chart for Tibber hourly data to be used with flexcharts // const ID_TIBBER_HOURLY = '0_userdata.0.flexcharts.tibberLink.tibberHourly'; // State id containing tibber data (json format) const ID_CHART_HOURLY = '0_userdata.0.flexcharts.tibberLink.charthourly'; // State id containing template for chart data (json format) const TITLE_HOURLY = 'Tibber hourly'; // Title of chart evalTibberData(ID_TIBBER_HOURLY, ID_CHART_HOURLY, TITLE_HOURLY); // Convert data on start of script on({id: ID_TIBBER_HOURLY, change: "any"}, function (obj) { evalTibberData(ID_TIBBER_HOURLY, ID_CHART_HOURLY, TITLE_HOURLY); }); function evalTibberData(idTibber, idChart, title) { const tibber = JSON.parse(getState(idTibber).val); // Read tibber data const chart = JSON.parse(getState(idChart).val); // Read chart template const xAxis = []; const yAxis0 = []; const yAxis1 = []; for (const data of Object.values(tibber)) { xAxis.push(new Date(data.from).toLocaleDateString()); yAxis0.push(data.consumption.toFixed(2)); yAxis1.push(data.cost.toFixed(2)); } chart.title.text = title; // Set chart title chart.xAxis[0].data = xAxis; // Set chart x-axis data chart.series[0].data = yAxis0; // Set chart y-values consumption chart.series[1].data = yAxis1; // Set chart y-values cost setState(idChart, JSON.stringify(chart), true); // Write changed chart data to state console.log('Evaluation of tibber hourly data done. Title: '+title); } // // // // Create chart for Tibber daily data to be used with flexcharts // const ID_TIBBER_DAILY = '0_userdata.0.flexcharts.tibberLink.tibberDaily'; // State id containing tibber data (json format) const ID_CHART_DAILY = '0_userdata.0.flexcharts.tibberLink.chartDaily'; // State id containing template for chart data (json format) const TITLE_DAILY = 'Tibber daily'; // Title of chart evalTibberData(ID_TIBBER_DAILY, ID_CHART_DAILY, TITLE_DAILY); // Convert data on start of script on({id: ID_TIBBER_DAILY, change: "any"}, function (obj) { evalTibberData(ID_TIBBER_DAILY, ID_CHART_DAILY, TITLE_DAILY); }); function evalTibberData(idTibber, idChart, title) { const tibber = JSON.parse(getState(idTibber).val); // Read tibber data const chart = JSON.parse(getState(idChart).val); // Read chart template const xAxis = []; const yAxis0 = []; const yAxis1 = []; for (const data of Object.values(tibber)) { xAxis.push(new Date(data.from).toLocaleDateString()); yAxis0.push(data.consumption.toFixed(2)); yAxis1.push(data.cost.toFixed(2)); } chart.title.text = title; // Set chart title chart.xAxis[0].data = xAxis; // Set chart x-axis data chart.series[0].data = yAxis0; // Set chart y-values consumption chart.series[1].data = yAxis1; // Set chart y-values cost setState(idChart, JSON.stringify(chart), true); // Write changed chart data to state console.log('Evaluation of tibber daily data done. Title: '+title); } // // // // Create chart for Tibber weekly data to be used with flexcharts // const ID_TIBBER_WEEKLY = '0_userdata.0.flexcharts.tibberLink.tibberWeekly'; // State id containing tibber data (json format) const ID_CHART_WEEKLY = '0_userdata.0.flexcharts.tibberLink.chartWeekly'; // State id containing template for chart data (json format) const TITLE_WEEKLY = 'Tibber weekly'; // Title of chart evalTibberData(ID_TIBBER_WEEKLY, ID_CHART_WEEKLY, TITLE_WEEKLY); // Convert data on start of script on({id: ID_TIBBER_WEEKLY, change: "any"}, function (obj) { evalTibberData(ID_TIBBER_WEEKLY, ID_CHART_WEEKLY, TITLE_WEEKLY); }); function evalTibberData(idTibber, idChart, title) { const tibber = JSON.parse(getState(idTibber).val); // Read tibber data const chart = JSON.parse(getState(idChart).val); // Read chart template const xAxis = []; const yAxis0 = []; const yAxis1 = []; for (const data of Object.values(tibber)) { xAxis.push(new Date(data.from).toLocaleDateString()); yAxis0.push(data.consumption.toFixed(2)); yAxis1.push(data.cost.toFixed(2)); } chart.title.text = title; // Set chart title chart.xAxis[0].data = xAxis; // Set chart x-axis data chart.series[0].data = yAxis0; // Set chart y-values consumption chart.series[1].data = yAxis1; // Set chart y-values cost setState(idChart, JSON.stringify(chart), true); // Write changed chart data to state console.log('Evaluation of tibber weekly data done. Title: '+title); }
und starte das Skript kommen folgende Meldungen:
nehme ich blockly bleibt das Feld leer!
Die Seite aktualisiert sich leider auch nicht wenn das json geändert wird.
-
RE: Test Adapter flexcharts - Stapeldiagramme und mehr
@jrbwh sagte in Test Adapter flexcharts - Stapeldiagramme und mehr:
@sms Ich habe das Skript mal als Text in die Anleitung eingefügt. Das ist leichter verständlich. Der State
chartWeekly
enthält die Definition des Charts. Das habe ich auf Basis eines Beispiels von den Apache Echart Seiten erstellt - wie ich weiter oben erläutert habe. Wenn das Chart anders aussehen soll, musst Du diesen State ändern.Für ein Daily Chart:
chartWeekly
nachchartDaily
kopieren und ggf. anpassen
Ich scheitere irgendwie schon hierbei. Ich muss doch hier auf kopieren:
aber wo einfügen?tibberDaily
anlegen und die richtigen Daten reinkopieren
Einfach hierüber anlegen?
- Im Skript die ersten 3 Konstanten kopieren und anpassen
- den Funktionsaufruf evalTibberData() (Zeile 9) kopieren und anpassen
- die Funktion on() kopieren und anpassen
Mal schauen ob ich das hinbekomme.