asynchat

A class supporting chat-style (command/response) protocols.

This class adds support for ‘chat’ style protocols - where one side sends a ‘command’, and the other sends a response (examples would be the common internet protocols - smtp, nntp, ftp, etc..).

The handle_read() method looks at the input stream for the current ‘terminator’ (usually ‘rn’ for single-line responses, ‘rn.rn’ for multi-line output), calling self.found_terminator() on its receipt.

for example: Say you build an async nntp client using this class. At the start of the connection, you’ll have self.terminator set to ‘rn’, in order to process the single-line greeting. Just before issuing a ‘LIST’ command you’ll set it to ‘rn.rn’. The output of the LIST command will be accumulated (using your own ‘collect_incoming_data’ method) up to the terminator, and then control will be returned to you - by calling your self.found_terminator() method.

Functions

filterwarnings(action[, message, category, ...]) Insert an entry into the list of warnings filters (at the front).
find_prefix_at_end(haystack, needle)

Classes

async_chat([sock, map]) This is an abstract class.
catch_warnings([record, module]) A context manager that copies and restores the warnings filter upon exiting the context.
deque deque([iterable[, maxlen]]) –> deque object
fifo([list])
simple_producer(data[, buffer_size])