code: def notify(self, data):
          
          triggered_channels = []
          for channel_name, items in data.items():
              for item in items or []:
                  LOG.debug('notify received: %s', item)
                  try:
                      # some channels return strings rather than objects (e.g. de-registrations),
                      # normalize them here
                      item = {'value': item} if isinstance(item, six.string_types) else dict(item)
                      # inject the channel name to the data (so channels can filter on it)
                      item['channel'] = channel_name
                      triggered_channels.extend(list(self._notify_single_item(item)))
                  except Exception:  # noqa
                      LOG.exception('Subscription notification failed')
          return triggered_channels
docs: Notify subscribers that data was received