code: def send(self, command: Command) -> None:
      if self._closing:
          return
      _logger.debug(f"Send {command}")
      for i in range(5):
          try:
              conn = self._ensure_conn()
              conn.send(command)
              return
          except Exception:
              _logger.exception(
                  f"Failed to send command. Retry in {i}s"
              )
              self._terminate_conn("send fail")
              time.sleep(i)
      _logger.warning(f"Failed to send command {command}. Last retry")
      conn = self._ensure_conn()
      conn.send(command)
  
file_path: nni/nni/runtime/command_channel/websocket/channel.py
imports: from __future__ import annotations
  import logging
  import time
  from ..base import Command, CommandChannel
  from .connection import WsConnection
label_desc: Use image node_id 4 for calling the WsChannelClient obj's underlying member method code with example usage: obj.send(command) without return types