AsyncAGIExecutor

class obelus.agi.AsyncAGIExecutor(protocol_factory)

AsyncAGIExecutor dispatches between a single AMI protocol instance and an arbitrary number of AGI channels and protocols.

protocol_factory should be a callable returning a AGIProtocol instance. It will be called each time a new Async AGI channel is started by Asterisk through the AMI.

bind(ami)

Bind this executor to an AMI protocol instance. NOTE: only one AsyncAGIExecutor can be bound to an AMI protocol instance, at any given time.

is_bound()

Whether this executor is bound to an AMI protocol instance.

unbind()

Unbind this executor from the AMI protocol instance it is bound to.