 
           {eventName, body, eventId} = message
 
-          return  if @eventCache[eventId]
-
-          # TODO delete this periodically
-          @eventCache[eventId] = yes
+          return  unless eventName and body
+
+          if eventId?
+            return  if @eventCache[eventId]
+
+            # TODO delete this periodically
+            @eventCache[eventId] = yes
+
 
           # when a user is connected in two browsers, and leaves a channel, in second one
           # they receive RemovedFromChannel event for their own. Therefore we must unsubscribe

            return @channels[channel].emit eventName, body

          events = eventName.split "."
          instanceChannel = events[0]
          eventName = events[1]
          @channels[instanceChannel].emit eventName, body




    channelName = "instance-#{token}"

    return callback null, @channels[channelName]  if @channels[channelName]

    # just create a channel for instance event reception
    channelInstance = new PubnubChannel name: channelName

