iwathiの/var/log

機械との親和性向上に向けたお家ハックが趣味。

スマートな体重計がおしゃべりを始めた話 【前編】

こんばんは

iwathiです。

 

 

今日のお題は標題の通り、「おしゃべりを始めた話」です。

なので、前回お話ししたWithingsのSmart Body Analyzer WS-50 での

APIを使用してデータを取得する方法【前編】と

それを使ってTwitterに自動投稿【後編】のお話をしたいと思います。

 

んで早速APIの使い方ですが、流れとしては以下のとおり

①Withingsへのユーザ登録

②体重測りクラウドへデータ保管

APIを利用するアプリケーションの登録

API KeyとAPI Secretの取得

⑤OAuth「request token」の取得(Step1)

⑥エンドユーザ認証(Step2)

⑦「access token」の生成

⑧ユーザデータへアクセス!!

 

流れの中でもでてきている様にOAuth認証方式を使ってユーザデータへの

アクセスと取得をすることが出来るようになっているみたいです。

 

①と②に関しては買ったら勝手にやってくださいなのでとばして、

 

③のAPIを利用するアプリケーションの登録

f:id:iwathi3:20141024220244p:plain

※ちなみにスマホのアプリはホントに↑のようなGUIスマホ内の加速度センサで歩数を測ってくれたり、体重の推移をグラフ化してくれます。

f:id:iwathi3:20141024220300p:plain

f:id:iwathi3:20141024220308p:plain

まあ上みたいなフォームがあるので適当にLogoとか入力してアプリケーションの登録をしてください。

 

 

 

API KeyとAPI Secretの取得

f:id:iwathi3:20141024220812p:plain

登録するとDashboardのMy KeysでAPI KeyとAPI Secretが確認できるので

それをコピっておく(⑤で使う)

※正直コレ以降はStepに従うだけっす

 

 

 

⑤OAuth「request token」の取得(Step1)

f:id:iwathi3:20141024220945p:plain

④でコピったAPI keyをConsumer Keyへ、API Key SecretをConsumer secretへ入力、Callbackはとりあえずなくても良かったです。

すると右のLogの下のResultが変わってURLが表示されます。↓こんな感じ

f:id:iwathi3:20141024222234p:plain

※いろいろ消してるので見辛いですけど

んでクリック先の◯と●をまたコピる(⑥でry...)

oauth_token=◯◯◯◯◯◯◯◯◯◯◯◯&

oauth_token_secret=●●●●●●●●●●●●●●●●●

 

 

⑥エンドユーザ認証(Step2)

f:id:iwathi3:20141024222759p:plain

ペーストってまた右下Resultをクリックすると、下のような認証を求められます。

コレがOAuth認証のキモみたいな部分でスパムのリンクと踏むと良くみるやつ

「アプリケーションに対してアクセス権限や書き換え権限を与えますか?」っていうもの

なのでこれで許可をだせばOK、

※この認証許可後に出てきた画面を消さないでとっておく、URLをコピってもOK、⑦で使うため

 

 

⑦「access token」の生成(Step3)

f:id:iwathi3:20141024223152p:plain

んで、ここが一番分かりにくくてひっかかってた部分(英語ちゃんと読めば即解決)

さっきの⑥で許可だした後に飛んだURLの語尾に~&userid=△△△△△△△って部分の

◯をペーストる。んで後は一緒でResultをクリックして出てきた

oauth_token=◯◯◯◯◯◯◯◯◯◯&

oauth_token_secret=●●●●●●●●●●●●●●●&userid=△△△△△△△&deviceid=0

 

◯と●をコピっておく。

 

 

⑧ユーザデータへアクセス!!(Step4)

ペーストしてResultればJSON形式で取得できます。

簡単ですね。やったー!

f:id:iwathi3:20141024224141p:plain

※取得したデータをJSON整形かけたもの、ちなみに体重はmeasuresのtypeが1のものです。つまり、体重は約60トン!最大級の恐竜ドレッドノータスとだいたい同じ体重ですね!


最大級の恐竜化石、アルゼンチンで発見 推定体重60トン 写真5枚 国際ニュース:AFPBB News

 

 

 

 

これでWithings Smart Body Analyzer WS-50ちゃん、とおしゃべりできる親密な関係になりました。

ただWS-50ちゃん、と無駄話ばかりしてても仕方ないので勝手に必要な部分を要点を絞って教えて欲しいですね。

こっちとしては痩せられればいいので、無駄な話はしたくないです。

 

 

 

 

ということで、

次回、RubyでのTwitterでの自動投稿に関して書こうと思います。

あーつかっちゃー