code: async def open_async(self):
          
          self.running = True
          if self.redirected:
              self.target = self.redirected.address
              self._handler = SendClientAsync(
                  self.target,
                  auth=self.client.get_auth(),
                  debug=self.client.debug,
                  msg_timeout=self.timeout,
                  error_policy=self.retry_policy,
                  keep_alive_interval=self.keep_alive,
                  client_name=self.name,
                  properties=self.client.create_properties(),
                  loop=self.loop)
          await self._handler.open_async()
          while not await self._handler.client_ready_async():
              await asyncio.sleep(0.05)
docs: Open the Sender using the supplied conneciton.
          If the handler has previously been redirected, the redirect
          context will be used to create a new handler before opening it.
  
          :param connection: The underlying client shared connection.
          :type: connection: ~uamqp.async_ops.connection_async.ConnectionAsync