modul für withings wage (und blutdruck messgerät)

Begonnen von justme1968, 22 Dezember 2013, 00:28:31

Vorheriges Thema - Nächstes Thema

justme1968

auf der fritzbox gibt/gab es immer wieder probleme mit unicode/utf8 und der konvertierung.

welche fhem version hast du installiert? war die installation an sich schon fhem 5.5? rudi hatte da schon fehlende perl teile nachgerüstet.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

Markus M.

Zitat von: justme1968 am 15 Januar 2014, 16:15:44
sorry. ich komme gerade nicht dazu.
fällst du ein bisschen zeit hast magst du dir das vielleicht kurz anschauen? es reicht nicht nur die timestamps zu setzen sondern man muss die readings auch zum richtigen zeitpunkt erzeugen. ich denke man muss:
- zuerst den batteriestand und lastWeighinDate vom portal holen
- in der schleife über alle readings schauen ob das aktuelle reading nach dem timestamp der beiden werte von oben sind und wenn ja die beiden werte zwischen rein schreiben
- nach der schleife die beiden werte schreiben wenn sie nicht zwischen durch geschrieben wurden
ohne die passende wage ist es blöd zu testen.


Kein Problem, ich komm aber grade auch nicht dazu.
Arge Probleme mit einem instabilen System und einer Neueinrichtung :(
Ich habe aktuell sowieso DbLog laufen
Aktuell weder Smarthome noch FHEM vorhanden

MaxWhite


Zitat von: justme1968 am 19 Januar 2014, 15:47:31
auf der fritzbox gibt/gab es immer wieder probleme mit unicode/utf8 und der konvertierung.

welche fhem version hast du installiert? war die installation an sich schon fhem 5.5? rudi hatte da schon fehlende perl teile nachgerüstet.

gruss
  andre

Habe mit fhem 5.5 (von avm) gestartet / getestet.

Außer JSON hab ich keine weiteren perl Teile nachgerüstet. Muss da sonst noch was drauf?

Gruss
Martin

justme1968

zur fritzbox kann ich dir nicht wirklich etwas sagen. ich hab keine. zum avm image nur so viel das hier scheinbar die nicht avm version bevorzugt wird.

ist Encode mit drauf?

schau mal on dir das hier weiter hilf: http://www.fhemwiki.de/wiki/Unicode_FritzBox.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

MaxWhite

So - habs jetzt mal eben mit der aktuellen CVS Version von fhem 5.5 auf Windows7 (mit Active Perl) und auf Linux (SLES 11 SP3) getestet.
Überall der gleiche Fehler beim hinzufügen der Waage.

Das kommt im fhem log bevor fhem den Dienst beendet:

2014.01.19 16:45:12 3: Waage: create new device 'withings_UXXXXXX' for user 'XXXXXX'
2014.01.19 16:45:12 3: withings_UXXXXXX: I/O device is Waage

dann kommt immer das:
<SNIP>
malformed UTF-8 character in JSON string, at character offset 44138 (before "\x{fc}gen","measures...") at ./FHEM/32_withings.pm line 563
</SNIP>

Somit das gleiche Problem auf allen drei Plattformen.

--> Ich habe eine Waage, ein Blutdruckmessgerät und vier Benutzer in meinem Withings-Konto - ist das ein Problem?

justme1968

versuch mal bitte alle decode_json aufrufe durch JSON->new->utf8(0)->decode zu ersetzen.

das scheint auch das umlaute problem das ich noch hatte zu lösen. scheinbar sendet wittings kein urf8 sondern latin1.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

MaxWhite


justme1968

der text sollte in der rückgabe nicht auftauchen.

hast du es mit der änderung von oben mal probiert?

wenn du die url aus einem browser aufrufst in welchem kontext kommt die kommentare meldung?

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

MaxWhite

Zitat von: justme1968 am 19 Januar 2014, 17:28:24
der text sollte in der rückgabe nicht auftauchen.

Wenn ich das im Browser aufrufe: http://wbsapi.withings.net/measure?action=getmeas&userid=<meineID>&publickey=<meinKey>

Dann kommt sehr viel zurück - habe die Teile schon >1 Jahr ;-).

Zitat von: justme1968 am 19 Januar 2014, 17:28:24
hast du es mit der änderung von oben mal probiert?

Search "decode_json" und replace mit "JSON->new->utf8(0)->decode"

Und ja - damit scheint es zu gehen!!

Zitat von: justme1968 am 19 Januar 2014, 17:28:24
wenn du die url aus einem browser aufrufst in welchem kontext kommt die kommentare meldung?

Hier ein etwas größerer Ausschnitt des Bereiches mit der :
"measures":[{"value":87,"type":11,"unit":0}]},{"grpid":133182767,"attrib":0,"date":1374397692,"category":1,"measures":[{"value":85329,"type":1,"unit":-3},{"value":67681,"type":5,"unit":-3},{"value":20682,"type":6,"unit":-3},{"value":17648,"type":8,"unit":-3}]},{"grpid":133143585,"attrib":0,"date":1374386992,"category":1,"measures":[{"value":68,"type":9,"unit":0},{"value":119,"type":10,"unit":0},{"value":52,"type":11,"unit":0}]},{"grpid":132957278,"attrib":0,"date":1374302521,"category":1,"comment":"Tippen, um Kommentare anzufügen","measures":[{"value":66,"type":9,"unit":0},{"value":114,"type":10,"unit":0},{"value":47,"type":11,"unit":0}]},

-> Vermutlich wurde bei einem Wert der "Standard-Kommentar" hinzugefügt.

justme1968

ich hab meine auch schon zwei jahre :)

ja. da scheint der standard kommentar zu stehen.

ich checke die geänderte version ein. damit ist auch mein umlauf problem weg.

du scheinst der erste zu sein der auch blutdruck werte hat. funktioniert das? es sollten readings im user device zu sehen sein. schaut das geräte device vernünftig aus? gibt es einen batterie stand?

gruss
  andre

hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

MaxWhite

Zitat von: justme1968 am 19 Januar 2014, 18:31:24
ich checke die geänderte version ein. damit ist auch mein umlauf problem weg.

Super- danke!

Zitat von: justme1968 am 19 Januar 2014, 18:31:24
du scheinst der erste zu sein der auch blutdruck werte hat. funktioniert das? es sollten readings im user device zu sehen sein. schaut das geräte device vernünftig aus? gibt es einen batterie stand?

Soweit ich das beurteilen kann funktioniert das mit dem Blutdruck tadellos:

Blood pressure monitor - batteryLevel 87, battery ok

Mein Benutzer:
diastolicBloodPressure 78
heartPulse 66
systolicBloodPressure 120

Allerdings habe ich noch einen "Wunsch" ;-): (Kleiner Enhancement Request - wenn das möglich ist):
Wenn der Withings Account mit "define withings_device withings <Email> <Passwort>"  eingerichtet wird, dann wäre es schön wenn die ganzen Logs automatisch angelegt werden könnten..
(je ein Log pro Benutzer, plus ein Log für "Blood pressure monitor" sowie "Body scale")
Musste das ganze zweimal machen - einmal um die ganzen IDs für die Benutzer zu bekommen und dann nochmals um die passenden Logs anzulegen um auch die History zu haben...)

justme1968

du musst nach dem anlegen der nur ein mal pro device updateAll aufrufen.

das problem mit dem automatisch anlegen ist das nicht jeder filelog verwendet. und ich auch nicht funktionalität aus autocreste duplizieren will.

mal sehen ob mir noch was einfällt dazu.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

rudolfkoenig

Wenn autocreate aktiviert ist, dann gibt es ein "createlog" Befehl.

Jedes Modul kann mit seinem AutoCreate Eintrag dem autocreate Hinweise geben, wie Logs angelegt werden sollten.

justme1968

stimmt... da war etwas...

beim drüberschauen eben ist mir aber aufgefallen das alles am device TYPE hängt. das eine modul wittings arbeitete aber in drei unterschiedlichen modi (account,device und user) und es müssten je nach modus unterschiedliche plots erzeugt werden.

wenn es die wage mit co2 sensor ist -> plot für co2 und temperatur
wenn es ein user ist gewicht und eventuell blutdruck

das kann ich mit dem AutoCreate eintrag nicht abdecken oder?

@MaxWhite: es gibt übrigens noch ein bekanntes problem: die werte für batteriestand und letzes wiegen werden nicht richtig zwischen die werte für temperatur und co2 einsortiert. das macht bei dblog kein problem kann aber dazu führen das filelog bzw. die plots für die wage nicht sauber funktionieren. ich bin noch nicht dazu gekommen das zu reparieren.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

MaxWhite

Neues Problem - musste FHEM platt und neu machen und jetzt kommt immer das:

2014.01.25 10:47:17 3: withings_U676071: I/O device is withings_device
, or } expected while parsing object/hash, at character offset 10 (before "0,"body":{"updatetim...") at ./FHEM/32_withings.pm line 559

irgend eine Idee?