# File lib/faye/websocket/api.rb, line 48
      def send(data, type = nil, error_type = nil)
        if @ready_state == CONNECTING
          if @send_buffer
            @send_buffer << [data, type, error_type]
            return true
          else
            raise IllegalStateError, 'Cannot call send(), socket is not open yet'
          end
        end

        return false if @ready_state == CLOSED

        data = data.to_s unless Array === data

        data = WebSocket.encode(data) if String === data
        frame = @parser.frame(data, type, error_type)
        @stream.write(frame) if frame
      end