       checkrabbit = setInterval ()=>
         if rabbitReady
           clearInterval checkrabbit
-          @db = @communicator.mergenData
+          console.log "ready emitted.....!!!!"
           @emit 'kite-ready'
       , 10
 

      subscribeToChannelNames = _.without(subscribeToChannelNames, channel)
      console.log ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> connected to channel", channel, subscribeToChannelNames
      
    # we have a second connection because, redis client in node doesnt send any commands
    # when it enters subscribe mode, though redis docs says you can publish if you are in subcribe
    # mode
    @mergenData = redis.createClient(@port, @host)
    @mergenData.on "error", (err)->
      console.log "error", err

    data = {}
    data.pid = process.pid
    data.hostname = os.hostname()
    data.serviceGenericName = @serviceGenericName
    data.serviceUniqueName = @serviceUniqueName
    data.startedAt = Date.now()

    @mergenData.hset "#{@publicKey}-kites", "#{@serviceGenericName}-#{@serviceUniqueName}", data

    @sendCommand @getChannelNameForGenericName(), "kite.who", [], (err, reply)->
      @commands['kite.join'].call(@, {args:[@getChannelNameForGenericName(),reply.from], from:reply.from})

    @sendCommand @getChannelNameForGenericName(), "kite.join", [@getChannelNameForGenericName(), @getChannelNameForKite()]

    startQueueChecker = ()=>
      startQueueCheckerInterval = setInterval ()=>
        @commands['kite.consume']()
      , 50

    subscribeCheck = setInterval ()=>
      if subscribeToChannelNames.length is 0

    @mergenData.publish channel, JSON.stringify(data)

  connectToMessageBus: (cb)=>

    # we have a second connection because, redis client in node doesnt send any commands
    # when it enters subscribe mode, though redis docs says you can publish if you are in subcribe
    # mode
    @mergenData = redis.createClient(@port, @host)
    @mergenData.on "error", (err)->
      console.log "error", err

    data = {}
    data.pid = process.pid
    data.hostname = os.hostname()
    data.serviceGenericName = @serviceGenericName
    data.serviceUniqueName = @serviceUniqueName
    data.startedAt = Date.now()

    @mergenData.hset "#{@publicKey}-kites", "#{@serviceGenericName}-#{@serviceUniqueName}", data

    @sendCommand @getChannelNameForGenericName(), "kite.who", [], (err, reply)->
      @commands['kite.join'].call(@, {args:[@getChannelNameForGenericName(),reply.from], from:reply.from})

    @sendCommand @getChannelNameForGenericName(), "kite.join", [@getChannelNameForGenericName(), @getChannelNameForKite()]


    @kite.db = @mergenData

    @mergen = redis.createClient(@port, @host)
    @mergen.on "error", (err)->
      console.log("Error ",err)
