Importing rev 7939 from 1.2
[asterisk/asterisk.git] / doc / apps.txt
1 Asterisk applications register themselves with ast_application_register.
2 They should have a short, unique name, and an exec function which takes
3 as its arguments a channel and some data that might be useful for callback
4 stuff.  Remember to keep track of how many and which channels are using
5 your application so that should the module need to be unloaded
6 (particularly force unloaded), you will be able to ast_softhangup all the
7 channels.  An application should *never* call ast_hangup on the channel
8 that it is running on (although it could conceivably hang up other
9 channels that it allocates).  See app_playback.c as an example of a simple
10 application.