async def read_response(self, timeout: NumType = None) -> SMTPResponse:
        """
        Get a status reponse from the server.

        Returns an SMTPResponse namedtuple consisting of:
          - server response code (e.g. 250, or such, if all goes well)
          - server response string corresponding to response code (multiline
            responses are converted to a single, multiline string).
        """
        if self._stream_reader is None:
            raise SMTPServerDisconnected("Client not connected")

        code = None
        response_lines = []

        while True:
            async with self._io_lock:
                line = await self._readline(timeout=timeout)
            try:
                code = int(line[:3])
            except ValueError:
                pass

            message = line[4:].strip(b" \t\r\n").decode("utf-8", "surrogateescape")
            response_lines.append(message)

            if line[3:4] != b"-":
                break

        full_message = "\n".join(response_lines)

        if code is None:
            raise SMTPResponseException(
                SMTPStatus.invalid_response.value,
                "Malformed SMTP response: {}".format(full_message),
            )

        return SMTPResponse(code, full_message)
async def read_response ( self , timeout : NumType = None ) -> SMTPResponse : if self . _stream_reader is None : raise SMTPServerDisconnected ( "Client not connected" ) code = None response_lines = [ ] while True : async with self . _io_lock : line = await self . _readline ( timeout = timeout ) try : code = int ( line [ : 3 ] ) except ValueError : pass message = line [ 4 : ] . strip ( b" \t\r\n" ) . decode ( "utf-8" , "surrogateescape" ) response_lines . append ( message ) if line [ 3 : 4 ] != b"-" : break full_message = "\n" . join ( response_lines ) if code is None : raise SMTPResponseException ( SMTPStatus . invalid_response . value , "Malformed SMTP response: {}" . format ( full_message ) , ) return SMTPResponse ( code , full_message )
Get a status reponse from the server.

        Returns an SMTPResponse namedtuple consisting of:
          - server response code (e.g. 250, or such, if all goes well)
          - server response string corresponding to response code (multiline
            responses are converted to a single, multiline string).