Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Oura API V2 の クライアントJSライブラリを 作った話
Search
tmitsuoka0423
August 04, 2022
Technology
1
420
Oura API V2 の クライアントJSライブラリを 作った話
Oura RingをAPIで使い倒す!ミートアップ
https://enebular.connpass.com/event/243169/
tmitsuoka0423
August 04, 2022
Tweet
Share
More Decks by tmitsuoka0423
See All by tmitsuoka0423
プロトアウト LT祭 Vol.04 クラウドファンディング応援大会
tmitsuoka0423
0
36
Replicate.comを使ってAI LINE Botを作ってみた
tmitsuoka0423
0
250
みんなに届ける 希望マップ(み〜んなな・か・まチーム)
tmitsuoka0423
0
140
自己紹介 2022/05/14
tmitsuoka0423
0
71
LINE DC Monthly LT - 昼寝のタイミング教えてくれるLINE Bot作ってみた
tmitsuoka0423
0
300
ノーコード界隈で話題の Make(旧Integromat)で LINE Botを作ろう!
tmitsuoka0423
2
5.9k
会社で休憩時間をいつもオーバーしてしまうので ノーコードLINE Botで解決してみる
tmitsuoka0423
1
1.2k
M5StickCとPIRモーションセンサーで寝返り検知にトライしてみる
tmitsuoka0423
0
320
写真を送るとAIが分析してくれる LINE Botを1時間で作ってみよう
tmitsuoka0423
0
140
Other Decks in Technology
See All in Technology
進捗
ydah
2
230
Flutterでキャッチしないエラーはどこに行く
taiju59
0
210
JuniorからSeniorまで: DevOpsエンジニアの成長ロードマップ
yuriemori
2
350
トヨタ生産方式(TPS)入門
recruitengineers
PRO
6
1.4k
生成AI時代に必要な価値ある意思決定を育てる「開発プロセス定義」を用いた中期戦略
kakehashi
PRO
1
240
20250903_1つのAWSアカウントに複数システムがある環境におけるアクセス制御をABACで実現.pdf
yhana
2
230
Browser
recruitengineers
PRO
8
2.1k
制約理論(ToC)入門
recruitengineers
PRO
9
3.7k
Webブラウザ向け動画配信プレイヤーの 大規模リプレイスから得た知見と学び
yud0uhu
0
100
allow_retry と Arel.sql / allow_retry and Arel.sql
euglena1215
0
140
努力家なスクラムマスターが陥る「傍観者」という罠と乗り越えた先に信頼があった話 / 20250830 Takahiro Sasaki
shift_evolve
PRO
2
130
個人CLAUDE.md紹介と設定から学んだこと/introduce-my-claude-md
shibayu36
0
160
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
The Cult of Friendly URLs
andyhume
79
6.6k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
BBQ
matthewcrist
89
9.8k
Designing Experiences People Love
moore
142
24k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
51
5.6k
Agile that works and the tools we love
rasmusluckow
330
21k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Typedesign – Prime Four
hannesfritz
42
2.8k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Side Projects
sachag
455
43k
Transcript
Oura API V2 の クライアントJSライブラリを 作った話 光岡 高宏/MITSUOKA Takahiro @mitsuoka0423
Oura RingをAPIで使い倒す!ミートアップ
光岡 高宏(@mitsuoka0423) - プロトアウトスタジオ5期&7期講師 - 学生募集中です! - 「モノづくりと発信を続けるコミュニティ」 プロトアウトジム立ち上げ -
よく見るデータ - 合計睡眠 - 睡眠時間 ↑フォローしてね!
過去にこういうものを作った https://docs.google.com/presentation/d/1nR0ZXtsVvTh7dhDsXH4Y3w_0p0KK8pMd0cb59z_2Dc8/edit#slide=id.p
- 光岡の眠くなる時間帯 - お昼〜夕方にかけてよく眠くなったり、ぼーっとしたりする。 - 日によって時間が変わる(14時頃眠くなったり、16時頃眠くなったり) - 夕飯後の19〜21時あたりも眠くなり、ソファで寝てしまうことがよくある。 - なにか問題があるのかなと思い試してみた
- 血糖値を上げないように、昼・夜飯の糖質を抑える - ちょっと効果あった - 夜いっぱい寝る - 改善せず - マットレス買う - 改善せず - 腰痛は治った ご飯食べた後って眠くなりますよね。
睡眠に関わる3つのリズムと体温 - メラトニンリズム - メラトニンが生成されるリズム - メラトニンが増えると眠くなる - 光を感知すると減少し、夜間に暗くなると急増する -
睡眠 - 覚醒リズム - 大脳を眠らせるシステムが働くリズム - →起床から 8時間後 と 22時間後 に眠くなる - 深部体温リズム - 体の内部の温度が変化するリズム - 起床から 11時間後 に最も高くなり、22時間後 に最も低くなる - 深部体温が下がるときに眠くなる - →起床から11時間後に眠くなる
- 光岡の眠くなる時間帯 - 昼〜夕方にかけてよく眠くなったり、ぼーっとしたりする。 - 日によって時間が変わる(14時頃眠くなったり、16時頃眠くなったり) - 夕飯後の20〜21時あたりも眠くなり、ソファで寝てしまうことがよくある。 - 光岡の起床時間
- 大体 AM8〜10時 - 睡眠 - 覚醒リズムで眠くなる8時間後は 16時〜18時 - → あれ、昼〜夕方眠くなるのこれでは? - 深部体温リズムで眠くなる11時間後は 19〜21時 - → あれ、夜眠くなるのこれでは? - → リズムの影響で眠くなってる説を検証中 リズムに合わせて見てみる
システム鳥瞰図 Oura API LINE Notify
None
Oura API V2 ...? • 2022年1月に公開 ◦ なお、Oura API V1
は2023年の早期に 提供終了されるとのこと • npm でライブラリを探しても V1 しか見つからない ◦ https://www.npmjs.com/package/oura ◦ https://www.npmjs.com/package/our a-js ◦ https://www.npmjs.com/package/our a-cloud-api • → じゃあ作るか
作ったライブラリの紹介 • https://www.npmjs.com/packag e/oura-api-v2-client • 実行環境 ◦ ◯ Node.js ◦
WIP ブラウザ ◦ WIP Google Apps Script ◦ ? Node-RED • JS/TS対応
ライブコーディング
工夫ポイント • 今後APIに変更が入ったら、ライブラリが動かなくなる ◦ API仕様が OpenAPI Specification (Swagger) に沿って提供されている ◦
スキーマ駆動開発を取り込み中 ◦ OASから型情報を自動生成、
まとめ • Oura API V2 のクライアントライブラリを作っている ◦ https://www.npmjs.com/package/oura-api-v2-client • Node.js
対応 ◦ GASとブラウザは対応中