Automated outgoing call in case of emergency

Greetings to all you Asterisk-Experts out there!

I am trying to build an automatic alerting system for one of our local voluntary rescue organization and there is one important aspect which I hope beeing able to solve with the help of Asterisk.

In the case of an emergency event, which is detected by an external application, I would like to initiate an outgoing call from my Asterisk to a person/number which should be notified of this event. To be sure, that this person actually received and acknowledged the event and to reliably filter out answering machines, a “digital receptionist” should ask an easy question which the callee confirms by interactively pressing a button on his phone (1,2,3…). After this, the result of this question should be available for the external application which detected the emergency event and also initiated the outgoing call.

There are a lot of examples on how to configure a “Digital Receptionist” for incoming calls but would it also be possible implement such a system for calls originating on the Asterisk server and processing the answers with an external application as I tried to describe above?

Any help would be appreciated, big thanks for your efforts in advance!

What I would do is have the external application create a ‘call file’ in /var/spool/asterisk/outgoing/.
The callfile will contain the number to call and context/extension information so Asterisk know what to dial, and where in the dial plan it should start processing the call upon connection. That dial plan code could be the ‘Digital Receptionist’ also known as an ‘Auto Attendant’.

How you get the response back to your monitoring application depend on your application. Perhaps it needs a file created. Perhaps an web services request.

Note: since you use the term ‘Digital Recptionist’, I have to assume that you are using FreePBX, or something very much like it. The response back to the minitoring application may require some custom dial plan coding. Also, the context,extension naming may require a bit of research into the generated dialplan code to determine the correct values in the call file. Again, it may be benfitial to write some custom code for this.