code: def handle_channel_message(db, queues, b64decode, notification_object):
      
      for notification in getattr(notification_object, 'notifications') or []:
          # Ensure we have subscribed for the path we received a notification for
          subscriber_queue = queues[notification.ep].get(notification.path)
          if subscriber_queue is None:
              LOG.debug(
                  "Ignoring notification on %s (%s) as no subscription is registered",
                  notification.ep,
                  notification.path
              )
              break
  
          payload = tlv.decode(
              payload=notification.payload,
              content_type=notification.ct,
              decode_b64=b64decode
          )
          subscriber_queue.put(payload)
  
      for response in getattr(notification_object, 'async_responses') or []:
          payload = tlv.decode(
              payload=response.payload,
              content_type=response.ct,
              decode_b64=b64decode
          )
          db.update({response.id: dict(
              payload=payload,
              error=response.error,
              status_code=response.status
          )})
docs: Handler for notification channels
  
      Given a NotificationMessage object, update internal state, notify
      any subscribers and resolve async deferred tasks.
  
      :param db:
      :param queues:
      :param b64decode:
      :param notification_object:
      :return: