Hallo zusammen,
ich möchte eine einfache Website mit einem Shelly zur Verfügung stellen welche die Gesamtleistung eines ProEM3 sowie die Leistung eines ProEm50 darstellt. Das script soll auf dem ProEM3 laufen.
Bis jetzt habe ich es mit den Informationen hier im Forum geschafft, wenigstens die Gesamtleistung des ProEM3 darzustellen:
HTML
function GetPwr()
{
let EMpower = Shelly.getComponentStatus("em:0");
let Power = JSON.stringify(EMpower.total_act_power);
Power = Math.round(Power)
return Power;
}
function endpoint_webserver(request,response) {
print('Endpoint Triggered!');
response.code = 200;
response.headers = [["Content-Type", "text/html"]];
response.body = htmlBody;
response.send();
}
function main_func()
{
let pwr
let newEndpoint
pwr = GetPwr();
newEndpoint = HTTPServer.registerEndpoint, localIP = Shelly.getComponentStatus('wifi').sta_ip, htmlBody = '<!DOCTYPE html>' +
'<html>' +
'<head>' +
'<title>WW6-Strom</title>' +
'<script>setTimeout(function(){window.location.reload(1);}, 5000);</script>' +
'<body>' +
'<h1>Test</h1>' +
'<font face="Consolas" size=28>Gesamtleistung: ' + pwr + ' Watt<br>' +
'</body>' +
'</html>';
print('Endpoint_Link: http://' + localIP + newEndpoint('WW6_EM3', endpoint_webserver));
}
Timer.set(5000, true, main_func);
Alles anzeigen
Nun möchte ich vom EM50 ebenfalls die Leistung anzeigen, allerdings ist das ja nicht der Shelly auf dem das läuft. Wie bekomme ich remote dieselbe JSON aus der ich dann die Leistung schnappen kann?