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
Node.js+Socket.ioでEjectできるようにしてみる/20160528-osc16ng
Search
Akira Ouchi
May 28, 2016
How-to & DIY
0
2.1k
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
最近のラズピッピいじり / 20250308-rpijam-13th-birthday
akkiesoft
0
990
Raspberry Pi 秋の新製品をチェックしてみよう / 20231202-rpi-jam-tokyo
akkiesoft
0
770
Raspberry Pi Pico 2 移行はアリか? / 20240927-rpi-pico2
akkiesoft
0
100
Any Raspberry Pi (5) Updates? / 20240618-rpi-updates
akkiesoft
0
64
Raspberry Pi 5のPCI Express拡張ボードあれこれ / 20240420-osunc2024-kawagoe
akkiesoft
0
260
Misskey OSPNサーバーでFediverseをはじめよう / 20240203-msky-ospn
akkiesoft
1
620
Raspberry PiではじめるKiCad入門 / 20240226-rpi-jam
akkiesoft
1
4.3k
ワンチャンXから離脱してFediverseに飛び込もう / 20240203-homeserver
akkiesoft
0
350
Raspberry Pi 5のPCI Express拡張ボードあれこれ / 202401-rpijam-osc24os
akkiesoft
0
3.1k
Other Decks in How-to & DIY
See All in How-to & DIY
JAWS-UG Community Upadate - JAWS-UG 熊本
awsjcpm
2
150
未来の投げ銭箱
inoue2002
2
110
How to make the Groovebox
asonas
2
1.4k
ブロックテーマをゴリゴリに使い倒してサイトを作った話 / Kansai WordPress Meetup 2025 01 25
tbshiki
1
510
JAWS-UGのご紹介 JAWS-UGとは?
awsjcpm
0
5.1k
自分がご機嫌になれる 素敵な場所を守るために
kenichirokimura
2
110
BlueTeamer勉強会 Security Onion編 激闘!Importノード
disconinja
1
290
AWSコミュニティプログラムのご紹介 -グローバル展開するコミュニティプログラム-
awsjcpm
0
140
AWSと学生支援 - Education-JAWS #0
awsjcpm
1
140
安全に失敗するための手遊び-未定義動作を引き出そう-
zilmina
0
600
CH32Vシリーズを楽しもう(74thの場合) / enjoy ch32v series
74th
1
910
AIお菓子ロッカー
keicafeblack
0
150
Featured
See All Featured
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
It's Worth the Effort
3n
184
28k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
137
34k
Into the Great Unknown - MozCon
thekraken
39
1.8k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.6k
The Pragmatic Product Professional
lauravandoore
35
6.7k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
A designer walks into a library…
pauljervisheath
205
24k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
Become a Pro
speakerdeck
PRO
28
5.4k
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業界進出もあるで(ない)
おわり