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
Rubyで家電をスマートに操作しよう!
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
kojiro tominaga
November 07, 2024
Technology
1
200
Rubyで家電をスマートに操作しよう!
kojiro tominaga
November 07, 2024
Tweet
Share
More Decks by kojiro tominaga
See All by kojiro tominaga
Wantedlyの開発組織における生成AIの浸透プロジェクトについて
kotominaga
2
310
生成AI×転職体験をアップデート!履歴書からプロフィールを自動生成する試み
kotominaga
1
200
マネージャーとエンジニアが効果的に協力するために意識した方が良い事
kotominaga
2
340
Other Decks in Technology
See All in Technology
【Ubie】AIを活用した広告アセット「爆速」生成事例 | AI_Ops_Community_Vol.2
yoshiki_0316
1
120
旅先で iPad + Neovim で iOS 開発・執筆した話
zozotech
PRO
0
100
私たち準委任PdEは2つのプロダクトに挑戦する ~ソフトウェア、開発支援という”二重”のプロダクトエンジニアリングの実践~ / 20260212 Naoki Takahashi
shift_evolve
PRO
2
210
Ruby版 JSXのRuxが気になる
sansantech
PRO
0
170
Oracle AI Database移行・アップグレード勉強会 - RAT活用編
oracle4engineer
PRO
0
110
AIエージェントに必要なのはデータではなく文脈だった/ai-agent-context-graph-mybest
jonnojun
1
250
Why Organizations Fail: ノーベル経済学賞「国家はなぜ衰退するのか」から考えるアジャイル組織論
kawaguti
PRO
1
200
登壇駆動学習のすすめ — CfPのネタの見つけ方と書くときに意識していること
bicstone
3
130
2026年、サーバーレスの現在地 -「制約と戦う技術」から「当たり前の実行基盤」へ- /serverless2026
slsops
2
270
Webhook best practices for rock solid and resilient deployments
glaforge
2
310
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
850
今こそ学びたいKubernetesネットワーク ~CNIが繋ぐNWとプラットフォームの「フラッと」な対話
logica0419
5
450
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
247
13k
4 Signs Your Business is Dying
shpigford
187
22k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
58
50k
AI: The stuff that nobody shows you
jnunemaker
PRO
2
270
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
120
Making Projects Easy
brettharned
120
6.6k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Building Applications with DynamoDB
mza
96
6.9k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
200
The Curious Case for Waylosing
cassininazir
0
240
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Transcript
© 2024 Wantedly, Inc. Rubyで家電をスマートに操作しよう! Omotesando.rb #103 Nov. 9 2024
- Kojiro Tominaga
© 2024 Wantedly, Inc. 自己紹介 所属: ウォンテッドリー株式会社 職業: バックエンドエンジニア X:
@kou_tominaga 経歴: • 2022/9 ソフトウェアエンジニアに転職 • 2024/7 現職 冨永 康二郎
© 2024 Wantedly, Inc. 1. 話す事 2. モチベーション 3. Rubyで家電を操作する
4. まとめ 目次
© 2024 Wantedly, Inc. 話す事 Slackからスマートリモコンを操作する方法を話します!
© 2024 Wantedly, Inc. モチベーション • 家電(スマートリモコン)の操作をチャットに残したい ◦ スマートリモコンは通信が一方向の場合がある。なので複数人で利用する場合、現在家 電がどうなっているか分からない。チャットに操作が残ると嬉しい。
• チャットから家電を操作したい ◦ 慣れたUIから操作できる。 ◦ 複数のリモコンを意識せずに操作できる。
© 2024 Wantedly, Inc. 使用するツールと技術
© 2024 Wantedly, Inc. Rubyで家電を操作する • Ruby on Rails ◦
連携を仲介するバックエンドに利用します。 簡単なAPIを構築してSlackとNature Remoをつなぎます。 ◦ 爆速でサーバを作成できるので利用しました。 • Slack API ◦ Slackからリクエストを受け取って家電を操作します。 ◦ LINEやDiscordに変更してもOK。 • Nature Remo API ◦ Nature Remoにコマンドを送り家電を操作します。 使用するツールと技術
© 2024 Wantedly, Inc. Nature Remo APIを利用する理由 Rubyで家電を操作する Nature Remo
APIを利用する理由
© 2024 Wantedly, Inc. • IFTTTでSlack -> Alexa連携 ◦ IFTTTでのAlexa連携廃止。Web
hookの有料化。 • Slack -> Rails -> Alexa操作 ◦ Alexa -> Railsは可能だが、Rails -> Alexaは難しそう。 ▪ Railsから音声デバイスを操作して物理的に Alexaを操作する事はできそう。。。 • 直接スマートリモコン(Nature Remo)を操作する! Rubyで家電を操作する Nature Remo APIを利用する理由
© 2024 Wantedly, Inc. Rubyで家電を操作する 構成
© 2024 Wantedly, Inc. Rubyで家電を操作する 必要な作業 1. Nature Remo APIのtokenを取得
2. バックエンドの作成 3. Slackのスラッシュコマンドの設定 必要な作業
© 2024 Wantedly, Inc. Nature Remoの開発者向けサイトにアクセスしてtokenを発行する https://home.nature.global Rubyで家電を操作する Nature Remo
APIのtokenを取得
© 2024 Wantedly, Inc. エンドポイントの実装 Nature Remoのtoken 家電に対応するID Rubyで家電を操作する バックエンドの作成
© 2024 Wantedly, Inc. API docがあるので参考 https://swagger.nature.global/ #/default/get_1_echonetlite_a ppliances Rubyで家電を操作する
バックエンドの作成
© 2024 Wantedly, Inc. 注意! リクエスト制限が5分で30回なので無駄なリクエストが飛ばないようにしま しょう。 キャッシュするなどの工夫が必要です。 https://developer.nature.global/#%e3%83%aa%e3%82%af% e3%82%a8%e3%82%b9%e3%83%88%e5%88%b6%e9%99%90
Rubyで家電を操作する バックエンドの作成
© 2024 Wantedly, Inc. 手軽に検証したかったのでngrok(エングロック)を利用してアプリを公 開しました。 ※ngrokの会員登録が必要です Rubyで家電を操作する バックエンドの作成
© 2024 Wantedly, Inc. コマンド名 Rubyで家電を操作する Slackのスラッシュコマンドの設定 コマンドを設定する サーバーのURL
© 2024 Wantedly, Inc. Rubyで家電を操作する 実際に家電を操作する 🎉照明がついた
© 2024 Wantedly, Inc. まとめ
© 2024 Wantedly, Inc. まとめ Slack -> Rails -> スマートリモコンの連携はとても簡単!
Slackから簡単に家電を操作できるだけでなく、他のAPIやデバイ スとの連携も可能でスマートホームの拡張が期待できます。
© 2024 Wantedly, Inc. まとめ 何よりコードで家電を操作する事は楽しい!
© 2024 Wantedly, Inc. ご清聴ありがとうございました!