docstr: Send a payload through the message manager.
  
  :param receiver_id:
      int identifier for agent to send message to
  :param data:
      object data to send
  :param quick_replies:
      list of quick replies
  :param persona_id:
      identifier of persona
code: def observe_payload(
      self,
      receiver_id: str,
      data: Dict[Any, Any],
      quick_replies: List[str] = None,
      persona_id: str = None,
  ):
      """
      Send a payload through the message manager.
  
      :param receiver_id:
          int identifier for agent to send message to
      :param data:
          object data to send
      :param quick_replies:
          list of quick replies
      :param persona_id:
          identifier of persona
      """
      pass
  
imports: from abc import ABC, abstractmethod
  from asyncio import Future
  import copy
  import sys
  import logging
  import datetime
  import threading
  import time
  import traceback
  from typing import Dict, Any, Optional, List, Callable
  from parlai.chat_service.core.agents import ChatServiceAgent
  import parlai.chat_service.utils.logging
  import parlai.chat_service.utils.misc
  import parlai.chat_service.utils.server
  from parlai.chat_service.core.world_runner import ChatServiceWorldRunner
  from parlai.core.opt import Opt
label_desc: Use image node_id 36 for calling the ChatServiceManager obj's underlying member method code with example usage: obj.observe_payload(receiver_id, data, quick_replies, persona_id) without return types