体重が減ったら褒めてくれるLINE Botをつくろう

6月 29, 2018

こんにちは、Nokia Healthアンバサダーの池澤です。
Nokia Healthの製品は、公式アプリ「Health Mate」と連携して、トラッキングしたヘルスデータをわかりやすいグラフで見ることができます。
もちろんそれだけでも充分といえば充分なのですが、Nokia Healthの製品はIFTTTやAPIを通して、さまざまなサービスと連携させることができます。こちらを活用すれば、さらに楽しめるかもしれません!

そこで今回は、体重計「Nokia Body」とLINEを連携して「体重を測ったり、その体重が減っていたら褒めてくれる / その体重が増えたら叱ってくれる」ダイエットのサポートにぴったりな機能をつくります。

簡単に連携したいなら、断然IFTTTを使うのがおすすめ

「体重を測ったら褒めてくれる機能」は、IFTTTを使って簡単に設定することができます。
IFTTTは、とあるサービス上のアクションをキーとして、別のサービス上にアクションすることができるWebサービス。
例えば、Twitterにつぶやいたら、自動で同じ内容をFacebookに投稿するようにできたり、Slackの投稿からIoT家電のオンオフをするようにできたりします。
IFTTTはスマホのアプリやPCのWebブラウザなどから簡単に使えます。

IFTTTのアプリケーション上で、「if」の後にキーとなるアクションを、「then」の後に結果として行われるアクションを追加します。
今回の場合は、ifの後に「Withings(Nokia Healthの旧ブランド名)」の「Body Scale – New measurement」を追加、thenの後には「LINE」の「Send message」を追加して、どのグループにどういった文面を送付するのか設定します。

これで、体重を測るとLINEで褒めてもらうように設定できました!

「体重が減っていたら褒めてくれる / 増えたら叱ってくれる」という機能は、前日の体重と現在測った体重との差分を求める必要があるため、一度、Googleスプレッドシートを経由することにします。Nokia Bodyで測った体重をGoogleスプレッドシートに記録し、スプレッドシートの関数機能で前日の体重からの増減を求めるように設定します。

▲体重を管理するGoogleスプレッドシート。実際の体重にはぼかしをかけています。
ちなみに、「前回との差分」という列には、2行目に「=ARRAYFORMULA(B3:INDIRECT(“B” & COUNTA(B2:B)+1)-B2:INDIRECT(“B” & COUNTA(B2:B)))」という関数を、「褒める / 叱る」という列には、2行目に「=ARRAYFORMULA(IF(F2:INDIRECT(“F” & COUNTA(F2:F)+1)>0, “気をつけようね”, “その調子!”))」という関数を設定しています。
そして、その計算した結果をLINEグループに送信することにしました。

友人や家族とダイエットのためのグループLINEを作って、このBotを招待すると、自分の体重の増減をシェアすることができて、かなり盛り上がります(笑)
モチベーションUPにぜひご活用ください。

APIも公開されています

簡単な連携はIFTTTで充分なのですが、より本格的なアプリケーションを作りたい方は、APIをオススメします。
APIでは、体重、体脂肪、アクティビティ、睡眠、血圧、心拍数など、Nokia Healthの製品で測定されたヘルスデータにアクセスすることができ、それを自分で開発するサービスに活用することができます。

▲ リファレンスページ。かなり細かくヘルスデータを取得することが可能。
ぜひみなさんも、外部サービスとの連携でよりスマートで楽しいヘルスケアを実践してみてください!