ago control provides an interface device for Asterisk. It communicates via the AMI (Asterisk Management Interface). It supports the "dial" command and announces SIP phones as "phone" device type to the Resolver.
Add the following to the config.ini:
[asterisk] host=18.104.22.168 port=5038 username=manager password=secret
If you don't set these values, they'll default to localhost, 5038, agocontrol and letmein.
You can use the dial command to initiate a call on the phone with the given uuid:
messagesend.py -d 44adba1c-6668-475d-9746-7685b20e870d -c dial -p number=1234
The interface will announce the following two events:
The code needs to be cleaned up and commands like hangup and bridge call need to be added