 
     reconnect: ->
         if @_reconnecting
-            @logger.info 'Already reconnecting, skipping call.'
-            return
+            @logger.info 'WARNING: Already reconnecting.'
+        @_connecting = false
         @_reconnecting = true
         if @_pongTimeout
             clearInterval @_pongTimeout

        @ws = new WebSocket @socketUrl, options

        @ws.on 'error', (error) =>
            @emit 'error', error

        @ws.on 'open', =>


        @ws.on 'close', (code, message) =>
            @emit 'close', code, message
            @_connecting = false
            @connected = false
            @socketUrl = null
            if @autoReconnect
