[asterisk-dev] Newbie Developer Resource?

John Todd jtodd at digium.com
Sun Jan 25 03:05:23 CST 2009

On Jan 24, 2009, at 8:10 PM, David Phillips wrote:

> Thanks Greyman.  I appreciate it. What I'm actually looking for is  
> how to do
> special outbound calling handling with asterisk.  I don't want to  
> actually
> change the asterisk server itself.  I think I want to use AGI's ?   
> I'm not
> certain, but I *think* so.  Basically I'm wanting to do the following:
> 1. Get data from mySQL database (I already have an example program  
> for this)
> 2. make an outbound call (I already have an example with a simple  
> 'call
> file')
> 3. detect human or answering machine (and update the db appropriately)
> 4. play an audio file (I have an example of this too).
> 5. Prompt the listener to record a response (I DON'T have an example  
> of
> this).
> 6.  write the response to a WAV file so I can retrieve it via FTP.
> I think that's about it.  Like I said, I have some sample code to  
> get me
> started, I was just wondering for a good starting place for  
> scripting with
> asterisk.
> Dave

I'll agree with Grey Man and say that you almost certainly don't need  
to develop anything in Asterisk source code to do what you want.  The  
line between "Asterisk developer" and "telephony application  
developer" is admittedly a little fuzzy, and newcomers to the list  
often are uncertain of the charters for the various mailing lists  
operated for fans of Asterisk.

Lots of people use the dialplan, and (AGI/FastAGI) to implement the  
functions you're describing.  If you're comfortable with function/ 
response socket type interaction, then maybe AGI/FastAGI is the way to  
go with one of the various extensions (Perl AGI, C AGI, Java AGI,  
Python AGI, etc.) but if you want something really concise you may  
just stick with the Asterisk dialplan, which is the embedded script- 
like language that has several different interpreter formats  
(dialplan, AEL, lua).  In either case, I'd suggest checking out  
"Asterisk: The Future of Telephony" which is an O'Reilly title -  
Google can point you to it, and there is a free version lurking on- 
line as well.  Other resources like http://www.asterisk.org/ and http://www.voip-info.org/ 
  are available.  I'd suggest also looking at asterisk-users at lists.digium.com 
  as the most appropriate place to follow up with questions on  
implementations.  As noted, this is the list for people digging into  
the guts of Asterisk itself, and not as much about the specific  
contraptions that people create out of the telephony erector set.

Good luck!

   - AMD is shorthand for "Answering Machine Detection"
   - databases are often accessed through ODBC connections
   - recordings of any channels are easy, to many formats
   - the "Dial" command is more complex than it seems
   - get your own version running on your own machine first
   - get a SIP device or soft phone for testing as a generator/ 
accepter of test calls
   - compile from source to learn, stay away from "pre-built  
distributions" if you want to know how Asterisk works
   - GUIs are typically not the friend of the application developer,  
though wonderful for end-users or PBX tasks


John Todd                       email:jtodd at digium.com
Digium, Inc. | Asterisk Open Source Community Director
445 Jan Davis Drive NW -  Huntsville AL 35806  -   USA
direct: +1-256-428-6083         http://www.digium.com/

More information about the asterisk-dev mailing list