   tell:(options, callback) ->
     @handleRequest options.method, [options, callback]
 
+  send: (data) ->
+    try
+      if @readyState is READY
+        @ws.send JSON.stringify data
+        console.log "Sending", {data}
+      else
+        console.log "I'm still trying to reconnect, slow down..."
+    catch e
+      @disconnect()
+


  { Scrubber, Store } = Bongo.dnodeProtocol

  constructor: (options)->
    super

    { @kiteName, @correlationName, @kiteKey } = options

    @localStore   = new Store
    @remoteStore  = new Store

    @readyState = false
    @token = ""
    @getKiteAddr()

  createWebSocket: (url) ->
    new WebSocket "ws://#{url}/sock"

  getKiteAddr:()->
    requestData =

    console.log {method}, {args}
    @scrub method, args, (scrubbed) =>
      messageString = JSON.stringify(scrubbed)
      @ready => @send scrubbed

  scrub: (method, args, callback) ->
    scrubber = new Scrubber @localStore
