Nedap Power Router

Hallo,

ich möchte gerne meinen Nedap Powerrouter in IP Symcon einbinden.
Leider kommuniziert der Wechselrichter nur direkt mit der Nedap Homepage. Dort bekommt man alles schön angezeigt.
Mit der Einbindung der externen Seite geht es einigermaßen, aber unterwegs auf dem Handy sehe ich halt nichts.

Kennt jemand eine Vorgehensweise, wie ich die Daten bekomme? Vor allem der Batterieladezustand wäre sehr interessant.

Ich habe schon eine Lösung mit openHAB gefunden.

http://knx-user-forum.de/forum/öffentlicher-bereich/knx-eib-forum/35659-nedap-power-router-solaranlage

Das geht doch bestimmt auch mit IP Symcon.

Vielen Dank schon mal

Gruß

Christian

Hi!

Jupp, funktioniert auch mit IPS. Wie es funktioniert hast du ja selbst verlinkt :slight_smile:

Wo genau ist da jetzt deine Frage bzw. dein Problem?
Soll dir jemand alles fertig schreiben zum Copy&Paste machen? :slight_smile:

Anfangen, probieren, lesen, probieren, … und dann bei Problemen wieder nachfragen :slight_smile:

Edit: Im Forum gibt es viele Vorlagen/Skripte die von der Basis her dazu passen. Einfach mal schauen :slight_smile:

-Chris-

Hallo,

„Paste & Copy“ wäre ja auch zu schön gewesen :slight_smile:

Ich habe jetzt ein wenig rumprobiert und es klappt eigentlich so wie ich will, wenn ich die LogFile anpasse.

Knackpunkt ist diese Stelle des Skriptes:

<?
$json = ‚{„logs“:[{„time“:„2016-02-12T16:06:00Z“,„time_received“:null,„battery_state_of_charge“:null},{„time“:„2016-02-12T16:07:00Z“,„time_received“:„2016-02-12T15:06:06Z“,„battery_state_of_charge“:99.0}]}‘;

$obj = json_decode($json);
print $obj->{‚battery_state_of_charge‘};

?>

Das Decodieren wir durch „’{„logs“:[“ zunichte gemacht. Fehlermeldung ist immer „Undefined property“. Leider komme ich hier nicht weiter, um die Werte in ein Array schreiben zu können.

Vielen Dank!

Gruß

Christian

Du hast es versucht, also wird dir auch gerne geholfen :slight_smile:

Bitteschön:

<?
$json = '{"logs":[{"time":"2016-02-12T16:06:00Z","time_received":null,"battery_state_ of_charge":null},{"time":"2016-02-12T16:07:00Z","time_received":"2016-02-12T15:06:06Z","battery_state_of_charge":99.0}]}';

$obj = json_decode($json,true);  // das "true" bewirkt eine Ausgabe als Array, ohne "true" musst du mit "->" arbeiten statt "[ ]"

//Time ausgeben von 0
echo $obj["logs"][0]["time"].PHP_EOL.PHP_EOL;

//time_received ausgeben von 1
echo $obj["logs"][1]["time_received"].PHP_EOL.PHP_EOL;

// Array komplett ausgeben
print_r($obj);

?>

So sieht es mit JSON ohne Array aus:

<?
$json = '{"logs":[{"time":"2016-02-12T16:06:00Z","time_received":null,"battery_state_ of_charge":null},{"time":"2016-02-12T16:07:00Z","time_received":"2016-02-12T15:06:06Z","battery_state_of_charge":99.0}]}';

$obj = json_decode($json);

//Time ausgeben von 0
echo $obj->logs[0]->time;

?>

Grüße,
Chris