NIU Cloud (?)

Antworten
dasaweb
Beiträge: 28
Registriert: Sa 23. Dez 2017, 08:20
Roller: NIU N1S
PLZ: 97218
Kontaktdaten:

Re: NIU Cloud (?)

Beitrag von dasaweb »

Interessant wäre auch zu wissen, ob es für die API ein RateLimit gibt, und falls ja, ob dieses an einen Token oder an einen Nutzer gebunden ist. Wer will das mal mit seinem Account ausprobieren? ;)

obstler
Beiträge: 20
Registriert: Mi 18. Jul 2018, 15:59
Roller: Niu N1S 2018
PLZ: 8010
Land: A
Kontaktdaten:

Re: NIU Cloud (?)

Beitrag von obstler »

Sobald man sein token hat ist es ganz einfach den Batteriestand abzufragen; ich hab mir einen einfachen NodeRed Flow gemacht der das genau einmal stuendlich abfragt und nach MQTT posted zur weiteren Verwendung.

Fuer die http Abfrage muss der header "Token" auf das individuelle Token gesetzt sein. Dann Abfrage auf:

Code: Alles auswählen

https://app-api.niu.com/v3/motor_data/battery_info?sn=xxxxxxxx
Am Ende die eigene Serial Number eintragen.

Als Antwort kommt dann ein groesseres JSON Objekt, der aktuelle Ladestand beim NIU N1S steht in:

Code: Alles auswählen

data.batteries.compartmentA.batteryCharging

Benutzeravatar
Gunni
Beiträge: 177
Registriert: Fr 25. Mai 2018, 15:37
Roller: NIU N1s 2018
PLZ: 50259
Kontaktdaten:

Re: NIU Cloud (?)

Beitrag von Gunni »

vsm hat geschrieben:
Fr 3. Mai 2019, 17:07
Hier die erste Version des PHP-Wrappers. Alles etwas mit der heißen Nadel gestrickt, aber funktionsfähig... ;)
Habs mal ausprobiert.
Zwei kleine Anmerkungen:
Das Script braucht mindestens PHP 7.1, da PHP 7.0 noch keine "private const ..." in der Klasse kann. Oder man entfernt einfach das "private" dann gehts auch mit PHP 7.0
Als Anmeldename geht auch die Telefonnummer wenn man sich damit registriert hat im Format "17712345678", also ohne führende 0.

Benutzeravatar
ludwich
Beiträge: 44
Registriert: Fr 3. Mai 2019, 19:36
Roller: NIU M+ Sport
PLZ: 81
Kontaktdaten:

Re: NIU Cloud (?)

Beitrag von ludwich »

Ich habe die NIUAPITEST.PHP mal entsprechend der Properties erweitert.
Ich fürchte mir fehlt der "Akkustand"? Wer kann mir sagen welches Property hier die Info liefert?

ludwich

Code: Alles auswählen

Loading battery info for first listed vehicle...
	Remaining est. mileage 74 km; battery is not charging
	battery_info.batteries                : 
	battery_info.isCharging               : nein 
	battery_info.centreCtrlBattery        : 100
	battery_info.batteryDetail            : 1
	battery_info.estimatedMileage         : 74
	The following properties are available for battery info: batteries, isCharging, centreCtrlBattery, batteryDetail, estimatedMileage

Loading battery health info for first listed vehicle...
	Battery A has been charged 4 times which results in a grade of 99.6%
	battaries.compartmentA.healthRecords.chargeCount : 4
	battaries.compartmentA.gradeBattery              : 99.6
	battaries.compartmentA.isDoubleBattery           : nein 
	battaries.compartmentB.healthRecords.chargeCount : 
	battaries.compartmentB.gradeBattery              : 
	battaries.compartmentB.isDoubleBattery           : nein 
	The following properties are available for battery health: batteries, isDoubleBattery

Benutzeravatar
vsm
Administrator
Beiträge: 3011
Registriert: Mo 15. Mai 2017, 12:18
PLZ: 12
Kontaktdaten:

Re: NIU Cloud (?)

Beitrag von vsm »

ludwich hat geschrieben:
Mo 6. Mai 2019, 19:36
Ich habe die NIUAPITEST.PHP mal entsprechend der Properties erweitert.
Ich fürchte mir fehlt der "Akkustand"? Wer kann mir sagen welches Property hier die Info liefert?
[...]
Ich habe hier nur Zugang zu einem N-GT zum testen, da ist es

Code: Alles auswählen

int::get_battery_info()->response->data->batteries->compartmentA->batteryCharging
für den ersten und

Code: Alles auswählen

int::get_battery_info()->response->data->batteries->compartmentB->batteryCharging
für den zweiten Akku.

Benutzeravatar
ludwich
Beiträge: 44
Registriert: Fr 3. Mai 2019, 19:36
Roller: NIU M+ Sport
PLZ: 81
Kontaktdaten:

Re: NIU Cloud (?)

Beitrag von ludwich »

Hallo Volker,

danke das passt auch beim M+ ;-)
Ich stelle mich nur mit PHP d... an.
Wie kann ich die komplette Rückgabe der $data darstellen?.
Ich muss erst mal Tante Google fragen wie ich den kompletten Rückgabewert darstellen kann :(

ludwich

Benutzeravatar
vsm
Administrator
Beiträge: 3011
Registriert: Mo 15. Mai 2017, 12:18
PLZ: 12
Kontaktdaten:

Re: NIU Cloud (?)

Beitrag von vsm »

ludwich hat geschrieben:
Mo 6. Mai 2019, 20:55
[...]Wie kann ich die komplette Rückgabe der $data darstellen?[...]

Code: Alles auswählen

var_dump($data);

Benutzeravatar
ludwich
Beiträge: 44
Registriert: Fr 3. Mai 2019, 19:36
Roller: NIU M+ Sport
PLZ: 81
Kontaktdaten:

Re: NIU Cloud (?)

Beitrag von ludwich »

Hallo Volker,

danke für den PHP Kurs - es hat geholfen :lol:

:?: :?: :?:
Hat schon jemand eine Idee für was die 448
battery info->Items
sein könnten?
448 mal x y z Wert??

ludwich

Firestarter
Beiträge: 40
Registriert: Fr 2. Nov 2018, 11:27
Roller: Niu N-GT
PLZ: 1
Wohnort: Berlin
Kontaktdaten:

Re: NIU Cloud (?)

Beitrag von Firestarter »

Sehr cool, vielen Dank euch allen, die das hier voran treiben!

Habe dank eurer Hilfe jetzt die Akku-Stände und Restreichweite im iobroker drin. Wenn ich mal etwas Zeit habe, kommen die Werte auf die Visualisierung bzw. das Tablet im Flur, so habe ich die Werte immer im Blick :D

Larodef
Beiträge: 24
Registriert: Di 21. Aug 2018, 18:34
Roller: NIU N1S
PLZ: 52
Kontaktdaten:

Re: NIU Cloud (?)

Beitrag von Larodef »

Noch ne kleine Spielerei zur Abfrage des Batteriestands (1 Akku N1S) per Kurzbefehl App (iOS) :-)

1. Natürlich zuerst die Kurzbefehl App öffnen und einen neuen Kurzbefehl anlegen
2. Hinzufügen von "URL" ... https://app-api.niu.com/v3/motor_data/b ... fo?sn=HIER EURE SERIENNUMMER EINTRAGEN
3. Hinzufügen von "Inhalte von URL abrufen" ... Methode "GET"....unter Header einen Eintrag mit "Token" und als Wert EUREN TOKEN
4. Hinzufügen von "Wörterbuchwert abrufen".....Wert...data
5. Hinzufügen von "Wörterbuchwert abrufen".....Wert...batteries
6. Hinzufügen von "Wörterbuchwert abrufen".....Wert...compartmentA
7. Hinzufügen von "Wörterbuchwert abrufen".....Wert...batteryCharging
8. Hinzufügen von "Hinweis"....Titel "Batteriestand"....und Variable "Wörterbuchwert auswählen".
9. Starten, es kommt eine Mitteilung mit dem aktuellen Batteriestand

:-)

Laro
Gruß
laro
--------
pendelix - Forum für zweirad pendeln in der Euregio
www.pendelix.de
NIU N1S von 8.2018

Antworten

Zurück zu „NIU“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 5 Gäste