Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
Node.js+Socket.ioでEjectできるようにしてみる/20160528-osc16ng
Akira Ouchi
May 28, 2016
How-to & DIY
0
1.6k
Node.js+Socket.ioでEjectできるようにしてみる/20160528-osc16ng
OSC2016 Nagoyaにて発表
Akira Ouchi
May 28, 2016
Tweet
Share
More Decks by Akira Ouchi
See All by Akira Ouchi
akkiesoft
0
560
akkiesoft
0
940
akkiesoft
0
45
akkiesoft
0
600
akkiesoft
0
2.4k
akkiesoft
2
3.5k
akkiesoft
1
1.9k
akkiesoft
1
96
akkiesoft
0
1.1k
Other Decks in How-to & DIY
See All in How-to & DIY
ktgrstsh
0
190
naototty
1
200
soracom
1
2.9k
n0bisuke
1
560
bigtree
0
160
sobarecord
1
160
nakaamino
0
120
event2020
0
310
wyamazak
0
490
n0bisuke
1
330
n0bisuke2
1
220
neri78
0
120
Featured
See All Featured
trishagee
20
2.1k
mthomps
39
2.3k
reverentgeek
27
1.9k
mongodb
23
3.8k
tmm1
61
8.4k
erikaheidi
13
4.2k
malarkey
393
60k
lara
590
61k
kneath
219
15k
cassininazir
347
20k
holman
461
280k
zakiwarfel
88
3.3k
Transcript
Node.js+Socket.ioで Ejectできるように してみる Ejectコマンドユーザー会 あっきぃ ( id:Akkiesoft ) 2016/05/28 OSC2016
Nagoya
自己紹介 • あっきぃ です • 1988年(昭和63年)生まれ/28歳 • 北海道根室市出身(日本最東端の駅の近く) • 渋谷で仮想化エンジニアしてます
? • @Akkiesoft – ツイート量多いのでフォロー非推奨 – 気軽にブロックします
EjectZero • Raspberry Pi ZeroをCD-‐ROMドライブに内蔵 • USBポート数の都合上トレイ開閉はGPIO – さよならEjectコマンド……? •
トレイにRPiを固定しているので、 Ejectすると† †コア† †を吐く
EjectZeroの役割 • 現在は「除夜のEject」用ドライブ • 以下の方法で操作可能 – Webアクセスして実行 – 内臓のAPI(接続元IP制限付き)経由で実行
大晦日:除夜のEject図解 イ ン タ ー ネ ッ ト Port:8000 こくだランド
ツイのオタク 煩悩 映像・生活音
OSCの展示の時…… • API経由は使いづらい • テザリングはPort8000を開けるとかできない • 対応しているうちに日が暮れる – そもそも家で作りこめ イ
ン タ ー ネ ッ ト OSC会場 テザリング
OSCの展示デモ改善計画 • 我がブースのみウワッハッハーーン!! 我 がブースのッハアーーーー! 我がブースノ ミナラズ! OSCみんなの、日本中の問題じゃ ないですか!! •
今まで†手†でドライブのトレイ開閉をしていた デモ環境を! ウグッブーン!! ゴノ! デ の! モガッハッハアン!! ア゛ーーデモ環 境を! ゥ改善シダイ!
OSCの展示デモ改善計画 • EjectZeroは誰でもブラウザからリモート制御 できるようにする • エアコンリモート操作のデモをPiTFTで画面 タッチで制御できるようにする←別途展示中
Node.js+Socket.ioで実装 • ConoHa VPS上にNode.js+Socket.ioでチャット サーバーを建てる • EjectZeroがチャットサーバーに接続 – botっぽいかんじ •
ユーザーがConoHa VPSのチャットサーバーに 接続してEjectを指示 • EjectZeroのトレイが開閉される
うおおおおおおおおおおおおああ あああああああああああああああ あああああああああああああ あ!!!!!!!!!!! (ブリ ブリブリブリュリュリュリュリュリュ!!!! !!ブツチチブブブチチチチブリリイリブブ ブ ブゥゥゥゥッッッ!!!!!!!) こんなかんじ
Node.js+Websocket.ioサーバー@ConoHa botとして接続 荒ぶるドライブ チャットサーバーからページを提供 ツイのオタクのアタック
アクセスしてみよう • http://d250g2.com:3980 • Optical drive statusが ReadyだったらEjectできる • ダメなときはNot
readyに なる
公開していない • サンプルコードをいじっただけなのでセキュリ ティ的にかなりマズい、気がする • この辺のノウハウはもっと収集してみたい
どこでもEject • 安SIMと組合わせて野外Ejectもできる • Ejectの農業IoT業界進出もあるで(ない)
おわり