osc2014...

101
2014/06/14 @tututen 聞くだけじゃもったいない! 観客発表者双方向通信を実現する 投げ銭BOX

Upload: fumihito-yokoyama

Post on 11-Jun-2015

901 views

Category:

Documents


4 download

TRANSCRIPT

Page 1: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

2014/06/14 @tututen

聞くだけじゃもったいない!

観客と発表者の双方向通信を実現する

「投げ銭BOX」

Page 2: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

自己紹介

•CLR/H 参加者

•某IT企業 会社員

•三十路カウントダウン@2年

Page 3: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」
Page 4: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

北見から来ました

Page 5: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

パネルでポンが得意

Page 6: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

◯□◯□動画でのタグ

Page 7: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」
Page 8: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Ohotechの運営

Page 9: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

詳しくは北海道企画で!

Page 10: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

提 供

CLR/HOhotech

AOSC

Page 11: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

投げ銭BOXとは

Page 12: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」
Page 13: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

作者

石澤 大さん

Page 14: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Ohotech 特盛#05で発表して頂きました

Page 15: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

発表者の評価をアンケート等を介さず

リアルタイムで評価できる

Page 16: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

是非使いたい!

Page 17: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

いくつかのハードル

Page 18: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

WAN経由での通信非対応(LAN環境必須)

Page 19: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

iPhoneアプリしかない!

Page 20: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

iPhone持ってないと投げ銭出来ない!!

Page 21: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Webから投げ銭出来るようにしよう!!

Page 22: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

用意したもの

Page 23: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Python・Flask・Twisted・txosc

Page 24: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Python・Flask・Twisted・txosc

Web Framework

Page 25: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

OSC

Python・Flask・Twisted・txosc

Web Framework

Page 27: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

UDP 通信Port 8999

Page 28: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

UDP 通信Port 8999

/path/to args1 args2 ...

Page 29: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

UDP 通信Port 8999

/mouse/button “y10”

Page 30: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

from txosc import osc, sync sender = sync.UdpSender('127.0.0.1', 8999) osc_msg = osc.Message('/mouse/button', 'y10') sender.send(osc_msg) sender.close()

Python コード例

Page 31: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

作ったもの

Page 32: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

開発プロトタイプ

Page 33: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

コントローラVer.1

見本 見本

Page 34: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

@tomio2480 氏が一晩で作成くれました!

Page 35: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

でも、まだ問題が

Page 36: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

WAN経由での通信非対応(LAN環境必須)

Page 37: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

お手元 壇上

/mouse/button “y10”

WAN経由で通信しよう?

Page 38: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

VPNを使おう!!

Page 39: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

お手元 壇上

VPS

Page 40: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

お手元 壇上

VPS

HTTP VPN

Page 41: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

お手元 壇上

VPS

POST

Page 42: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

お手元 壇上

VPS

OSC\チャリーン/

Page 43: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Ohotech 特盛#08実戦投入!!

Page 44: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

特盛#08 前半

Page 45: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

いい感じに評価されてる!

Page 46: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

後半戦

Page 47: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

BOXを見る限り盛況なプレゼン

Page 48: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

ここでアンケートを見てみましょう

Page 49: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

銭が多くなった発表

Page 50: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

何もしてないことでお賽銭を稼ぐシステムでした

(`・ω・´)

Page 51: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

失敗すると評価されるこの世界は厳しいなと思った。なにもしてなくても評価されるのは人望だなーと思ったり?となったり。

Page 52: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

プレゼンに対して煽 り

の意味で銭を投げる

Page 53: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

プレゼンに対して非難・煽り

に対して銭を投げる

予定外の投げ銭の使い方!

Page 54: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

そんな反応の中…

Page 55: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

ダメ銭Dis銭

としての新たな可能性!

Page 56: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

とても前向きでした

Page 57: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

総  評

Page 58: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

1種類のコインだと評価の善し悪しがわかりにくい

BOXをVPN−OSC経由だとパケット詰まりを感じた

VPNの準備が大変

Page 59: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Next Step!

Page 60: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

VPNの準備がネック

煽り銭の実装

herokuにデプロイ

Page 61: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

VPNの準備がネック↓

BOXのWebアプリ化

Page 62: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

VPNの準備がネック↓

BOXのWebアプリ化

Page 63: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

BOXで物理演算使用↓

HTML5でどうにか↓

JS版Box2Dを使おう

Page 64: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

BOXで物理演算使用↓

HTML5でどうにか↓

JS版Box2Dを使おう

Page 65: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

BOXで物理演算使用↓

HTML5でどうにか↓

JS版Box2Dを使おう

Page 66: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Box2D.jsBox2DWeb

jsbox2dMatter.js

Page 67: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Box2D.jsBox2DWeb

jsbox2dMatter.js

Page 68: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

「Box2D Web」で検索した結果

Page 69: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

単一ファイルで完結する

新しいのを基準に作成

Page 70: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Box2D.jsBox2DWeb

jsbox2dMatter.js

Page 71: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

煽り銭の実装

Page 72: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

herokuにデプロイ↓

gunicornが必要↓

Flask-SocketIOとの相性…

Page 73: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

herokuにデプロイ↓

gunicornが必要↓

Flask-SocketIOとの相性…

Page 74: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

herokuにデプロイ↓

gunicornが必要↓

Flask-SocketIOとの相性…

Page 76: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

fixされてますが上手く動かず…

Page 77: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

ですので

Page 78: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Nodejsで作りなおす!

(14年5月19日)

Page 79: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

用意したもの

Page 80: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

"socket.io": "^0.9.16"

"ejs": "^1.0.0"

"express": "^4.3.0"

"morgan": "^1.1.1"

"qrcode-npm": "0.0.3"

Page 81: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

移植はさくさく(5日)

Page 82: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Gitの使い方に四苦八苦

Page 83: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

hg revert 相当?git st 省略不可? 

git push repo先 [???]

git commit [ここ] が省略できない?

公開鍵登録してのError: Permission denied (publickey)

Page 84: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

heroku toolbelt

にも四苦八苦

Page 85: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

install.shだけでは動かない登録したパスワード忘れる…

ruby 1.8系で動作せず

※インストール後PATH通しましょう

公式DocsよりStackOverFlow

Page 86: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

あとはスムーズ

Page 87: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

投げ銭使ってみたい方?

Page 88: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

gitクライアント

heroku toolbelt

があれば5分で出来ます!

Page 89: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Demo(https://github.com/ohotech/nagesen_web)

Page 90: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

ね、簡単でしょ?

Page 91: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

Ohotech 特盛#09実戦投入!!

Page 92: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」
Page 93: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

運用上の問題ソフト上の問題

Page 94: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

運用上の問題

Page 95: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

・煽り銭の扱い方

・プロジェクタ

・ネットの配備

Page 96: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

ソフト上の問題

Page 97: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

・銭の桁上げ問題

・煽り銭表示可否

・スクリプト実行対策

Page 98: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

実践するたびに

問題発生

Page 99: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

創意工夫する

時期ですので

感想をお願いします!

Page 100: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

対戦しませんか?

Page 101: Osc2014 聞くだけじゃもったいない!観客と発表者の双方向通信を実現する「投げ銭box」

対戦しませんか?ご静聴

ありがとうございました