Slide 1

Slide 1 text

Oura Ringで体調不良を それとなく伝える方法 2022/08/04

Slide 2

Slide 2 text

自己紹介:青木 隆雄 ウフルでIoTツールのenebularを担当 Oura Ringは2022年3月から使用 Gen3のシルバーを愛用 技術者ではありません Hello! 2

Slide 3

Slide 3 text

急に具合が悪くなったとき 一緒に仕事するメンバーや顧客に連絡する ◉ 今日ちょっと熱が37.5度ありまして… ◉ 急な腹痛があり朝一の会議出られないです… 3

Slide 4

Slide 4 text

プレゼンス機能は不在かどうかしかわからない 4 いる いない

Slide 5

Slide 5 text

多少グラデーションがあってもよさそう 5 いる いない どんな気持ちか どんな体調か

Slide 6

Slide 6 text

Oura Ringを使う Oura Ringで自分のコンディション情報を自動的にSlackに 表示すれば周りの人も気遣いやすくなるのでは 6

Slide 7

Slide 7 text

やったこと Oura Ring データ同期 Slack ステータス変 更 Cloud データ取得 7

Slide 8

Slide 8 text

データ同期 リングとスマホはアプリを起動した タイミングでのみ同期される リアルタイムではない 起床時に必ずアプリとリングを同期 する運用 8

Slide 9

Slide 9 text

データ取得 9 Node-REDでフローを作成 今回は睡眠スコアを使用

Slide 10

Slide 10 text

データ取得 10 Developerサイトからトークンを入手して、 OuraRingノードにセットすればデータを取得できる

Slide 11

Slide 11 text

データ取得 11 やり方はこちらのブログを見てください。 https://flows.nodered.org/node/node-red-contrib-get-oura-data

Slide 12

Slide 12 text

データ取得 12 活動時間 睡眠 1日1回スマホと リングを同期 起床 7:00 Oura Ringが睡眠の質を計測 最低1日1回データが取れればよい。 たまに昼寝するとスコア が改善することがある。

Slide 13

Slide 13 text

データ取得 13 1時間おきタイマーでフローを起動するようにセット enebularクラウド実行環境 スケジュールトリガー

Slide 14

Slide 14 text

ステータス変更 14 実際に定期的にSlackのステータスを自動的に変更できた 伝えたいメッセージ 視覚に訴える絵文字

Slide 15

Slide 15 text

enebularについて フローを作れる Node-REDのフローを すぐに作れます。 フローを動かせる デバイスやクラウド にデプロイして、 ずっと動かせます。 公開できる 作ったフローやノー ドをすぐに公開でき ます。 15

Slide 16

Slide 16 text

クラウド版エディター Webフローエディターといい ます。 一時的なURLも発行されるの で何かをすぐに試すときに 便利です。 アカウント登録後、すぐにフローが作れます ローカル版エディター Enebular editorといいま す。 Win/Mac/Linuxで動作しま す。じっくり作りたい時に 便利です。 16

Slide 17

Slide 17 text

クラウド実行環境 Web APIをつくったり、フ ローのタイマー実行ができ たりします。 フローを動かすこともできます エージェント実行環境 ラズパイなどにインストー ルすると、enebularと接続 され、フローの状態やログ を見ることができます。 17

Slide 18

Slide 18 text

Discover 作ったフローを公開できま す。 公開されているフローをす ぐに自分のenebular環境で 試すことができます。 公開できる プライベートノード 作ったノードを自分のプロ ジェクトだけに限定的に シェアできます。 enebularユーザー向けに公 開することもできます。 18

Slide 19

Slide 19 text

まとめ ◉ Slackステータスで体調をそれとなく伝える仕組みが できたが、本当に伝わっているかどうかは不明 ◉ Oura Ringは睡眠指標しか使ってないので、他の指標 の意味を調べて、他の用途を考えたい ◉ enebularのスケジュールトリガーは簡単な自動化に役 立つ 19

Slide 20

Slide 20 text

付録 フローの一部を解説します

Slide 21

Slide 21 text

21 睡眠スコア 現時点では睡眠に関するデータ はAPI Version 1のみ Changeノードで取り出します

Slide 22

Slide 22 text

日付の指定 ◉ Momentノードでstartとendの日付を取得 ◉ テンプレートノードで整形して、OuraRingノードに渡します 22

Slide 23

Slide 23 text

分岐処理 23 スコアごとに異なるステータスをセットするために Switchノードで分岐する

Slide 24

Slide 24 text

Slack 24 ステータスに表示したい文字列とアイコンを定義

Slide 25

Slide 25 text

Slackに投稿 25 Slack Statusノードを使用してステータス部分を変 更する

Slide 26

Slide 26 text

Any questions ? お気軽にご連絡ください ◉ [email protected] ◉ @zawakarui 本資料は、私個人の意見であり、所属企業・ 部門見解を代表するものではありません。 Thanks! 26