Neues Modul für Jawbone Up (24) Fitness Tracker - zum Testen und Kommentieren

Begonnen von domschl, 26 Juni 2014, 16:13:11

Vorheriges Thema - Nächstes Thema

domschl

Ich habe den Patch übernommen und die neuste Version eingecheckt.

In der Version, die als Basis für den Patch gedient hat, hatte sich ein Fehler eingeschlichen: Der Step-count wurde von der gleichnamigen Variable für den Stopwatch-mode überschrieben. Die Version 0.1.3 enthält den Patch und den Fix für diesen Bug.

Der Einfachheit halber ist die letze Version noch angehängt. Ich werde die Dokumentation noch anpassen...

Danke, Dom.

DerFrickler

Wie kompatibel ist dieses Modul mit der ursprünglichen Idee von FHEM? Bzw. welche Anwendungsmöglichkeiten ergeben sich daraus?

Stellt der Fitness Trecker fest wann Ihr Euch im Wachzustand befindet und schaltet dann gleich das Licht ein? Oder kann man damit den Alkoholpegel feststellen und in Abhängigkeit zum Kellerbestand dem örtlichen Bierlieferanten eine Bestellung übermitteln? Irgendwie bekomme ich den Draht Richtung Heimautomatisierung nicht ganz hin.

nehmt es mir bitte nicht übel, möglicherweise stösst meine Kreativität hier auch an Grenzen.

Gruß,
...


My-FHEM

Ich will meine Daten auf meinen eigenen Server haben. Fhem bietet dazu die Möglichkeit der Visualisierung.
Und natürlich, weils geht.

Grüße  :)

Nicht alles muss unmittelbar zur Heimautomatisierung dienen.

Frank S.

Moin.

Ich habe das Modul heute auch zum ersten Mal verwendet. Es lies sich nach der Installation der benötigten Pakete sauber in Betrieb nehmen. Die Daten werden schon geladen. Zeigt das Modul nur die Daten es aktuellen Tages in den Readings an?

Kann man mit dem Modul auch die Tageswerte am Ende des Tages in einen File sichern?

Schöne Grüße
Frank

domschl

Der FHEM server speichert die Historie aller Readings (und damit dann auch die Jawbone) automatisch ab. Die Daten landen je nach FHEM-konfiguration entweder in einem Log-File (einfach mal eins Log-Verzeichnis schauen), oder, falls DbLog aktiviert wurde, in einer SQL-Datenbank.

Das ist keine spezielle Eigenschaft des Jawbone Moduls, sondern wird mit FHEM "mitgeliefert".

Falls eine längerfristige Auswertung gewünscht wird, ist die Installation von DbLog wirklich empfehlenswert, s.:
http://www.fhemwiki.de/wiki/DbLog

GrandJury

Hallo zusammen,

ich benötige hier mal bitte Hilfe.

Scheinbar funktioniert bei allen die reibungslose Installation. Bei mir jedoch scheinbar nicht. Ich bin der Anleitung aus dem Wiki gefolgt und habe "WWW::Jawbone::Up" via force installiert, da die Testroutinen fehlschlugen. Anschließend habe ich das Modul in Fhem mit den entsprechenden Nutzerdaten von meinem Jawbone-Account erstellt. Der API-Status scheint sich jedoch nicht von "Initializing..." verabschieden zu wollen, bis dann irgendwann die Anzahl der fehlgeschlagenen Versuche zu hoch ist und sich das Modul abschaltet.

Über "get Update" oder das Modul neu zu laden, komme ich auch nicht weiter. Weder werden Meldungen angezeigt, die mir den Fehler näher bringen, noch wird das Modul neu geladen. Hierfür ist ein kompletter Neustart von Fhem notwendig.

Ich nutze ein Jawbone UP2, was aber wohl keine Bedeutung haben dürfte, denn am Ende sind es ja keine großartig andere Daten, die dort ausgelesen werden. Oder irre ich mich da?

Kann es sein, dass mir noch etwas fehlt? Gut ... wahrscheinlich das Expertenwissen einiger Leute ... aber davon mal abgesehen, habe ich die Perl-Bibliotheken installiert und mir wurde vom Raspberry gesagt, dass die aktuellen Pakete installiert sind.

Was kann ich sonst noch tun?

Fhem ist ebenfalls aktuell und Neustarts habe ich schon diverse sowohl von Fhem als auch mit dem Raspberry durchgeführt und im Logfile ist leider auch nichts beschrieben, was mir weiterhilft.

Hoffentlich hat noch jemand eine Idee bzw. einen Tipp für mich. Dafür schon einmal danke.

domschl

Hast Du mal (bei laufendem FHEM in der web-Konsole):
reload 38_JawboneUp
versucht?
In der Konsole würden dann Fehlermeldungen auftauchen, falls irgendwelche Abhängigkeiten fehlen.
Deine Jawbone UP2 Hardware sollte funktionieren.

GrandJury

Hallo domschl,

danke für deine Antwort.

Ja, dass habe ich bereits versucht. Es erscheint jedoch keine Fehlermeldung und die Anmeldung ist weiterhin nicht möglich.

domschl

Leider ist in diesem Bereich kein standard Logging implementiert. Es existieren allerdings ein paar Print-Ausgaben im Fehlerfall, die einfach Meldungen auf der Konsole ausgeben, auf der FHEM gestartet wurde. Vielleicht hilft es also, per SSH auf den Raspberry zu gehen (oder über eine normale Terminal-Konsole), FHEM zu restarten und dann abwarten, ob Text-Meldungen in dem Terminal erscheinen, in dem FHEM neu gestartet wurde. (Beispiel: "Internal error at DoneBackground (0x001)")

Alternativ kann ich Logging-Meldungen im Jawbone-Modul ergänzen, daß wird aber erst in der nächsten Woche möglich sein, da ich z.Zt. unterwegs bin.

Gruß Dom.

GrandJury

Hey domschl,

ich habe Fhem nun einmal via SSH neu gestartet. Vielen Dank für den Tipp.

Dabei kam die Fehlermeldung "500 Can't connect to jawbone.com:443 at ./FHEM/38_JawboneUp.pm line 162" raus.

Nun kommt wieder meine "Professionalität" zum tragen  ;) Wenn mich nicht alles täuscht, liegt es an der SSL-Verschlüsselung. Kann das sein? Diese soll aber auf dem Raspberry installiert sein. Gibt es noch irgendeinen Workaround dafür, den du mir nennen könntest? Oder liege ich damit, was nicht unwahrscheinlich wäre, völlig falsch?

domschl

Hmm. Das ist eine Fehlermeldung, die das WWW::Jawbone::Up Modul intern beim ersten connect-Versuch ausgibt.

Ist sichergestellt, daß Dein Raspi per Webbrowser auf HTTPS-Seiten zugreifen kann? Wenn ein Perl-Modul fehlen würde, dann würde eine andere Reaktion auftreten (denke ich zumindest, da ich erst ab Montag wieder testen kann).

Falls kein Monitor am Raspi hängt, hilft vielleicht ein Test mit wget weiter:
wget https://google.com
Sollte den Html-code der Google-startseite in ein File index.html schreiben (und nicht irgendwelche Fehlermeldungen). Klappt das?

Falls ja, müßte ich mir am Montag bessere Testmöglichkeiten ausdenken.

Dom.

GrandJury


domschl

Ich habe mir die Bibliothek, die zum Zugriff auf die Jawbone Daten verwendet wird (WWW::Jawbone::Up) angesehen:

https://github.com/bentglasstube/WWW-Jawbone-Up/blob/master/lib/WWW/Jawbone/Up.pm

Die Bibliothek unterstützt leider keine Fehler-Behandlung, sondern liefert im Fehlerfalle immer "undef" zurück und gibt ggf. noch was auf der Konsole aus.

In diesem Fall scheitert schon der erste connect-Aufruf (ein POST, der als parameter im wesentlichen username und password beinhaltet.). Die "500" Fehlermeldung (die i.d.R. auf einen internen Fehler des Servers hindeutet) wird dann von der WWW::Jawbone::Up Perl-Lib auf der Konsole ausgeben.

Evtl. ist etwas mit Deinem Account bei Jawbone durcheinander?

Dinge die man jetzt noch prüfen könnte:

  • Funktioniert der Login auf der Jawbone-site? https://jawbone.com/start#!login
  • Funktioniert die App auf dem Handy?
  • Evtl. einfach mal einen neuen Account anlegen, und dann damit testen?

Nachtrag: Ich habe mal eine frische FHEM Installation auf einem Raspberry 2 gemacht. Raspbian hatte ich bereits vorher auf Debian Jessie updated. Unter Jessie hat cpan -i WWW::Jawbone::Up reibungslos funktioniert (incl. aller Tests). Das Jawbone Modul hat dann wie erwartet funktioniert.

Ich habe heute noch eine neue Version des 38_JawboneUp Moduls eingecheckt, die besser auf nicht initialisierte Werte bei Abfragen über die Jawbone API reagiert (Evtl. reagiert das Jawbone Protokoll etwas anders bei verschiedener Hardware). Das ist sauberer, hat aber mit dem Problem vermutlich nicht wirklich was zu tun.

Ich bin etwas ratlos.

Brice

Mit cpan konnte ich nach drei Versuchen mein Jawbone erfolgreich in FHEM einbinden

Zitat von: My-FHEM am 05 April 2015, 19:18:21
Fhem bietet dazu die Möglichkeit der Visualisierung.

Wie funktioniert das? Ich sehe die Readings über die FHEM-Oberfläche, habe aber kein LogFile in /opt/fhem/logs. Muss ich das LogFile noch definieren? Falls ja, bitte kann es mir erklärt werden?

Danke im voraus
Stefan
FHEM auf RPi 4 4GB (Buster) | produktiv) CUL 868 für FS20 | S300TH | KS300 | Max!Cube als CUN 868 für TechemWZ | HM-MOD-RPI-PCB für HM | Z-Wave ZME_UZB1 | FRITZ!DECT 200 | HUE | Lightify | Echo Dot | WS3080

domschl

Hallo Stefan,

schau Dir mal die Beschreibung von Filelog (http://fhem.de/commandref.html#FileLog) in der FHEM Reference an. Dort wird per Wildcard angegeben, für welche Module logfiles erzeugt werden.

Ich benutze DbLog, daß alle Readings in eine SQL Datenbank schreibt. Falls Du in Zukunft planst, die Daten auszuwerten, dann rate ich Dir auf DbLog umzusteigen. Ich schreibe alle Events von FHEM in die Datenbank, für DbLog lautet der Wildcard um alle Events zu schreiben: .*:.*

Gruß Dom.