睡眠時間がダッシュボードで表示できるようになりました!わーい( ´ ▽ ` )ノ
以下、要素技術の説明。
Misfitアプリ版
なぜMisfitか?それは...
1. アプリ単体(重要)で睡眠時間を計測でき、かつクラウド上に保存してくれる
2. しかもIFTTTでアクセスできる
この二つの要件を満たすのが、自分の観測範囲ではMisfitしかなかったんですね。
なお2018年2月現在iOS HealthCareには同期してくれませんが、IFTTTをかませば可能です👌
Airtable
GoogleSpreadSheetのUIとREST APIを標準装備したクラウド上のリレーショナルデータベースと言えば分かりやすいだろうか。
当然IFTTT連携OK。
で、テーブルをMisfitのデータに合わせてこんな感じで設定します。
ポイント:
* テーブル名、シート名は任意だが、後でIFTTTから参照するときに使うので注意。
* 明らかな数字以外は全て文字列型に設定しておくこと。日付っぽいデータだからと日付型にするとエラーで泣きを見る。
* Misfitが標準で書き込むデータの他に一つ列を追加する。(これだと"ParsedDate")"TimeAwoken"をプログラムで扱いやすい日付に変更するため。
"ParsedDate"列の関数の中身はこんな感じ。
DATETIME_PARSE(TimeAwoken, 'YYYY-MM-DD HH:mm')
IFTTT
こんな感じに。
Record Contentはこんな感じ。
::airtable::SleepStart::{{SleepStart}} ::airtable::TimeAwoken::{{TimeAwoken}} ::airtable::TotalTimeSlept:: {{TotalTimeSlept}} ::airtable::TotalTimeOfRestfullySlept::{{TotalTimeOfRestfullySlept}} ::airtable::TotalTimeSleptInSeconds::{{TotalTimeSleptInSeconds}} ::airtable::TotalTimeOfRestfullySleptInSeconds::{{TotalTimeOfRestfullySleptInSeconds}}
Lamnda(とそれ以降)
ソース置いておきます( ´ ▽ ` )ノ github.com
楽しいのでぜひ〜。