Class: Routes::Ws
- Inherits:
-
Object
- Object
- Routes::Ws
- Defined in:
- lib/server_skeleton/lib/routes/ws.rb
Class Method Summary collapse
- .onclose(request, ws) ⇒ Object
- .onmessage(request, ws, msg) ⇒ Object
- .onopen(request, ws) ⇒ Object
- .run(request) ⇒ Object
Class Method Details
.onclose(request, ws) ⇒ Object
27 28 29 |
# File 'lib/server_skeleton/lib/routes/ws.rb', line 27 def self.onclose(request, ws) delete_socket(request, ws) end |
.onmessage(request, ws, msg) ⇒ Object
24 25 |
# File 'lib/server_skeleton/lib/routes/ws.rb', line 24 def self.(request, ws, msg) end |
.onopen(request, ws) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 |
# File 'lib/server_skeleton/lib/routes/ws.rb', line 12 def self.onopen(request, ws) token = request.params["token"] unless token ws.send({ msg: "no valid token was sent with websocket; invalid" }.to_json) ws.close return end Sockets[token] = ws end |
.run(request) ⇒ Object
3 4 5 6 7 8 9 10 |
# File 'lib/server_skeleton/lib/routes/ws.rb', line 3 def self.run(request) return unless Faye::WebSocket.websocket?(request.env) socket = Faye::WebSocket.new(req.env) socket.onopen { onopen(request, socket) } socket. { |msg| (request, ws, msg) } socket.onclose { onclose(request, ws) } socket.rack_response end |