Known subclasses: twisted.protocols.amp._SwitchBox, twisted.protocols.amp._TLSBox, twisted.protocols.amp.QuitBox

I am a packet in the AMP protocol, much like a regular bytes:bytes dictionary.

Method __init__ Initialize a new AmpBox.
Method copy Return another AmpBox just like me.
Method serialize Convert me into a wire-encoded string.
Method __repr__ Undocumented
Method _sendTo

Serialize and send this box to an Amp instance. By the time it is being sent, several keys are required. I must have exactly ONE of:


def __init__(self, *args, **kw):

Initialize a new AmpBox.

In Python 3, keyword arguments MUST be Unicode/native strings whereas in Python 2 they could be either byte strings or Unicode strings.

However, all keys of an AmpBox MUST be byte strings, or possible to transparently coerce into byte strings (i.e. Python 2).

In Python 3, therefore, native string keys are coerced to byte strings by encoding as ASCII. This can result in UnicodeEncodeError being raised.

ParametersargsSee dict, but all keys and values should be bytes. On Python 3, native strings may be used as keys provided they contain only ASCII characters.
kwSee dict, but all keys and values should be bytes. On Python 3, native strings may be used as keys provided they contain only ASCII characters.
RaisesUnicodeEncodeErrorWhen a native string key cannot be coerced to an ASCII byte string (Python 3 only).
def copy(self):

Return another AmpBox just like me.

def serialize(self):

Convert me into a wire-encoded string.

Returnsa bytes encoded according to the rules described in the module docstring.
def _sendTo(self, proto):

Serialize and send this box to an Amp instance. By the time it is being sent, several keys are required. I must have exactly ONE of:

   _ask
   _answer
   _error

If the '_ask' key is set, then the '_command' key must also be set.

Parametersprotoan AMP instance.
def __repr__(self):
API Documentation for twisted, generated by pydoctor at 2020-03-25 17:34:30.