edit 2017-01-16:
DIESES MODUL WIRD ABGELÖST, ES GIBT EINE NEUE VERSION.
BITTE IM NEUEN THREAD WEITER: https://forum.fhem.de/index.php/topic,64944.0.html (https://forum.fhem.de/index.php/topic,64944.0.html)
anbei eine erste version eines moduls um daten von der withings webseite abzurufen und in fhem zu verwenden.
zum anlegen muss die userid und der key angegeben werden. beides findet sich auf der withing seite unter teilen -> auf meiner webseite.
nach dem define werden alle bisher vorhanden daten abgeholt und dann regelmässig jede stunde nur die neuesten. für die altdaten wird kein event getriggert, ich weiss noch nicht ob und wie das mit dem richtigen timestamp möglich ist.
gruss
andre
Yeah.
Ich überlege mir schon seit dem Release eine Withings Waage zu kaufen. Nun wird sie gekauft :D
Danke für das Modul!!
Grüße
yep, ich besitze die Waage auch schon seit 2011.
Ich hatte André gestern den Tipp gegeben, ob man in nächster Zeit da was machen könnte mit Fhem. Und innerhalb einiger Minuten hat er das Modul gezaubert, danke dafür!
Kirk: "Wie lange brauchst Du, um die Maschine wieder fit zu bekommen?"
Scott: "Acht Wochen. Aber Du hast keine acht Wochen, also schaffe ich es für dich in zwei."
Kirk: "Nimmst Du Deine Reparatur-Schätzungen eigentlich immer mal vier?"
Scott: "Wie soll ich sonst meinen Ruf aufrechterhalten, Wunder bewirken zu können?"
(aus: Star Trek III - Auf der Suche nach Mr. Spock")
Robin
Auf der withings Seite bekommt man gerade Rabatt auf Bundles, ich habe mir die Waage und das Blutdruck Messgerät für unter 200 Euro bestellt.
Gesendet von meinem Nexus 4 mit Tapatalk
anbei ein kurzes update...
beim ersten pollen nach dem anlegen des device werden jetzt die historischen daten beim laden auch mit dem richtigen timestamp versehen. wenn zu dem zeitpunkt schon ein passendes filelog oder dblog device vorhanden ist hat man so die komplette history direkt nach fhem übernommen.
gruss
andre
Danke für das Modul,
wo liegen denn die "alten" Daten?
Wenn Withings jetzt noch das teilen der restlichen Daten freigibt wäre es super.
CO2 wäre super...
du musst zuerst ein passendes file oder db log definieren und dann das withings device anlegen.
beim ersten definieren des device wird für jeden alten wert ein reading/event erzeugt. genau so wie sonst für neue daten.
dir altdaten landen so ganz normal in deinem log.
gruss
andre
vielleicht da mal eine Kurze howto schreiben, wie man die Plots erstellt, ich bekomme es auch nicht gebacken.
Ich werde es am Wochenende einrichten, und meine Schritte hier Posten.
Einen schönen letzten Feiertag wünsche ich euch
Gesendet von meinem Nexus 4 mit Tapatalk
habt ihr eigentlich eine Ahnung wie gefährlich Gesundheitsdaten sind
Blutdruck und Gewicht
tja wenn die Werte ok sind mag das ja noch ok sein...
Achtung
nicht alles was geht ist auch sinnvoll gerade wenn es um Gesundheitsdaten geht....
bin zwar eigentlich ein absoluter EDV Fan aber wenn es um solche Daten geht werde ich super vorsichtig
als Hausarzt bekommt man da selbst heute schon so einiges mit...
und der einie oder andere schaut blöd drein wenn er seine benötigte Lebensversicherung nur mit einem happigen Aufschlag bekommt
nur mal so am Rande
ein einfaches plotfile kann z.b. so aussehen.
gruss
andre
nicht gesundheitsdaten sind gefährlich sondern der missbrauch von daten.
das gilt für facebook sauffotos genau so wie für kontodaten oder auch das gewicht wenn es von den falschen personen für den falschen zweck verwendet und mit einer person in beziehung gebracht wird. ob und wie man seine daten mit anderen teilt sollte natürlich jeder sehr gut überlegen. im gegensatz zu kontodaten zwingt mich aber nichts und niemand dazu mich mit realem namen und anderweitig verwendeter e-mail adresse und so identifizierbar zu registrieren.
vorsicht ist ganz sicher richtig. aber für eine versicherung ist es 100 mal leichter und vor allem sehr viel umfangreicher den hausarzt einfach anzuschreiben und nach entsprechenden daten zu fragen. wer hier sein einverständniss zur untersuchung ablehnt kommt noch nicht mal mit aufschlag in den fraglichen genuss bei dieser gesellschaft.
und nur mal so am rande: krankenakten die in offenen kellern oder garagen lagern, am tresen rumliegen, im krankenhaus keller jedem zugänglich sind sind ganz sicher ein größeres risiko und zeigt das nicht die edv die gefahr ist sondern eben der nicht sorgsame umgang mit diesen daten.
Also hier kurz ein Howto ohne Anspruch auf Korrektheit und Vollständigkeit...
define FileLog_<name> FileLog ./log/<name>-%Y.log <name>
define <name> withings user key
Auf den logfile: create SVG Plot
YAxis links: "KG" rechts "BPM" oder "%"
Diagramm Label:
Gewicht 4 Waage.weight:
Puls (oder Fettanteil) 4 waage.heartPulse: (oder Fatmass etc)
in den Letzten beiden Spalten kann man die Farbe und Dicke der Linien auswählen.
So jetzt schreibe ich withings das sie doch bitte in der neuen API Temperatur und CO2 berücksichtigen sollen...
Man sollte vielleicht auch noch
attr SVG_FileLog_withings_1 fixedrange month
oder
attr SVG_FileLog_withings_1 fixedrange week
einfügen, so hat man dann eine Wochen- oder Monatsübersicht.
LG
/robin
Nachdem ich im USB Waage Thread noch gelästert hatte, musste ich kurze Zeit später ins Krankenhaus.
Jetzt bin ich wieder raus, habe eine Diagnose und mir daraufhin also auch eine Withings gekauft. Gabs günstig gebraucht auf Amazon.
Danke für das Modul.
Wird das erste was im neuen Jahr FHEM beigebracht wird. Die Waage ist nach etwas Startschwierigkeiten schon mal online.
Nochmal, Danke
Rince
Schön dass ich nicht der Einzige bin bei dem es teures Spielzeug zu Weihnachten gab :)
Ok, nach ein wenig Pfusch habe ich ein quick&dirty Update, mit dem wir die Temperatur- und CO2 Werte und noch ein wenig netten Kram wie den Batteriezustand der Waage bekommen.
Von Withings gibt es das wahrscheinlich eh erst zum St. Nimmerleinstag.
Um das Blutdruckmessgerät hab ich mich nicht gekümmert, fand das zu unpraktisch.
Was es tut: Mit 2 optionalen weiteren Parametern (Device ID und Session ID) werden über die Schnittstelle die die Withings Oberfläche benutzt die relevanten Daten geholt.
Die IDs findet man aktuell mit etwas Debugging im Browser raus.
Wenn man sich nicht ausloggt, bleibt die Session gültig - mal sehen wie lange
Benutzung:
define <name> withings <user> <key> [<deviceid> <sessionid>]
Für einen Benutzer mit einem Body Analyzer passt das erst mal
Was jetzt hier dran noch zu tun ist:
- Das Modul aufteilen in Benutzer (der Teil von Andre) und Geräte (der Teil von mir)
- Die Werte beider Werte-Abfragen erst zwischenspeichern und vor dem ReadingsUpdate nach Timestamp sortieren
- Eine SessionID irgendwie über Anmeldung mit user/pass auf withings.com beziehen und die Session nach der Abfrage beenden
- ...
Darum müsste sich aber irgendjemand kümmern der zumindest rudimentäre Perl Kenntnisse hat.
Viel Spass damit!
Markus
der saubere weg ist vermutlich sich per oauth am withings server zu authentifizieren.
ich kann mal schauen wie weit ich da komme.
ich denke es ist nicht nötig zwei module draus zu machen. das geht auf jeden fall auch mit einem modul.
meine wage liefert nur die werte nicht. wenn ich was zum testen habe bräuchte ich dann jemand mit dem entsprechenden model.
gruss
andre
Mit Testdaten kann ich im Zweifelsfall dienen ;)
Allerdings bin ich mir ziemlich sicher dass OAuth hier nichts bringt, da das nicht Teil der offiziellen API ist.
Der Zugriff erfolgt über die Session ID die man nach dem Browser-Login im Cookie bekommt.
Die Daten die wir wollen gibt Withings aktuell nur über die eigene Öberfläche raus - da aber immerhin gleich im JSON Format.
du hast recht. das normale api gibt nur user daran, body metrics und activity metrics. blöd.
gruss
andre
AUTH bei denen auf der Seite ist leider der blanke Horror.
Da wird erst mal per Javascript ein Token abgeholt und ein Hash daraus und aus den Logindaten erzeugt und mitgeschickt und scheinbar auch noch einige andere Schweinereien.
Ich weiss wie ich den Token bekomme und den Hash erzeuge, bekomme aber noch keine Session ID.
Mal sehen ob mir am Sonntag wieder danach ist :)
P.S.: Kann man diesen unsäglichen Unsinn mit Absenden bei Alt-S irgendwie deaktivieren?
Das passiert immer wenn man auf einer US-Tastatur ein scharfes S tippen möchte :(
Vielleicht ist es fast einfacher per dns umleitung und Proxy an die Daten zu kommen,
also direkt von der Waage.
Sent from my ASUS Transformer Pad TF700T using Tapatalk 4
Coole Sache, hab mir gerade einen etwas umständlichen Weg über eine IFTTT Mail und dem Mailcheck Modul gebaut ;-) Werde das Modul gleich mal einbinden.
Zitat von: d0np3p3 am 04 Januar 2014, 17:10:53
Vielleicht ist es fast einfacher per dns umleitung und Proxy an die Daten zu kommen,
also direkt von der Waage.
Wenn du die volle Funktionalität mit withings.com behalten möchstes ist das auch nicht ideal.
Ausserdem ist es nur was für den fortgeschrittenen Anwender...
Ok, alles fertig.
Na zumindest fast alles - jetzt muss eigentlich nur noch jemand ein FHEM Modul draus basteln ;D
Im Anhang findet sich mein aktuelles Modul, das Daten für einen einzelnen User und zusätzlich die Luftdaten der Waage ausliest.
Da ist nochmal zu sehen wie die Daten zusammen mit den Userdaten nach Timestamp sortiert werden - etwas das im fertigen Modul mit den Daten über alle User/Devices passieren muss, da sonst im Log nur Schrott ankommt mit dem keine Plots mehr funktionieren.
Ausserdem habe ich noch mein Testscript angehängt, in dem alle nötigen Schritte für den Login auf withings.com nachzuvollziehen sind. Funktioniert auch über HTTP, sollte also keine weiteren Installs benötigen.
Zum Testen eigene Logindaten einfügen und in der Shell starten.
Jetzt müsste jemand übernehmen der sich ein wenig mit FHEM auskennt und daraus folgendes programmieren:
-Modul/Parent Device "Withings" für das Modul selbst, das die Logindaten für withings.com enthält
-Child Device "WithingsUser" das die eigentlichen Userdaten enthält, samt Autocreate
-Child Device "WithingsDevice" das die Gerätedaten enthält, samt Autocreate
Dann sollte man nur über User / Passwort alle User und alle Geräte in FHEM haben.
Ausser den Luftdaten der Waage und Batterieständen wäre es wahrscheinlich auch noch möglich, genauere Aktivitätsdaten vom Pulse zu bekommen als per API, ich habe allerdings (noch) keinen.
Schönes verlängertes Wochenende noch,
Markus
klasse.
weisst du schon wie lange der session key gültig bleibt?
weiss jemand wie die zuordnung von users zu device ist wenn man mehr als ein device hat? gehören die messwerte eines users dann geräte übergreifend zur gleichen userid ?
für das sortieren habe ich noch keine wirklich gute idee.
das mit dem sortieren ist nicht nötig bzw. nicht möglich wenn pro user und gerät ein fhem device angelegt wird. jedes fhem device ist unabhängig von den anderen, pollt seine daten und erzeugt seine readings. man kann/darf nur nicht in das gleiche filelog loggen. mit dblog ist das kein problem.
wenn die readings user und geräte übergreifend sortiert werden müssen weil sie ins gleiche filelog sollen dann wäre es mehr fhem konform wenn sie auch nur ein einziges device erzeugt.
gruss
andre
Zitat von: justme1968 am 05 Januar 2014, 20:59:06
weisst du schon wie lange der session key gültig bleibt?
Kannst du aus den Cookie-Daten auslesen wenn du ihn bekommst, waren 3 oder 4 Monate.
Zitat von: justme1968 am 05 Januar 2014, 20:59:06
weiss jemand wie die zuordnung von users zu device ist wenn man mehr als ein device hat? gehören die messwerte eines users dann geräte übergreifend zur gleichen userid ?
Es gibt 2 Arten von Readings: Die die nur an einem User hängen (Gewicht, Blutdruck etc.) und die die nur an einem Device hängen (CO2, Temperatur). Die Unterscheidung ist also kein Problem.
Die Geräte werden wahrscheinlich für alle Accounts auftauchen für die sie angemeldet sind.
In der Withings-Oberfläche kann man Geräte auch von allen anderen Accounts trennen und User eigenständig machen.
Habe ich noch nicht ausprobiert, ich glaube es sollte reichen wenn wir nur das betrachten was unterhalb eines Accounts hängt.
Zitat von: justme1968 am 05 Januar 2014, 20:59:06
für das sortieren habe ich noch keine wirklich gute idee.
das mit dem sortieren ist nicht nötig bzw. nicht möglich wenn pro user und gerät ein fhem device angelegt wird. jedes fhem device ist unabhängig von den anderen, pollt seine daten und erzeugt seine readings. man kann/darf nur nicht in das gleiche filelog loggen. mit dblog ist das kein problem.
Mist, dann muss ich doch mal wieder mit DBLog anfangen - das mit dem gleichen Filelog war nämlich meine Idee dahinter.
Die Gerätedaten musst du trotzdem filtern, da z.B. für CO2 immer doppelte, ältere Daten mitkommen.
Das liegt wohl daran dass sie für die Web-Anzeige optimiert sind. Es reicht, alles zu ignorieren was vor dem letzten erfolgreichen Update liegt.
Zitat von: justme1968 am 05 Januar 2014, 20:59:06
wenn die readings user und geräte übergreifend sortiert werden müssen weil sie ins gleiche filelog sollen dann wäre es mehr fhem konform wenn sie auch nur ein einziges device erzeugt.
Die Withings Daten intern zusammenzumischen macht aber irgendwie keinen Sinn.
Die haben nunmal Accounts, an denen User (auf dem Level arbeitet dein Modul gerade) und Geräte hängen.
Wenn die Updates im Modul auf Accountebene angestossen werden (was Sinn macht) und die Gerätedaten vor den Userdaten eingelesen werden, klappt es zumindest bei nur einem Gerät mit dem kombinierten Logfile.
Theoretisch...
mir ist der session key jetzt zwei mal innerhalb von ein paar minuten abgelaufen. zumindest wenn er nicht verwendet wird.
die 3 monate stehen im expires für session_u, session_key hat kein expires.
ist aber auch egal. wenn man die werte alle stunde abfragt kann man auch einen neuen key anfordern.
ich bau mal ein modul das alle drei aufgaben (master,user und device) übernehmen kann. das muss nicht unbedingt auf drei getrennte module aufgeteilt werden.
gruss
andre
Zitat von: justme1968 am 05 Januar 2014, 22:42:26mir ist der session key jetzt zwei mal innerhalb von ein paar minuten abgelaufen. zumindest wenn er nicht verwendet wird.
die 3 monate stehen im expires für session_u, session_key hat kein expires.
ist aber auch egal. wenn man die werte alle stunde abfragt kann man auch einen neuen key anfordern.
Oops, stimmt. Das ist ja nur ein Session Cookie.
Wird dann wohl nach x Stunden Timeout ungültig, vorher wenn nicht benutzt.
Zitat von: justme1968 am 05 Januar 2014, 22:42:26ich bau mal ein modul das alle drei aufgaben (master,user und device) übernehmen kann. das muss nicht unbedingt auf drei getrennte module aufgeteilt werden.
Jepp, so war das in etwa gedacht.
Klappt meine Idee, Updates global über Master durchzuführen worin dann die User/Device Updates angestossen werden in FHEM?
die session ist schon nach etwa 15 oder 20 minuten ungültg. aber wie gesagt kein problem.
ich muss mal schauen. ich glaube aber ganz so einfach ist es nicht. wenn man z.b. nur jede stunde pollt aber sich in der zeit aus welchem grund auch immer drei mal wiegt reicht die reihenfolge alleine nicht sondern man muss die werte wirklich verschachteln.
kannst du mir mal ein beispiel json für die device readings schicken? ich hab nur das alte modell der wage.
gruss
andre
Zitat von: justme1968 am 06 Januar 2014, 00:23:55
die session ist schon nach etwa 15 oder 20 minuten ungültg. aber wie gesagt kein problem.
Hmm... Bei mir funktioniert so ein Code zumindest im Browser länger. Liegt wohl an den fehlenden Cookies.
Dann eben ein Logout nach jedem Lesen :)
Zitat von: justme1968 am 06 Januar 2014, 00:23:55ich muss mal schauen. ich glaube aber ganz so einfach ist es nicht. wenn man z.b. nur jede stunde pollt aber sich in der zeit aus welchem grund auch immer drei mal wiegt reicht die reihenfolge alleine nicht sondern man muss die werte wirklich verschachteln.
Stimmt. Also lieber sauber getrennte Logs.
Zitat von: justme1968 am 06 Januar 2014, 00:23:55kannst du mir mal ein beispiel json für die device readings schicken? ich hab nur das alte modell der wage.
Im Anhang!
Mir ist übrigens grade noch was aufgefallen:
Du hast über CHANGETIME die Timestamps für's Log auf den richtigen Wert aus den Daten geändert.
Irgedwo hast du da mit einem Array[i++] gearbeitet, wenn ich mich recht erinnere und ich hatte das in den sortierten Daten übernommen.
Solltest du das wieder verwenden wollen, teste es bitte darauf was passiert, wenn event-on-change-reading aktiviert ist.
In der Kombination läuft das bei mir komplett Amok da die nicht aktualisierten Werte zwar rausfallen, die Zeitstempel aber in der Reihenfolge der ursprünglichen Liste bleiben.
Nächtliche Grüsse,
Markus
Noch ein kleines Update meines zurechtgebastelten Moduls, das zumindest ohne event-on-change-reading ganz gut funktioniert.
Noch ein Hinweis: Bei den Device Infos (batterylvl, fw etc.) darf als Timestamp nicht die aktuelle Zeit rein, da muss jeweils der Zeitstempel des letzten Readings rein. Sollte lastsessiondate sein.
Eigentlich braucht man diese Daten, wenn es sonst nichts Neues gibt, eh nicht abrufen.
Bei den "festen" Daten der Users ist es das gleiche mit modified.
danke für die json daten.
ich bin eben noch bis zum user abfragen und autocreate in fhem gekommen. morgen mehr.
gruss
andre
Sehr cool!
Gib mir Bescheid wenn ich was testen oder sonst irgendwie helfen kann.
Markus
hier eine erste version die temperatur und co2 unterstützt und user und devices automatisch anlegt. hierzu ist nur ein withings device vom typ ACCOUNT anzulegen:define withings withgins user@abc.de meinPassWord
die fhem devices für alle USER und DEVICE des accounts werden dann automatisch angelegt. die devices vom typ USER verhalten sich wie bisher. die devices vom typ DEVICE haben battery, baterryLevel, lastWeighinDate, temperature und co2 readings.
ein device vom typ DEVICE funktioniert nur wenn es auch ein device vom typ ACCOUNT gibt.
ich habe bei der abfrage von den deviceReadings noch ein &lastupdate= an die url gehängt. so wie bei den user readings. ich weiss nicht ob das geht.
was noch nicht geht:
- unterschiedliche devices in das gleiche file loggen zu lassen, ein filelog pro device oder dblog geht.
um die history mit ins log zu bekommen ist es wichtig das entweder das log device vor dem anlegen des ACCOUNT device vorhanden ist oder das nach anlegen des log device in jedem device ein mal 'get <device> updateAll' aufgerufen wird. damit wird die komplette histroy geholt und mit den richtigen timestamps geloggt.
event-on-change & co sind für temperatur, co2 und gewicht&co tabu. für battery, batteryLevel und lastWeighinDate erlaubt.
ein device vom typ DEVICE für den blutdruck messer konnte ich noch nicht testen. wenn jemand einen hat und testen mag bitte bescheid sagen.
gruss
andre
Vielleicht zur Anmerkung:
Seit 6.1. gibt es ein Android kompatibles Blutdruckmessgerät bei Withings.
Anders als die Waage synchronisiert es aber nur per Bluetooth mit dem Smartphone, und dieses dann mit Withings.
OT:
Wer Lust am lesen hat, kann aber mal bei Heise schmökern:
http://www.heise.de/newsticker/meldung/Ein-Hauch-von-StarTrek-Berkeley-Tricorder-2076072.html
das modul sollte eigentlich auch mit den blutdruck daten zurecht kommen. das testen bezog sich hauptsächlich auf die device readings wie batterie stand.
gruss
andre
Andre, kannst du bitte noch beim Blutdruck in der Werteunterscheidung die 0 durch eine 9 ersetzen (Diastolic Blood Pressure)?!
Warum die Usernamen nicht geladen werden, muss ich mir noch ansehen.
Die sollte man übrigens ab und zu updaten, da sich Grösse und Name ändern können.
Gibt es beim Batteriewert eigentlich einen Standardwert für "low"? Wollen wir damit auf 10 oder weniger runter?
Ach und...
Whoa! Ich muss es haben! :)
Schlafmessung
(http://withings.com/aura/images/bande1.jpg)
Wireless Blutdruck
(http://withings.com/images/wirelessbloodpressuremonitor/img/bloodpressure.jpg)
ich hab oben das modul ausgetauscht.
bei mir werden die user namen geladen. was geht denn bei dir nicht?
was ich oben noch vergessen habe: es gibt irgendwo ein problem mit dem encding. das json modul versaut bei mir die umlaute. in den binär daten ist es noch unicode das decode macht aber nicht utf8 draus wie es eigentlich sollte sondern latin1. ich verstehe nicht wieso.
ansonsten werden die namen bei jedem fhem start aktualisiert. die grösse ist ein normales reading. das wird also immer aktuell gehalten.
es gibt keinen standard für low. 10 geht vermutlich auch. ich würde vorschlagen es auf den wert anzupassen bei dem die wage auch die warnung anzeigt. ich hab aber grad vor zwei wochen gewechselt und das hält jetzt erst mal wieder ein jahr.
das neue teil hab ich noch nicht gesehen. seit wann gibt es das?
wenn man die matte life abfragen könnte wäre das endlich etwas um irgendetwas abhängig vom aufstehen zu steuern...
gruss
andre
Die Namen funktionieren (jetzt/doch) und der Blutdruck passt auch.
Umlaute habe ich nicht, kann ich also nicht beurteilen.
Ich würde den Schwellenwert für die Batterie mal auf 10% setzen, wenn der erste von uns seinen Satz durch hat, kannst du den Wert ja anpassen.
Ich habe auch noch eine Idee zu event-on-change-reading: Wenn wir das beim Update auslesen und dann den jeweils bezogenen Wert mit dem vorherigen Wert vergleichen und die identischen erst gar nicht ins Array übernehmen, sollte es funktionell den gleichen Effekt haben ohne dass es intern behandelt wird, oder?
Ach ja: wie entscheidest du eigentlich, ob du CO2 Daten von einer Waage abholst?
Den neuen Blutdruckmesser gibt es ab Freitag für 129 Euro, zur Schlafmatte ist noch nichts bekannt.
ich hab es auf 10 gesetzt.
was das event-on-change angeht. ja das könnte man machen. es läuft auch auf das gleiche hinaus. aber warum?
du wiegst dich höchstens ein mal am tag. der wert zwischen zwei tagen wird fast nie exakt gleich sein. es wird also weder event-on-change greifen noch die selbst gebaute version.
in modulen die sehr oft werte ändern und es sehr wahrscheinlich ist das der wert gleich sein wird habe ich das schon ein paar mal direkt eingenaut. da ist es dann denke ich sinnvoll.
gruss
andre
Zitat von: justme1968 am 08 Januar 2014, 10:38:32
was das event-on-change angeht. ja das könnte man machen. es läuft auch auf das gleiche hinaus. aber warum?
Naja, deswegen: "event-on-change & co sind für temperatur, co2 und gewicht&co tabu."
Die Temperatur ist öfter gleich als dass sie es nicht ist :)
achso...
das tabu bezog sich auf den import der altdaten. danach sollte es kein problem sein.
selbst ohne event-on-change misst die wage laut datenblatt nur alle halbe stunde. sie 48 werte pro tag würde ich lieber loggen statt löcher in den plots zu haben.
gruss
andre
und noch was: wie viele haben das modul schon benutzt?
was fehlt noch an größeren dingen? bevor es eingecheckt werden kann.
gruss
andre
Zitat von: justme1968 am 08 Januar 2014, 21:44:37
das tabu bezog sich auf den import der altdaten. danach sollte es kein problem sein.
Achso!
Ich probier mal aus wie es mit dem blockweisen Empfangen der Werte aussieht.
Zitat von: justme1968 am 08 Januar 2014, 21:46:42
und noch was: wie viele haben das modul schon benutzt?
Hallo, Echo? :)
Wieviele Downloads hatte denn die Datei?
Zitat von: justme1968 am 08 Januar 2014, 21:46:42was fehlt noch an größeren dingen? bevor es eingecheckt werden kann.
Sinnvolle Standardwerte für die interne state Variable.
Meine Vorschläge für
Account: "Initialized" nach dem Start, "Connected" nach erfolgreichem Login, "Error" nach fehlgeschlagenem Login (evtl. noch Variablen für den jeweiligen Hash, die Zahl der erhaltenen Datensätze etc. für's Logging)
User: "XX kg" (dass jemand nur den Blutdruckmesser hat wird eher selten sein)
Device: "XX% battery" für den Blutdruckmesser und die einfache Waage, "XXXX ppm" für die Waage mit CO2-Messung
Wenn du magst, kannst du auch noch den "Body analyzer" als Devicetext anzeigen, wenn die Waage model=4 hat.
Danach entscheidest du, ob die Temp/CO2 Daten abgeholt werden, richtig?
Viele Grüsse,
Markus
So ich bin endlich dazu gekommen das neue Plugin zu testen,
es funktioniert super, habe mir auch schöne gplots dazu gemacht.
2 von den Downloads war ich, also sind wir hier ein kleiner Kreis.
Ist es vielleicht möglich noch den Filelog für die beiden devices zu integrieren?
Vielen Dank
Hallo,
mein verspätetes Geschenk (Waage) kommt erst Freitag oder Samstag an. Dann teste ich ebenfalls das Modul!
Zitat von: Markus M. am 08 Januar 2014, 22:29:12
Sinnvolle Standardwerte für die interne state Variable.
Meine Vorschläge für
Account: "Initialized" nach dem Start, "Connected" nach erfolgreichem Login, "Error" nach fehlgeschlagenem Login (evtl. noch Variablen für den jeweiligen Hash, die Zahl der erhaltenen Datensätze etc. für's Logging)
User: "XX kg" (dass jemand nur den Blutdruckmesser hat wird eher selten sein)
Device: "XX% battery" für den Blutdruckmesser und die einfache Waage, "XXXX ppm" für die Waage mit CO2-Messung
Wenn du magst, kannst du auch noch den "Body analyzer" als Devicetext anzeigen, wenn die Waage model=4 hat.
Danach entscheidest du, ob die Temp/CO2 Daten abgeholt werden, richtig?
ich hab in meiner version hier schon stateFormat passend gesetzt. d.h weight beim user und battery für die devices. die ppm für die neue wage kann ich noch einbauen. ansonsten kann das jeder einfach per stateFormat selber konfigurieren. das geht auch ohne ein state reading. das was angezeigt wird ist STATE bzw das was stateFormat vorgibt.
das mit dem model baue ich noch ein. ich hole immer alle device daten. egal welches modell. bei den einfachen wagen gibt es halt keine. aber so wird auch nichts verloren gehen.
ich wollte auch noch einbauen das der key nicht jedes mal sondern einstellbar nur dann neu generiert wird wenn die letzte anfrage mehr als x minuten her ist.
gruss
andre
was meinst du genau mit:
Zitat von: d0np3p3 am 08 Januar 2014, 23:55:11
Ist es vielleicht möglich noch den Filelog für die beiden devices zu integrieren?
das die auch per autocreate angelegt werden?
gruss
andre
ps: ein paar mehr sind es glaube ich schon. ich hab das file ja ein paar mal ausgetauscht und auch noch anderen feedback bekommen.
Ja genau die filelogs, also je User und Device automatisch erstellen, gplot sollte jeder selbst machen, da es ja unterschiedliche Kombinationen gibt, je nach Waage oder anderen Geräten.
Gesendet von meinem Nexus 4 mit Tapatalk
anbei noch mal eine aktuelle version:
- für den ACCOUNT gibt es Connected und Error
- für DEVICE und USER gibt es defaults für stateFormat
- das token und der session key werden für 5 minuten beibehalten und dann erst erneuert
- für die wagen gibt es ein Model reading
wer noch devices hat die dort nur mit einer zahl statt einem text stehen bitte melden für alles was keine wage ist ebenso.
das anlegen der filelogs habe ich noch nicht eingebaut. ich verwende nicht autocreate zum anlegen der devices und möchte ungern die autocreate funktionalität noch mal verdoppeln. abgesehen davon verwende ich dblog.
gruss
andre
Danke stimmt an dblog habe ich nicht gedacht. Dann passt es schon so wie es ist.
Gesendet von meinem Nexus 4 mit Tapatalk
ich hab das modul im aktuellen stand eben eingecheckt.
gruss
andre
High Five! ;D
Eine Sache hab ich aber noch:
Kannst du bei der Waage die Timestamps von Batterie/-stand und lastWeighinDate auf lastWeighinDate oder das jüngste CO2/Temp Reading setzen und diese Daten zusammen sortieren?
Sonst geht auch das nicht zusammen in ein Filelog.
ja. mache ich.
gruss
andre
hallo markus,
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.
gruss
andre
Hallo, melde mcih noch mal. Ich bin Hausarzt und visualisiere seit 15 Jahre konsequent Blutzucker und Blutdruckdaten.
Anbei ein Verlauf einer Neuewinstellung auf Medikamente bei einem Blutdruckpatienten der ein Boso PC medicus hat.
Sorry da fehlte das Bild
(http://boso.jpg)
Ich bin durchaus sehr daran interessiert meinen Patienten in Zukunft modernere Lösungen anzubieten weil dies auch mir im tgl Leben die arbeit leichter machen würde.
Die Visualisierung der Blutdruckdaten mache ich konsequent seit 1999 . Wir haben über 100 Patienten mit solchen Blutdruckmessgeräten.
Das tgl wiegen ist bei vielen alten Patienten unbedingt erforderlich. Die Patienten kommen dann leider mit einem Zettlchen...
Im Blutzuckerbereich sind heute schon fast alle Geräte mit einem internen speicher ausgerüstet, leider gibt es fast genau so viele Programme zum auslesen wie es unterschiedlcihe BZ Geräte gibt.
Auch solche Werte lese isch seit 15 Jahren ein zur Dokumentation und Beratung
(http://bz%20profil%201.jpg)
Hier in NRW wurde letztes Jahr ein Wettbewerb ausgeschrieben wo Millionen verteilt wurden. Leider haben wir keien INdustriepartner gefunden ,. Wir wollten ein Heimserver entwickeln der Gesundheitsdaten sammelt und über einen VPN Tunnel überträgt.
Im Iuk Gender med.NRW Projekt ( Projektantrag hab ich geschrieben ) haben wir ein Förderprojekt für ein Kommunikationsmodul bekommen ( maxidoc.de )
Ich habe gerade einige Minuten Zeit gehabt , hab den Thread überflogen und mich noch einmal gemeldet um kurz zu erfahren was das Modul tatsächlich machen soll,
Leider hat niemand einen Plot hochgeladen ...
Was also wollt ihr genau damit machen,
Einfach nur ein Modul schreiben ?
FHEM würde sich durchaus anbieten ein System zu schaffen was auch bezahlbar wäre, was Angehörige kaufen den Eltern in die Wohnugn stellen und dann eben über IP Kamera, Microfon, Bewegungsmelder, Herzfrequenzmesser etc .... auf ihre Eltern aufpassen können.
Ev kann ich ja mit meinem Know How etwas helfen was sinnvolles zu entwicklen
Habe eben versucht das Modul einzurichten und bin aber auf diesen Fehler gestossen:
<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>
(direct beim "define Waage withings <email> <password>")
Irgend eine Idee was ich falsch mache?
auf welcher platform hast du es probiert?
hat du einen umlaut in deinem namen?
gruss
andre
Zitat von: justme1968 am 19 Januar 2014, 15:25:33
auf welcher platform hast du es probiert?
Fritzbox 7390 mit json 2.53
Zitat von: justme1968 am 19 Januar 2014, 15:25:33
hat du einen umlaut in deinem namen?
Nein
Zitat von: Franz Tenbrock am 17 Januar 2014, 12:20:08
Ich bin durchaus sehr daran interessiert meinen Patienten in Zukunft modernere Lösungen anzubieten weil dies auch mir im tgl Leben die arbeit leichter machen würde.
Die Visualisierung der Blutdruckdaten mache ich konsequent seit 1999 . Wir haben über 100 Patienten mit solchen Blutdruckmessgeräten.
Der Nachteil ist, dass die Patienten ein Smartphone und die Withings Geräte brauchen.
Mir ist allerdings kein Blutdruckmessgerät bekannt das direkt mit WLAN arbeitet (sonst hätte ich es wahrscheinlich).
Zitat von: Franz Tenbrock am 17 Januar 2014, 12:20:08
Was also wollt ihr genau damit machen,
Einfach nur ein Modul schreiben ?
Einfach nur unsere Daten speichern und visualisieren, aus dem besten Grund den es gibt:
Weil wir es können :)
Zitat von: Franz Tenbrock am 17 Januar 2014, 12:20:08
FHEM würde sich durchaus anbieten ein System zu schaffen was auch bezahlbar wäre, was Angehörige kaufen den Eltern in die Wohnugn stellen und dann eben über IP Kamera, Microfon, Bewegungsmelder, Herzfrequenzmesser etc .... auf ihre Eltern aufpassen können.
Withings wirbt damit, dass man die Daten auch mit seinem Arzt teilen kann. Der Umweg über FHEM wäre also gar nicht nötig.
Die Funktion scheint wegen des Frontend-Umbaus allerdings gerade nicht zur Verfügung zu stehen.
Einfach mal dort erkundigen...
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
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
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
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 (http://www.fhemwiki.de/wiki/Unicode_FritzBox).
gruss
andre
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?
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
http://wbsapi.withings.net/measure?action=getmeas&userid=XXXXXX&publickey=YYYYYYYYYYYYYY
--> Zeichen Nummer 44138: -> Umlaut gefunden!! "comment":"Tippen, um Kommentare anzufügen"
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
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.
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
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...)
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
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.
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.
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?
bist du auch auf einer fritzbox?
ich habe den verdacht das es die alten probleme mit json und encoding sind die wieder zu schlagen. versuch mal bitte die vorherige version (nur decocde statt JSON->new->utf8(0)->decode).
gruss
andre
Mit dem: my $json = decode_json($ret)
Kommt wieder
# malformed UTF-8 character in JSON string, at character offset 46393 (before "\
x{fc}gen","measures...") at ./FHEM/32_withings.pm line 560
was ist in deiner installation jetzt anders als beim letzten mal? da du ging es doch dann.
gruss
andre
Zitat von: justme1968 am 25 Januar 2014, 12:44:17
was ist in deiner installation jetzt anders als beim letzten mal? da du ging es doch dann.
Hast recht - das letzte mal habe ich das original FHEM addon image von AVM verwendet.
Dieses mal das FHEM addon von fhem.de (auch aktualisiert).
Beide male hab ich JSON 2.53 dazu gepackt...
Wenn ich jetzt nur wüsste wo da der Unterschied liegt..
So - hab heute ein wenig Zeit zum Experimentieren gefunden!
Fehler bei define der Waage war mit FHEM (von FHEM und nicht von AVM) auf der Fritzbox:
2014.01.31 10:17:01 3: Waage: create new device 'withings_U123456' for user '123456'
2014.01.31 10:17:01 3: withings_U123456: I/O device is Waage
, or } expected while parsing object/hash, at character offset 10 (before "0,"body":{"updatetim...") at ./FHEM/32_withings.pm line 559
Hab das testweise geändert:
Original:
558 my $ret = get($url);
559 my $json = JSON->new->utf8(0)->decode($ret);
Geändert:
558 my $ret = get($url);
559 my $json_bytes = encode('UTF-8', $ret);
560 my $json = JSON->new->utf8->decode($json_bytes);
--> damit gehts ohne diesen Fehler
ich probier es mal aus. vor allem ob es dann noch mit umlauten funktioniert.
gruss
andre
es scheint auch bei mir mit dieser änderung zu gehen.
vielleicht können das noch ein paar andere auf ihrer platform prüfen.
wenn es keine probleme damit gibt würde ich es einchecken.
gruss
andre
ich habe eben eine kleines update eingecheckt das den absturz bei verbindungs timeout oder fehlerhafter antwort verhindert.
im netatmo modul habe inzwischen eine möglichkeit (fast) alle anfragen an den server nicht blockierend zu machen. wenn dort alles geht werde ich auch das wittings modul darauf umbauen. server probleme sollten dann nicht mehr fhem verzögern.
gruss
andre
Zitat von: MaxWhite am 31 Januar 2014, 10:40:47
So - hab heute ein wenig Zeit zum Experimentieren gefunden!
Fehler bei define der Waage war mit FHEM (von FHEM und nicht von AVM) auf der Fritzbox:
2014.01.31 10:17:01 3: Waage: create new device 'withings_U123456' for user '123456'
2014.01.31 10:17:01 3: withings_U123456: I/O device is Waage
, or } expected while parsing object/hash, at character offset 10 (before "0,"body":{"updatetim...") at ./FHEM/32_withings.pm line 559
Hab das testweise geändert:
Original:
558 my $ret = get($url);
559 my $json = JSON->new->utf8(0)->decode($ret);
Geändert:
558 my $ret = get($url);
559 my $json_bytes = encode('UTF-8', $ret);
560 my $json = JSON->new->utf8->decode($json_bytes);
--> damit gehts ohne diesen Fehler
Kann ich bestätigen, damit geht es bei mir auch. Allerdings ist es get($URL) bei mir ($url vs $URL)...
Zitat von: justme1968 am 22 Dezember 2013, 00:28:31
anbei eine erste version eines moduls um daten von der withings webseite abzurufen und in fhem zu verwenden.
zum anlegen muss die userid und der key angegeben werden. beides findet sich auf der withing seite unter teilen -> auf meiner webseite.
nach dem define werden alle bisher vorhanden daten abgeholt und dann regelmässig jede stunde nur die neuesten. für die altdaten wird kein event getriggert, ich weiss noch nicht ob und wie das mit dem richtigen timestamp möglich ist.
gruss
andre
Hallo,
ich bin irgendwie zu blöd das lauffähig anzulegen. Wäre es möglich einmal ein Beispiel aus Fhem.cfg zur Verfügung zu stellen. Bei meinen bisherigen Versuchen bleibt mein Fhem komplett hängen. Schon mal vielen Dank.
Gruß
Rüdiger
Hallo,
Habe die Waage von Withings und ein Problem .
Das Modul verbindet sich mit meinem Account. Liefert mir auch alle Daten der USER die hinterlegt sind aber ein gewicht bekomme ich nicht zu sehen.
Die Prozentangabe der Batterie der Waage ist aber zu sehen.
Wo kann mein Fehler liegen?
Danke
schau mal etwas weiter oben im thread. da war schon mal jemand mit problemen. der musste das in seinem account erst etwas freigeben.
gruss
andre
hallo andre,
vielen Dank für das prima Modul. Funktioniert mit der Waage und dem activity tracker perfekt. Seit wir diese Woche den neuen Pulse O2 http://vitrine.withings.com/withings-pulse.html angeschafft haben, steht im LOG ab und zu Folgendes: 3: withings_U2828712: unknown measure type: 54
Da gibt es offenbar Änderungen im übertragenen Code. Das neue Gerät wurde auch nicht in FHEM angelegt, so wie das vorige.
Kannst Du Dir das bitte mal ansehen? Wenn Du schreibst, welche Daten / Tests etc. ´dabei helfen, werde ich die gern liefern.
weder der pulse o2 noch ein measure type 54 gibt es zur zeit in der api dokumentation die ich gefunden habe.
beim autocreate gibt es keine abhängigkeit vom device typ. d.h. wenn das device im accout ist sollte es auch angelegt werden. schau also bitte zuerst mal ob das device in deinem account auch vorhanden ist. zusätzlich zum alten tracker.
mach mal bitte ein 'get devices' auf den account. taucht der neue pulse o2 da auf? unterscheidet er sich vom tracker?
siehst du im log etwas wenn du für das account device mal ein verbose 5 setzt und dann ein modify machst so das die autocreate routine neu aufgerufen wird.
wie schaut es aus wenn du das wittingslogin.pl script aus dem therad weiter oben http://forum.fhem.de/index.php/topic,17800.msg122311.html#msg122311 (http://forum.fhem.de/index.php/topic,17800.msg122311.html#msg122311) verwendest?
Zitat von: justme1968 am 27 April 2014, 11:30:52
weder der pulse o2 noch ein measure type 54 gibt es zur zeit in der api dokumentation die ich gefunden habe.
beim autocreate gibt es keine abhängigkeit vom device typ. d.h. wenn das device im accout ist sollte es auch angelegt werden. schau also bitte zuerst mal ob das device in deinem account auch vorhanden ist. zusätzlich zum alten tracker.
mach mal bitte ein 'get devices' auf den account. taucht der neue pulse o2 da auf? unterscheidet er sich vom tracker?
siehst du im log etwas wenn du für das account device mal ein verbose 5 setzt und dann ein modify machst so das die autocreate routine neu aufgerufen wird.
wie schaut es aus wenn du das wittingslogin.pl script aus dem therad weiter oben http://forum.fhem.de/index.php/topic,17800.msg122311.html#msg122311 (http://forum.fhem.de/index.php/topic,17800.msg122311.html#msg122311) verwendest?
get devices:
id type battery SN
426777 Body scale 82 SN-00:24:e4:06:4a:f6
1321301 Withings Pulse 63 SN-00:24:e4:16:09:c2
2014.04.27 11:40:57 3: withings_U2828712: I/O device is withings
2014.04.27 11:39:04 3: withings_D1321301: I/O device is withings
2014.04.27 11:39:04 3: withings: create new device 'withings_D1321301' for device '1321301'
2014.04.27 11:39:04 4: withings: device '426777' already defined
2014.04.27 11:39:04 4: withings: user '2920015' already defined
2014.04.27 11:39:04 4: withings: user '2828712' already defined
2014.04.27 11:39:04 4: withings: user '2828419' already defined
Danke andre,
das Problem lag offenbar darin, dass ich den alten Tracker gegen den Pulse O2 beim gleichen User getauscht habe (es geht nur einer pro User anzumelden). Mit Deinen Hinweisen hat es das neue Device angelegt und es kommen auch Werte!
Type 54 wird dann wohl der Sauerstoffgehalt im Blut sein. Was ist da die Einheit?
Und der Pulse O2 dürfte auch eine etwas andere Hardware ID (device_model) haben.
Wenn du die rausfindest kann Andre es sicher einbauen. Wird das ins Log geschrieben?
Es gibt ja auch noch einen neuen Blutdruckmesser.
Hat den schon jemand?
Und welchen Measure Type haben eigentlich Schritte?
Seit letzter Woche hat die iOS App einen (schlechten) Schrittzähler integriert, Withings zeigt die Ergebnisse aber leider noch nicht im Account an.
unbekannte device types und models werden zur zeit nicht geloggt stehen aber als id in den internals.
unbekannte measure types stehen als unknown im log und werden ignoriert.
mir ist gerade aufgefallen das ich für device readingsnur den value als reading verwende und die unit ignoriere. ich bin mir gerade nicht sicher ob das absicht war oder ob ich da was übersehen habe. kann bitte jemand mit einem body analyzer mal im json outpu schauen ob in unit etwas steht?
gruss
andre
Zitat von: justme1968 am 29 April 2014, 10:48:29
kann bitte jemand mit einem body analyzer mal im json outpu schauen ob in unit etwas steht?
Das Feld
unit ist nicht vorhanden. (Temp, PPM)
Withings nutzt jetzt neben /measure mittlerweile gehäuft /aggregate um die Daten auf der Seite anzuzeigen.
Die Schritte, Kalorien etc. sind mittlerweile auch da ;)
Ich werd mal sehen was ich da machen kann.
Mit einer zusätzlichen Zeile für die measure_types kann auch der von allen Withings Pulse mit der neuen Firmware ermittelte "SpO2" (für "Peripheral capillary oxygen saturation", s.: https://withings.zendesk.com/hc/en-us/articles/201494667-What-does-SpO2-mean-What-is-the-normal-blood-oxygen-level- (https://withings.zendesk.com/hc/en-us/articles/201494667-What-does-SpO2-mean-What-is-the-normal-blood-oxygen-level-)) verarbeitet werden:
(nur die letzte Zeile mit "54 =>" ist neu):
my %measure_types = ( 1 => { name => "Weight (kg)", reading => "weight", },
4 => { name => "Height (meter)", reading => "height", },
5 => { name => "Fat Free Mass (kg)", reading => "fatFreeMass", },
6 => { name => "Fat Ratio (%)", reading => "fatRatio", },
8 => { name => "Fat Mass Weight (kg)", reading => "fatMassWeight", },
9 => { name => "Diastolic Blood Pressure (mmHg)", reading => "diastolicBloodPressure", },
10 => { name => "Systolic Blood Pressure (mmHg)", reading => "systolicBloodPressure", },
11 => { name => "Heart Pulse (bpm)", reading => "heartPulse", },
12 => { name => "Temperature (°C)", reading => "temperature", },
35 => { name => "CO2 (ppm)", reading => "co2", },
54 => { name => "SPo2 (%)", reading => "SPo2", }, );
hab es eingecheckt.
gruss
andre
Hallo Andre,
vielen Dank für Deine Arbeit und das gute Modul.
Ich habe nur noch ein Problem bei den CO2 und Temperaturwerten. Die Waage schickt ja nur alle 24 Stunden (morgens beim Wiegen) die Messwerte an den Withings Server. Bei der nächsten Abfrage durch das Modul wird dann auch aktualisiert, bei den CO2 und Temperatur Werten allerdings nur die Werte des aktuellen Tages. Es fehlen also immer die Werte des vorherigen Tages für den Zeitraum zw Wiegen und Mitternacht. Erst durch Löschen des Filelogs und ein updateall nach fhem Neustart sind alle Werte vorhanden.
Viele Grüße,
Michael
loggst du alles ins gleiche file?
dir werte werden eventuell nicht/nicht richtig sortiert und filelog braucht nach zeit sortierte werte.
gruss
andre
Alle Werte des Devices (temperature, co2, batteryLevel, battery, lastWeighinDate) landen im selben Filelog.
Kann ich auch jeweils ein eigenes Filelog für Temperatur und CO2 erstellen? Wie lautet der Code dafür?
du musst nur die jeweiligen regex in der log definition so anpassen das nur die passenden readings geloggt werden.
wenn du dblog verwendest gibt es das problem nicht. da kann alles in die gleiche db geloggt werden.
gruss
andre
Vielen Dank! Das werde ich ausprobieren.
Hallo alle zusammen,
gibt es eigentlich auch die Möglichkeit so etwas für die Aria Wagge zu machen ?
http://www.fitbit.com/de/aria
Das währe eine Super sache da es auch andere Geräte davon gibt.
http://www.fitbit.com/de/flex
Hallo,
ich habe einen Pulse O2 meinem Withings Account hinzugefügt. Das Device mitsamt den Batterie Readings wird in Fhem angelegt. Was ich allerdings vermisse, sind Messungen des Pulse (Schritte, Höhenmeter, etc). Ich dachte die Werte würden dem user device hinzugefügt, da kann ich sie aber nicht finden.
schau mal weiter oben im thread. ich glaube das device musste man auf der withings seite erst frei geben.
gruss
andre
Bezüglich Pulse und Freigabe kann ich hier im Thread nichts finden.
Wenn ich in den Teilendialog auf der Withingsseite schaue, gibt es dort allerdings auch nur Optionen für die Freigabe der Gewichts- und Blutdruckdaten.
@MichaelB,
Hab mal für Dich die Forensuche bemüht, mir hat seinerzeit der folgende Beitrag total gut geholfen ( Dank an den Autor! )
http://forum.fhem.de/index.php/topic,19203.msg130211.html#msg130211 (http://forum.fhem.de/index.php/topic,19203.msg130211.html#msg130211)
Hallo,
vielen Dank für Deine Mühe. Die in dem Beitrag beschriebene Einstellung im Withings Account meinte ich oben mit Teilendialog. Das ist bei mir aktiviert, es gibt dort aber nur Einstellungen für Gewicht bzw Blutdruck und nicht explizit für Aktivitäten.
Deinen obigen Antworten in diesem Thread habe ich entnommen, dass Du auch einen Pulse O2 hast. Werden bei Dir die Schritte und Höhenmeter angezeigt? Und wenn ja, erscheinen die Messungen wie Gewicht etc im user device?
Zitat von: MichaelB am 31 Juli 2014, 18:38:12
Deinen obigen Antworten in diesem Thread habe ich entnommen, dass Du auch einen Pulse O2 hast. Werden bei Dir die Schritte und Höhenmeter angezeigt? Und wenn ja, erscheinen die Messungen wie Gewicht etc im user device?
nein, Schritte und Höhenmeter fehlen bei mir auch. Nur Gewicht (Messwert natürlich von der Waage) , Pulsfrequenz und Sauerstoffsättigung. Schaue am Wochenende noch mal genau nach - derzeit kein Zugriff auf FHEM - VPN Verbindung hat mich ausgesperrt.
Achso OK, um die Werte ging es mir, der Rest funktioniert bei mir auch. Danke!
da war glaube ich noch was. die neuen werte kommen scheinbar noch nicht oder nicht mehr über das alte api sondern wenn dann nur über ein neues. ich schaue es mir an wenn ich zurück bin. da ich aber keinen pulse habe werde ich freiwillige brauchen :)
gruss
andre
Hallo Andre,
das kann gut sein, der Teilen Bereich steht auf der Withingsseite bislang ja auch nur auf der alten Plattform zur Verfügung und wenn ich das richtig sehe, wird von der alten Plattform der Pulse nicht unterstützt. Die Messung von Puls und Blutsauerstoffgehalt mit dem Pulse wird im user device angezeigt, die restlichen Werte fehlen bislang.
Wenn Du da einen Workaround hinbekommst, teste ich es gerne.
Viele Grüße,
Michael
Neuerdings im fhem log: ;)
014.10.09 09:52:51 3: withings_U305220: I/O device is Waage
2014.10.09 09:52:51 3: main::DoTrigger called by fhem.pl (500)
2014.10.09 09:52:51 3: main::CallFn called by fhem.pl (2829)
2014.10.09 09:52:51 3: main::withings_Notify called by fhem.pl (2906)
2014.10.09 09:52:51 3: main::withings_initUser called by ./FHEM/32_withings.pm (137)
2014.10.09 09:52:51 3: main::__ANON__ called by ./FHEM/32_withings.pm (343)
2014.10.09 09:52:51 3: stacktrace:
2014.10.09 09:52:51 1: PERL WARNING: Use of uninitialized value in localtime at ./FHEM/32_withings.pm line 343.
2014.10.09 09:52:51 3: main::DoTrigger called by fhem.pl (500)
2014.10.09 09:52:51 3: main::CallFn called by fhem.pl (2829)
2014.10.09 09:52:51 3: main::withings_Notify called by fhem.pl (2906)
2014.10.09 09:52:51 3: main::withings_initUser called by ./FHEM/32_withings.pm (137)
2014.10.09 09:52:51 3: main::__ANON__ called by ./FHEM/32_withings.pm (342)
2014.10.09 09:52:51 3: stacktrace:
2014.10.09 09:52:51 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 342.
2014.10.09 09:52:51 3: main::DoTrigger called by fhem.pl (500)
2014.10.09 09:52:51 3: main::CallFn called by fhem.pl (2829)
2014.10.09 09:52:51 3: main::withings_Notify called by fhem.pl (2906)
2014.10.09 09:52:51 3: main::withings_initUser called by ./FHEM/32_withings.pm (137)
2014.10.09 09:52:51 3: main::__ANON__ called by ./FHEM/32_withings.pm (342)
2014.10.09 09:52:51 3: stacktrace:
2014.10.09 09:52:51 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 342.
2014.10.09 09:52:51 3: main::DoTrigger called by fhem.pl (500)
2014.10.09 09:52:51 3: main::CallFn called by fhem.pl (2829)
2014.10.09 09:52:51 3: main::withings_Notify called by fhem.pl (2906)
2014.10.09 09:52:51 3: main::withings_initUser called by ./FHEM/32_withings.pm (137)
2014.10.09 09:52:51 3: main::__ANON__ called by ./FHEM/32_withings.pm (341)
2014.10.09 09:52:51 3: stacktrace:
2014.10.09 09:52:51 1: PERL WARNING: Use of uninitialized value in numeric eq (==) at ./FHEM/32_withings.pm line 341.
Vielleicht gabs eine neuere restrikivere Perl version? Kann man da was machen?
Ich glaube das dürfte das gleiche problem sein wie bei lightscene.
es liegt daran das die meldungen jetzt sichtbarer ausgespuckt werden. und daran das du weder geburtsdatum noch namen für deinen wittings account angeben hast :)
ab morgen sollten die meldungen weg sein.
gruss
andre
Danke dir!
Wer nutzt eigentlich hier welche Geräte?
Hat jemand den Pulse?
Ich bin gerade dabei das Modul etwas zu erweitern.
Sind für euch die Tageswerte (Schritte etc. gesamt) oder die Minutenwerte (Schritte je minütlicher Eintrag) interessanter?
Ich hab leider keinen Pulse und habe daher nur die Daten die ich mit meinem Telefon als Schrittzähler bekomme, d.h. keine Höhenmeter.
Zur Activity werde ich wohl am nächsten Wochenende mal kommen.
Aktuell liege ich faul auf meiner Aura Matte ;)
Hier mal eine kleine Vorschau:
2014.10.19 20:13:45 1: json 2014-10-19 19:35:00 heartPulse: 68
2014.10.19 20:13:45 1: json 2014-10-19 19:35:00 sleepstate: 0
2014.10.19 20:13:45 1: json 2014-10-19 19:35:00 breathing: 20
2014.10.19 20:13:45 1: json 2014-10-19 19:36:00 heartPulse: 68
2014.10.19 20:13:45 1: json 2014-10-19 19:36:00 sleepstate: 0
2014.10.19 20:13:45 1: json 2014-10-19 19:36:00 breathing: 15
2014.10.19 20:13:45 1: json 2014-10-19 19:37:00 heartPulse: 48
2014.10.19 20:13:45 1: json 2014-10-19 19:37:00 sleepstate: 0
2014.10.19 20:13:45 1: json 2014-10-19 19:37:00 breathing: 16
2014.10.19 20:13:45 1: json 2014-10-19 19:38:00 heartPulse: 56
2014.10.19 20:13:45 1: json 2014-10-19 19:38:00 sleepstate: 0
2014.10.19 20:13:45 1: json 2014-10-19 19:38:00 breathing: 16
2014.10.19 20:13:45 1: json 2014-10-19 19:42:00 heartPulse: 79
2014.10.19 20:13:45 1: json 2014-10-19 19:42:00 sleepstate: 0
2014.10.19 20:13:45 1: json 2014-10-19 19:42:00 breathing: 19
2014.10.19 20:13:45 1: json 2014-10-19 19:43:00 heartPulse: 68
2014.10.19 20:13:45 1: json 2014-10-19 19:43:00 sleepstate: 0
2014.10.19 20:13:45 1: json 2014-10-19 19:43:00 breathing: 16
2014.10.19 20:13:45 1: json 2014-10-19 19:44:00 heartPulse: 74
2014.10.19 20:13:45 1: json 2014-10-19 19:44:00 sleepstate: 0
2014.10.19 20:13:45 1: json 2014-10-19 19:44:00 breathing: 17
2014.10.19 20:13:45 1: json 2014-10-19 19:45:00 heartPulse: 75
2014.10.19 20:13:45 1: json 2014-10-19 19:45:00 sleepstate: 0
2014.10.19 20:13:45 1: json 2014-10-19 19:45:00 breathing: 18
Viele Grüsse,
Markus
wie schnell reagiert die matte bzw. wie schnell hat man die werte nach aufstehen oder hinlegen in fhem?
gruß
andre
wenn du das modul anfasst kannst du vielleicht gleich alles auf nonblocking umstellen falls du zeit und lust dazu hast?
im netatmo modul habe ich das schon gemacht. beim withings modul bin ich noch nicht dazu gekommen. die sind beide vom aufbau sehr ähnlich.
im prinzip muss man nur die LWP aufrufe durch einen HttpUtils_NonblockingGet aufruf ersetzen und das parsen der antwort im callback machen.
gruß
andre
Zitat von: justme1968 am 19 Oktober 2014, 20:56:11
wie schnell reagiert die matte bzw. wie schnell hat man die werte nach aufstehen oder hinlegen in fhem?
Nicht schnell genug für irgendwas :( Das wird scheinbar nur alle 1-2h übertragen.
Evtl. geht über den offenen Port über den die App mit Aura kommuniziert was, da ist aber nichts mit Klartextkommunikation, da brauch ich mal viel Zeit zu.
Hat jemand zufällig nen schnellen Rechner um das Ding zu knacken? Ich hab passwd und shadow aus der aktuellen FW hier ;)
Zitat von: justme1968 am 19 Oktober 2014, 21:06:31
wenn du das modul anfasst kannst du vielleicht gleich alles auf nonblocking umstellen falls du zeit und lust dazu hast?
Lust naja, Zeit eigentlich nicht und Ahnung gar keine.
Heisst übersetzt: Ok, mach ich ;)
Zitat von: Markus M. am 19 Oktober 2014, 20:24:36
Ich bin gerade dabei das Modul etwas zu erweitern.
Sind für euch die Tageswerte (Schritte etc. gesamt) oder die Minutenwerte (Schritte je minütlicher Eintrag) interessanter?
Ich finde beides gut! ;)
Mein iPhone schreibt die Schritte mittlerweile auch ins health kit und die withings app scheibt die werte wiederum auf die webpage. Würde mich freuen wenn ich mir die Schritte in einem Plot anzeigen könnte!
Grüße
Zitat von: Markus M. am 19 Oktober 2014, 20:24:36
Ich bin gerade dabei das Modul etwas zu erweitern.
Sind für euch die Tageswerte (Schritte etc. gesamt) oder die Minutenwerte (Schritte je minütlicher Eintrag) interessanter?
Gibt es dazu schon etwas neues?
Grüße
Zitat von: fhainz am 29 November 2014, 08:15:02Gibt es dazu schon etwas neues?
Ich komme zeitlich leider gerade überhaupt nicht dazu.
Wenn du möchtest, kannst du mal mit meiner aktuellen Version rumspielen.
Die Minutenabschnitte für Schlaf mit Puls und Atmung und für Aktivität mit Schritten funktioniert soweit.
Höhenmeter sind noch nicht mit drin. Mein Pulse kommt dank Black Friday aber nächste Woche.
Wenn noch jemand was braucht: http://www.withings.com/de/blackfriday/ (http://www.withings.com/de/blackfriday/)
Aura für 224 Euro
Body Analyzer für 112 Euro
Blood Pressure Monitor für 97 Euro
Pulse für 72 Euro (mit Code BF2014-WAM01-ROEFR aus der Email)
Update: Aura jetzt mit Temperatur und Lichtsensor.
Zum Umbau des Moduls bin ich leider immer noch nicht gekommen :(
Zitat von: Markus M. am 03 Dezember 2014, 19:23:59
Zum Umbau des Moduls bin ich leider immer noch nicht gekommen :(
Mach dir keinen Stress! Ich bin auch noch nicht wirklich zum testen gekommen.
Grüße
Hab' neben der Waage auch den Pulse im Einsatz. Schritte plotten wäre toll - muss aber nicht so feingranular sein. Die Tageswerte in einer Wochen- und Monatsübersicht sind für den Verlauf spannender.
Danke noch einmal für das Modul - ohne FHEM würde ich nie bemerken, wenn der Pulse keinen Saft mehr hat :-P
Hi,
ich hoffe ich stelle mich nicht zu dämlich an, aber obwohl das Modul sehr gut funktioniert, bekomme ich eine Sache nicht hin.
Im Filelog stehen vereinzelte C02 Werte, die anscheinend immer nach dem Messen ausgelesen werden. Ich würde aber gerne eine Tagesübersicht haben. Geht das überhaupt?
Auszug aus dem Log:
2015-01-05_04:18:32 withings_D123 batteryLevel: 69
2015-01-05_04:18:32 withings_D123 battery: ok
2015-01-05_04:18:32 withings_D123 lastWeighinDate: 2015-01-04 15:39:56
2015-01-05_05:18:33 withings_D123 batteryLevel: 69
2015-01-05_05:18:33 withings_D123 battery: ok
2015-01-05_05:18:33 withings_D123 lastWeighinDate: 2015-01-04 15:39:56
2015-01-05_05:30:12 withings_D123 temperature: 17.9
2015-01-05_05:30:12 withings_D123 co2: 1232
2015-01-05_06:18:35 withings_D123 batteryLevel: 69
2015-01-05_06:18:35 withings_D123 battery: ok
2015-01-05_06:18:35 withings_D123 lastWeighinDate: 2015-01-05 05:40:07
2015-01-05_07:18:36 withings_D123 batteryLevel: 69
2015-01-05_07:18:36 withings_D123 battery: ok
2015-01-05_07:18:36 withings_D123 lastWeighinDate: 2015-01-05 05:40:07
2015-01-05_08:00:13 withings_D123 temperature: 18.1
2015-01-05_08:00:13 withings_D123 co2: 1278
2015-01-05_08:18:37 withings_D123 batteryLevel: 69
2015-01-05_08:18:37 withings_D123 battery: ok
2015-01-05_08:18:37 withings_D123 lastWeighinDate: 2015-01-05 08:16:17
2015-01-05_09:18:38 withings_D123 batteryLevel: 69
2015-01-05_09:18:38 withings_D123 battery: ok
2015-01-05_09:18:38 withings_D123 lastWeighinDate: 2015-01-05 08:16:17
2015-01-05_10:18:39 withings_D123 batteryLevel: 69
2015-01-05_10:18:39 withings_D123 battery: ok
2015-01-05_10:18:39 withings_D123 lastWeighinDate: 2015-01-05 08:16:17
2015-01-05_11:18:40 withings_D123 batteryLevel: 69
2015-01-05_11:18:40 withings_D123 battery: ok
2015-01-05_11:18:40 withings_D123 lastWeighinDate: 2015-01-05 08:16:17
2015-01-05_12:18:41 withings_D123 batteryLevel: 69
2015-01-05_12:18:41 withings_D123 battery: ok
2015-01-05_12:18:41 withings_D123 lastWeighinDate: 2015-01-05 08:16:17
Die Waage wurde, wie folgt unter anderen mit autocreate definiert:
define withings withings <E-Mail> <passwd>
define withings_U2345 withings <userid> <publickey>
attr withings_U2345 IODev withings
attr withings_U2345 alias AND
attr withings_U2345 room withings
define FileLog_BZ.WithingsWaage_W FileLog ./log/BZ.WithingsWaage_W-%Y-%m.log withings_U2345
attr FileLog_BZ.WithingsWaage_W logtype text
attr FileLog_BZ.WithingsWaage_W room Logs
define withings_D123 withings 123
attr withings_D123 IODev withings
attr withings_D123 alias Body scale
attr withings_D123 room withings
define FileLog_BZ.WithingsWaage FileLog ./log/BZ.WithingsWaage-%Y-%m.log withings_D123
attr FileLog_BZ.WithingsWaage logtype text
attr FileLog_BZ.WithingsWaage room Logs
Stehe ich auf dem Schlauch? Oder muss ich die Waage anders konfigurieren ? Ich komm irgendwie nicht weiter....
Zitat von: ABrolund am 05 Januar 2015, 21:22:01
Hi,
ich hoffe ich stelle mich nicht zu dämlich an, aber obwohl das Modul sehr gut funktioniert, bekomme ich eine Sache nicht hin.
Im Filelog stehen vereinzelte C02 Werte, die anscheinend immer nach dem Messen ausgelesen werden. Ich würde aber gerne eine Tagesübersicht haben. Geht das überhaupt?
Stehe ich auf dem Schlauch? Oder muss ich die Waage anders konfigurieren ? Ich komm irgendwie nicht weiter....
Die Werte werden nur nach jedem Wiegen oder ansonsten 1x am Tag von der Waage übertragen.
Danach kannst du sie plotten, aktuelle Werte sind aber leider nicht möglich.
Sieh dir dazu mal die SVG Weblinks an.
VG Markus
Hat noch niemand einen Weg gefunden um über FHEM die Temperatur- und CO2-Werte aus einer WS-50 kontinuierlich auszulesen?
Nein, das ist grundsätzlich technisch nicht möglich.
Die Waage überträgt die Daten nur 2x täglich oder nach dem Wiegen.
Hallo erstmal :)
Ich besitze eine Withings und würde sie gerne testweise mal in Fhem einbinden. Leider versteh ich dass nicht was es mit der.pm datei aufsich hat. Wie lade ich die?
mit welcher pm datei? wenn dein FHEM aktuell ist (uodate) dann ist auf fhem seite alles da.
eventuell brauchst du noch das JSON perl modul. je nach platform ist die installation unterschiedlich. im wiki findest du mehr dazu.
gruß
andre
Ah vielen herzlichen Dank :) hab gedacht ich muss irgendwas mit der 32_withings.pm machen.
Hab Fhem auf nem Raspberry laufen. Muss mich zwar ziemlich durchbeißen aber wenn ich was hinbekomme ist die freude umso größer.
Nur zur Info:
69,99 für die Waage finde ich sehr günstig!
https://www.gravis.de/Aktuelles/Newsletter/Keine-Ausreden-mehr/?newsletter=kw06a-15/Header/&ia-pkpmtrack=100-9353835313236323131303-159-177-101
LG
Und wenn man Gutscheincode "Sparwelt" verwendet, sind es nur noch 59€ ;D
Halte ich für etwas viel Geld für "nur" Gewicht.
Ich sehe trotz des beta-moduls keine schritt readings bei mir, gibt es da noch einen Trick?
Das ist leider noch etwas buggy.
Ich muss das Modul mal komplett umbauen, komme aber aktuell leider nicht dazu.
Wären für dich die Tageswerte oder die Aufteilung nach Minuten interessanter?
Mich interessiert die Zusammenfassung eigentlich weniger.
Für mich wäre wohl eher der aktuelle Tagesstand interessant. Könnte das Haus dazu verwenden um zu erkennen wie müde man nach hause gekommen ist, je nachdem wieviele Schritte man gemacht hat. Dann könnte man entsprechend die Beleuchtung anpassen oder Telefone ausstellen :)
Also die Minutenwerte die du dann aufsummieren kannst.
Das Problem ist, dass die nie aktuell sind, weil der Pulse nur ab und zu synchronisiert.
Ich muss die Hardware ID mit dem User verknüpfen um die letzte Synchronisation zu sehen. Hab noch keine Ahnung wie ich das mache. Ist bei Aura leider ähnlich.
Wie gesagt, das kann noch dauern.
Wenn ich eine neue Version habe, poste ich sie hier.
Geht Schritte zählen nur mit der Pulse oder auch mit iPhone app? Kein Stress hier ... es ist fertig wenn es fertig ist :D
Bei der App hast du sogar den Vorteil dass die Daten öfter übertragen werden. Muss ich mir anschauen.
Hallo!
Ich habe seit einiger Zeit meine Withings Waage mithilfe dieses Moduls in fhem eingebunden. Allerdings wird bei mir immer nur der letzte CO2- und Temperaturwert übertragen, den die Waage ins Internet geladen hat. Ich kann also keine kontinuierlichen Graphen plotten, sondern nur pro Tag ca. einen CO2- und Temperaturwert. Mir ist klar, dass ich keine aktuellen Werte bekommen kann weil die Waage nur ungefähr ein mal am Tag oder beim Wiegen gemessene Werte überträgt, allerdings sollte es doch dennoch möglich sein, alle gemessenen Werte und nicht nur den letzten herunterzuladen oder?
Als ich das Modul zum ersten Mal eingerichtet habe, wurden schließlich auch alle jemals gemessenen Gewichtsdaten synchronisiert.
Kann mir da jemand weiterhelfen? Gibt es dafür eine Einstellung, die ich setzen muss?
Vielen Dank im Voraus!
Mathea
Hat keiner eine Idee?
Könnte mir vielleicht jemand sagen, ob das Auslesen von sämtlichen CO2 - und Temperaturwerten, die zwischen den Sendezeiten gemessen wurden, überhaupt möglich ist?
Könnt ihr mit der Withings Einbindung vollständige Graphen plotten, also mehr als nur einen oder Zwei Temp. - und CO2 Werte pro Tag?
Vielen Dank im Voraus,
Mathea
Seltsam. Eigentlich sollten die Werte alle geladen werden, ein Reading alle 30 Minuten.
Ich bin gerade auf Reisen, werde es mir am Wochenende mal ansehen.
Hey zusammen,
ich habe das tolle Modul (danke nochmal) seit einigen Wochen im Einsatz. Während am Anfang im Log noch "Temperature" auftauchte, fehlt es nun. In der Modulbeschreibung finde ich es auch nicht als offizielle reading. War das nur ein Zufall oder mache ich etwas falsch? CO2, Batterie und die Kilos landen nach wie vor problemlos drin.
danke euch für jeden Tipp
ciao Carlo
Ich bekomme aktuell gar keine Daten mehr ins Modul obwohl sie da sind.
Du musst leider noch etwas Geduld mitbringen, ein kompletter Rewrite steht allerdings bereits auf meiner Todo-Liste.
Alles klar, dann brauch ich nicht weiter suchen. Danke dir! Zeit den Jeelink in Betrieb zu nehmen ;)
Hallo und guten Abend,
ich verwende das Withings Modul für meine Waage, was auch super klappt. Nun bin ich frisch Papa geworden und habe mir den Withings Baby Monitor gekauft:
http://www2.withings.com/eu/en/products/baby/smart-baby-monitor?
Über meinen Login auf der Seite https://healthmate.withings.com/ kann ich nun das Live-Bild inklusive Benachrichtigungen (Bewegung, Geräuschmeldungen) einsehen. Selbstverständlich gibt es auch eine App für iOS dafür.
Meine Idee ist nun, damit ich nicht ständig das Telefon am Mann haben muss, wenn ich zu Hause bin, das ganze in fhem einzubinden. Mit anderen Worten würde ich gern ein notify o.ä. auslösen, wenn eine Benachrichtigung über Bewegungsmeldung oder Geräuschmeldung kommt, im Idealfall auch das Kamerabild in fhem sehen.
Hat vielleicht jemand eine Idee, ob sowas überhaupt möglich ist?
Ich liefere selbstverständlich gern weiterführende Informationen.
Über einen Austausch dazu würde ich mich und natürlich auch meine Frau sehr freuen.
Diese Informationen habe ich bereits gefunden, komme aber auch damit nicht wirklich weiter:
http://blog.bulte.net/12-28-2013/hacking-withings-smart-baby-monitor.html
wolf
Zitat von: wolfram am 17 Juni 2015, 22:36:31Meine Idee ist nun, damit ich nicht ständig das Telefon am Mann haben muss, wenn ich zu Hause bin, das ganze in fhem einzubinden. Mit anderen Worten würde ich gern ein notify o.ä. auslösen, wenn eine Benachrichtigung über Bewegungsmeldung oder Geräuschmeldung kommt, im Idealfall auch das Kamerabild in fhem sehen.
Hat vielleicht jemand eine Idee, ob sowas überhaupt möglich ist?
Nicht besonders sinnvoll, da jede Meldung immer um den Aktualisierungszeitraum den Moduls verzögert wäre.
ZitatIch liefere selbstverständlich gern weiterführende Informationen.
Musst du nicht, ich hab so ein Ding hier rumliegen :)
Ich habe aktuell aber leider keine Zeit die ich darin investieren kann.
Du wirst also vorerst noch mit der App auskommen müssen. Wenn ich mal wieder etwas mehr Zeit habe das Modul zu aktualisieren, werde ich den Babymonitor und Withings Home aber natürlich mit integrieren.
Hallo Markus,
danke für Deine schnelle Antwort - dann warte ich mal ganz geduldig ab.
viele Grüße
wolf
Falls sich noch jemand das Aura Schlafsystem zulegen wollte:
Das gibt es aktuell für unschlagbare 149 Euro bei Amazon! (http://www.amazon.de/Withings-WAS01-Aura-Intelligentes-Schlafsystem/dp/B00LC2VWJI/ref=sr_1_1?ie=UTF8&node=3167641&tag=qipu08-21&ascsubtag=75604x10301183)
Keine Ahnung ob das ein Ausverkauf wird oder was Amazon da macht.
Ich geh dann jetzt langsam auch mal das neue Modul schreiben ;)
Mein Withings-Eintrag mit dem Subtype Account in FHEM spuckt nur noch "Error" als State aus. Die Zugangsdaten, mit denen ich mich bei Withings Healthmate anmelde, sind weiterhin korrekt. Beim Abrufen von devices und users findet er nichts, meine Waage ist aber in Healthmate hinterlegt. Dort funktioniert noch alles, nur in FHEM nicht mehr.
Der Eintrag mit dem Subtype User funktioniert, die Daten sind aktuell. Beim Subtype Device hingegen ist nichts vorzufinden; dort hatte ich noch ältere Werte von Ende April. Nach einem Update-Versuch in FHEM sind nun alle letzten Readings ebenfalls verschwunden.
Im FHEM-Log steht unter anderem Folgendes:
PERL WARNING: Use of uninitialized value in string eq at ./FHEM/32_withings.pm line 121.
PERL WARNING: Use of uninitialized value in string eq at ./FHEM/32_withings.pm line 122.
PERL WARNING: Use of uninitialized value in string eq at ./FHEM/32_withings.pm line 123.
PERL WARNING: Use of uninitialized value in string eq at ./FHEM/32_withings.pm line 604.
PERL WARNING: Use of uninitialized value in string eq at ./FHEM/32_withings.pm line 616.
PERL WARNING: Use of uninitialized value in string eq at ./FHEM/32_withings.pm line 628.
PERL WARNING: Use of uninitialized value $list in concatenation (.) or string at ./FHEM/32_withings.pm line 655.
PERL WARNING: Use of uninitialized value in string eq at ./FHEM/32_withings.pm line 149.
PERL WARNING: Use of uninitialized value in string eq at ./FHEM/32_withings.pm line 150.
Hallo Zusammen
Ich habe meine Withings Waage in Fhem eingebunden und einen SVG Plot gemacht.
Leider werden die Daten aber nicht dargestellt.
Die Daten selbst werden von Fhem ausgelesen.
Kann mir jemand sagen, wo der Fehler liegt?
Anbei ein Screenshot vom SVG_Log und vom File_Log
Wäre es möglich auch kleinere Intervalle als 1 Stunde zuzulassen?
Bei jedem Versuch einen Wert kleiner als 3600 einzugeben, setzt FHEM ihn wieder auf 3600.
das müsstest du zur zeit direkt im modul ändern.
warum möchtest du die kleineren intervalle ?
gruss
andre
Wenn ich das direkt im Modul ändere, dann muss ich das bei jedem Update wieder anpassen...
Leider gibt es ja keine push-Möglichkeit, dass bei einem Wiegevorgang die neuen Werte an FHEM gesendet werden. Von daher wäre eine kürzere Aktualisierungszeit wünschenswert, um vor allem nicht die Benutzer zu verwirren, welche sich vor kurzem gewogen haben und nun bis zu einer Stunde auf die aktuellen Werte in FHEM warten.
Was Updates angeht brauchst du keine Angst haben, da passiert nichts da ich aktuell leider nicht dazu komme.
Langfristig muss ich das Modul komplett umschreiben, dann nehme ich die Begrenzung sowieso raus bzw. setze sie auf 5 Minuten.
Hast du ne Fritzbox? Wenn du damit erkennen kannst ob die Waage gerade im WLAN aktiv war, könntest du manuell ein Update triggern.
Hallo,
ich habe seit ein paar Tagen das Problem, dass das withingsmodul keine Daten mehr abholt. Habe heute mal versucht mit get update oder get updateAll das ganze zu Richten, leider ohne Erfolg. Das I/O Device withings meldet im state ERROR. Ein verbose mit 5 bringt leider gar keine Logmeldung, lediglich beim restart gibt es eine, die das I/O Device anzeigt. Ist also auch nicht sehr hilfreich zur Fehlersuche. Hat das Problem noch jemand oder das selbe Problem? In der App werden die Daten alle angezeigt.
List auf das I/O Device:
Internals:
Clients :withings:
DEF ACCOUNT user password
Hash xxxxxxxxxxxxxxxxxxxx
Login user
NAME withings
NR 133
NTFY_ORDER 50-withings
Password password
STATE Error
SUBTYPE ACCOUNT
SessionKey
SessionTimestamp xxxxxxx
TYPE withings
Token xxx-xxxx
Attributes:
room hidden
verbose 5
Das list vom Device (Waage)
Internals:
CHANGED
DEF xxxxxx
Device xxxxxx
DeviceType
INTERVAL 3600
IODev withings
NAME withings_Dxxxxxx
NR 136
NTFY_ORDER 50-withings_Dxxxxxx
STATE CO2: co2 ppm Bat: battery (batteryLevel%)
SUBTYPE DEVICE
TYPE withings
fw
model
sn
status 2555
Readings:
Attributes:
IODev withings
alias Schlafzimmer
room Schlafzimmer
stateFormat CO2: co2 ppm Bat: battery (batteryLevel%)
verbose 5
List vom User:
Internals:
CHANGED
DEF xxxxxx yyyyyyyy
INTERVAL 3600
IODev withings
Key xxxxxxx
LAST_POLL 2015-08-12 14:10:06
NAME withings_Uxxxxxxx
NR 134
NTFY_ORDER 50-withings_Uxxxxxxx
STATE Gewicht: xyz kg Fettanteil: xyz %
SUBTYPE USER
TYPE withings
User xxxxxxx
birthdate xxxxxxx
shortName xxxxxxx
status 0
userName xxxxxxx
Readings:
2015-08-12 06:14:17 fatFreeMass xxxxxxx
2015-08-12 06:14:17 fatMassWeight xxxxxxx
2015-08-12 06:14:17 fatRatio xxxxxxx
2015-08-12 06:14:17 heartPulse xxxxxxx
2014-01-13 18:09:17 height xxxxxxx
2015-08-12 06:14:17 weight xxxxxxx
Attributes:
IODev withings
alias Gewicht
room Schlafzimmer
stateFormat Gewicht: weight kg Fettanteil: fatRatio %
Ich habe das gleiche Problem seit dem letzten Fhem Update. Bei einen Neustart vom Fhem spuckt das Log auch eine Fehlermeldung aus:
2015.08.11 23:43:43 1: PERL WARNING: Use of uninitialized value $authcookies in pattern match (m//) at ./FHEM/32_withings.pm line 201.
2015.08.11 23:43:43 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 210.
2015.08.11 23:43:43 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 359.
2015.08.11 23:43:43 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 384.
2015.08.11 23:43:43 3: withings_D27390: I/O device is withings
2015.08.11 23:43:43 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 411.
2015.08.11 23:43:43 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/32_withings.pm line 313.
2015.08.11 23:43:43 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/32_withings.pm line 315.
2015.08.11 23:43:43 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 436.
Da ist sicherlich wieder etwas anderes verändert worden
ich habe keine probleme mit dem modul an sich. ich kann auch ein neues withings ACCOUNT device mit meinen zugangsdaten anlegen.
aber ich habe gerade gemerkt das ich keine devices mehr in meinem account habe.
ich schaue mal ob ich mehr rausfinde.
gruss
andre
Zitat von: justme1968 am 12 August 2015, 14:37:51ich schaue mal ob ich mehr rausfinde.
Steck ausser dem Bugfix keine Energie mehr rein, ich baue das Modul gerade komplett neu auf ;)
Kannst du kurz einen Satz dazu sagen, wie die Kommunikation zwischen den einzelnen Instanzen der Geräte und User funktioniert?
Ich müsste dabei Daten der Devices beim User Update abfragen, um das Problem der zeitversetzten Readings einiger Geräte zu umgehen.
Wo landen eigentlich dann die Daten bei Nonblocking Abfragen? In der gleichen Instanz die sie abgeschickt hat?
Ich hab ein paar Stunden ins Reverse Engineering gesteckt und werde dabei nicht mehr auf die offene API zugreifen sondern alles über die Services machen die auch die Weboberfläche und die Apps benutzen.
In der neuen Version dann möglich:
Gewicht, Blutdruck, Puls, SpO2 und Grösse von Waagen, Blutdruckmessgeräten und Pulse
An Schlafdaten minutengenau Puls, Atmung und Sleeplevel von Aura oder nur Sleeplevel vom Pulse
Activity, Schritte, Auf- und Abstieg, Entfernung und der restliche Kram wie Kalorien etc. minutengenau von Pulse oder Activite
An Gerätedaten CO2 der Waage, Temperatur und Licht von Aura, VOC von Home
Warnmeldungen von Home und dem Babymonitor (allerdings ohne Video - wenn sich jemand mit Amazon S3 Authentifizierung auskennt, bitte melden)
Und als Bonus die kompletten Einstellungen wie Alarm etc. von Aura über das lokale Netzwerk
Seid gespannt ;)
Markus
Bei mir hat das Modul am 8.08.15 das letzte mal seine Daten geholt. Ein manuelles Update geht bei mir auch nicht.
ok. dann warte ich :)
geräte und user sind unabhängig voneinander. beim abfragen der werte von der withings seite über das master device werden ein paar hashes umgebogen.
ich würde keine arbeit in das zusammen sortieren der readings aus unterschiedlichen devices stecken. entweder dblog verwenden. da ist es egal. oder ein log file pro device. inzwischen kannst du die entweder direkt under mir logProxy in einem plot darstellen. das device übergreifende sortieren ist den aufwand nicht wert.
in hash der beim nonblocking aufruf mitgegeben wird der client hash mit übergeben. also das device das die anfrage abgeschickt hat. im callback der das ergebnis der anfrgage dann auswertet wird dann darüber wieder das device gefunden.
gruß
andre
Zitat von: justme1968 am 13 August 2015, 21:05:06
ok. dann warte ich :)
geräte und user sind unabhängig voneinander. beim abfragen der werte von der withings seite über das master device werden ein paar hashes umgebogen.
Schon gesehen. Urgs
Vor allem das was ich beim letzten Versuch verbrochen habe ;)
Zitatich würde keine arbeit in das zusammen sortieren der readings aus unterschiedlichen devices stecken. entweder dblog verwenden. da ist es egal. oder ein log file pro device. inzwischen kannst du die entweder direkt under mir logProxy in einem plot darstellen. das device übergreifende sortieren ist den aufwand nicht wert.
Es geht um die Werte für den Herzschlag, die aus einer Abfrage aber von verschiedenen Devices kommen können die leider fast alle ihre Daten asynchron abliefern können und im Fall vom Pulse auch tun. DbLog schreibt dir beliebig viele Duplikate eines Datensatzes in die DB und hilft damit nicht wirklich weiter.
Zitatin hash der beim nonblocking aufruf mitgegeben wird der client hash mit übergeben. also das device das die anfrage abgeschickt hat. im callback der das ergebnis der anfrgage dann auswertet wird dann darüber wieder das device gefunden.
Jepp, das funktioniert soweit.
Meine Aufrufe und Funktionen hab ich dann soweit fast alle beisammen, was fehlt ist die passende Berechnung von
startdate,
enddate und das Parsen.
Ich denke bis zum Ende des Wochenendes gibt es eine erste Version für Körperdaten, Waage und Aura.
:) Markus
ZitatEs geht um die Werte für den Herzschlag, die aus einer Abfrage aber von verschiedenen Devices kommen können die leider fast alle ihre Daten asynchron abliefern können und im Fall vom Pulse auch tun. DbLog schreibt dir beliebig viele Duplikate eines Datensatzes in die DB und hilft damit nicht wirklich weiter.
vielleicht sollten die werte dann nicht beim jeweiligen physikalischen device geloggt werden sondern direkt beim user in einem eigenen fhem device nur dafür.
dann muss nur innerhalb einer abfrage sortiert werden und nicht device übergreifend.
die duplikate entfernst du ja beim sortieren und in dem du alles verwirfst was vor dem letzen abfrage zeitpunkt war.
gruss
andre
Zitat von: justme1968 am 13 August 2015, 21:59:41
vielleicht sollten die werte dann nicht beim jeweiligen physikalischen device geloggt werden sondern direkt beim user in einem eigenen fhem device nur dafür.
Die Abfrage dafür hängt sowieso schon am User.
Das mit den Geräten ist etwas komplizierter und wahrscheinlich eher was für eine spätere Version.
Zitatdie duplikate entfernst du ja beim sortieren und in dem du alles verwirfst was vor dem letzen abfrage zeitpunkt war.
Ja, aber bei der User Abfrage (die die du über die API gemacht hattest) neu dann pro Device.
Jetzt hast du mich aus dem Konzept gebracht - ich muss meine Logik nochmal ändern und die automatisch erhobenen Daten für Activity und Sleep jeweils beim Pulse oder der Aura Matte speichern, sonst gibt das ein komplettes Chaos.
Ich geh erst mal schlafen, viel zu warm heute :)
Hab gerade einen Punkt an dem ich scheitere...
Ich möchte im Device eine Verknüpfung auf den kompletten User Hash anlegen.
Die ID funktioniert, die Verknüpfung nicht.
if(defined($devicelink->{userid}))
{
$hash->{User} = $devicelink->{userid};
$hash->{UserDevice} = $modules{$hash->{TYPE}}{defptr}{"U".$devicelink->{userid}} if defined($modules{$hash->{TYPE}}{defptr}{"U".$devicelink->{userid}});
}
Klappt sowas in Perl/FHEM generell nicht oder mache ich was falsch?
doch. so etwas geht. ich sehe auf die schnelle den fehler aber auch nicht. lass die die werte per Log (und Dumper) ausgeben.
ich würde so etwas aber nicht zusätzlich speichern sondern jedes mal aus defptr auslesen sonst bekommst du z.b. probleme wenn der user ein device löscht und neu anlegt. weil dann zwar defptr angepasst wird die zusätzlichen kopien aber nicht.
gruss
andre
Ok, ich glaube bis heute Abend krieg ich das neue Modul in einen testfähigen Alpha Stand.
Es ist leider nicht ganz kompatibel zur bisherigen Version und hat daher aktuell noch einen eigenen Modulnamen, ist dafür aber so programmiert dass es zumindest bei den Nutzerdaten erst mal die komplette Historie abholt.
Wer hat denn hier welche Geräte zuhause stehen und möchte mal testen?
@Andre
Hast du eine Idee wie ich es hinbekommen könnte, die Readings die ich jeweils blockweise einlese zwar alle in die DB zu schreiben, aber nur beim jeweils letzten ein Notify auszulösen?
Also ich habe die withings Waage und den Babymonitor und teste gern!
Gesendet von iPhone mit Tapatalk
Habe auch die Waage ( WS-50) und würde das Modul testen
Gruß Christoph
Gesendet von meinem LG-D855 mit Tapatalk
Ok, dann probiert das doch einfach mal aus :)
Mit dieser Version will ich in erster Linie nur rausfinden:
- Gibt es Situationen in denen FHEM abstürzt
- Gibt es Situationen in denen Daten nicht mehr weiter abgeholt werden
- Gibt es Situationen in denen Lücken bei der Abholung auftreten (Plots testen nicht vergessen)
Define funktioniert wie gehabt: define withings_test withing5 your@mail.com password
Nach der Definition sind anfangs erst mal alle User und Devices disabled.
Bitte einzeln aktivieren und testen, um Fehler besser eingrenzen zu können.
Das Modul hat einen eigenen Namensraum und kann theoretisch parallel zum alten Modul laufen, wobei ich nicht weiss ob das mit den Sessions funktioniert.
Das Loglevel steht im kompletten Modul auf 1.
Unterstützte Geräte: Alle.
Nützliche Attribute für den Anfang: alles was mit interval... anfängt.
Kann für Daten, Properties (Device), Tageswerte (User) und Alerts (Kameras) extra gesetzt werden.
Fehler bitte mit Logauszug posten.
Wenn ihr irgendwelche Vorschläge oder Anregungen habt, einfach hier antworten.
Schönen Sonntag!
Markus
Anhang veraltet! NEUE VERSION HIER (http://forum.fhem.de/index.php/topic,17800.msg323545.html#msg323545)
Hi Markus,
hab gestern mal das neue Modul ausprobiert, hab es per Define eingebunden wie gehabt.
Das Device wird angelegt, aber mehr passiert dann nicht mehr.
Müsste der User nicht automatisch angelegt werden oder muss ich das händisch anlegen?
Gruß Christoph
Gesendet von meinem LG-D855 mit Tapatalk
Die User und Devices sollten automatisch angelegt werden.
Was sagt das Log dazu?
Anbei der Log
Gruß Christoph
2015.08.17 19:25:34 1: withing5: initialize
2015.08.17 19:25:34 1: withing5: define withings_test withing5 abc@mail.com passwordxyz
2015.08.17 19:25:34 1: withing5: inituser abc@mail.com
2015.08.17 19:25:34 3: No I/O device found for withings_test
2015.08.17 19:25:34 1: withings_test: no I/O device
2015.08.17 19:25:34 1: withing5: getuserdetails abc@mail.com
2015.08.17 19:25:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 303.
2015.08.17 19:25:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 311.
2015.08.17 19:25:34 1: withing5: appliver
2015.08.17 19:25:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 317.
2015.08.17 19:25:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 318.
2015.08.17 19:25:34 1: PERL WARNING: Use of uninitialized value in pattern match (m//) at ./FHEM/32_withing5.pm line 328.
2015.08.17 19:25:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 344.
2015.08.17 19:25:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 345.
2015.08.17 19:25:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 356.
2015.08.17 19:25:34 1: withing5: accountid
2015.08.17 19:25:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 879.
2015.08.17 19:26:34 1: withing5: poll USER
2015.08.17 19:26:34 1: withing5: getuserreadings abc@mail.com
2015.08.17 19:26:34 1: withing5: appliver
2015.08.17 19:26:34 1: withing5: accountid
2015.08.17 19:26:34 1: PERL WARNING: Use of uninitialized value $lastupdate in addition (+) at ./FHEM/32_withing5.pm line 1027.
2015.08.17 19:26:34 1: withing5: getuserdailystats abc@mail.com
2015.08.17 19:26:34 1: withing5: appliver
2015.08.17 19:26:34 1: withing5: accountid
2015.08.17 19:26:34 1: PERL WARNING: Use of uninitialized value $_ in substitution (s///) at FHEM/HttpUtils.pm line 45.
2015.08.17 19:26:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at FHEM/HttpUtils.pm line 212.
2015.08.17 19:26:35 1: withing5: dispatch userDailyActivity
2015.08.17 19:26:35 1: withing5: parseactivity
2015.08.17 19:26:35 1: withing5: dispatch userReadingsCommon
2015.08.17 19:26:35 1: withing5: parsemeasuregroups
2015.08.17 19:26:35 1: withing5: dispatch userDailyAggregate
2015.08.17 19:26:35 1: withing5: parseaggregate
2015.08.17 19:27:34 1: withing5: poll USER
2015.08.17 19:28:34 1: withing5: poll USER
2015.08.17 19:29:34 1: withing5: poll USER
2015.08.17 19:30:34 1: withing5: poll USER
2015.08.17 19:31:34 1: withing5: poll USER
2015.08.17 19:32:34 1: withing5: poll USER
2015.08.17 19:33:36 1: withing5: poll USER
2015.08.17 19:34:36 1: withing5: poll USER
2015.08.17 19:35:36 1: withing5: poll USER
Ich nehme an du hast eine Zahl in deiner Email?!
Da war das regex wohl nicht ganz in Ordnung.
Im Anhang ein neuer Versuch, jetzt sollte es klappen.
Videolinks des Babymonitors als neues Feature.
Ja hab eine Zahl in meiner Mail Adresse
Habs mal mit der aktuellen Version versucht, sieht schon ein wenig besser aus.
Diesmal wurde das Device automatisch im Raum angelegt, aber es kommt noch ein Login error
2015.08.17 20:49:27 1: withing5: define withings_test withing5 abc@mail.com password
2015.08.17 20:49:27 1: withings_test: connect
2015.08.17 20:49:28 1: withings_test: appliver 8b90cb73
2015.08.17 20:49:30 1: withings_test: accountid
2015.08.17 20:49:30 1: withings_test: getusers
2015.08.17 20:49:33 1: withings_test: accountid
2015.08.17 20:49:33 1: withings_test: getdevices
2015.08.17 20:49:35 1: withings_test: accountid
Hallo Markus M.
hab Deine neue Version auch mal probiert - FHEM stürzt bei mir reproduzierbar ab (3x versucht mit den letzten beiden Modulversionen):
Undefined subroutine &main::uri_escape called at ./FHEM/32_withing5.pm line 341.
2015.08.17 20:59:57 1: withing5: appliver aazzcbxx
2015.08.17 20:59:56 1: withing5: connect
2015.08.17 20:59:56 1: withing5: define withing5 withing5 x.y@mail.com passw
2015.08.17 20:59:56 1: withing5: initialize
Guckt mal nach ob URI::Escape in eurem Perl installiert ist und probiert die Version im Anhang.
Und nehmt das '#' aus eurem Passwort, sonst wird es nicht funktionieren.
Bei mir ändert sich nichts
2015.08.18 17:15:58 1: withing5: define withings_test withing5 abc@mail.com password
2015.08.18 17:15:58 1: withings_test: connect
2015.08.18 17:15:59 1: withings_test: appliver 8b90cb73
2015.08.18 17:16:01 1: withings_test: accountid
2015.08.18 17:16:01 1: withings_test: getusers
2015.08.18 17:16:03 1: withings_test: accountid
2015.08.18 17:16:03 1: withings_test: getdevices
2015.08.18 17:16:05 1: withings_test: accountid
Zitat von: Christoph am 18 August 2015, 17:19:43
Bei mir ändert sich nichts
Hast du die Sonderzeichen aus deinem Passwort genommen?
Hatte nie welche drin nur Buchstaben
Gesendet von meinem LG-D855 mit Tapatalk
Zitat von: Markus M. am 18 August 2015, 00:58:13
Guckt mal nach ob URI::Escape in eurem Perl installiert ist und probiert die Version im Anhang.
ok, das fehlte. Jetzt geht der ACCOUNT, Body Scale, Pulse OX und Activity Tracker, aber sobald ich bei einem User der Body Scale das disable = 1 lösche um da das Gewicht zu sehen, schmiert FHEM ab. Angelegt werden alle und prima, welche Infos Du dem Activity Tracker entlockt hast!
Zitat von: det. am 18 August 2015, 19:00:03
ok, das fehlte. Jetzt geht der ACCOUNT, Body Scale, Pulse OX und Activity Tracker, aber sobald ich bei einem User der Body Scale das disable = 1 lösche um da das Gewicht zu sehen, schmiert FHEM ab. Angelegt werden alle und prima, welche Infos Du dem Activity Tracker entlockt hast!
Bitte einmal neu anlegen und vor Aktivieren des Users verbose=5 (beim User) setzen.
Im Log sollte dann die Serverantwort stehen.
Hallo Markus,
sende mir mal eine Mailadresse per PM. Das Log bis zum Absturz ist zu lang für eine PM, was ich Dir gesendet habe ist nur ein Teil und ich habe an der Forum Mailfunktion keine Stelle zum Datei anhängen gefunden.
Zitat von: det. am 18 August 2015, 19:30:51
Hallo Markus,
sende mir mal eine Mailadresse per PM. Das Log bis zum Absturz ist zu lang für eine PM, was ich Dir gesendet habe ist nur ein Teil und ich habe an der Forum Mailfunktion keine Stelle zum Datei anhängen gefunden.
Mail steht im Modul wenn du genau hinsiehst, brauchst du aber hoffentlich grade gar nicht mehr :)
Bitte nachsehen ob Time::Local bei dir installiert ist (hatte ich nicht eingebunden UND falsch verwendet), dann die Version im Anhang ausprobieren.
Gruss, Markus
Zitat von: Christoph am 18 August 2015, 17:19:43
Bei mir ändert sich nichts
Dein Login klappt nicht und ich habe nicht die geringste Ahnung warum.
Auf welcher Hardware und Software läuft dein FHEM?
Der Anhang hier drin ist nur für dich (mehr Logging), bitte das Device damit nochmal neu anlegen und das Log posten oder mir per PM schicken.
Hallo Markus,
FHEM läuft bei mir auf einem Cubietruck / Debian GNU/Linux 7.8 (wheezy)
2015.08.18 21:47:25 1: PERL WARNING: Bareword found where operator expected at ./FHEM/32_withing5.pm line 369, near ")
Log3"
2015.08.18 21:47:25 1: PERL WARNING: (Missing operator before Log3?)
2015.08.18 21:47:25 1: reload: Error:Modul 32_withing5 deactivated:
syntax error at ./FHEM/32_withing5.pm line 369, near ")
Log3 "
2015.08.18 21:47:25 0: syntax error at ./FHEM/32_withing5.pm line 369, near ")
Log3 "
Gruß Christoph
Zitat von: Christoph am 18 August 2015, 21:57:50
FHEM läuft bei mir auf einem Cubietruck / Debian GNU/Linux 7.8 (wheezy)
Den Anhang von oben bitte nochmal runterladen.
So langsam wird es mit den unterschiedlichsten Problemen etwas schwierig.
Wenn ihr irgendwelche Perl Module extra installieren müsst, schreibt das bitte hier.
Zitat von: Markus M. am 18 August 2015, 21:06:17
Bitte nachsehen ob Time::Local bei dir installiert ist (hatte ich nicht eingebunden UND falsch verwendet), dann die Version im Anhang ausprobieren.
Gruss, Markus
Danke, ist jetzt alles gut aus. Stürzt nicht mehr ab und alle Userdevice haben Daten. Jetzt heisst es wohl Loggen und regelmäßig wiegen. Der Frau den Pulse in die Tasche stecken. Mein Iphone füttert die Withings App auch fleißig mit Bewegungsdaten. Bekomme ich die hier auch irgendwie mit rein?
2015.08.18 22:18:26 1: withing5: initialize
2015.08.18 22:18:26 1: withing5: define withings_test withing5 abc@mail.com password
2015.08.18 22:18:26 1: withings_test: connect
2015.08.18 22:18:26 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 337.
2015.08.18 22:18:26 1: withings_test: appliver
2015.08.18 22:18:26 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 343.
2015.08.18 22:18:28 1: withings_test: LOGIN ERROR
2015.08.18 22:18:28 1: withings_test: getusers
2015.08.18 22:18:29 1: withings_test: appliver
2015.08.18 22:18:30 1: withings_test: LOGIN ERROR
2015.08.18 22:18:30 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 583.
2015.08.18 22:18:31 1: withings_test: getdevices
2015.08.18 22:18:31 1: withings_test: appliver
2015.08.18 22:18:33 1: withings_test: LOGIN ERROR
2015.08.18 22:18:33 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 612.
Zitat von: Christoph am 18 August 2015, 22:21:57
2015.08.18 22:18:33 1: withings_test: LOGIN ERROR
2015.08.18 22:18:33 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withing5.pm line 612.[/code]
Irgendwas stimmt bei dir nicht.
Ist alles davon installiert?
use LWP::Simple;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Cookies;
Zitat von: det. am 18 August 2015, 22:10:03
Danke, ist jetzt alles gut aus. Stürzt nicht mehr ab und alle Userdevice haben Daten. Jetzt heisst es wohl Loggen und regelmäßig wiegen. Der Frau den Pulse in die Tasche stecken. Mein Iphone füttert die Withings App auch fleißig mit Bewegungsdaten. Bekomme ich die hier auch irgendwie mit rein?
Das ist noch ein ziemlicher Hack, aber probier mal...
define withingspseudousertest withing5 activity 0000000 withings_test<0000000> ist natürlich die UserID :)
Zitat von: Markus M. am 18 August 2015, 22:43:01
use LWP::Simple;
use LWP::UserAgent;
use HTTP::Request;
use HTTP::Cookies;
Habe gerade alle nochmal per CPAN installiert, ging alles durch ausser HTTP::Request.
Da bekomm ich nen Fehler beim installieren. Ich schaus mir morgen nochmal an. Danke
t/message-charset.t ......... 1/43 Can't locate IO/HTML.pm in @INC (@INC contains: /home/HTTP-Message-6.10/blib/lib /home/HTTP-Message-6.10/blib/arch /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at /home/HTTP-Message-6.10/blib/lib/HTTP/Message.pm line 247.
Zitat von: Markus M. am 18 August 2015, 23:47:14
Das ist noch ein ziemlicher Hack, aber probier mal...
define withingspseudousertest withing5 activity 0000000 withings_test
<0000000> ist natürlich die UserID :)
habe die Daten vom IPhone gefunden. Sind im Reading meines persönlichen Device neben den Waagedaten versteckt. Die V
Zitat von: det. am 19 August 2015, 18:16:47
habe die Daten vom IPhone gefunden. Sind im Reading meines persönlichen Device neben den Waagedaten versteckt. Die V
Welche Daten meinst du?
Für die Tageswerte brauchst du kein extra Pulse Device.
Wenn du die minutengenauen Schritte haben willst, könntest du das trotzdem mal ausprobieren - ich kann leider nicht testen ob da überhaupt was kommt.
Zitat von: Markus M. am 19 August 2015, 19:17:13
Wenn du die minutengenauen Schritte haben willst, könntest du das trotzdem mal ausprobieren - ich kann leider nicht testen ob da überhaupt was kommt.
sorry d
efine withingspseudousertest withing5 activity xxxxxxxx withings_test ging nicht. Da kam kein Reading.
Zitat von: det. am 19 August 2015, 20:44:22
sorry define withingspseudousertest withing5 activity xxxxxxxx withings_test ging nicht. Da kam kein Reading.
Auch nicht nach enable und mehrmaligem! Einlesen von Daten?
Guck mal wie sich der Wert LAST_DATA verhält.
Es werden im Zweifelsfall auch die Zeiten in 8h Blöcken ausgelesen in denen du dein Telefon nicht bewegst.
Zitat von: Christoph am 19 August 2015, 00:22:01
Habe gerade alle nochmal per CPAN installiert, ging alles durch ausser HTTP::Request.
Da bekomm ich nen Fehler beim installieren. Ich schaus mir morgen nochmal an. Danke
t/message-charset.t ......... 1/43 Can't locate IO/HTML.pm in @INC (@INC contains: /home/HTTP-Message-6.10/blib/lib /home/HTTP-Message-6.10/blib/arch /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at /home/HTTP-Message-6.10/blib/lib/HTTP/Message.pm line 247.
Ok...
Ich würde sowieso gerne für sämtliche Anfragen HttpUtils verwenden.
Dazu fehlen mir aktuell leider die Header, mal sehen was Rudolf zu meinem Patch sagt :)
Wenn du schon mal Versuchskaninchen spielen möchtest, kannst du die beiden Dateien im Anhang ausprobieren.
kleiner copy/paste fehler, bitte nochmal runterladen um wieder device readings zu bekommen
neue Version weiter unten
Ich lade mir die Dateien nochmal, aber funktioniert auch mit der vorherigen Version schon 8)
Gruß Christoph
edit: Funktioniert ohne irgendwelche Perl Warnings oder sonstige Fehler. Danke :)
Eine Anpassung von HttpUtils war doch nicht nötig, ich habe es nach einem kleinen Hinweis von Rudolf nun hinbekommen, nahezu alle zusätzlich benötigten Perl Module rauszuwerfen.
Drin ist jetzt nur noch folgendes:
use HttpUtils; (FHEM)
use POSIX qw( strftime ); (sollte Perl Standard sein)
use Time::Local qw(timelocal); (sollte ebenso Standard sein)
use JSON; (muss extra installiert werden)
Wie läuft das Modul bei euch soweit?
Ich habe aktuell noch arge Probleme bei den Readings von Pulse und Aura - teilweise gibt es Unterbrechungen, teilweise scheinen nicht alle Arten von Readings gelesen zu werden. Es gibt da wohl auch Restriktionen in der "API" die ich noch genauer ergründen muss.
Hat noch jemand ein Aura System um das genauer testen zu können?
Bei Pulse Devices (minutengenaue Schritte) sollten die Probleme ähnlich sein.
Markus
Mal was anderes: Withings Home ist aktuell für 149 Euro bei Amazon FR zu haben, falls sich jemand dafür interessiert:
http://www.amazon.fr/Withings-Home-Caméra-Surveillance-Qualité/dp/B00MNM0T4A (http://www.amazon.fr/Withings-Home-Cam%C3%A9ra-Surveillance-Qualit%C3%A9/dp/B00MNM0T4A)
Los, ich brauch noch Tester ;)
Heute neu:
- (hoffentlich) keine Lücken in den Plots (und bei der Abholung der Daten) mehr
- Download der Videosequenzen der Home Alerts aus der Cloud möglich (per signierten temporären Amazon Links als FHEM Events ohne Reading)
- Reading ID 15 = Noise
Todo:
- Aura Wecker Steuerung
- Home Timeline Bilder
- Home Mode Settings
- Handling asynchroner User Measurements die derzeit verworfen werden (Pulse)
- Error Handling im Modul
Etc:
- Aura Daten werden nur noch nach der kompletten Nacht vom Gerät übertragen :(
Sind noch jemandem Probleme aufgefallen?
Fehlt euch noch irgendwas?
Gruss, Markus
Und noch eine neue Version:
Withings hat in den letzten Wochen die API Keys auf alphanumerische Zeichen erweitert, weshalb neue User grundsätzlich nicht funktioniert haben.
Wer also noch "Login failed" irgendwo stehen hat: diese User sind brandneu und wurden bisher als Account erkannt.
Danke an Tommy für's Testen!
Aura Special:
Komplette Steuerung von Aura, alle Settings incl. Alarmzeiten und manueller Start/Stop von Alarm, Sleep und Nap
Das Attribut IP muss dazu im Device auf die lokale IP des Geräts gesetzt werden.
Hallo,
ich nutze für die Batterieüberwachung der Devices ein notifydefine no_BatterieZustand notify .*:[Bb]attery.* { if ($EVENT !~ m/ok/){fhem("set PushMsg msg 'Achtung' 'Batterie $NAME fast leer'")}}
Funktioniert mit den HM-Devices auch ohne Probleme. Seit dem ich die Withings-Waage in Fhem habe, wird mir deren Batteriezustand bei jedem Event als fast leer mitgeteilt. Dies, obwohl im Log battery ok und die Kapazität mit 90 % steht.
Hat dafür jemand eine Erklärung? Kann ich zur Not die Waage irgendwie aus der "Batterie"-ReadingsGroup (.*:[Bb]attery) ausschließen?
odie13690
Zitat von: odie13690 am 09 September 2015, 06:21:05obwohl im Log battery ok und die Kapazität mit 90 % steht.
Hat dafür jemand eine Erklärung?
Klar hab ich die ;)
Dein notify springt ebenfalls auf das Reading
batterylvl an, in dem nicht
ok sondern
90% steht.
Wenn du das noch in der Expression ausschliesst, passt wieder alles.
Ist bei mir genau das geleiche...
Wie schliesst man das in der Expression aus?
Vielen dank im voraus...
Zitat von: Markus M. am 16 August 2015, 11:32:14
@Andre
Hast du eine Idee wie ich es hinbekommen könnte, die Readings die ich jeweils blockweise einlese zwar alle in die DB zu schreiben, aber nur beim jeweils letzten ein Notify auszulösen?
@markus: ist die frage noch aktuell?
das geht in dem du z.b beim ReadingEndUpdate mit 0 hinten arbeitest so das für die ganzen readings kein event generiert wird. und dann mit DoTrigger von hand noch mal ein event für das letzte reading erzeugst.
gruss
andre
Zitat von: Falkenstein am 09 September 2015, 09:19:51
Ist bei mir genau das geleiche...
Wie schliesst man das in der Expression aus?
Vielen dank im voraus...
Ich habe es jetzt so gelöst. Ich hoffe, dass die Waage auch 'low' kennt...
define no_BatterieZustand notify .*:[Bb]attery.* { if ($EVENT =~ /low/){fhem("set PushMsg msg 'Achtung' 'Batterie $NAME fast leer'")}}
odie13690
Bei mir funktioniert das Modul problemlos, gibt es eine Möglichkeit damit weniger log Meldungen im normalen Fhem log landen?
Gruß Christoph
Zitat von: justme1968 am 09 September 2015, 10:57:26
@markus: ist die frage noch aktuell?
das geht in dem du z.b beim ReadingEndUpdate mit 0 hinten arbeitest so das für die ganzen readings kein event generiert wird. und dann mit DoTrigger von hand noch mal ein event für das letzte reading erzeugst.
Jein. Hatte ich glaube ich irgendwo schon mal so gemacht, dann aber die Events für Schritte und Schlaf ganz rausgenommen, da das nur noch blockweise übertragen wird und nicht mehr für Schaltaufgaben verwendbar ist.
Ich gehe das mal nochmal durch.
Zitat von: odie13690 am 09 September 2015, 12:04:03
Ich habe es jetzt so gelöst. Ich hoffe, dass die Waage auch 'low' kennt...define no_BatterieZustand notify .*:[Bb]attery.* { if ($EVENT =~ /low/){fhem("set PushMsg msg 'Achtung' 'Batterie $NAME fast leer'")}}
low wird unterstützt.
Zitat von: Christoph am 09 September 2015, 12:56:56
Bei mir funktioniert das Modul problemlos, gibt es eine Möglichkeit damit weniger log Meldungen im normalen Fhem log landen?
Warten bis zum Wochenende - für die Beta Phase nehme ich das Logging wieder raus und ändere den Namensraum zurück auf
withings.
Die neue Version gibt es voraussichtlich am Samstag hier.
Markus
Ok, hier ist die erste Beta, ohne Dauerlogging und mit withings Namensraum.
Ein Bug der bei fehlerhaftem JSON einen Absturs bzw. Lockup von FHEM verursacht hat sollte raus sein, das ist zumindest bei mir aber immer nur bei den Home Daten passiert und ich glaube nicht dass sonst noch wer dieses Gerät hat ;)
Für's Testen bitte vor dem ersten Switch auf das neue Modul folgendes machen:
- altes withing5 Modul samt angelegten Geräten löschen (optional)
- Das bisherige Withings Modul mit der Version aus dem Anhang ersetzen
- Globales Loglevel hochsetzen mit attr global verbose 5 um im Fehlerfall zu wissen was passiert ist
- FHEM neu starten
- Hoffen dass alles funktioniert...
Ich möchte niemandem beim anstehenden Versionswechsel FHEM abschiessen, weshalb das Log des ersten Starts mit dem neuen Modul und den alten Geräten sehr wichtig ist.
Wenn ihr nach der Umstellung bemerkt dass irgendwelche Daten nicht oder doppelt eingelesen werden, berichtet bitte hier davon.
Viele Grüsse und einen schönen Sonntag,
Markus
Hallo zusammen,
ein paar Rückmeldungen zur aktuellen Beta wären ganz gut ;)
Wenn es keine Probleme gibt, würde ich dann mal langsam die neue Version in den Regelbetrieb überführen.
Im heutigen Update:
-Kleinere Bugfixes die mit Stacktrace aufgefallen sind.
-Neue Datenlogik für die Aura Schlafmatte, da die Debug Informationen zwar sofort, die eigentlichen Daten wie Puls und Atmung aber erst am Ende der Nacht zur Verfügung stehen und deshalb bisher nicht eingelesen wurden.
-Die neue Aura Weckerlogik (mehrere Wecker) aus der Version 715 kommt demnächst.
-Spotify werde ich mangels Premium Account nicht implementieren
Viele Grüsse,
Markus
Hallo,
bei mir läuft die Beta soweit stabil...
Nach dem ersten Define, war das Reading der Waage nicht aktuell bzw es wurde eine ältere Messung angezeigt.
2-3 manuelle Updates später passten die Readings dann wieder und ich hatte die letzte Messung von heute morgen.
Gruß Christoph
Zitat von: Christoph am 20 September 2015, 18:44:33Nach dem ersten Define, war das Reading der Waage nicht aktuell bzw es wurde eine ältere Messung angezeigt.
2-3 manuelle Updates später passten die Readings dann wieder und ich hatte die letzte Messung von heute morgen.
Mit Waage meinst du dein Gewicht oder die CO2 Readings?
Hast du dazu zufällig noch die Logeinträge?
Ja mein Gewicht, sind über 140 Messungen, ich versuche es morgen nochmal nachzustellen.
Sind die Warnungen beim fhem start normal ?
2015.09.26 16:49:33 1: withings: no I/O device
2015.09.26 16:49:34 3: withings_D1269499: I/O device is withings
2015.09.26 16:49:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 182.
2015.09.26 16:49:34 1: PERL WARNING: Use of uninitialized value in subroutine entry at ./FHEM/32_withings.pm line 182.
2015.09.26 16:49:34 1: PERL WARNING: Use of uninitialized value $authcookies in pattern match (m//) at ./FHEM/32_withings.pm line 201.
2015.09.26 16:49:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 210.
2015.09.26 16:49:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 411.
2015.09.26 16:49:34 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/32_withings.pm line 313.
2015.09.26 16:49:34 1: PERL WARNING: Use of uninitialized value in hash element at ./FHEM/32_withings.pm line 315.
2015.09.26 16:49:34 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at ./FHEM/32_withings.pm line 436.
2015.09.26 16:49:35 3: withings_U4413990: I/O device is withings
Gruß Christoph
Zitat von: Christoph am 26 September 2015, 19:48:29
Sind die Warnungen beim fhem start normal ?
Nein, und die Zeilennummern passen auch nicht zu der letzten Version.
Verwende bitte mal die im Anhang und beobachte, ob sie nochmal auftauchen.
Das Verhalten wirst du nicht nachstellen können, da es nur genau einmal vorkommen kann - beim Wechsel auf die neue Version.
M
Sorry war mein Fehler, durch ein update hats die Beta mit der letzten eingecheckten Version überschrieben.
Jetzt tauchen die Warnungen nicht mehr auf.
Danke
Gruß Christoph
Ahhh ok :)
Hat denn jemand irgendwelche ernsten Probleme mit der neuen Version?
Was ihr mal testen könntet:
Wie verhält sich FHEM beispielsweise, wenn ihr withings.com im Router blockt? (Simulierter Netzausfall)
Hallo Zusammen,
ist das eigentlich immer so, das die manuell kopierten Dateien durch ein update wieder überschrieben werden, ist mir gestern auch passiert und hatte mich gewundert. ... versteh da irgendwie die update logik nicht, da ja eigentlich die kopierte datei neueren datums ist. aber egal ...
ich habe es auch getestet mit meiner withings waage und das einzige was ich sagen kann ist, dass bei den eingerichteten benutzern sehr lange kein wert angezeigt wird in kg ... stattdessen steht da (zumindest bei mir) sehr lange "initialized" ... nach ca. 10 minuten passt es dann ... würde ich aber nicht als fehler deklarieren ...
und noch eine absolute anfängerfrage ... wie kann ich zusätzlich zum kg-wert noch die anderen werte mir anzeigen lassen ... also nicht in den details (da sehe ich sie ja) sondern in der jeweiligen zeile (sorry, absoluter anfänger ;-)) Sorry, habs rausgefunden ;-)
gruss
markus
Hallo, bekomme ich mit dem neuen Modul eigentlich die Temperatur und CO2 Readings, sehe ich bis jetzt nicht
Zitat von: d0np3p3 am 28 September 2015, 00:32:18
Hallo, bekomme ich mit dem neuen Modul eigentlich die Temperatur und CO2 Readings, sehe ich bis jetzt nicht
Als Readings im Device, ja.
Ist das aktiv und bekommt Daten?
Probier mal getAll, wenn nichts ankommt Loglevel auf 5 und das Ergebnis posten.
Servus,
ich habe auch mal das Beta Modul geladen. Das User Device funktioniert perfekt.
Bei der Waage kommt sogut wie nichts an, außer:
- battery
- batteryLevel
- lastSessionDate
- lastWeighinDate
Hab mal das Level auf 5 gesetzt und hier die Fehlermeldung. Ich weiß nicht, ob das normal war oder nicht, auf jeden Fall ist bei mir das neuste ganz oben, also von unten nach oben lesen...^^:
2015.10.04 00:40:56 5: withings_D356xxxx: parsemeasurements
};
'status' => 503
'error' => 'Invalid Params',
2015.10.04 00:40:56 5: withings_D356xxxx: json returned: $VAR1 = {
2015.10.04 00:40:56 5: withings_D356xxxx: dispatch deviceReadingsScale
2015.10.04 00:40:56 5: withings_D356xxxx: parsedevice 356xxxx
};
'status' => 0
},
'preflang' => 'de_DE'
'fw' => '1621',
'lastsessiondate' => 1443905680,
'night_clock' => 'f',
'network' => 1,
'created' => 1425292533,
'manual_geoloc' => 't',
'mfgid' => 573xxx,
'timezone' => 'Europe/Berlin',
'lastweighindate' => 1443905687,
'debug' => 0,
'latitude' => 'xx.9913',
'macaddress' => 'xx:xx:e4:xx:xx:xx',
'batterylvl' => 93,
'behaviour' => 0,
'longitude' => 'x.24464',
'impedancemeter' => 1,
'model' => 4,
},
'behaviour' => 0
'lastweighindate' => 0,
'g_adjust' => 1,
'scale_config' => {
'sn' => 'SN-xx:xx:xx:xx:xx:xx',
'type' => 1,
'modified' => 1425292533,
'id' => 356xxxx,
'body' => {
2015.10.04 00:40:56 5: withings_D356xxxx: json returned: $VAR1 = {
2015.10.04 00:40:56 5: withings_D356xxxx: dispatch deviceProperties
2015.10.04 00:40:56 5: withings_D356xxxx: getscalereadings 356xxxx
2015.10.04 00:40:56 5: withings_D356xxxx: getdeviceproperties 356xxxx
Reicht das an Informationen, oder brauchst du mehr?
Danke!
Beste Grüße
Andy
edit: ich glaube mir hat einfach nur das JSON Modul auf meinem raspberryPi gefehlt..... Zumindest ist nach der Installation und einem Neustart von FHEM der Fehler nun weg. Jedoch wird mir nur der letzte Wert angezeigt für CO2. Gibt es eine Möglichkeit, dass wirklich alle Werte runtergeladen werden, sodass man CO2 auch plotten kann? Auf der Webseite werden ja auch viel mehr CO2 Werte für einen Plot genutzt.
Hi.
Ich wollte die neue Beta mal ausprobieren, allerdings funktioniert der Login nicht mehr.
Die Waage hab ich zwischenzeitlich noch mal neu verbunden und bei der Gelegenheit die Batterien getauscht.
Internals: CFGFN ./FHEM/(p)Withings.cfg CHANGED Clients :withings: DEF mail@mail.cc Passwort Device Waage DeviceType IODev LAST_POLL 2015-10-04 15:40:46 Login xxx@xxxxx NAME Waage NR 203 NTFY_ORDER 50-Waage Password xxxxxxxxxxx STATE Login error SUBTYPE ACCOUNT TYPE withings appliver 4e725309 created fw model modelID sn typeID Readings: Attributes: IODev group Daten room WithingsTest stateFormat batteryLevel % verbose 5
2015.10.04 16:14:17 1: Waage: LOGIN ERROR 2015.10.04 16:14:17 1: PERL WARNING: Use of uninitialized value $_ in substitution (s///) at FHEM/HttpUtils.pm line 45. 2015.10.04 16:14:17 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at FHEM/HttpUtils.pm line 189. 2015.10.04 16:14:17 1: PERL WARNING: Use of uninitialized value $_ in substitution (s///) at FHEM/HttpUtils.pm line 45. 2015.10.04 16:14:17 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at FHEM/HttpUtils.pm line 189.
Any ideas?
Edit:
wegen Dummheit modifiziert (mi.ke)
Zitat von: mi.ke am 04 Oktober 2015, 16:21:14
Ich wollte die neue Beta mal ausprobieren, allerdings funktioniert der Login nicht mehr.
Any ideas?
Was hast du da definiert?
Du musst nur einen Account über FHEM definieren, keine Devices.
Ich kann deine unformatierten Internals vom Telefon aus leider nicht lesen.
Dafür dein FHEM Passwort, das du jetzt ändern darfst...
Poste mal nur die Definitionen deiner Withings Geräte aus der Config, also Account und Device.
yepp, mit meinem Thread Design gewinn ich bestimmt keinen Preis.
Da ist wohl etwas schief gegangen.
Also nochmal:
Account
Internals:
CFGFN ./FHEM/(p)Withings.cfg
Clients :withings:
DEF mail@mail.cc Passwort
Login mail@mail.cc
NAME Waage
NR 203
NTFY_ORDER 50-Waage
Password Passwort
STATE Login error
SUBTYPE ACCOUNT
TYPE withings
appliver 4e725309
Readings:
Attributes:
IP 172.22.1.24
group Daten
nossl 1
room WithingsTest
stateFormat batteryLevel %
verbose 5
aus dem Log
2015.10.04 16:14:17 1: Waage: LOGIN ERROR
2015.10.04 16:14:17 1: PERL WARNING: Use of uninitialized value $_ in substitution (s///) at FHEM/HttpUtils.pm line 45.
2015.10.04 16:14:17 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at FHEM/HttpUtils.pm line 189.
2015.10.04 16:14:17 1: PERL WARNING: Use of uninitialized value $_ in substitution (s///) at FHEM/HttpUtils.pm line 45.
2015.10.04 16:14:17 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at FHEM/HttpUtils.pm line 189.
Passwort ist geändert, DANKE
Hallo Markus,
habe eben mal deine beta Version ausprobieren wollen, leider funktioniert diese im Gegensatz zur alten svn-version bei mir nicht :(
Was mir aufgefallen ist:
1. Dereferenzierungs-Warnings welche das Modul für Perl < 5.14 unbrauchbar machen, und unschöne Lögmeldungen erzeugen:
2015.10.07 20:43:10.374 1: PERL WARNING: keys on reference is experimental at ./FHEM/32_withings.pm line 1707.
2015.10.07 20:43:10.374 1: PERL WARNING: keys on reference is experimental at ./FHEM/32_withings.pm line 1607.
2015.10.07 20:43:10.374 1: PERL WARNING: keys on reference is experimental at ./FHEM/32_withings.pm line 1600.
Diese mehr oder weniger Schönheitsfehler kannst du vermeiden wenn du statt z.B. Z.1600:
foreach my $series ( keys($json->{body}{series}))
das hier schreibst, und dein hash explizit vor benutzen von keys() dereferenzierst:
foreach my $series (keys %{$json->{body}{series}})
2. Perl-Warnings aufgrund von verwenden uninitialisierter Variablen:
2015.10.07 20:44:27.944 1: PERL WARNING: Use of uninitialized value $lastupdate in addition (+) at ./FHEM/32_withings.pm line 1267.
2015.10.07 20:44:13.664 1: PERL WARNING: Use of uninitialized value in concatenation (.) or string at FHEM/HttpUtils.pm line 244.
2015.10.07 20:44:13.664 1: PERL WARNING: Use of uninitialized value $_ in substitution (s///) at FHEM/HttpUtils.pm line 47.
2015.10.07 20:44:13.510 1: PERL WARNING: Use of uninitialized value in string ne at ./FHEM/32_withings.pm line 359.
3. Das erhalte ich nach dem define (define ws_50 withings xxUSERxx xxPUBKEYxx) auf verbose 3:
2015.10.07 20:44:13.510 1: withings: no I/O device
2015.10.07 20:44:13.510 3: No I/O device found for withings
4. Das erhalte ich bei einem updateAll auf verbose 5:
2015.10.07 20:45:31.103 5: withings: parseactivity
}
'status' => 2555
'body' => {},
'error' => 'Unknown error: ',
2015.10.07 20:45:31.103 5: withings: json returned: {
2015.10.07 20:45:31.103 5: withings: dispatch userDailyActivity
2015.10.07 20:45:31.019 5: withings: parsemeasuregroups
}
'error' => 'The provided userid/deviceid and/or Oauth credentials do not match sessionid:[]'
'status' => 250,
2015.10.07 20:45:31.019 5: withings: json returned: {
2015.10.07 20:45:31.019 5: withings: dispatch userReadingsCommon
2015.10.07 20:45:31.018 5: withings: parseaggregate
}
'status' => 2555
'body' => {},
'error' => 'Unknown error: ',
2015.10.07 20:45:31.018 5: withings: json returned: {
2015.10.07 20:45:31.018 5: withings: dispatch userDailyAggregate
2015.10.07 20:45:30.658 5: withings: getuserdailystats 8554017
2015.10.07 20:45:30.657 5: withings: getuserreadings 8554017
Evtl. hast du einen Lösungsvorschlag, oder ich kann noch was ausprobieren...
Gruß
Claudiu
1. Danke, versuche ich am Wochenende umzubauen
2. lastupdate gibt es beim ersten Start noch nicht.
3. Wo ist dein I/O Device? Dass man Devices und User nicht selbst definieren sollte, hätte ich betonen müssen.
4. Immer noch kein I/O Device? Die API mit Key wird nicht mehr verwendet
Definier mal deinen Wirhings Account.
Hallo Markus,
Zu 2.
wenn dir das bewusst ist, warum fängst du dann dieses Warning nicht direkt ab?
statt: my $enddate = ($lastupdate+(100*24*60*60));
z.B.: my $enddate = $lastupdate ? ($lastupdate+(100*24*60*60)) : 1;
Hab jetzt das Modul mit ACCOUNT definiert und das ist mir hier aufgefallen:
1. Die Devices werden jetzt erfolgreich angelegt, allerdings fehlt bei der Waage selber das reading co2?
2015.10.08 10:05:47.414 5: withings_D3576934: parsemeasurements
};
'status' => 503
'error' => 'Invalid Params',
2015.10.08 10:05:47.414 5: withings_D3576934: json returned: $VAR1 = {
2015.10.08 10:05:47.414 5: withings_D3576934: dispatch deviceReadingsScale
2015-10-08_10:05:47 withings_D3576934 lastSessionDate: 2015-10-08 08:21:01
2015-10-08_10:05:47 withings_D3576934 lastWeighinDate: 2015-10-08 08:21:03
2015-10-08_10:05:47 withings_D3576934 battery: ok
2015-10-08_10:05:47 withings_D3576934 batteryLevel: 100
2015.10.08 10:05:47.353 5: withings_D3576934: parsedevice 3576934
};
'status' => 0
},
'behaviour' => 0
'night_clock' => 'f',
},
'g_adjust' => 1
'lastweighindate' => 0,
'behaviour' => 0,
'scale_config' => {
'debug' => 0,
'modified' => 1425292533,
'timezone' => 'Europe/Berlin',
'type' => 1,
'impedancemeter' => 1,
'lastweighindate' => 1444285263,
'id' => 3576934,
'mfgid' => 573474,
'longitude' => '139.75138',
'macaddress' => '00:24:e4:2f:54:d8',
'created' => 1425292533,
'latitude' => '35.6853',
'sn' => 'SN-00:24:e4:2f:54:d8',
'batterylvl' => 100,
'preflang' => 'de_DE',
'network' => 2,
'manual_geoloc' => 'f',
'lastsessiondate' => 1444285261,
'fw' => '1621',
'model' => 4,
'body' => {
2015.10.08 10:05:47.352 5: withings_D3576934: json returned: $VAR1 = {
2015.10.08 10:05:47.352 5: withings_D3576934: dispatch deviceProperties
2015-10-08_10:05:47 global DELETEATTR withings_D3576934 disable
2015.10.08 10:05:47.101 5: withings_D3576934: getscalereadings 3576934
2015.10.08 10:05:47.100 5: withings_D3576934: getdeviceproperties 3576934
2. Für was sollen die ganzen ".poll*" Readings gut sein? Macht das nicht mehr Sinn das im device hash zu speichern?
3. Was mir bei keinem Modul gefällt ist, wenn durch das Modul automatisch irgendwelche Attribute gesetzt/geändert werden.
Das ist beim ersten define ganz OK wenn hier evtl. sinnvolle Vorbelegungen stattfinden, allerdings sollte es das dann auch gewesen sein und die Attribute im Anschluss komplett dem User überlassen werden.
Werde mal bei Gelegenheit schauen ob mir noch was auffällt.
Gruß
Claudiu
Hallo Markus, seit dem letzten Firmware-Update stehen in der Waage auch die Anzahl Schritte des Vortages zu Verfügung. Kannst Du bitte das Modul entsprechend erweitern? Kann man überhaupt auf alle Daten, die Withings sammelt, zugreifen (z.B. Schlafwerte)? Die Firma ermöglicht ja vorbildlich die Exportfunktion.
Wo ich auch noch Unterstützung brauche: Diese Einträge tauchen permanent alle 15min im fhem-Logfile auf:
2015.11.23 15:54:35 3: withings_U8752517: Measuregroups gap error! (latest: 2015-11-19 03:57:43)
2015.11.23 15:54:35 4: withings_U8752517: got 0 entries from MeasureGroups (latest: 2015-11-23 08:18:55)
2015.11.23 16:09:36 3: withings_U8752517: Measuregroups gap error! (latest: 2015-11-19 03:57:43)
2015.11.23 16:09:36 4: withings_U8752517: got 0 entries from MeasureGroups (latest: 2015-11-23 08:18:55)
2015.11.23 16:24:36 3: withings_U8752517: Measuregroups gap error! (latest: 2015-11-19 03:57:43)
2015.11.23 16:24:36 4: withings_U8752517: got 0 entries from MeasureGroups (latest: 2015-11-23 08:18:55)
2015.11.23 16:39:36 3: withings_U8752517: Measuregroups gap error! (latest: 2015-11-19 03:57:43)
2015.11.23 16:39:36 4: withings_U8752517: got 0 entries from MeasureGroups (latest: 2015-11-23 08:18:55)
2015.11.23 16:54:48 3: withings_U8752517: Measuregroups gap error! (latest: 2015-11-19 03:57:43)
2015.11.23 16:54:48 4: withings_U8752517: got 0 entries from MeasureGroups (latest: 2015-11-23 08:18:55)
Wie kann ich diese unsinnigen Einträge verhindern?
Hallo,
ich habe mein Witthings Account angelegt mit define Gesundheit withings [ACCOUNT] xxxx@xxxx.xx XXXXXX, es erscheint auch als Initialized, aber es werden weder Geräte noch user irgendwo angelegt, ich benutze die 32_withings.pm vom 26.09.2015 von Marcus.
Was mache ich falsch?
Grüße
Swen
Hallo,
Alle Devices und User sind am anfang disabled...
Kannst dir auch mal noch Beitrag 169 von Markus hier im Thread durchlesen
Gruß Christoph
Hallo,
Ich habe mit dem Modul bisher keine Probleme, es werden die Readings erfasst und die Einbindung erfolgte problemlos. Allerdings immer nur ein aktueller Wert pro Typ (Co2 oder Temperatur), wenn ich mich wiege, die Werte zwischen dem Wiegen kommen im FHEM (FileLog) nicht an.
Ich habe auch bei den Devices ein get <name> update all gemacht,es wird aber immer nur der "letzte" Wert übertragen.
Wer kann mir helfen?
Grüße
fetzz
Frage:
Gibst es eigentlich eine aktuellere Version als "testversion b3 2015-09-26"? :)
Grüsse
Huhu Markus, André und Beitragende,
kurze Rückmeldung: Das Beta-Modul ist prima - mit der Aura und dem Schlafsensor ist damit auch der ROOMMATE-Status "asleep" ziemlich gut zu steuern. :)
Gibts eigentlich Pläne, das Ding einzuchecken? +1 von mir jedenfalls, und mal wieder vielen Dank für Euer Engagement!
Martin
Ganz sauber funktioniert das Modul leider noch nicht.
Home macht gerade noch Probleme, die Änderungen der Wecker für Aura hab ich noch nicht drin und mein Schlafsensor wird mal wieder ausgetauscht weil er defekt ist.
Der Rest ist im Anhang - ich hab die Timestamps denke ich endlich hinbekommen.
Letzte Beta Version vor dem CheckinHiermit sollten nun wieder alle Readings gelesen werden ohne dass es zu doppelten Daten kommt.
Zusätzlich lassen sich die Alarme des Aura Weckers auslesen und ändern.
Bitte gründlichst testen, wenn damit keine Fehler mehr auftreten, würde ich das Modul dann demnächst im SVN austauschen.
Zitat von: rubbertail am 20 Januar 2016, 16:52:57kurze Rückmeldung: Das Beta-Modul ist prima - mit der Aura und dem Schlafsensor ist damit auch der ROOMMATE-Status "asleep" ziemlich gut zu steuern. :)
Den Status berechnet Withings ebenso wie die Readings erst am Ende der Nacht. Verwendest du dafür die unknown Readings?
Bitte nochmal runterladen wenn ihr eine Home Camera habt, sonst gibt's nen Crash beim Aktualisieren der Alert ReadingsKnown Bugs: Das Einlesen der Aura Alarms funktioniert noch nicht wirklich sauber
Hoi Markus, bist der Beste - werd ab morgen abend testen und berichten!
Hier noch ein paar Icons :)
Hi Markus,
Also meine Tests verliefen erfolgreich alle - prima Sache, und die Icons sind natürlich ne tolle Dreingabe!
Den Schlafstatus hab ich noch nicht genauer beobachtet - ich dachte da an das Reading sleepstate, aber habs noch nicht näher probiert.
Was allerdings noch auftaucht im Los ist folgendes:
2016.02.29 18:04:25 2: withings_U244355: Measuregroups gap error! (latest: 2016-01-20 15:45:16 < 2016-02-29 06:16:00) 0
Da bin ich nicht ganz sicher, was das ist - allerdings ist dieser User mit mehreren Geräten "verknüpft", vielleicht liegts daran...
Danke jedenfalls für das tolle Modul!
Martin
---edith---
Offenbar ist bei dem "tollen" Aura-Lichtdings das WLAN-Modul abgeraucht... göttinseidank noch in der Gewährleistung. Das ist vermutlich der Grund für o. a. Fehler.
Hallo Markus,
ich habe am Wochenende mal dein Modul ausprobiert. Tolle Arbeit!
Ich habe aber jetzt leider auch die von Martin angemerkte Zeile im Log:
2016.03.08 08:54:52 2: withings_U8213356: Measuregroups gap error! (latest: 2016-03-06 19:51:18 < 2016-03-06 21:14:06) 0
Zur Erklärung, ich besitze nur das Blutdruckmessgerät und nur das ist mit meinem Withings-Account verbunden. Das erste Datum entspricht in etwa der Zeit, wo ich das Gerät in Fhem angelegt habe. Das neuere Datum ist der Zeitpunkt der letzten Messung mit dem Blutdruckmessgerät.
Vielleicht hilft das zur Aufklärung der Meldungen.
Viele Grüße,
Ulf
Hallo,
ich wollte einmal nachfragen wie es mit dem Modul momentan ausschaut da hier irgendwie nicht mehr viel gepostet wird und es recht eingeschlafen wirkt.
im Wiki findet man auch keine Erklärung und ich glaube nachdem ich das hier alles durchgelesen habe das der Eintrag in der Commandref auch nicht mehr der aktuellste ist <--- keine Beschwerde nur eine schliche Feststellung ;)
Was ich auch noch als Frage habe.
Wie schaut es genau aus mit dem Anlegen?
Aus dem in der Commandref werde ich nicht ganz schlau.
Habe ich es mir richtig zusammen gereimt das es wie folgt ist bei der aktuellsten Beta Version?
define <Anzeigename> withings <ACCOUNT> <username> <passwort>
Bsp.
define Gesundheitsdaten_Max withings Max Mustermann Max.Mustermann@gmail.com Max123Mustermann
Darauf hin wird ein Device angelegt mit dem Namen Gesundheitsdaten_Max das dann als Readings sämtliche Daten hat die man auch unter der Homepage abrufen kann?
Noch was zu den Paketen die auf dem Host installiert sein müssen.
Wie funktioniert das genau?
Sehe ich es richtig das man Paket JSON manuell installieren muss.
Das Paket JSON wird einfach in der Konsole des host in meinem Fall ein Raspberry mit
apt-get install libjson-perl
Installiert.
Ansonsten habe ich vor langer zeit mit dem Befehl
sudo apt-get install perl libdevice-serialport- perl libio-socket-ssl-perl libwww-perl libxml-simple- perl
eine ganze reihe an perl Paketen installiert diese sollten den Rest abdecken das ich ausehr dem JSON nichts weiter machen muss.
Habe ich das soweit alles richtig verstanden?
Gruß
Dennis
Du legst nie ein Device an, immer nur den Withings Account.
Der Rest geht automatisch.
Ich werde das Modul demnächst durch die neue Versions ersetzen, bin nur noch nicht dazu gekommen. Evtl. am Wochenende.
Grüße aus nem Flugzeug ;)
Markus
Sent from my iPhone using Tapatalk
Das
Zitat von: Markus M. am 25 April 2016, 09:03:07
Du legst nie ein Device an, immer nur den Withings Account.
Der Rest geht automatisch.
Ich werde das Modul demnächst durch die neue Versions ersetzen, bin nur noch nicht dazu gekommen. Evtl. am Wochenende.
Grüße aus nem Flugzeug ;)
Markus
Sent from my iPhone using Tapatalk
@Markus danke für die Antwort :)
Ich bin mir nicht sicher ob wir gerade ein Missverständnis haben.
Ich meinte mit Device nicht ein Withings Gerät einzeln in FHEM sondern das der Nutzer dann als Device in FHEM auftaucht also z.B. so wie ein Temperaturfühler.
Und das der Nutzer in FHEM dann als Reading die einzelnen Werte hat.
und die einzelnen Withings Nutzer die man im Withings Account hat werden alle einzeln angelegt.
Also z.B.
define <Anzeigename1> withings <ACCOUNT1> <username> <passwort>
define <Anzeigename2> withings <ACCOUNT2> <username> <passwort>
define <Anzeigename3> withings <ACCOUNT3> <username> <passwort>
.
.
.
usw.
Gruß
Dennis
ich wollte mal nachfragen wie es ausschaut gibt's was neues?
Zitat von: Blablubblaber am 24 Mai 2016, 08:46:48
ich wollte mal nachfragen wie es ausschaut gibt's was neues?
Hast du autocreate in den Accounts aufgerufen um die User und Geräte anzulegen?
Ich meinte was neues bzw dem Einchecken :)
Habe es noch nicht am laufen da ich dachte es wird demnächst offiziell in die fhem Modul liste aufgenommen.
Ach so! Dauert noch da ich gerade Netatmo in Arbeit habe.
Teste doch mal bitte schon, um Bugs erkennen zu können.
Sent from my iPhone using Tapatalk
hast du mir ein Link mit einer Anleitung wie und wo ich was hinzufügen muss damit es läuft.
Sprich was muss ich runterladen und in welche Ordner machen das es mit dem autocreate funktioniert.
Die Datei in den fhem/FHEM Ordner (alte sichern), dann am besten FHEM mal durchstarten.
Sent from my iPhone using Tapatalk
So habe es mal alles eingerichtet läuft noch habe ich keine Probleme werde mal weiter rumprobieren eine Frage habe ich aber noch ist es eventuell möglich das ganze auf Deutsch zu bekommen :)
oder die Möglichkeit zwischen Englisch und Deutsch zu wählen.
Was auf Deutsch?
Die Doku schreibe ich nur einmal, auf Englisch. Sorry
nein nicht die doku ich meinte die readings das man da eventuell ein attr setzen kann was die dann auf DE oder EN ausgibt.
Zitat von: Blablubblaber am 24 Mai 2016, 17:24:08
nein nicht die doku ich meinte die readings das man da eventuell ein attr setzen kann was die dann auf DE oder EN ausgibt.
Ach so! Ne, definitiv nicht :o
Wozu würdest du das brauchen?
Garnicht direkt war eher die Frage ob es theoretisch möglich wäre als nettes extra.
Gut bei genauerer Überlegung waren die finger wieder schneller mit schreiben wie es sinnvoll ist am besten einfach vergessen XD
Tach Markus,
kein Stress damit - das ist nun kein wirklich entscheidendes Modul - aber ich hab gestern nochmal die letzte Version eingespielt - und hab damit mein FHEM vorübergehend getötet, mit Meldung im Log "ERROR in Socket Creation : Verbindungsaufbau abgelehnt".
Leider war ein Log-Hochsetzen dadurch auch nicht mehr möglich.
Hab das Modul mal ganz rausgenommen vorübergehend, jetzt läuft FHEM wieder - dies hier nur erstmal als Feedback.
Martin
Ähm... ich hab irgendwie grad nen Blackout scheint mir - könnt mir mal jemand nen Tritt in die richtige Richtung verpassen?
Ich versuch mit dem neuen Modul (in /opt/fhem/FHEM kopiert, chown fhem:dialout 32_withings.pm gemacht, auf Ausführbarkeit geachtet) grade den Account neu zu definieren (alte Reste sind weg):
define mywithings withings ACCOUNT mywithingsuser@mywithingsemail.de myP455w0rd!
(Account-Name/eMail und Passwort sind natürlich Fake) - Tscha, und an dieser Stelle beendet sich fhem ganz. Im Log seh ich dann, dass er versucht, alle möglichen Geräte und Accounts anzulegen, rauscht aber an die Wand - merkwürdigerweise aber nicht mit einer eigenen Fehlermeldung, sondern dann auf einmal mit yowsup-Fehlern?!?
Bin mit configDB und dblog unterwegs, daher ist das nicht so fix mal in der fhem.cfg zu ändern - wenn ich danach über das Startscript fhem neu starte, hat er den define offenbar noch nciht gespeichert, und fhem kommt ohne Withings-Account und -Geräte wieder hoch, also kein Beinbruch, aber ich frag mich grade, ob ich hier Bockmist baue?
Danke für ne Idee - falls jemand eine hat. Merkwürdig ist - es ging ja schonmal... %((
LG
Martin
Seltsam.
Kannst du das bei Gelegenheit mal mit aktiviertem Stacktrace und Loglevel 5 probieren?
Die Version im Anhang setzt automatisch verbose 5 und disable 1 für mit autocreate angelegte Geräte.
Damit solltest du dann sehen können wo es knallt :)
Aaaalso, hier mal der Logauszug (weiter unten, Account ausgeXXXt) - Markus, vielleicht könntest du mir da was dazu sagen (schonmal danke fürs gucken)?
Ich sehe, dass der Account erst angelegt wird, sich erfolgreich damit angemeldet wird, und nun die Devices automatisch angelegt würden.
Auf die Nase fällt er dann am Ende bei "readauraalarm" - und da kommt dann ein "ERROR in Socket Creation : Verbindungsaufbau abgelehnt" - aber offenbar durch den yowsup-Client in Python. Das passiert allerdings ohne das 32_withings-Modul nicht.
Bzgl. des Logauszugs: Da, wo "----- IGNORE ----" steht, kommt bei jeder Device-Erstellung eine Ansammlung von Meldungen wie
...
2016.06.21 13:59:38 4: Ignoring AURIOL_47
2016.06.21 13:59:38 4: Ignoring AURIOL_83
2016.06.21 13:59:38 4: Ignoring CUL_TCM97001_0
...
die einfach 26x hintereinander alle Devices auflistet, denen ich ein "set <xyz> attr ignore 1" verpasst habe. Das passiert hinter jedem User/Device, das autocreated wird aus dem withings-Account heraus.
So, nun aber der Logauszug:
2016.06.21 13:59:34 4: WEB_195.81.210.187_61598 POST /fhem&fw_id=395&cmd=define+mywithingsacc+withings+ACCOUNT+myemail%40mydomain.de+mypassword; BUFLEN:0
2016.06.21 13:59:34 5: Cmd: >define mywithingsacc withings ACCOUNT myemail@mydomain.de mypassword<
2016.06.21 13:59:34 5: Loading ./FHEM/32_withings.pm
2016.06.21 13:59:34 1: PERL WARNING: keys on reference is experimental at ./FHEM/32_withings.pm line 1718.
2016.06.21 13:59:34 3: stacktrace:
2016.06.21 13:59:34 3: main::__ANON__ called by ./FHEM/32_withings.pm (1718)
2016.06.21 13:59:34 3: (eval) called by fhem.pl (2242)
2016.06.21 13:59:34 3: (eval) called by fhem.pl (2241)
2016.06.21 13:59:34 3: main::CommandReload called by fhem.pl (1682)
2016.06.21 13:59:34 3: main::LoadModule called by fhem.pl (1744)
2016.06.21 13:59:34 3: main::CommandDefine called by fhem.pl (1072)
2016.06.21 13:59:34 3: main::AnalyzeCommand called by fhem.pl (942)
2016.06.21 13:59:34 3: main::AnalyzeCommandChain called by ./FHEM/01_FHEMWEB.pm (2248)
2016.06.21 13:59:34 3: main::FW_fC called by ./FHEM/01_FHEMWEB.pm (759)
2016.06.21 13:59:34 3: main::FW_answerCall called by ./FHEM/01_FHEMWEB.pm (454)
2016.06.21 13:59:34 3: main::FW_Read called by fhem.pl (3172)
2016.06.21 13:59:34 3: main::CallFn called by fhem.pl (659)
2016.06.21 13:59:34 5: withings: initialize
2016.06.21 13:59:34 5: withings: define mywithingsacc withings ACCOUNT myemail@mydomain.de mypassword
2016.06.21 13:59:34 5: mywithingsacc: connect
2016.06.21 13:59:34 5: Triggering global (1 changes)
2016.06.21 13:59:34 5: Starting notify loop for global, first event ATTR mywithingsacc room WithingsTest
2016.06.21 13:59:34 5: Notify from Device: global recieved
2016.06.21 13:59:34 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR mywithingsacc room WithingsTest , Reading: state , Value: ATTR mywithingsacc room WithingsTest , Unit:
2016.06.21 13:59:34 5: Triggering global (1 changes)
2016.06.21 13:59:34 5: Starting notify loop for global, first event ATTR mywithingsacc verbose 5
2016.06.21 13:59:34 5: Notify from Device: global recieved
2016.06.21 13:59:34 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR mywithingsacc verbose 5 , Reading: state , Value: ATTR mywithingsacc verbose 5 , Unit:
2016.06.21 13:59:34 4: HttpUtils url=https://healthmate.withings.com/
2016.06.21 13:59:35 4: https://healthmate.withings.com/: HTTP response code 302
2016.06.21 13:59:35 4: HttpUtils https://healthmate.withings.com/: Redirect to https://account.withings.com/connectionuser?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F
2016.06.21 13:59:35 4: HttpUtils url=https://account.withings.com/connectionuser?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F
2016.06.21 13:59:35 4: https://account.withings.com/connectionuser?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F: HTTP response code 302
2016.06.21 13:59:35 4: HttpUtils https://account.withings.com/connectionuser?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F: Redirect to https://account.withings.com:443/connectionuser/account_login?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F
2016.06.21 13:59:35 4: HttpUtils url=https://account.withings.com:443/connectionuser/account_login?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F
2016.06.21 13:59:35 4: https://account.withings.com:443/connectionuser/account_login?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F: HTTP response code 200
2016.06.21 13:59:35 4: HttpUtils https://account.withings.com:443/connectionuser/account_login?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F: Got data, length: 3535
2016.06.21 13:59:35 4: mywithingsacc: appliver 9bb36b80
2016.06.21 13:59:35 4: HttpUtils url=https://account.withings.com/connectionuser/account_login?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F
2016.06.21 13:59:36 4: https://account.withings.com/connectionuser/account_login?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F: HTTP response code 302
2016.06.21 13:59:36 4: HttpUtils https://account.withings.com/connectionuser/account_login?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F: Got data, length: 0
2016.06.21 13:59:36 4: HttpUtils https://account.withings.com/connectionuser/account_login?appname=my2&appliver=9bb36b80&r=https%3A%2F%2Fhealthmate.withings.com%2F: Zero length data, header follows:
2016.06.21 13:59:36 4: Server: nginx
2016.06.21 13:59:36 4: Date: Tue, 21 Jun 2016 11:59:36 GMT
2016.06.21 13:59:36 4: Content-Type: text/html;charset=UTF-8
2016.06.21 13:59:36 4: Content-Length: 0
2016.06.21 13:59:36 4: Connection: close
2016.06.21 13:59:36 4: Location: https://healthmate.withings.com/
2016.06.21 13:59:36 4: Set-Cookie: session_key=1158-581228e6-cd6204ff; domain=withings.com; path=/; expires=Tue, 21-Jun-2016 13:59:36 UTC
2016.06.21 13:59:36 4: X-Powered-By: BeagleBone Black
2016.06.21 13:59:36 4: X-Recruitment: You should work for us! Find jobs at http://www.withings.com/us/careers/
2016.06.21 13:59:36 4: mywithingsacc: sessionkey 1158-581228e6-cd6204ff
2016.06.21 13:59:36 4: HttpUtils url=https://healthmate.withings.com/index/service/account
2016.06.21 13:59:36 4: https://healthmate.withings.com/index/service/account: HTTP response code 200
2016.06.21 13:59:36 4: HttpUtils https://healthmate.withings.com/index/service/account: Got data, length: 236
2016.06.21 13:59:36 4: mywithingsacc: accountid 12345
2016.06.21 13:59:36 5: mywithingsacc: getusers
2016.06.21 13:59:36 4: HttpUtils url=https://healthmate.withings.com/index/service/account
2016.06.21 13:59:37 4: https://healthmate.withings.com/index/service/account: HTTP response code 200
2016.06.21 13:59:37 4: HttpUtils https://healthmate.withings.com/index/service/account: Got data, length: 4454
2016.06.21 13:59:37 2: mywithingsacc: create new device 'withings_U244355' for user '244355'
2016.06.21 13:59:37 5: withings: define withings_U244355 withings 244355 cca4b4dc4a8a9146
2016.06.21 13:59:37 5: withings_U244355: inituser 244355
2016.06.21 13:59:37 2: withings_U244355: I/O device is mywithingsacc
2016.06.21 13:59:37 5: withings_U244355: getuserdetails 244355
2016.06.21 13:59:37 4: HttpUtils url=https://healthmate.withings.com/index/service/user
2016.06.21 13:59:37 4: https://healthmate.withings.com/index/service/user: HTTP response code 200
2016.06.21 13:59:37 4: HttpUtils https://healthmate.withings.com/index/service/user: Got data, length: 351
2016.06.21 13:59:37 5: Triggering global (1 changes)
2016.06.21 13:59:37 5: Starting notify loop for global, first event DEFINED withings_U244355
----- IGNORE -----
2016.06.21 13:59:38 5: Notify from Device: global recieved
2016.06.21 13:59:38 5: DbLog: logging of Device: global , Type: GLOBAL , Event: DEFINED withings_U244355 , Reading: state , Value: DEFINED withings_U244355 , Unit:
2016.06.21 13:59:38 5: Triggering global (1 changes)
2016.06.21 13:59:38 5: Starting notify loop for global, first event ATTR withings_U244355 alias MGR
2016.06.21 13:59:38 5: Notify from Device: global recieved
2016.06.21 13:59:38 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U244355 alias MGR , Reading: state , Value: ATTR withings_U244355 alias MGR , Unit:
2016.06.21 13:59:38 5: Triggering global (1 changes)
2016.06.21 13:59:38 5: Starting notify loop for global, first event ATTR withings_U244355 room WithingsTest
2016.06.21 13:59:38 5: Notify from Device: global recieved
2016.06.21 13:59:38 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U244355 room WithingsTest , Reading: state , Value: ATTR withings_U244355 room WithingsTest , Unit:
2016.06.21 13:59:38 5: Triggering global (1 changes)
2016.06.21 13:59:38 5: Starting notify loop for global, first event ATTR withings_U244355 IODev mywithingsacc
2016.06.21 13:59:38 5: Notify from Device: global recieved
2016.06.21 13:59:38 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U244355 IODev mywithingsacc , Reading: state , Value: ATTR withings_U244355 IODev mywithingsacc , Unit:
2016.06.21 13:59:38 5: Triggering global (1 changes)
2016.06.21 13:59:38 5: Starting notify loop for global, first event ATTR withings_U244355 disable 1
2016.06.21 13:59:38 5: Notify from Device: global recieved
2016.06.21 13:59:38 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U244355 disable 1 , Reading: state , Value: ATTR withings_U244355 disable 1 , Unit:
2016.06.21 13:59:38 5: Triggering global (1 changes)
2016.06.21 13:59:38 5: Starting notify loop for global, first event ATTR withings_U244355 verbose 5
2016.06.21 13:59:38 5: Notify from Device: global recieved
2016.06.21 13:59:38 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U244355 verbose 5 , Reading: state , Value: ATTR withings_U244355 verbose 5 , Unit:
2016.06.21 13:59:38 2: mywithingsacc: create new device 'withings_U245089' for user '245089'
2016.06.21 13:59:38 5: withings: define withings_U245089 withings 245089 2d203c6df6aaa655
2016.06.21 13:59:38 5: withings_U245089: inituser 245089
2016.06.21 13:59:38 2: withings_U245089: I/O device is mywithingsacc
2016.06.21 13:59:38 5: withings_U245089: getuserdetails 245089
2016.06.21 13:59:38 4: HttpUtils url=https://healthmate.withings.com/index/service/user
2016.06.21 13:59:38 4: https://healthmate.withings.com/index/service/user: HTTP response code 200
2016.06.21 13:59:38 4: HttpUtils https://healthmate.withings.com/index/service/user: Got data, length: 353
2016.06.21 13:59:38 5: Triggering global (1 changes)
2016.06.21 13:59:38 5: Starting notify loop for global, first event DEFINED withings_U245089
----- IGNORE -----
2016.06.21 13:59:39 5: Notify from Device: global recieved
2016.06.21 13:59:39 5: DbLog: logging of Device: global , Type: GLOBAL , Event: DEFINED withings_U245089 , Reading: state , Value: DEFINED withings_U245089 , Unit:
2016.06.21 13:59:39 5: Triggering global (1 changes)
2016.06.21 13:59:39 5: Starting notify loop for global, first event ATTR withings_U245089 alias BGR
2016.06.21 13:59:39 5: Notify from Device: global recieved
2016.06.21 13:59:39 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U245089 alias BGR , Reading: state , Value: ATTR withings_U245089 alias BGR , Unit:
2016.06.21 13:59:39 5: Triggering global (1 changes)
2016.06.21 13:59:39 5: Starting notify loop for global, first event ATTR withings_U245089 room WithingsTest
2016.06.21 13:59:39 5: Notify from Device: global recieved
2016.06.21 13:59:39 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U245089 room WithingsTest , Reading: state , Value: ATTR withings_U245089 room WithingsTest , Unit:
2016.06.21 13:59:39 5: Triggering global (1 changes)
2016.06.21 13:59:39 5: Starting notify loop for global, first event ATTR withings_U245089 IODev mywithingsacc
2016.06.21 13:59:39 5: Notify from Device: global recieved
2016.06.21 13:59:39 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U245089 IODev mywithingsacc , Reading: state , Value: ATTR withings_U245089 IODev mywithingsacc , Unit:
2016.06.21 13:59:39 5: Triggering global (1 changes)
2016.06.21 13:59:39 5: Starting notify loop for global, first event ATTR withings_U245089 disable 1
2016.06.21 13:59:39 5: Notify from Device: global recieved
2016.06.21 13:59:39 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U245089 disable 1 , Reading: state , Value: ATTR withings_U245089 disable 1 , Unit:
2016.06.21 13:59:39 5: Triggering global (1 changes)
2016.06.21 13:59:39 5: Starting notify loop for global, first event ATTR withings_U245089 verbose 5
2016.06.21 13:59:39 5: Notify from Device: global recieved
2016.06.21 13:59:39 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U245089 verbose 5 , Reading: state , Value: ATTR withings_U245089 verbose 5 , Unit:
2016.06.21 13:59:39 2: mywithingsacc: create new device 'withings_U245092' for user '245092'
2016.06.21 13:59:39 5: withings: define withings_U245092 withings 245092 9fe5ae859b88b36e
2016.06.21 13:59:39 5: withings_U245092: inituser 245092
2016.06.21 13:59:39 2: withings_U245092: I/O device is mywithingsacc
2016.06.21 13:59:39 5: withings_U245092: getuserdetails 245092
2016.06.21 13:59:39 4: HttpUtils url=https://healthmate.withings.com/index/service/user
2016.06.21 13:59:40 4: https://healthmate.withings.com/index/service/user: HTTP response code 200
2016.06.21 13:59:40 4: HttpUtils https://healthmate.withings.com/index/service/user: Got data, length: 350
2016.06.21 13:59:40 5: Triggering global (1 changes)
2016.06.21 13:59:40 5: Starting notify loop for global, first event DEFINED withings_U245092
----- IGNORE -----
2016.06.21 13:59:40 5: Notify from Device: global recieved
2016.06.21 13:59:40 5: DbLog: logging of Device: global , Type: GLOBAL , Event: DEFINED withings_U245092 , Reading: state , Value: DEFINED withings_U245092 , Unit:
2016.06.21 13:59:40 5: Triggering global (1 changes)
2016.06.21 13:59:40 5: Starting notify loop for global, first event ATTR withings_U245092 alias TKR
2016.06.21 13:59:40 5: Notify from Device: global recieved
2016.06.21 13:59:40 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U245092 alias TKR , Reading: state , Value: ATTR withings_U245092 alias TKR , Unit:
2016.06.21 13:59:40 5: Triggering global (1 changes)
2016.06.21 13:59:41 5: Starting notify loop for global, first event ATTR withings_U245092 room WithingsTest
2016.06.21 13:59:41 5: Notify from Device: global recieved
2016.06.21 13:59:41 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U245092 room WithingsTest , Reading: state , Value: ATTR withings_U245092 room WithingsTest , Unit:
2016.06.21 13:59:41 5: Triggering global (1 changes)
2016.06.21 13:59:41 5: Starting notify loop for global, first event ATTR withings_U245092 IODev mywithingsacc
2016.06.21 13:59:41 5: Notify from Device: global recieved
2016.06.21 13:59:41 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U245092 IODev mywithingsacc , Reading: state , Value: ATTR withings_U245092 IODev mywithingsacc , Unit:
2016.06.21 13:59:41 5: Triggering global (1 changes)
2016.06.21 13:59:41 5: Starting notify loop for global, first event ATTR withings_U245092 disable 1
2016.06.21 13:59:41 5: Notify from Device: global recieved
2016.06.21 13:59:41 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U245092 disable 1 , Reading: state , Value: ATTR withings_U245092 disable 1 , Unit:
2016.06.21 13:59:41 5: Triggering global (1 changes)
2016.06.21 13:59:41 5: Starting notify loop for global, first event ATTR withings_U245092 verbose 5
2016.06.21 13:59:41 5: Notify from Device: global recieved
2016.06.21 13:59:41 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U245092 verbose 5 , Reading: state , Value: ATTR withings_U245092 verbose 5 , Unit:
2016.06.21 13:59:41 2: mywithingsacc: create new device 'withings_U279179' for user '279179'
2016.06.21 13:59:41 5: withings: define withings_U279179 withings 279179 b9734d08ac8ef730
2016.06.21 13:59:41 5: withings_U279179: inituser 279179
2016.06.21 13:59:41 2: withings_U279179: I/O device is mywithingsacc
2016.06.21 13:59:41 5: withings_U279179: getuserdetails 279179
2016.06.21 13:59:41 4: HttpUtils url=https://healthmate.withings.com/index/service/user
2016.06.21 13:59:41 4: https://healthmate.withings.com/index/service/user: HTTP response code 200
2016.06.21 13:59:41 4: HttpUtils https://healthmate.withings.com/index/service/user: Got data, length: 357
2016.06.21 13:59:41 5: Triggering global (1 changes)
2016.06.21 13:59:41 5: Starting notify loop for global, first event DEFINED withings_U279179
----- IGNORE -----
2016.06.21 13:59:42 5: Notify from Device: global recieved
2016.06.21 13:59:42 5: DbLog: logging of Device: global , Type: GLOBAL , Event: DEFINED withings_U279179 , Reading: state , Value: DEFINED withings_U279179 , Unit:
2016.06.21 13:59:42 5: Triggering global (1 changes)
2016.06.21 13:59:42 5: Starting notify loop for global, first event ATTR withings_U279179 alias HEJ
2016.06.21 13:59:42 5: Notify from Device: global recieved
2016.06.21 13:59:42 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U279179 alias HEJ , Reading: state , Value: ATTR withings_U279179 alias HEJ , Unit:
2016.06.21 13:59:42 5: Triggering global (1 changes)
2016.06.21 13:59:42 5: Starting notify loop for global, first event ATTR withings_U279179 room WithingsTest
2016.06.21 13:59:42 5: Notify from Device: global recieved
2016.06.21 13:59:42 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U279179 room WithingsTest , Reading: state , Value: ATTR withings_U279179 room WithingsTest , Unit:
2016.06.21 13:59:42 5: Triggering global (1 changes)
2016.06.21 13:59:42 5: Starting notify loop for global, first event ATTR withings_U279179 IODev mywithingsacc
2016.06.21 13:59:42 5: Notify from Device: global recieved
2016.06.21 13:59:42 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U279179 IODev mywithingsacc , Reading: state , Value: ATTR withings_U279179 IODev mywithingsacc , Unit:
2016.06.21 13:59:42 5: Triggering global (1 changes)
2016.06.21 13:59:42 5: Starting notify loop for global, first event ATTR withings_U279179 disable 1
2016.06.21 13:59:42 5: Notify from Device: global recieved
2016.06.21 13:59:42 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U279179 disable 1 , Reading: state , Value: ATTR withings_U279179 disable 1 , Unit:
2016.06.21 13:59:42 5: Triggering global (1 changes)
2016.06.21 13:59:42 5: Starting notify loop for global, first event ATTR withings_U279179 verbose 5
2016.06.21 13:59:42 5: Notify from Device: global recieved
2016.06.21 13:59:42 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U279179 verbose 5 , Reading: state , Value: ATTR withings_U279179 verbose 5 , Unit:
2016.06.21 13:59:42 2: mywithingsacc: create new device 'withings_U322517' for user '322517'
2016.06.21 13:59:42 5: withings: define withings_U322517 withings 322517 d7692768cca38350
2016.06.21 13:59:42 5: withings_U322517: inituser 322517
2016.06.21 13:59:42 2: withings_U322517: I/O device is mywithingsacc
2016.06.21 13:59:42 5: withings_U322517: getuserdetails 322517
2016.06.21 13:59:42 4: HttpUtils url=https://healthmate.withings.com/index/service/user
2016.06.21 13:59:42 4: https://healthmate.withings.com/index/service/user: HTTP response code 200
2016.06.21 13:59:42 4: HttpUtils https://healthmate.withings.com/index/service/user: Got data, length: 354
2016.06.21 13:59:42 5: Triggering global (1 changes)
2016.06.21 13:59:42 5: Starting notify loop for global, first event DEFINED withings_U322517
2016.06.21 13:59:43 5: Notify from Device: global recieved
----- IGNORE -----
2016.06.21 13:59:43 5: DbLog: logging of Device: global , Type: GLOBAL , Event: DEFINED withings_U322517 , Reading: state , Value: DEFINED withings_U322517 , Unit:
2016.06.21 13:59:43 5: Triggering global (1 changes)
2016.06.21 13:59:43 5: Starting notify loop for global, first event ATTR withings_U322517 alias BET
2016.06.21 13:59:43 5: Notify from Device: global recieved
2016.06.21 13:59:43 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U322517 alias BET , Reading: state , Value: ATTR withings_U322517 alias BET , Unit:
2016.06.21 13:59:43 5: Triggering global (1 changes)
2016.06.21 13:59:43 5: Starting notify loop for global, first event ATTR withings_U322517 room WithingsTest
2016.06.21 13:59:43 5: Notify from Device: global recieved
2016.06.21 13:59:43 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U322517 room WithingsTest , Reading: state , Value: ATTR withings_U322517 room WithingsTest , Unit:
2016.06.21 13:59:43 5: Triggering global (1 changes)
2016.06.21 13:59:43 5: Starting notify loop for global, first event ATTR withings_U322517 IODev mywithingsacc
2016.06.21 13:59:43 5: Notify from Device: global recieved
2016.06.21 13:59:43 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U322517 IODev mywithingsacc , Reading: state , Value: ATTR withings_U322517 IODev mywithingsacc , Unit:
2016.06.21 13:59:43 5: Triggering global (1 changes)
2016.06.21 13:59:43 5: Starting notify loop for global, first event ATTR withings_U322517 disable 1
2016.06.21 13:59:43 5: Notify from Device: global recieved
2016.06.21 13:59:43 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U322517 disable 1 , Reading: state , Value: ATTR withings_U322517 disable 1 , Unit:
2016.06.21 13:59:43 5: Triggering global (1 changes)
2016.06.21 13:59:43 5: Starting notify loop for global, first event ATTR withings_U322517 verbose 5
2016.06.21 13:59:43 5: Notify from Device: global recieved
2016.06.21 13:59:43 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U322517 verbose 5 , Reading: state , Value: ATTR withings_U322517 verbose 5 , Unit:
2016.06.21 13:59:43 2: mywithingsacc: create new device 'withings_U393022' for user '393022'
2016.06.21 13:59:43 5: withings: define withings_U393022 withings 393022 8c87ca55e83b1242
2016.06.21 13:59:43 5: withings_U393022: inituser 393022
2016.06.21 13:59:43 2: withings_U393022: I/O device is mywithingsacc
2016.06.21 13:59:43 5: withings_U393022: getuserdetails 393022
2016.06.21 13:59:43 4: HttpUtils url=https://healthmate.withings.com/index/service/user
2016.06.21 13:59:44 4: https://healthmate.withings.com/index/service/user: HTTP response code 200
2016.06.21 13:59:44 4: HttpUtils https://healthmate.withings.com/index/service/user: Got data, length: 355
2016.06.21 13:59:44 5: Triggering global (1 changes)
2016.06.21 13:59:44 5: Starting notify loop for global, first event DEFINED withings_U393022
2016.06.21 13:59:44 5: Notify from Device: global recieved
----- IGNORE -----
2016.06.21 13:59:44 5: DbLog: logging of Device: global , Type: GLOBAL , Event: DEFINED withings_U393022 , Reading: state , Value: DEFINED withings_U393022 , Unit:
2016.06.21 13:59:44 5: Triggering global (1 changes)
2016.06.21 13:59:44 5: Starting notify loop for global, first event ATTR withings_U393022 alias MIS
2016.06.21 13:59:44 5: Notify from Device: global recieved
2016.06.21 13:59:44 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U393022 alias MIS , Reading: state , Value: ATTR withings_U393022 alias MIS , Unit:
2016.06.21 13:59:44 5: Triggering global (1 changes)
2016.06.21 13:59:44 5: Starting notify loop for global, first event ATTR withings_U393022 room WithingsTest
2016.06.21 13:59:45 5: Notify from Device: global recieved
2016.06.21 13:59:45 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U393022 room WithingsTest , Reading: state , Value: ATTR withings_U393022 room WithingsTest , Unit:
2016.06.21 13:59:45 5: Triggering global (1 changes)
2016.06.21 13:59:45 5: Starting notify loop for global, first event ATTR withings_U393022 IODev mywithingsacc
2016.06.21 13:59:45 5: Notify from Device: global recieved
2016.06.21 13:59:45 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U393022 IODev mywithingsacc , Reading: state , Value: ATTR withings_U393022 IODev mywithingsacc , Unit:
2016.06.21 13:59:45 5: Triggering global (1 changes)
2016.06.21 13:59:45 5: Starting notify loop for global, first event ATTR withings_U393022 disable 1
2016.06.21 13:59:45 5: Notify from Device: global recieved
2016.06.21 13:59:45 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U393022 disable 1 , Reading: state , Value: ATTR withings_U393022 disable 1 , Unit:
2016.06.21 13:59:45 5: Triggering global (1 changes)
2016.06.21 13:59:45 5: Starting notify loop for global, first event ATTR withings_U393022 verbose 5
2016.06.21 13:59:45 5: Notify from Device: global recieved
2016.06.21 13:59:45 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U393022 verbose 5 , Reading: state , Value: ATTR withings_U393022 verbose 5 , Unit:
2016.06.21 13:59:45 2: mywithingsacc: create new device 'withings_U552454' for user '552454'
2016.06.21 13:59:45 5: withings: define withings_U552454 withings 552454 bfc20d0562833038
2016.06.21 13:59:45 5: withings_U552454: inituser 552454
2016.06.21 13:59:45 2: withings_U552454: I/O device is mywithingsacc
2016.06.21 13:59:45 5: withings_U552454: getuserdetails 552454
2016.06.21 13:59:45 4: HttpUtils url=https://healthmate.withings.com/index/service/user
2016.06.21 13:59:45 4: https://healthmate.withings.com/index/service/user: HTTP response code 200
2016.06.21 13:59:45 4: HttpUtils https://healthmate.withings.com/index/service/user: Got data, length: 351
2016.06.21 13:59:45 5: Triggering global (1 changes)
2016.06.21 13:59:45 5: Starting notify loop for global, first event DEFINED withings_U552454
----- IGNORE -----
2016.06.21 13:59:46 5: Notify from Device: global recieved
2016.06.21 13:59:46 5: DbLog: logging of Device: global , Type: GLOBAL , Event: DEFINED withings_U552454 , Reading: state , Value: DEFINED withings_U552454 , Unit:
2016.06.21 13:59:46 5: Triggering global (1 changes)
2016.06.21 13:59:46 5: Starting notify loop for global, first event ATTR withings_U552454 alias PET
2016.06.21 13:59:46 5: Notify from Device: global recieved
2016.06.21 13:59:46 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U552454 alias PET , Reading: state , Value: ATTR withings_U552454 alias PET , Unit:
2016.06.21 13:59:46 5: Triggering global (1 changes)
2016.06.21 13:59:46 5: Starting notify loop for global, first event ATTR withings_U552454 room WithingsTest
2016.06.21 13:59:46 5: Notify from Device: global recieved
2016.06.21 13:59:46 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U552454 room WithingsTest , Reading: state , Value: ATTR withings_U552454 room WithingsTest , Unit:
2016.06.21 13:59:46 5: Triggering global (1 changes)
2016.06.21 13:59:46 5: Starting notify loop for global, first event ATTR withings_U552454 IODev mywithingsacc
2016.06.21 13:59:46 5: Notify from Device: global recieved
2016.06.21 13:59:46 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U552454 IODev mywithingsacc , Reading: state , Value: ATTR withings_U552454 IODev mywithingsacc , Unit:
2016.06.21 13:59:46 5: Triggering global (1 changes)
2016.06.21 13:59:46 5: Starting notify loop for global, first event ATTR withings_U552454 disable 1
2016.06.21 13:59:46 5: Notify from Device: global recieved
2016.06.21 13:59:46 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U552454 disable 1 , Reading: state , Value: ATTR withings_U552454 disable 1 , Unit:
2016.06.21 13:59:46 5: Triggering global (1 changes)
2016.06.21 13:59:46 5: Starting notify loop for global, first event ATTR withings_U552454 verbose 5
2016.06.21 13:59:46 5: Notify from Device: global recieved
2016.06.21 13:59:46 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_U552454 verbose 5 , Reading: state , Value: ATTR withings_U552454 verbose 5 , Unit:
2016.06.21 13:59:46 5: mywithingsacc: getdevices
2016.06.21 13:59:46 4: HttpUtils url=https://healthmate.withings.com/index/service/association
2016.06.21 13:59:46 4: https://healthmate.withings.com/index/service/association: HTTP response code 200
2016.06.21 13:59:46 4: HttpUtils https://healthmate.withings.com/index/service/association: Got data, length: 3065
2016.06.21 13:59:46 2: mywithingsacc: create new device 'withings_D59949' for device '59949'
2016.06.21 13:59:46 5: withings: define withings_D59949 withings 59949
2016.06.21 13:59:46 5: withings_D59949: initdevice 59949
2016.06.21 13:59:46 2: withings_D59949: I/O device is mywithingsacc
2016.06.21 13:59:46 5: withings_D59949: getdevicedetail 59949
2016.06.21 13:59:46 4: HttpUtils url=https://healthmate.withings.com/index/service/device
2016.06.21 13:59:47 4: https://healthmate.withings.com/index/service/device: HTTP response code 200
2016.06.21 13:59:47 4: HttpUtils https://healthmate.withings.com/index/service/device: Got data, length: 510
2016.06.21 13:59:47 5: Triggering global (1 changes)
2016.06.21 13:59:47 5: Starting notify loop for global, first event DEFINED withings_D59949
----- IGNORE -----
2016.06.21 13:59:47 5: Notify from Device: global recieved
2016.06.21 13:59:47 5: DbLog: logging of Device: global , Type: GLOBAL , Event: DEFINED withings_D59949 , Reading: state , Value: DEFINED withings_D59949 , Unit:
2016.06.21 13:59:47 5: Triggering global (1 changes)
2016.06.21 13:59:47 5: Starting notify loop for global, first event ATTR withings_D59949 alias Body Scale
2016.06.21 13:59:47 5: Notify from Device: global recieved
2016.06.21 13:59:47 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D59949 alias Body Scale , Reading: state , Value: ATTR withings_D59949 alias Body Scale , Unit:
2016.06.21 13:59:47 5: Triggering global (1 changes)
2016.06.21 13:59:47 5: Starting notify loop for global, first event ATTR withings_D59949 alias Smart Scale
2016.06.21 13:59:47 5: Notify from Device: global recieved
2016.06.21 13:59:47 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D59949 alias Smart Scale , Reading: state , Value: ATTR withings_D59949 alias Smart Scale , Unit:
2016.06.21 13:59:47 5: Triggering global (1 changes)
2016.06.21 13:59:47 5: Starting notify loop for global, first event ATTR withings_D59949 room WithingsTest
2016.06.21 13:59:47 5: Notify from Device: global recieved
2016.06.21 13:59:47 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D59949 room WithingsTest , Reading: state , Value: ATTR withings_D59949 room WithingsTest , Unit:
2016.06.21 13:59:47 5: Triggering global (1 changes)
2016.06.21 13:59:47 5: Starting notify loop for global, first event ATTR withings_D59949 IODev mywithingsacc
2016.06.21 13:59:47 5: Notify from Device: global recieved
2016.06.21 13:59:47 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D59949 IODev mywithingsacc , Reading: state , Value: ATTR withings_D59949 IODev mywithingsacc , Unit:
2016.06.21 13:59:47 5: Triggering global (1 changes)
2016.06.21 13:59:47 5: Starting notify loop for global, first event ATTR withings_D59949 disable 1
2016.06.21 13:59:47 5: Notify from Device: global recieved
2016.06.21 13:59:47 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D59949 disable 1 , Reading: state , Value: ATTR withings_D59949 disable 1 , Unit:
2016.06.21 13:59:48 5: Triggering global (1 changes)
2016.06.21 13:59:48 5: Starting notify loop for global, first event ATTR withings_D59949 verbose 5
2016.06.21 13:59:48 5: Notify from Device: global recieved
2016.06.21 13:59:48 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D59949 verbose 5 , Reading: state , Value: ATTR withings_D59949 verbose 5 , Unit:
2016.06.21 13:59:48 2: mywithingsacc: create new device 'withings_D1610557' for device '1610557'
2016.06.21 13:59:48 5: withings: define withings_D1610557 withings 1610557
2016.06.21 13:59:48 5: withings_D1610557: initdevice 1610557
2016.06.21 13:59:48 2: withings_D1610557: I/O device is mywithingsacc
2016.06.21 13:59:48 5: withings_D1610557: getdevicedetail 1610557
2016.06.21 13:59:48 4: HttpUtils url=https://healthmate.withings.com/index/service/device
2016.06.21 13:59:48 4: https://healthmate.withings.com/index/service/device: HTTP response code 200
2016.06.21 13:59:48 4: HttpUtils https://healthmate.withings.com/index/service/device: Got data, length: 437
2016.06.21 13:59:48 5: Triggering global (1 changes)
2016.06.21 13:59:48 5: Starting notify loop for global, first event DEFINED withings_D1610557
----- IGNORE -----
2016.06.21 13:59:48 5: Notify from Device: global recieved
2016.06.21 13:59:48 5: DbLog: logging of Device: global , Type: GLOBAL , Event: DEFINED withings_D1610557 , Reading: state , Value: DEFINED withings_D1610557 , Unit:
2016.06.21 13:59:49 5: Triggering global (1 changes)
2016.06.21 13:59:49 5: Starting notify loop for global, first event ATTR withings_D1610557 alias Blood Pressure Monitor
2016.06.21 13:59:49 5: Notify from Device: global recieved
2016.06.21 13:59:49 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D1610557 alias Blood Pressure Monitor , Reading: state , Value: ATTR withings_D1610557 alias Blood Pressure Monitor , Unit:
2016.06.21 13:59:49 5: Triggering global (1 changes)
2016.06.21 13:59:49 5: Starting notify loop for global, first event ATTR withings_D1610557 alias Wireless Blood Pressure Monitor
2016.06.21 13:59:49 5: Notify from Device: global recieved
2016.06.21 13:59:49 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D1610557 alias Wireless Blood Pressure Monitor , Reading: state , Value: ATTR withings_D1610557 alias Wireless Blood Pressure Monitor , Unit:
2016.06.21 13:59:49 5: Triggering global (1 changes)
2016.06.21 13:59:49 5: Starting notify loop for global, first event ATTR withings_D1610557 room WithingsTest
2016.06.21 13:59:49 5: Notify from Device: global recieved
2016.06.21 13:59:49 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D1610557 room WithingsTest , Reading: state , Value: ATTR withings_D1610557 room WithingsTest , Unit:
2016.06.21 13:59:49 5: Triggering global (1 changes)
2016.06.21 13:59:49 5: Starting notify loop for global, first event ATTR withings_D1610557 IODev mywithingsacc
2016.06.21 13:59:49 5: Notify from Device: global recieved
2016.06.21 13:59:49 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D1610557 IODev mywithingsacc , Reading: state , Value: ATTR withings_D1610557 IODev mywithingsacc , Unit:
2016.06.21 13:59:49 5: Triggering global (1 changes)
2016.06.21 13:59:49 5: Starting notify loop for global, first event ATTR withings_D1610557 disable 1
2016.06.21 13:59:49 5: Notify from Device: global recieved
2016.06.21 13:59:49 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D1610557 disable 1 , Reading: state , Value: ATTR withings_D1610557 disable 1 , Unit:
2016.06.21 13:59:49 5: Triggering global (1 changes)
2016.06.21 13:59:49 5: Starting notify loop for global, first event ATTR withings_D1610557 verbose 5
2016.06.21 13:59:49 5: Notify from Device: global recieved
2016.06.21 13:59:49 5: DbLog: logging of Device: global , Type: GLOBAL , Event: ATTR withings_D1610557 verbose 5 , Reading: state , Value: ATTR withings_D1610557 verbose 5 , Unit:
2016.06.21 13:59:49 2: mywithingsacc: create new device 'withings_D1963181' for device '1963181'
2016.06.21 13:59:49 5: withings: define withings_D1963181 withings 1963181
2016.06.21 13:59:49 5: withings_D1963181: initdevice 1963181
2016.06.21 13:59:49 2: withings_D1963181: I/O device is mywithingsacc
2016.06.21 13:59:49 5: withings_D1963181: getdevicedetail 1963181
2016.06.21 13:59:49 4: HttpUtils url=https://healthmate.withings.com/index/service/device
2016.06.21 13:59:49 4: https://healthmate.withings.com/index/service/device: HTTP response code 200
2016.06.21 13:59:49 4: HttpUtils https://healthmate.withings.com/index/service/device: Got data, length: 430
2016.06.21 13:59:49 5: withings_D1963181: readauraalarm
ERROR in Socket Creation : Verbindungsaufbau abgelehnt
Exception in thread Thread-1:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 763, in run
self.__target(*self.__args, **self.__kwargs)
File "/opt/yowsup-master/yowsup/demos/cli/cli.py", line 153, in startInputThread
cmd = self._queuedCmds.pop(0) if len(self._queuedCmds) else input(self.getPrompt()).strip()
EOFError: EOF when reading a line
Traceback (most recent call last):
File "/opt/yowsup-master/yowsup-cli", line 368, in <module>
if not parser.process():
File "/opt/yowsup-master/yowsup-cli", line 268, in process
self.startCmdline()
File "/opt/yowsup-master/yowsup-cli", line 297, in startCmdline
stack.start()
File "/opt/yowsup-master/yowsup/demos/cli/stack.py", line 26, in start
self.stack.loop(timeout = 0.5, discrete = 0.5)
File "/opt/yowsup-master/yowsup/stacks/yowstack.py", line 188, in loop
asyncore.loop(*args, **kwargs)
File "/usr/lib/python2.7/asyncore.py", line 216, in loop
poll_fun(timeout, map)
File "/usr/lib/python2.7/asyncore.py", line 156, in poll
read(obj)
File "/usr/lib/python2.7/asyncore.py", line 87, in read
obj.handle_error()
File "/usr/lib/python2.7/asyncore.py", line 83, in read
obj.handle_read_event()
File "/usr/lib/python2.7/asyncore.py", line 449, in handle_read_event
self.handle_read()
File "/opt/yowsup-master/yowsup/layers/network/layer.py", line 102, in handle_read
self.receive(data)
File "/opt/yowsup-master/yowsup/layers/network/layer.py", line 110, in receive
self.toUpper(data)
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 76, in toUpper
self.__upper.receive(data)
File "/opt/yowsup-master/yowsup/layers/stanzaregulator/layer.py", line 29, in receive
self.processReceived()
File "/opt/yowsup-master/yowsup/layers/stanzaregulator/layer.py", line 49, in processReceived
self.toUpper(oneMessageData)
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 76, in toUpper
self.__upper.receive(data)
File "/opt/yowsup-master/yowsup/layers/auth/layer_crypt.py", line 65, in receive
self.toUpper(payload)
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 76, in toUpper
self.__upper.receive(data)
File "/opt/yowsup-master/yowsup/layers/coder/layer.py", line 35, in receive
self.toUpper(node)
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 76, in toUpper
self.__upper.receive(data)
File "/opt/yowsup-master/yowsup/layers/logger/layer.py", line 14, in receive
self.toUpper(data)
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 76, in toUpper
self.__upper.receive(data)
File "/opt/yowsup-master/yowsup/layers/axolotl/layer_control.py", line 44, in receive
self.toUpper(protocolTreeNode)
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 76, in toUpper
self.__upper.receive(data)
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 189, in receive
s.receive(data)
File "/opt/yowsup-master/yowsup/layers/axolotl/layer_receive.py", line 44, in receive
self.toUpper(protocolTreeNode)
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 76, in toUpper
self.__upper.receive(data)
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 189, in receive
s.receive(data)
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 121, in receive
if not self.processIqRegistry(node):
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 156, in processIqRegistry
successClbk(protocolTreeNode, originalIq)
File "/opt/yowsup-master/yowsup/layers/protocol_iq/layer.py", line 30, in onPong
self.toUpper(ResultIqProtocolEntity.fromProtocolTreeNode(protocolTreeNode))
File "/opt/yowsup-master/yowsup/layers/__init__.py", line 76, in toUpper
self.__upper.receive(data)
File "/opt/yowsup-master/yowsup/layers/interface/interface.py", line 80, in receive
self.entity_callbacks[entityType](entity)
File "/opt/yowsup-master/yowsup/demos/cli/layer.py", line 458, in onIq
print(entity)
IOError: [Errno 32] Broken pipe
Ups...
Bei der Aura musst du noch das Attribut IP füllen (um Einstellungen zu setzen).
Sollte hiermit aber auch vorher schon nicht mehr crashen :)
Verbose und disable sind hier auch wieder raus.
Bastel ich daheim sofort ein - ganz lieben Dank für deine Bemühungen! Hab ich da was falsch gemacht? Oder woran lags?
Wenns am Modul lag - dafür wird ja getestet! Wenns an mir lag - danke für deine Unterstützung! :)
Lag an mir ;)
Bedeutet auch, dass wir wahrscheinlich die einzigen hier sind die ne Aura haben.
Kleiner Warnhinweis: Wenn du die Einstellungen (Wecker) mit FHEM liest oder schreibst darfst du die App nicht offen haben. Es ist nur eine Netzwerkverbindung möglich.
so, jetzt lädt das Modul, und die Devices und User werden super angelegt. Das mit dem IP-Eintrag mach ich noch, sobald ich die IP auf den DHCP-Servern rausgekriegt habe, und teste weiter. Super schomma, danke sehr!
Völlig vergessen nachzuschieben: Jetzt klappt die komplette Bedienung der Aura (nach IP-Eintrag). Wo muss der Vielen-Dank-Rotwein hin? :)
PS: Wirst du das Modul in absehbarer Zeit auch einchecken? Oder steht da noch was dagegen?
Eigentlich nicht.
Ist zwar rund um die Kamera noch nicht fertig, sollte aber gleich gut bis besser funktionieren als das alte.
Ich schau mal ob ich diese Woche dazu komme.
Sent from my iPhone using Tapatalk
Kein Stress - muss nur daran denken, es dann aus der exclude_from_update-Liste rauszunehmen. :) Nochmal herzlichen Dank für das alles!
hallo das anlegen hat super geklappt, aber vll habe ich was überlesen. Bekomme immer folgenden fehler:
2016.07.14 14:15:17 4 : HttpUtils https://healthmate.withings.com/index/service/v2/measure: Got data, length: 39
2016.07.14 14:15:17 5 : withings_D35753**: dispatch deviceReadingsScale
2016.07.14 14:15:17 4 : withings_D35753**: json returned: { 'status' => 503, 'error' => 'Invalid Params' }
2016.07.14 14:15:17 5 : withings_D35753**: parsemeasurements
Bitte list devicename und idealerweise log Level 5 der Anfrage. Irgendwas passt nicht.
Sent from my iPhone using Tapatalk
ich wollte mal Fragen wie der Stand der Dinge ist.
Ich werde demnächst mal einen neuen Thread aufmachen und einen geordneten Beta-Prozess starten, wie bei Netatmo.
ohne Werbung für den Konzern machen zu wollen, beim großen Versandriesen mit A am Anfang ist die WS-50 heute für 99,-Eu im Tagesangebot.
Ich glaube, ich schau mir das mal an. Hatte bisher nur wegen dem hohen Preis nicht zugeschlagen.
muss man sich eigentlich für jedes Familienmitglied extra registrieren, oder gibts da nen Gruppenaccount?
vb
Ich vermute dass du mehrere Accounts brauchst sobald mehrere Nutzer eigenständig die App nutzen wollen. Nur für die Waage mit mehreren Benutzern reicht einer.
Sent from my iPhone using Tapatalk
so, das gute Stück ist nun da und in Betrieb.
Erstmal verbunden, bei Withings ein paar Einstellungen gemacht etc.
Dann in fhem einbinden wollen.
Account anlegen geht sowei, jedoch komme ich über initialized nicht hinaus.
Mal sehen was nach nem Neustart von fhem passiert.
Sonst jemand noch nen Tipp??
vb
edit: Gut Ding will Weile habe. Nu sind die readings da.
Für die Withings Body Waage gibts auch eine Rabattaktion. Über www.gymentry.de zum Hersteller navigieren oder beim Kauf über withings.com den Code GYMENTRY20 eingeben.
Vielleicht interessiert es ja jemanden, sonst OT Post bitte ignorieren!
Kann man irgendwie beeinflussen, wann bei der Aura die Daten zum vergangenen Schlaf "sleepDurationAwake, ..." abgerufen werden?
Bei mir steht als Timestamp immer 6:00.
Das Problem ist, dass wenn ich erst nach 6:00 aufstehe die Zeiten nicht stimmen.
Manuell lassen sich die Daten irgendwie nicht updaten?!
Das wird nicht um 6 abgerufen, das ist nur der Timestamp den ich der Tageszusammenfassung aus optischen Gründen verpasse sobald sie bereit steht.
Die Activity Zusammenfassung wird auf 18 Uhr gesetzt, um das schön in eine Grafik verpacken zu können.
Eigentlich haben diese Readings gar keine definierte Zeit.
Die Daten stimmen also.
Sent from my iPhone using Tapatalk
ok, danke.
Wenn ich also z.B. auf einen Statuswechsel der Aura reagieren will, muss ich permanent mit "get withings_xxxx settings" pollen?
Ja. Hatte ich den Status überhaupt drin?
Pollen ist sehr kritisch, wenn du die App offen hast kann es passieren dass dir FHEM bis zum Timeout stehen bleibt, weil immer nur ein Client verbunden sein kann.
Sent from my iPhone using Tapatalk
Schade, dass die login-daten zur Aura shell nicht bekannt sind.
Mit Putty und SSH kommt man zumindest bis zum login-screen.
Würd mich net wundern, wenn da mal wer seinen FHEM server drauf laufen lässt ;)
Wenn du dich mit der seriellen Konsole verbindest (kleine ovale Öffnung im Boden der Aura, Federstifte oder besser gleich aufschrauben und nen Stecker anlöten) kannst du das Root Passwort ändern
Zitat von: Markus M. am 26 September 2016, 15:59:10
Wenn du dich mit der seriellen Konsole verbindest (kleine ovale Öffnung im Boden der Aura, Federstifte oder besser gleich aufschrauben und nen Stecker anlöten) kannst du das Root Passwort ändern
;D ;D ;D no comment...
Halber Kommentar von eben wurde vom Telefon verschluckt...
Das Passwort von Withings ist leider länger als 8 Stellen :D
Gib Bescheid wenn du irgendwas findest, ich hatte noch nicht die Zeit und Muße das Ding zu zerlegen.
Ich fände vor allem die ursprünglich mal versprochene Funktionalität als BT oder Airplay Speaker interessant.
Nachdem Withings da zwischendurch den Geldtopf von Spotify gesehen hat, war's das in der Richtung leider.
dank meiner Frau habe ich nun auch eine Activite Steel, einen "Fitnesstracker".
Wie stehen denn die Chancen, das ich die Daten ebenfalls in fhem einbinden kann?
ein "get xyz Devices" im Modul zeigt mir die Uhr schonmal an, nur die readings fehlen noch?
vb
edit:
hab die Uhr mal per Hand angelegt, bekomme nun auch den Batteriestatus und -Level als reading.
mal sehen was noch so geht.
Hallo Markus,
es tut mir tierisch leid zu sagen - aber das Withings-Modul von dir, so toll es bis dann funktioniert hat, bringt (statt des zunächst verdächtigten netatmo-Moduls) Fhem zum Komplettabsturz...
Als Meldung im Log finde ich nur
2016.10.03 16:47:24 2: withings_D1610557: I/O device is mywithingsacc
2016.10.03 16:47:24 2: withings_D1963181: I/O device is mywithingsacc
ERROR in Socket Creation : Keine Route zum Zielrechner
Das Blöde dabei:
* Ich würd dir gern ein echtes Log schicken - aber sobald das Modul geladen wird, weil ich was definiere, schmiert FHEM ab
* Ein manuelles Editieren der fhem.cfg geht blöderweise nicht, weil ich irgendwann auf die configDB umgestiegen bin
* Das direkte Bearbeiten der configDB hab ich noch nicht drauf
Hast du evtl ähnliche Erfahrungen? Oder ggf. ne Idee, wie ich dir da sinnvolle INformationen liefern könnte? Sorry für meine Unbedarftheit.
Vorläufig hab das Modul mal ganz aus dem /opt/fhem/FHEM-Ordner entfernt, jetzt startet Fhem wenigstens wieder... aber wenn ich irgendwas helfen kann, das wieder gängig zu krigen, mach ich das natürlich sofort.
UNd: Ich meine gelesen zu haben, dass du im Urlaub bist. Mach dir wenn überhaupt um himmelswillen bitte erst NACH dem Urlaub Gedanken...
Danke dennoch erstmal! :)
Martin
Ähh, nö... Leider keine Ahnung.
Aber wieder aus dem Urlaub zurück :)
Das Modul sollte nicht abschmieren wenn der Server nicht erreichbar ist.
Was für Geräte hast du?
Alle? ;)
Aura, Schlafsensor, Waage, Butdruckmesser sind meine Geräte.
Und 6 User an Waage und Blutdruckdingens.
Ich vermute die Aura als Problem.
Hat sich vielleicht die IP geändert?
Was ist withings_D1963181?
Das ist die Aura - allerdings würde mich das mit der IP wundern, die kriegt sie via DHCP-Reservierung... aber ich überprüfe das mal. Danke für den Fingerzeig erstmal.
€dit: Das Ding hatte sich komplett verschluckt - der Wecker war über das lange Wochenende aus, da hatte sie wohl generell keine Lust mehr, keine Daten gesammelt, nicht geweckt, und auch nicht mehr sich um eine IP gekümmert. Ein Neustart half... Dann war die IP wenigstens wieder da und pingbar.
Und schon geht auch alles wieder... Mist. Daran denk ich das nexte Mal zuerst, wenn nix mehr geht. Sorry fürs Pferdescheumachen.
Bedeutet für mich trotzdem dass ich daran noch was machen muss - sonst ist mein FHEM auch weg sobald die Aura aufgibt.
Wobei... ich hab keine automatische Verbindung.
Was meinst du mit "keine automatische Verbindung"?
Sorry, wenn ich dir Arbeit verpasst hab - wollt ich nich...
Zitat von: rubbertail am 03 Oktober 2016, 22:28:31
Was meinst du mit "keine automatische Verbindung"?
Liest du durch ein
at, interval etc. den Status der Aura regelmässig aus?
Eigentlich nicht - zumindest nicht bewußt. Ich hab die Withings-Dinger im Moment noch "nur zum Spaß" eingebunden und reagier bei denen noch auf nix - es existieren Devices und User nur so wie via autocreate angelegt. Die Werte sind auch nur beim User bzw Device zu sehen; ich selber habe keine Abfrage gebaut. Ich sehe nur, dass sich die Werte täglich ändern (oder wie eben auch mal nicht). :)
Ich seh mir das bei Gelegenheit mal an. Kann eigentlich nur die Direktverbindung zur Aura sein.
Sent from my iPhone using Tapatalk
Hallo,
Ich such ein Babyfon mit FHEM Anbindung - Withings Home sieht gut aus.
In der Withings Modul Doku finde ich nicht vom Home, es wird hier aber erwähnt.
Funktioniert das Modul mit dem Home Kamera, oder ist es noch geplant?
Danke!
Zitat von: okenny am 23 Oktober 2016, 19:41:52Funktioniert das Modul mit dem Home Kamera, oder ist es noch geplant?
Ja, ist aber über den Umweg FHEM nicht als Babyfon geeignet, maximal für Statistiken.
Über die App sollte es klappen.
Kurz mal eben ein Update für Cardio und Thermo :)
Sollten nach einem Perl Update keine Daten mehr geholt werden - das ist hiermit dann auch wieder behoben.
Hallo Markus,
danke für das Modul, mein Blutdruckmesser läßt sich gut einbinden.
Probleme macht scheinbar Withings Home.
Folgende Fehlermeldung bei Verbose 5:
2016.11.21 19:15:08 5: withings_D2915018: dispatch deviceReadingsHome
2016.11.21 19:15:08 4: withings_D2915018: json returned: {
'error' => 'Invalid Params',
'status' => 503
}
2016.11.21 19:15:08 5: withings_D2915018: dispatch deviceAlertsHome
2016.11.21 19:15:08 4: withings_D2915018: json returned: {
'error' => 'Invalid Params',
'status' => 503
}
Ein List des Devices:
DEF 2915018
Device 2915018
DeviceType Camera
IODev Withings
LAST_POLL 2016-11-21 19:29:08
NAME withings_D2915018
NR 259
NTFY_ORDER 50-withings_D2915018
STATE 100 %
SUBTYPE DEVICE
TYPE withings
created 1413962421
fw 274
lastsessiondate 1479638589
lastweighindate 1479667373
location xx.x,xx.xxxx
model Withings Home
modelID 22
sn SN-00:xx:xxxx:xx:xx
status 503
sts_accesskeyid XXXXXXXXXXXXXXXXX (von mir abgeändert)
sts_buckets 6
sts_expiretime 1479759047
sts_region prod-ireland
sts_secretaccesskey XXXXXXXXXXXXXXXXXXXXXXX (von mir abgeändert)
sts_sessiontoken XXXXXXXXXXXXXXXXXXXXXXXXX (von mir abgeändert)
typeID 2
Readings:
2016-11-21 15:07:15 battery ok
2016-11-21 15:07:15 batteryLevel 100
2016-11-21 15:15:03 lastSessionDate 2016-11-20 11:43:09
2016-11-21 15:15:03 lastWeighinDate 2016-11-20 19:42:53
2016-11-21 11:49:43 temperature 19.84
Attributes:
IODev Withings
room withings
stateFormat batteryLevel %
verbose 5 ]
Installiert habe ich die neueste Version Deine Moduls aus dem vorherigen Thread.
Ein get update/s liefert nur Werte für lastWeighinDate.
Temperatur wird nicht aktualisiert. Mit der Version aus dem FHEM update gibt es zwar den menüpunkt VideoCredentials nicht, aber die Temperatur wird bei update all aktualisiert.
Wenn ich noch irgendwas ausprobieren soll, stell ich mich gerne als "Testkaninchen" zur Verfügung.
Viele Grüße
Reinhard
Die Home ist nur in meinem Anhang. Ich sehs mir demnächst mal an.
Sent from my iPhone using Tapatalk
Hey Leute, hat noch jemand das Problem, dass die CO2 Werte nicht mehr im Log sind? Hab nichts geändert, aber irgendwann hat die Waage sicher mal ein Update gemacht. Weiß jemand wie man das wieder herbekommt?
ciao Carlo
DIESES MODUL WIRD ABGELÖST, ES GIBT EINE NEUE VERSION.
BITTE IM NEUEN THREAD WEITER:
https://forum.fhem.de/index.php/topic,64944.0.html (https://forum.fhem.de/index.php/topic,64944.0.html)