なんか作ったりした記録を忘れないうちに書くblog
●about
4月 012013
<< Sinatra RocketIOのcometの負荷が軽くなった || wordpressがpreタグの中の改行をbrタグにするので >>
Category: 未分類 | Tags: RocketIO, Ruby, Sinatra | Author: shokai
前‥Sinatra RocketIOというプラグイン作った、これでWebSocketとCometが使える
クライアントのグループを作る機能を追加した。
例えばチャットルームを分ける時などに使ってください。
クライアント側が接続する時にチャンネル名を指定すると、サーバー側で管理されているチャンネルリストに追加される。
var io = new RocketIO({channel: "チャンネル名"}).connect();
io.on("hoge", function(data){
alert(data);
});
サーバー側からチャンネルを指定して送信する
Sinatra::RocketIO.push :hoge, "ホゲ", :channel => "チャンネル名"
サンプルも更新してあるのでどうぞ
こうすれば、 http://アプリ名/chat/チャットルーム名 でグループ分けできる。
sinatra側でURLからチャットルーム名を取り出してチャンネル名とし、
get '/chat/:channel' do
@channel = params[:channel]
haml :chat
end
viewテンプレートでjavascriptにチャンネル名を渡して
:javascript
var channel = "#{@channel}";
接続時にchannelを指定する。
var io = new RocketIO({channel: channel}).connect();
Author
橋本 翔(Sho Hashimoto)
http://shokai.org
![](http://twiticon.herokuapp.com/shokai/bigger)
@shokai
(bytwiticon)
Search
関連記事
●2013 年3月19日 Sinatra RocketIOというプラグイン作った、これでWebSocketとCometが使える
●2013 年3月21日 Sinatra RocketIOで家のRaspberry PiのArduinoをリアルタイムで見る
●2013 年7月23日 ArduinoとRubyで赤外線リモコン作ってWebから操作できるようにした
●2013 年5月26日 Ruby上に並列言語拡張Lindaを実装してWebSocket/Cometで使えるようにした
●2013 年4月10日 RocketIO Hello World作った
Sovrn
最近の投稿
●
Scrapbox
●
Wikiを作ったのでblog移転する、あとYAPC2016でトークする
●
jsondiffpatchでJSONの差分を取る
●
koa v2でsocket.ioを使う
●
node-lindaで電気をつける
●
monorepo(lerna)の各packages下でコマンドを実行する
●
Edisonに最新のNode.jsを入れた
●
lernaでmonorepoした
●
CLIで天気を確認する
●
Node.jsでYahooから天気予報とリアルタイム降雨データを取得する
タグ
Android
Arduino
arduino_firmata
AVR
Bibliography
Book
C#
coffee-script
cpp
Del.icio.us
Event
EventMachine
gem
github
Heroku
hubot
JavaScript
Linda
Mac
MovableType
Node.js
oklab
OpenCV
orz
Other
Pileus
Product
PSoC
PSoCDesigner
RaspberryPi
Report
RocketIO
Ruby
Server
SFC
Sinatra
Tech
Tool&Tips
tw
Twitter
UART
Ubuntu
Video
wordpress
工房
アーカイブ
Theme Design by Web 2.0 Themes. Supported by Webmaster SEO Tools, LinksHeaven Directory and Garden Furniture