ランサーズ等のサービスを開発・運用する中で得た知識やノウハウを紹介しています。

thumbnail

Labels:  開発よもやま 投稿者:akin

初めてのIoT

こんにちは、ランサーズ Advent Calendar 2017の15日目を担当します、akin.です。

年初から家でIoTを導入してから、ちょっとずつ便利になってきました。
何番煎じなのか分からないですが描かせて頂きました。

まだAmazon EchoやGoogle Homeなどのスマートスピーカーは導入していないのですが、
iPhoneのSiriとiPadのHomeKit連携を利用し、自宅サーバーとIRKitの組み合わせでIoT化しています。

IRKitとは

IRKitは赤外線の送受信を行えてWiFi接続をも備えている端末で、APIサーバーともなっています。
後継機のNature Remoも同様な仕様であり、他にも沢山センサーが付属されているそうです。

構成&動き


  1. iPhoneでSiriで声掛け又はHomeKitのアプリから操作
  2. 家のiPadがその情報をキャッチして家サーバーへPush
  3. 家サーバーがIRKitのAPIを叩くことで家電を操作

こういうリレーを行い操作をしています
そのため、Siriからスマートスピーカーに置き換えることや追加することもある程度簡単になっています。

また、IRKitはオープンソースなため、すっごく眩しい青ライトもコード書き換えでオフ状態にもできます。
自分はエラー時の赤ライト以外はオフ状態にしてあります。

color.setLedColor(0, 0, 1, false);

上記の数値部分がRGBのフラグになっていますので、全て0にするとオフ状態になります。
ただ、Remoに変えれば青ライトの眩しい部分も軽減できますのでそんなことをしなくてもよくなるかと思います。

サーバーのセットアップ

サーバーにはhomebridgeというHomeKitのエミュレートできるNodeJSサーバーになります。
homebridgeにはいろいろなPluginがあるため、今回はIRKitのPluginを利用してIRKitのAPIを叩いています。
※ 導入方法に関しては情報が沢山ありますので割愛します。

後はSiriに話しかけるだけ

後は家電の赤外線信号をhomebridgeに設定。
それが終わればiPhoneに「おはよう」や「おやすみ」など登録することで家電を操作できるようになります。

今後の予定

Nature Remoも手に入れていますので、今後人感センサー部分も開放されたらそちらに切り替える予定です。
一般販売されたのも10月ぐらい?ですので今後期待になりますね。

一昔前のやり方になりましたが、まだまだ現役で利用できるためご紹介させていただきました。

ランサーズではサービスを成長させてくれるエンジニア、デザイナーを募集しています!
ご興味がある方は、以下URLよりご応募ください。

PHPエンジニア
Rubyエンジニア
サーバーサイドエンジニア
SREエンジニア
フロントエンドエンジニア
その他採用情報

関連記事

thumbnail
ランサーズの管理画面と保守について

はじめに ランサーズ Advent Calendar 2017 10日目の記事です。 ランサーズサービスの運用に欠かせない管理画面について紹介したいと思います。 紹介 lancers.jpではサービスを運営するための監視やお問合わせへの対応として、管理画面によ …

CTOのGitHubコミット履歴で振り返る2016年

ランサーズCTOの横井です。 クリスマスというよりは、どちらかというと年末感のほうが強いので、GitHubのcontributionsの履歴でも見ながら今年を振り返ってみたいと思います。 ちなみに自分の立ち位置ですが、普段はプロダクト全体を見ている感じで、どこ …

振り返り合宿のすすめ

ランサーズエンジニアのsatoshiです。2017年はどんな年でしたか?お世話になった皆様、来年もよろしくお願いいたします。 僕は、2014年の年末から4年間毎年、その年の振り返りと翌年の目標を見つけるために、合宿をしています。 振り返り、整理することはなんと …