code: def _inner_receive(self):
      messages = []
      message_dict = self.run.get_metrics()
      if "nni_manager" not in message_dict:
          return []
      message_list = message_dict["nni_manager"]
      if not message_list:
          return messages
      if type(message_list) is list:
          if self.current_message_index < len(message_list) - 1:
              messages = message_list[
                  self.current_message_index + 1 : len(message_list)
              ]
              self.current_message_index = len(message_list) - 1
      elif self.current_message_index == -1:
          messages = [message_list]
          self.current_message_index += 1
      newMessage = []
      for message in messages:
          # receive message is string, to get consistent result, encode it here.
          newMessage.append(message.encode("utf8"))
      return newMessage
  
file_path: nni/nni/tools/trial_tool/aml_channel.py
imports: from azureml.core.run import Run
  from .base_channel import BaseChannel
  from .log_utils import LogType, nni_log
label_desc: Use image node_id 5 for calling the AMLChannel obj's underlying member method code with example usage: obj._inner_receive() and returns: newMessage, list, messages