Node.js+Socket.ioでEjectできるようにしてみる/20160528-osc16ng
by
Akira Ouchi
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Node.js+Socket.ioで Ejectできるように してみる Ejectコマンドユーザー会 あっきぃ ( id:Akkiesoft ) 2016/05/28 OSC2016 Nagoya
Slide 2
Slide 2 text
自己紹介 • あっきぃ です • 1988年(昭和63年)生まれ/28歳 • 北海道根室市出身(日本最東端の駅の近く) • 渋谷で仮想化エンジニアしてます ? • @Akkiesoft – ツイート量多いのでフォロー非推奨 – 気軽にブロックします
Slide 3
Slide 3 text
EjectZero • Raspberry Pi ZeroをCD-‐ROMドライブに内蔵 • USBポート数の都合上トレイ開閉はGPIO – さよならEjectコマンド……? • トレイにRPiを固定しているので、 Ejectすると† †コア† †を吐く
Slide 4
Slide 4 text
EjectZeroの役割 • 現在は「除夜のEject」用ドライブ • 以下の方法で操作可能 – Webアクセスして実行 – 内臓のAPI(接続元IP制限付き)経由で実行
Slide 5
Slide 5 text
大晦日:除夜のEject図解 イ ン タ ー ネ ッ ト Port:8000 こくだランド ツイのオタク 煩悩 映像・生活音
Slide 6
Slide 6 text
OSCの展示の時…… • API経由は使いづらい • テザリングはPort8000を開けるとかできない • 対応しているうちに日が暮れる – そもそも家で作りこめ イ ン タ ー ネ ッ ト OSC会場 テザリング
Slide 7
Slide 7 text
OSCの展示デモ改善計画 • 我がブースのみウワッハッハーーン!! 我 がブースのッハアーーーー! 我がブースノ ミナラズ! OSCみんなの、日本中の問題じゃ ないですか!! • 今まで†手†でドライブのトレイ開閉をしていた デモ環境を! ウグッブーン!! ゴノ! デ の! モガッハッハアン!! ア゛ーーデモ環 境を! ゥ改善シダイ!
Slide 8
Slide 8 text
OSCの展示デモ改善計画 • EjectZeroは誰でもブラウザからリモート制御 できるようにする • エアコンリモート操作のデモをPiTFTで画面 タッチで制御できるようにする←別途展示中
Slide 9
Slide 9 text
Node.js+Socket.ioで実装 • ConoHa VPS上にNode.js+Socket.ioでチャット サーバーを建てる • EjectZeroがチャットサーバーに接続 – botっぽいかんじ • ユーザーがConoHa VPSのチャットサーバーに 接続してEjectを指示 • EjectZeroのトレイが開閉される
Slide 10
Slide 10 text
うおおおおおおおおおおおおああ あああああああああああああああ あああああああああああああ あ!!!!!!!!!!! (ブリ ブリブリブリュリュリュリュリュリュ!!!! !!ブツチチブブブチチチチブリリイリブブ ブ ブゥゥゥゥッッッ!!!!!!!) こんなかんじ Node.js+Websocket.ioサーバー@ConoHa botとして接続 荒ぶるドライブ チャットサーバーからページを提供 ツイのオタクのアタック
Slide 11
Slide 11 text
アクセスしてみよう • http://d250g2.com:3980 • Optical drive statusが ReadyだったらEjectできる • ダメなときはNot readyに なる
Slide 12
Slide 12 text
公開していない • サンプルコードをいじっただけなのでセキュリ ティ的にかなりマズい、気がする • この辺のノウハウはもっと収集してみたい
Slide 13
Slide 13 text
どこでもEject • 安SIMと組合わせて野外Ejectもできる • Ejectの農業IoT業界進出もあるで(ない)
Slide 14
Slide 14 text
おわり