# File lib/websocket/driver/draft76.rb, line 30 def close(reason = nil, code = nil) return false if @ready_state == 3 @socket.write([0xFF, 0x00].pack('C*')) @ready_state = 3 emit(:close, CloseEvent.new(nil, nil)) true end
# File lib/websocket/driver/draft76.rb, line 24 def start return false unless super send_handshake_body true end
# File lib/websocket/driver/draft76.rb, line 20 def version 'hixie-76' end
# File lib/websocket/driver/draft76.rb, line 7 def initialize(socket, options = {}) super input = @socket.env['rack.input'] @stage = -1 @body = (input ? input.read : String.new('')).force_encoding(BINARY) @headers.clear @headers['Upgrade'] = 'WebSocket' @headers['Connection'] = 'Upgrade' @headers['Sec-WebSocket-Origin'] = @socket.env['HTTP_ORIGIN'] @headers['Sec-WebSocket-Location'] = @socket.url end