Gem
下記のGemだけでOK!
gem "websocket-rails"
あとは、bundle install
します!
ざっくりWebsocket
Websokecketとは
サーバとクライアント間は一度でも接続が確立すると、明示的に切断しない限り通信手順を意識することなくデータのやり取りをソケット通信で実施できる
WebSocketで接続が確立しているサーバとすべてのクライアントは同じデータを共有し、リアルタイムで送受信できる
(出典: http://www.atmarkit.co.jp/ait/articles/1111/11/news135.html)
ざっくりwebsocket-rails使い方
- クライアントはhttp://任意のホスト名/websocketに対してアクセスをする
- Rails側で受け取った内容をどこで処理するか...は、Event Routerに情報を記述する
- Javascript側のトリガーは
WebSocketRailsインスタンス.trigger
。 - Javascript側のレスポンス受け取りは
WebSocketRailsインスタンス.bind
。 - チャネルの確立をすることで、一旦中断したやり取りも再びやり取りを復活できます!
- subcribeをつかう。Event Routerも設定する。