Re: NIU Cloud (?)
Verfasst: Mo 20. Mai 2019, 06:44
Die API kann nun auch Informationen zur Firmware anzeigen.
Habe mir das selbe gerade auch gebaut. NAch ein wenig Bastelei. Jetzt kommt das ganze in den Home Assistantobstler hat geschrieben: Mo 6. Mai 2019, 13:55 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:
Am Ende die eigene Serial Number eintragen.Code: Alles auswählen
https://app-api.niu.com/v3/motor_data/battery_info?sn=xxxxxxxx
Als Antwort kommt dann ein groesseres JSON Objekt, der aktuelle Ladestand beim NIU N1S steht in:
Code: Alles auswählen
data.batteries.compartmentA.batteryCharging
Ja, kannst Du. Beschreibung des JSON Objektes findest hier: https://github.com/BlueAndi/niu-cloud-c ... master/doc
Ja. Ich habe die nodjs-Anwendung in meinen iobroker integriert (ich wollte keine weite nodejs Instanz laufen haben). Im iobroker erscheint naturgemäß kein neuer Adapter, aber Du kannst die Informationen per CLI abrufen. Ich tue das von meiner CCU aus und schreibe das Ergebnis in CCU Variablen. Der Vorteil ist, ich habe die Daten sowohl im iobroker, als auch in CCU historian und kann sie auf der CCU nutzen (z.B. die Ladesteckdose auszuschalten, wenn der Akku 100% voll ist). Du kannst es entweder genauso machen (natürlich auf Deine CCU angepasst, auf der auch CUxD installiert sein muss) wenn Du eine CCU benutzt, oder Du passt das Script leicht an und benutzt es auf Deinem iobroker lokal.Firestarter hat geschrieben: Mo 6. Mai 2019, 11:31 Da der Token ja gleich bleibt, gibt es eine einfache URL bzw. Http-Abfrage, die nur den Akkustand zurück gibt?
Ich bräuchte das in iobroker….wobei ein "richtiger" iobroker-Adapter wäre natürlich der Knaller![]()
Weiss jemand, wie man solch einen Adapter bastelt? Ich bin da leider nicht mit allzu viel Wissen gesegnet![]()
Code: Alles auswählen
#!/bin/sh
# Version 1.1
#
# Liest Werte aus der Niu Cloud
token=<hier Dein Token eintragen>
sn=<hier die engine Seriennummer>
raw=$(ssh -o UserKnownHostsFile=/usr/local/addons/scripts/.ssh/known_hosts -i /usr/local/addons/scripts/.ssh/id_rsa iobroker@<hier den iobroker host> /usr/bin/node /home/iobroker/node_modules/niu-cloud-cli/niu-cloud-cli.js get-battery-info
for niu in "NiuBatteryA.connected,11" "NiuBatteryA.charge_state,15" "NiuBatteryA.temperature,23" "NiuBatteryA.mileage,30"
do
v1=`echo $niu | cut -d',' -f 1`
h1=`echo $niu | cut -d',' -f 2`
v2=`echo $raw | cut -d' ' -f $h1`
echo -e $v1'\t'$v2
/usr/local/addons/cuxd/extra/timer.tcl "$v1" $v2 1>/dev/null
done
Ist nicht ganz einfach, da jeder meist was anderes möchte. Ich habe für ein paar Kommandos mal eine Filteroption hinzugefügt, mit der kann man sich die Ausgabe selber zusammenstellen, einfach durch die Angabe von --filter xxx --filter yyy und etc. Sind es mehr als ein Filter, werden die Werte durch einen ";" separiert.cactus-online hat geschrieben: Mi 29. Mai 2019, 08:30 Ideal wäre es, wenn es eine Möglichkeit gäbe, die Werteliste auch als einfachen String zu bekommen.
guro hat geschrieben: Mi 19. Jun 2019, 22:42 Ich muss den Thread nochmal rausholen, kennt ihr zufällig die URL um die Batterie-History zu bekommen?
In der App kann ich ja die Akku-Anzeige anklicken und sehe ein Diagramm über die Ladestatus zu KM-Stand. Scheint wohl eine eigene URL zu sein, da ich es in der Api-Test von volkerschulz nicht gefunden habe.
Nachdem mein N Pro auch gerne im Stillstand den zweiten Akku "lädt" würde ich das gerne mitloggen.
Danke!
beste Grüße
Basti