IPSLibrary - Withings Waage und Blutdruck Modul

So müsste es doch eigentlich passen, oder?

Die erste Zeile ist tatsächlich der Plus, meine Waage ist ja ein WS-50 bzw. Smart Body Analyzer.

http : //wbsapi.withings.net/measure?action=getmeas&userid=uuu&publickey=ppp

liefert eine lange Liste von Werten :-).

z.B. type 1, 4, 5, 6, 8 und 11

Es müssten auch irgendwie die Temperatur und CO2 abgefragt werden können.

Bei der WS-50 müssten wohl zwei Datensätze abgefragt werden, da ein Wiegevorgang folgende Daten liefert:

{„grpid“:190426848,„attrib“:0,„date“:1394513088,„category“:1,„measures“:[{„value“:68,„type“:11,„unit“:0}]}, // Heart Pulse (bpm)

{„grpid“:190426846,„attrib“:0,„date“:1394513088,„category“:1,„measures“:[
{„value“:96842,„type“:1,„unit“:-3}, // Weight (kg)
{„value“:76804,„type“:5,„unit“:-3}, // Fat Free Mass (kg)
{„value“:20692,„type“:6,„unit“:-3}, // Fat Ratio (%)
{„value“:20038,„type“:8,„unit“:-3} // Fat Mass Weight (kg)
]},

Schon etwas kommentiert.

Die Installation läuft nicht richtig durch, da Profil bzw. Variablen nicht korrekt angelegt werden.

Ich habe folgendes angepasst:


# 51   create_profile("WithingsInfo_cm"			," cm",[b]1[/b]);
# 55   create_profile("WithingsInfo_mmhg" 		," mmHg"  ,[b]1[/b]);
#146   $idd = CreateVariable("Puls"           , 1 /*Integer*/,  $subid,103 ,[b]''[/b], null, 0);

#51 und #55 sind Integer
#146 ist kein String, somit ‚‘ für Integer

~#136, Schreibfehler

$puls --> $pulse

Im WAAGE Abschnitt

if ( $messung['type'] == 11 ) $pulse 			= round ($val,2);

aber wenn es den Wert gibt, wird nicht verarbeitet → wie folgt ergänzt

$id = IPSUtil_ObjectIDByPath($userblutdruckpath . ".Puls");
if ($pulse) SetValueInteger($id,$pulse);

Wenn ich $limit auf 2 setze und den WAAGE Abschnitt verdopple werden auch die weiteren Werte ausgewertet.

Das ist von der Umsetzung her unschön, eigentlich müssten wir die Anzahl der Array-Einträge prüfen und dann entsprechend auswerten.

Leider kann es auch nur einen aktuellen Datensatz geben, wenn man direkt nach der Gewichtsmessung die Waage verlässt oder Socken an hat, siehe oben ;). Also muss da noch ein wenig „Sicherheitsprüfung“ dazu.

Und bezüglich Temperatur und CO2 habe ich an Withing gemailt.

Erstmal Danke fuer die Arbeit. Ich mach das dann am WE rein.
Wegen CO und Temperatur hab ich in der API noch nichts gefunden:
http://www.withings.com/de/api

Category table
Category 	Description
1 	Measure
2 	Target
Measure types table
Type 	Description
1 	Weight (kg)
4 	Height (meter)
5 	Fat Free Mass (kg)
6 	Fat Ratio (%)
8 	Fat Mass Weight (kg)
9 	Diastolic Blood Pressure (mmHg)
10 	Systolic Blood Pressure (mmHg)
11 	Heart Pulse (bpm)
Device types table
Type 	Description
0 	User related (for the moment, only height and weight)
1 	Body scale
4 	Blood pressure monitor
16 	Withings Pulse

only height and weight !

ok, wahrscheinlich wäre es besser, die letzten x Werte zu holen und über die grpid zu prüfen, ob die Werte schon gelesen wurden.

Frage wegen den CO-Werten und der Temperatur.
Kriegst du die auf der Webseite von Withings irgendwo angezeigt ?

ja, im neuen Frontend, aber nicht als Tabelle. Ich warte auf die Antwort von Withing.

Die Werte kommen zwar eh’ nur stündlich, sind also für sinnvolle Regelungen nicht nutzbar, aber drankommen würde ich schon gern.

Hallo!

Ich wollte heute das Modul laden, leider bekomme ich einen Fehler,
er kennt die Adresse nicht

https://raw.github.com/1007/IPSLibrary/Informationen/

Vielen Dank
Gerald

Hallo
Hast du das ueber die GUI probiert ?

Gesendet von meinem iPad mit Tapatalk HD

Hallo!

JETZT hab ich es über die GUI gemacht und es hat funktioniert!

Vielen Dank
Gruß Gerald

Koennte noch Probleme geben mit IPSymcon 3.1 die noch nicht behoben sind.

Gesendet von meinem iPad mit Tapatalk HD

Hallo Leute,

ich habe das Modul über die GUI installiert und in der Config die Daten angepasst. Ich finde aber nirgends die Daten. Ich habe im Ordner „Visualization“ geschaut, dort steht aber nichts. Die Kategorie „WithingsInfo“ wurde zwar bei mobil und Webfront angelegt, darunter ist aber nichts. Die Freigabe auf der Withings-Website habe ich wie hier beschrieben erteilt.

Habe ich noch etwas vergessen? Muss zusätzlich noch etwas gemacht werden? Wo kann ich sehen, ob überhaupt Daten abgeholt werden?

Joachim

Hallo
Es gibt kein Webfront fuer dieses Modul. Hat historische WAF-Gruende.
Hat sich aber geaendert, vielleicht schreib ich mal eins.
Aber bei den paar Zahlen?
Im Konfigurationsfile mal das Logging aktivieren dann sollte Eintraege im Meldungsfenster kommen.
Die Daten sind in der Library unter den ‚Data‘

Gesendet von meinem iPad mit Tapatalk HD

Hallo 1007,

vielen Dank für Deine Antwort. Ich bekomme auch dort keine Daten. Beim „USERx_Name“ habe ich schon verschiedene Kombinationen versucht.

JOA
JOACHIM
Joa
Joachim

Lediglich in der Version „JOA“ bekomme ich die Fehlermeldung „User nicht in Data. Installroutine ausfuehren !“

Wie führe ich diese Installroutine für die User aus?

Joachim

Nachtrag: Ich habe das ganze Modul noch einmal gelöscht, wieder installiert und die Daten in der Config-Datei eingetragen. Danach in der GUI noch den Installation-Wizard ausgeführt. Es werden ein paar Variablen angelegt und der Prozess steht dort als „Install“. Die Fehlermeldung im withingsinforefresh:
Fatal error: Uncaught exception ‚IPSUtilException‘ with message ‚„WAAGE“ could NOT be found while searching for Path Program.IPSLibrary.data.modules.Informationen.WithingsInfo.JOA.WAAGE.Uhrzeit‘ in F:\IP-Symcon\scripts\IPSLibrary\app\core\IPSUtils\IPSUtils.inc.php:72
Stack trace:
#0 F:\IP-Symcon\scripts\IPSLibrary\app\modules\Informationen\WithingsInfo\withingsinforefresh.ips.php(254): IPSUtil_ObjectIDByPath(‚Program.IPSLibr…‘)
#1 F:\IP-Symcon\scripts\IPSLibrary\app\modules\Informationen\WithingsInfo\withingsinforefresh.ips.php(79): getwithingsdata(Array, 1)
#2 {main}
thrown in F:\IP-Symcon\scripts\IPSLibrary\app\core\IPSUtils\IPSUtils.inc.php on line 72
Abort Processing during Fatal-Error: Uncaught exception ‚IPSUtilException‘ with message ‚„WAAGE“ could NOT be found while searching for Path Program.IPSLibrary.data.modules.Informationen.WithingsInfo.JOA.WAAGE.Uhrzeit‘ in F:\IP-Symcon\scripts\IPSLibrary\app\core\IPSUtils\IPSUtils.inc.php:72
Stack trace:
#0 F:\IP-Symcon\scripts\IPSLibrary\app\modules\Informationen\WithingsInfo\withingsinforefresh.ips.php(254): IPSUtil_ObjectIDByPath(‚Program.IPSLibr…‘)
#1 F:\IP-Symcon\scripts\IPSLibrary\app\modules\Informationen\WithingsInfo\withingsinforefresh.ips.php(79): getwithingsdata(Array, 1)
#2 {main}
thrown
Error in Script F:\IP-Symcon\scripts\IPSLibrary\app\core\IPSUtils\IPSUtils.inc.php on Line 72

Konfigurationsdatei bearbeiten in den alle User definiert sind und Modul nochmal
installieren.
Dann sollten die entsprechenden Variablen in data angelegt werden.
das holen der Daten ist dann eine andere Sache wenn das fehlschlaegt.
In Data sind Daten angelegt ?

Gesendet von meinem iPad mit Tapatalk HD

Oh, da hat sich etwas überschnitten…(siehe Nachtrag oben).

Es werden Daten gezogen, die letzte Variable die angelegt wird ist die Größe…

Joachim

Nachtrag: Der IPS-Logger schmeißt einen Fehler raus, dass Profiltyp und Variablentyp beim erstellen einer Variablen nicht zusammenpassen!

Ah da war was mit der neuen IPSymcon Version.
Welche Variable ist das oder die Fehlermeldung?
Bin gerade eine Woche springen, werde das also eher nicht in der Library einpflegen koennen in den naechsten Tagen.
Lese das Forum auch nur sporadisch am Abend.

Genau kann ich es Dir nicht sagen, wahrscheinlich die, die nach der „Größe“ angelegt wird.
Kannst Du mir sagen in welchem Skript die Variablen angelegt werden?

Joachim

Nachtrag: In Posting #83 ist es beschrieben, die Variablen werden jetzt korrekt angelegt…