NEWS
PV Datenabfrage von neoom / ntuity
-
@christoph-jahn sagte: @paul53
Sehr schlecht zu lesen! Deshalb: In das Forum kopieren und in Code tags (oben: </>) setzen.
Es ist kein "fetch" zu sehen. -
</>var result; schedule("* * * * *", async function () { try { require("request")('https://api.ntuity.io/v1/sites/xxxx/energy-flow/latest', async function (error, response, result) { console.log(result); }).on("error", function (e) {console.error(e);}); } catch (e) { console.error(e); } });
MOD-EDIT: Code in code-tags gesetzt!
-
@christoph-jahn said in PV Datenabfrage von neoom / ntuity:
</>var result;
schedule("* * * * *", async function () {
try {
require("request")('https://api.ntuity.io/v1/sites/xxxx/energy-flow/latest', async function (error, response, result) {
console.log(result);
}).on("error", function (e) {console.error(e);});
} catch (e) { console.error(e); }
});Sorry bin da nicht so der Hero
-
@homoran Wie gesagt bin nicht so drinn in der Materie... Was sind Globale Skripte?
-
@christoph-jahn sagte in PV Datenabfrage von neoom / ntuity:
Sorry bin da nicht so der Hero
dann sieh dir mal deinen letzten Post an, lies hier
https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge/1und beantworte meine Frage
@homoran sagte in PV Datenabfrage von neoom / ntuity:
@christoph-jahn hat du globale Skripte?
-
@christoph-jahn sagte in PV Datenabfrage von neoom / ntuity:
Was sind Globale Skripte?
im Expertenmodus befindet sich in dem Skript explorer ein Verzeichnis global
ist da ein Skript drin? -
@homoran
Ja da ist tatsächlich was drinnen.. -
@christoph-jahn sagte in PV Datenabfrage von neoom / ntuity:
Ja da ist tatsächlich was drinnen..
warum?
woher?und da ist auch der fetch
-
@christoph-jahn sagte: da ist tatsächlich was drinnen..
Lösche das Skript unter der Gruppe "global".
Dann trage in die Konfiguration der JS-Instanz unter "Zusätzliche NPM-Module" ein: api
Dann erstelle dieses Skript laut Doku unter der Gruppe "common":const sdk = require('api')('@ntuity/v1#6m6q34l263sbor'); sdk.auth('token'); sdk.getSitesIdEnergyFlowLatest({id: 'id'}) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
"token" und "id" durch Deine Sachen ersetzen.
-
@paul53 said in PV Datenabfrage von neoom / ntuity:
'
9.6.2023, 19:40:16.839 [info ]: javascript.0 (826423) Stop script script.js.common.ntuity 9.6.2023, 19:40:16.848 [info ]: javascript.0 (826423) Start javascript script.js.common.ntuity 9.6.2023, 19:40:16.881 [info ]: javascript.0 (826423) script.js.common.ntuity: registered 0 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions 9.6.2023, 19:40:17.263 [info ]: javascript.0 (826423) script.js.common.ntuity: {'power_consumption':{'value':null,'time':'2023-06-09T14:59:30.004Z'},'power_consumption_calc':{'value':1727,'time':'2023-06-09T17:40:15.002Z'},'power_production':{'value':1284,'time':'2023-06-09T17:40:15.002Z'},'power_storage':{'value':404,'time':'2023-06-09T17:40:15.002Z'},'power_grid':{'value':39,'time':'2023-06-09T17:40:15.002Z'},'power_charging_stations':{'value':null,'time':'2023-06-09T14:59:30.004Z'},'power_heating':{'value':null,'time':'2023-06-09T14:59:30.004Z'},'power_appliances':{'value':1727,'time':'2023-06-09T14:59:30.004Z'},'state_of_charge':{'value':99,'time':'2023-06-09T16:57:55.002Z'},'self_sufficiency':{'value':98,'time':'2023-06-09T17:40:15.002Z'},'max_network_utilization':20000,'consumers_total_count':0,'consumers_online_count':0,'producers_total_count':1,'producers_online_count':1,'storages_total_count':2,'storages_online_count':2,'heatings_total_count':0,'heatings_online_count':0,'charging_points_total_count':0,'charging_points_online_count':0,'grids_total_count':1,'grids_online_count':1}
MOD-EDIT: Code in code-tags gesetzt!
Wow klasse, jetzt werden die Daten ausgegeben!
-
@paul53 said in PV Datenabfrage von neoom / ntuity:
@christoph-jahn sagte: da ist tatsächlich was drinnen..
Lösche das Skript unter der Gruppe "global".
Dann trage in die Konfiguration der JS-Instanz unter "Zusätzliche NPM-Module" ein: api
Dann erstelle dieses Skript laut Doku unter der Gruppe "common":const sdk = require('api')('@ntuity/v1#6m6q34l263sbor'); sdk.auth('token'); sdk.getSitesIdEnergyFlowLatest({id: 'id'}) .then(({ data }) => console.log(data)) .catch(err => console.error(err));
"token" und "id" durch Deine Sachen ersetzen.
In den Objekten werden die Leistungswerte noch nicht gelistet, ist da noch eine Anpassung nötig?
-
@christoph-jahn sagte: Leistungswerte noch nicht gelistet, ist da noch eine Anpassung nötig?
Weitere Möglichkeiten liefert die Doku nicht. Ist "power_grid" kein Leistungswert?
-
ich weis nicht ob ich mich richtig ausgedrückt habe.. Anbei ein Screenshot vom Objekt-Bereich.. hab mal alles von JS geöffnet, finde hier aber keine Messwerte..!
-
@paul53
Bei Solax sieht das so aus.. -
@christoph-jahn: finde hier aber keine Messwerte..!
Die Datenpunkte gibt es auch noch nicht, da sie selbst erstellt werden müssen, vorzugsweise unter "0_userdata.0". Die einzelnen Werte müssen aus dem Objekt, das im Log zu sehen ist, extrahiert werden.
-
@paul53 Oje oje.. gibts da eine Doku wie man das angeht.. die Lernkurve geht hier etwas sehr steil..
-
erstmal die Struktur ansehen
u d dann die gewünschten Informationen per Blockly und Attribut xy von... in den jeweiligen Datenpunkt schreiben
-
@christoph-jahn sagte: Bei Solax sieht das so aus.
Das hat wenig Ähnlichkeit mit den Daten, die im API-Objekt übermittelt werden.
-
Hallo,
meine Anlage mit 2 SMA-Wechselrichtern lief über den ModBus Adapter jetzt 10 Jahre wunderbar. Diesen Donnerstag wird bei mir KJUUBE Light S NEA 10 kW/14,2 kWh verbaut und die SMA´s kommen weg.
Jetzt hatte ich als Bedingung für das neue System Modbus TCP gestellt und es wurde mir bestätigt.
Jetzt die Frage: Hast du es hinbekommen, die Daten direkt und in Echtzeit vom Wechselrichter abzugreifen oder geht das nur über das Portal?
Falls nicht, werde ich den Auftrag canceln und auf SMA weitermachen.
Viele Grüße
Marco