やーまんぶろぐ

気が向いた時にだけ書くブログ

Jawboneで起床を検知してIRKitで電気をつけてみた

Jawbone UP2を購入したので、さっそく「起床を検知してIRKitで電気をつける」というのをやってみました。

↓Jawbone購入検討記事
yamano3201.hatenablog.jp

IFTTTを使って実現することにしました。
トリガーはJawboneの既存のものを使って、アクションはMakerを使ってIRKitを操作します。

MakerはAPI通信できるものを、トリガーやアクションに持ってこれるサービスですね。

blog.hello-world.jp.net

Jawbone トリガー

いくつかトリガーがあるので、説明していきます。

f:id:yamano3201:20160330194436p:plain

  • Sleep mode enabled
    • Sleep modeをONにしたらトリガー検知。UP24のみの動作でUP2では対象外。UP2は睡眠を自動検知。
  • Sleep mode disabled
    • Sleep modeをOFFにしたらトリガー検知。同じくUP2では対象外。
  • Sleep goal achieved
    • 目標睡眠時間を達成したらトリガー検知。目標睡眠時間はJawbone UPのアプリで設定することができる。
    • まだ目標の7時間半は達成していない。。おそらく目標達成した瞬間ではなく、朝起きた時にトリガー検知すると思われる。
  • New sleep logged
    • 朝起きたときにトリガー検知。朝起きたときにアクションを起こしたい場合は、これをトリガーにする。
  • Sleep duration above
    • 朝起きた時に指定した睡眠時間を超えてたらトリガー検知。睡眠時間はIFTTT側で設定する。
  • Sleep duration below
    • 朝起きた時に指定した睡眠時間を超えてなかったらトリガー検知。睡眠時間はIFTTT側で設定する。
  • New daily movement logged
    • 日付が変わるときにトリガー検知。
  • Step goal achieved
    • 目標歩数を達成したときにトリガー検知。目標歩数はJawbone UPのアプリで設定することができる。
  • Steps above
    • 指定した歩数を超えてたらトリガー検知?歩数はIFTTT側で設定する。
  • New workout logged
    • ワークアウトをトリガー検知。ワークアウトはジョギングなどの
  • No new workouts in __ days
    • 指定した日数、ワークアウトがなければトリガー検知。
  • New meal logged
    • 食事を登録したらトリガー検知。これは使わないかな。
  • New mood logged
    • 感情を登録したらトリガー検知。これも。

今回は起床を検知したいので、「New sleep logged」を使用しました。

※myThingsには「眠りについたら」というトリガーがあるけど、IFTTTにはないのか?

Maker アクション

f:id:yamano3201:20160330203116p:plain

↓登録する

URL https://api.getirkit.com/1/messages
Method POST
Content Type application/x-www-form-urlencoded
Body clientkey=yourkey&deviceid=yourid&message={“format”:”raw”,”freq”:xx,”data”:[xx]}

clientkey、deviceid、messageは事前に取得しておきます。

yamano3201.hatenablog.jp


これで起床を検知してIRKitで電気をつける」というのを実現できました。

最後に

IFTTTには「Check Recipe Now」というアクションの動作確認をするボタンがあるんだけど、まったく機能しなかったので少しはまりました。
動作確認ボタンだと勝手に思い込んでいたけど、違うのかもしれない。

けっきょく、Date & Timeなどをトリガーにして動作確認を行いました。

あとは赤外線信号をまるっとコピーしてアクションに登録するのがめんどくさいですね。

赤外線信号を登録するスクリプトを書ければ、もう少しラクになるかな。

node.jsで書いてlambdaで動かしてみても良いかも。

気が向いたら、また書きます。