I want to know if I can use Asterisk to set up a particular set of services in my house. I use a SIP service(Callcentric) to get my phone calls. I have an Cisco SPA112 ATA which is hooked up to a wireless phone with multiple extensions - so basic phone service is covered and that part works well.
I would like to be able to capture the incoming caller id and take some actions. I would like to:
- act on the incoming caller ID on a computer connected to my network;
- lookup the caller ID in my personal address book(on a Mac);
- play different ringtones based on the caller ID;
- detect when my cell phones are in the house and send them the caller ID information as a notification;
- ideally redirect selected calls to my iPhone VOIP app; and
- manage voicemail messages based on the caller ID - sending some via emails while storing others for later review and deletion.
I can do some of these functions via the Callcentric website - but they don’t provide an API to interact with stored voicemails and they don’t allow me to programmatically change my calling rules.
I have already set up Asterisk and FreePBX on a Beaglebone Black and assigned it an extension on my Callcentric account and that basically works.
What I want to know - is there a fairly simple way to have Asterisk send information to another program I will write in Python to take the above actions. I am not looking to replace the SPA112 for basic phone service - I really want to trigger events and manage voicemail on my local network.
I am comfortable with the programming end of this problem – but I am new to Asterisks and I haven’t found any examples of what I am trying to do. Of course if Asterisks is able to perform these functions, all the better - one less thing I have to do.
Thanks for any suggestions.