         groupName    : slug
 
       brokerChannel = KD.remote.subscribe channelName, subscriptionData
-      @forwardMessageEvents brokerChannel, this, ["MessageAdded", "MessageRemoved", "AddedToChannel"]
+      @forwardMessageEvents brokerChannel, this, getMessageEvents()
       @openedChannels[channelName] = {delegate: brokerChannel, channel: this}
       @emit "ChannelRegistered-#{channelName}", this
 

        KD.remote.subscribe channelName, subscriptionData, (brokerChannel)->
          {name} = brokerChannel
          socialapi.openedChannels[name] = {delegate: brokerChannel, channel: socialApiChannel}
          forwardMessageEvents brokerChannel, socialApiChannel, [
            {event: "MessageAdded", mapperFn: mapActivity}
            {event: "MessageRemoved", mapperFn: mapActivity}
            {event: "AddedToChannel", mapperFn: mapParticipant}
          ]

          socialapi.emit "ChannelRegistered-#{name}", socialApiChannel


      when 'post', 'message'           then @message.byId {id}, kallback
      else callback { message: "#{type} not implemented in revive" }

  getMessageEvents = ->
    [
      {event: "MessageAdded", mapperFn: mapActivity}
      {event: "MessageRemoved", mapperFn: mapActivity}
      {event: "AddedToChannel", mapperFn: mapParticipant}
    ]


  message:
    byId                 : messageRequesterFn
