 
             completion?(finish: true)
 
-        } catch _ {
-            delegate?.fayeClient(self, didFailDeserializeMessage: message)
+        } catch let error as NSError {
+            delegate?.fayeClient(self, didFailDeserializeMessage: message, withError: error)
 
             completion?(finish: false)
         }

        }
    }

}


    }

    func handleFayeMessages(messages: [[String: AnyObject]]) {
        // TODO: handleFayeMessages
    }
}

// MARK: - SRWebSocketDelegate

extension FayeClient: SRWebSocketDelegate {

    public func webSocketDidOpen(webSocket: SRWebSocket!) {

        sendBayeuxHandshakeMessage()
    }

    public func webSocket(webSocket: SRWebSocket!, didReceiveMessage message: AnyObject!) {

