Sat Mar 24 23:26:04 2007

Asterisk developer's documentation


doxyref.h

Go to the documentation of this file.
00001 /*
00002  * Asterisk -- An open source telephony toolkit.
00003  *
00004  * Copyright (C) 1999 - 2005, Digium, Inc.
00005  *
00006  * Mark Spencer <markster@digium.com>
00007  *
00008  * See http://www.asterisk.org for more information about
00009  * the Asterisk project. Please do not directly contact
00010  * any of the maintainers of this project for assistance;
00011  * the project provides a web site, mailing lists and IRC
00012  * channels for your use.
00013  *
00014  * This program is free software, distributed under the terms of
00015  * the GNU General Public License Version 2. See the LICENSE file
00016  * at the top of the source tree.
00017  */
00018 
00019 /* \file This file generates Doxygen pages from files in the /doc
00020  directory of the Asterisk source code tree 
00021  */
00022 
00023 /* The following is for Doxygen Developer's documentation generated
00024  * by running "make progdocs" with doxygen installed on your
00025  * system.
00026  */
00027 /*! \page DevDoc Asterisk Developer's Documentation - appendices
00028  *  \arg \ref CodeGuide : The must-read document for all developer's
00029  *  \arg \ref AstAPI
00030  *  \arg \ref Def_Channel : What's a channel, anyway?
00031  *  \arg \ref channel_drivers : Existing channel drivers
00032  *  \arg \ref AstDebug : Hints on debugging
00033  *  \arg \ref AstAMI : The Call management socket API
00034  *  \arg \ref AstARA : A generic data storage and retrieval API for Asterisk
00035  *  \arg \ref AstDUNDi : A way to find phone services dynamically by using the DUNDi protocol
00036  *  \arg \ref AstCDR
00037  *  \arg \ref AstREADME
00038  *  \arg \ref AstVar
00039  *  \arg \ref AstENUM : The IETF way to redirect from phone numbers to VoIP calls
00040  *  \arg \ref ConfigFiles
00041  *  \arg \ref SoundFiles included in the Asterisk distribution
00042  *  \arg \ref AstCREDITS : A Thank You to contributors
00043  \n\n
00044  * \section weblinks Web sites
00045  * \arg \b Main:  Asterisk Developer's website http://www.asterisk.org/developers/
00046  * \arg \b Bugs: The Issue tracker http://bugs.digium.com
00047  * \arg \b Lists: List server http://lists.digium.com
00048  * \arg \b Wiki: The Asterisk Wiki  http://www.voip-info.org
00049  * \arg \b Docs: The Asterisk Documentation Project http://www.asteriskdocs.org
00050  * \arg \b Digium: The Asterisk company http://www.digium.com
00051  *
00052  */
00053 
00054 /*! \page CodeGuide Coding Guidelines
00055  *  \section Coding Guidelines
00056  *  This file is in the /doc directory in your Asterisk source tree.
00057  *  Make sure to stay up to date with the latest guidelines.
00058  *  \verbinclude CODING-GUIDELINES
00059  */
00060 
00061 /*! \page AstAPI Asterisk API
00062  *  \section Asteriskapi Asterisk API
00063  *  Some generic documents on the Asterisk architecture
00064  *  \subsection model_txt Generic Model
00065  *  \verbinclude model.txt
00066  *  \subsection channel_txt Channels
00067  *  \arg See \link Def_Channel
00068  *  \verbinclude channel.txt
00069  */
00070 
00071 /*! \page AstDebug Debugging
00072  *  \section debug Debugging
00073  *  \verbinclude README.backtrace
00074  */
00075 
00076 /*! \page AstAMI AMI - The Manager Interface
00077  *  \section ami AMI - The manager Interface
00078  *  \arg \link Config_ami Configuration file \endlink
00079  * \arg \ref manager.c
00080  *  \verbinclude manager.txt
00081  */
00082 
00083 /*!  \page AstARA ARA - The Asterisk Realtime Interface
00084  *  \section realtime ARA - a generic API to storage and retrieval
00085  *  Implemented in \ref config.c 
00086  *  Implemented in \ref pbx_realtime.c 
00087  *  \verbinclude README.realtime 
00088  *  \verbinclude README.extconfig
00089  */
00090 
00091 /*!  \page AstDUNDi DUNDi
00092 DUNDi is a peer-to-peer system for locating Internet gateways to telephony services. Unlike traditional centralized services (such as the remarkably simple and concise ENUM standard), DUNDi is fully-distributed with no centralized authority whatsoever.
00093 
00094 DUNDi is not itself a Voice-over IP signaling or media protocol. Instead, it publishes routes which are in turn accessed via industry standard protocols such as IAX, SIP and H.323. 
00095 
00096    \par References
00097    \arg DUNDi is documented at http://www.dundi.com
00098    \arg Implemented in \ref pbx_dundi.c and \ref dundi-parser.c
00099    \arg Configuration in \link Config_dun dundi.conf \endlink
00100  */
00101 
00102 /*! \page AstCDR CDR - Call Data Records and billing
00103  * \section cdr Call Data Records
00104  * \par See also
00105  * \arg \ref cdr.c
00106  * \arg \ref cdr_drivers
00107  * \arg \ref Config_cdr CDR configuration files
00108  *
00109  *  \verbinclude README.cdr
00110  */
00111 
00112 /*! \page AstREADME README - the general administrator introduction
00113  *  \verbinclude README
00114  */
00115  
00116 /*! \page AstCREDITS CREDITS
00117  *  \verbinclude CREDITS
00118  */
00119 
00120 /*! \page AstVar Global channel variables
00121  * \section globchan Global Channel Variables
00122  *  \verbinclude README.variables
00123  */
00124 
00125 /*! \page AstENUM ENUM
00126  * \section enumreadme ENUM
00127  * \arg Configuration: \ref Config_enum
00128  * \arg \ref enum.c
00129  * \arg \ref app_enumlookup.c
00130  *
00131  * \verbinclude README.enum
00132  */
00133 
00134 /*! \page ConfigFiles Configuration files
00135  * \section config Main configuration files
00136  * \arg \link Config_ast asterisk.conf - the main configuration file \endlink
00137  * \arg \link Config_ext extensions.conf - The Dial Plan \endlink
00138  * \arg \link Config_mod modules.conf - which modules to load and not to load \endlink
00139  * \arg \link Config_fea features.conf - call features (transfer, parking, etc) \endlink
00140  * \section chanconf Channel configuration files
00141  * \arg \link Config_iax IAX2 configuration  \endlink
00142  * \arg \link Config_sip SIP configuration  \endlink
00143  * \arg \link Config_mgcp MGCP configuration  \endlink
00144  * \arg \link Config_rtp RTP configuration  \endlink
00145  * \arg \link Config_zap Zaptel configuration  \endlink
00146  * \arg \link Config_oss OSS (sound card) configuration  \endlink
00147  * \arg \link Config_alsa ALSA (sound card) configuration  \endlink
00148  * \arg \link Config_agent Agent (proxy channel) configuration  \endlink
00149  * \arg \link Config_misdn MISDN Experimental ISDN BRI channel configuration  \endlink
00150  * \arg \link Config_h323 H.323 configuration  \endlink
00151  * \section appconf Application configuration files
00152  * \arg \link Config_mm Meetme (conference bridge) configuration  \endlink
00153  * \arg \link Config_qu Queue system configuration  \endlink
00154  * \arg \link Config_vm Voicemail configuration  \endlink
00155  * \section cdrconf CDR configuration files
00156  * \arg \link Config_cdr CDR configuration  \endlink
00157  * \arg \link cdr_custom Custom CDR driver configuration \endlink
00158  * \arg \link cdr_ami Manager CDR driver configuration \endlink
00159  * \arg \link cdr_odbc ODBC CDR driver configuration \endlink
00160  * \arg \link cdr_pgsql PostgreSQL CDR driver configuration \endlink
00161  * \arg \link cdr_sqlite SQLite CDR driver configuration \endlink
00162  * \arg \link cdr_tds FreeTDS CDR driver configuration (Microsoft SQL Server) \endlink
00163  * \section miscconf Miscellenaous configuration files
00164  * \arg \link Config_adsi ADSI configuration  \endlink
00165  * \arg \link Config_ami AMI - Manager configuration  \endlink
00166  * \arg \link Config_ara Realtime configuration  \endlink
00167  * \arg \link Config_codec Codec configuration  \endlink
00168  * \arg \link Config_dun DUNDi configuration  \endlink
00169  * \arg \link Config_enum ENUM configuration  \endlink
00170  * \arg \link Config_moh Music on Hold configuration  \endlink
00171  * \arg \link Config_vm Voicemail configuration  \endlink
00172  */
00173 
00174 /*! \page Config_ast Asterisk.conf
00175  * \verbinclude README.asterisk.conf
00176  */
00177 /*! \page Config_mod Modules configuration
00178  * All res_ resource modules are loaded with globals on, which means
00179  * that non-static functions are callable from other modules.
00180  *
00181  * If you want your non res_* module to export functions to other modules
00182  * you have to include it in the [global] section.
00183  * \verbinclude modules.conf.sample
00184  */
00185 
00186 /*! \page Config_fea Call features configuration
00187  * \par See also
00188  * \arg \ref res_features.c : Call feature implementation
00189  * \section featconf features.conf
00190  * \verbinclude features.conf.sample
00191  */
00192 
00193 /*! \page Config_ext Extensions.conf - the Dial Plan
00194  * \section dialplan Extensions.conf 
00195  * \verbinclude extensions.conf.sample
00196  */
00197 
00198 /*! \page Config_iax IAX2 configuration
00199  * IAX2 is implemented in \ref chan_iax2.c
00200  * \arg \link Config_iax iax.conf Configuration file example \endlink
00201  * \section iaxreadme IAX readme file
00202  * \verbinclude README.iax
00203  * \section Config_iax IAX Configuration example
00204  * \verbinclude iax.conf.sample
00205  * \section iaxjitter IAX Jitterbuffer information
00206  * \verbinclude README.jitterbuffer
00207  */
00208 
00209 /*! \page Config_iax IAX configuration
00210  * \arg Implemented in \ref chan_iax2.c
00211  * \section iaxconf iax.conf
00212  * \verbinclude iax.conf.sample
00213  */
00214 
00215 /*! \page Config_sip SIP configuration
00216  * Also see \ref Config_rtp RTP configuration
00217  * \arg Implemented in \ref chan_sip.c
00218  * \section sipconf sip.conf
00219  * \verbinclude sip.conf.sample
00220  *
00221  * \arg \b Back \ref chanconf
00222  */
00223 
00224 /*! \page Config_mgcp MGCP configuration
00225  * Also see \ref Config_rtp RTP configuration
00226  * \arg Implemented in \ref chan_mgcp.c
00227  * \section mgcpconf mgcp.conf
00228  * \verbinclude mgcp.conf.sample
00229  */
00230 
00231 /*! \page Config_misdn MISDN configuration
00232  * \arg Implemented in \ref chan_misdn.c
00233  * \section misdnconf misdn.conf
00234  * \verbinclude misdn.conf.sample
00235  */
00236 
00237 /*! \page Config_vm VoiceMail configuration
00238  * \section vmconf voicemail.conf
00239  * \arg Implemented in \ref app_voicemail.c
00240  * \verbinclude voicemail.conf.sample
00241  */
00242 
00243 /*! \page Config_zap Zaptel configuration
00244  * \section zapconf zapata.conf
00245  * \arg Implemented in \ref chan_zap.c
00246  * \verbinclude zapata.conf.sample
00247  */
00248 
00249 /*! \page Config_h323 H.323 channel driver information
00250  * This is the configuration of the H.323 channel driver within the Asterisk
00251  * distribution. There's another one, called OH323, in asterisk-addons
00252  * \arg Implemented in \ref chan_h323.c
00253  * \section h323conf h323.conf
00254  * \ref chan_h323.c
00255  * \verbinclude README.h323
00256  */
00257 
00258 /*! \page Config_oss OSS configuration
00259  * \section ossconf oss.conf
00260  * \arg Implemented in \ref chan_oss.c
00261  * \verbinclude oss.conf.sample
00262  */
00263 
00264 /*! \page Config_alsa ALSA configuration
00265  * \section alsaconf alsa.conf
00266  * \arg Implemented in \ref chan_alsa.c
00267  * \verbinclude alsa.conf.sample
00268  */
00269 
00270 /*! \page Config_agent Agent configuration
00271  * \section agentconf agents.conf
00272  * The agent channel is a proxy channel for queues
00273  * \arg Implemented in \ref chan_agent.c
00274  * \verbinclude agents.conf.sample
00275  */
00276 
00277 /*! \page Config_rtp RTP configuration
00278  * \arg Implemented in \ref rtp.c
00279  * Used in \ref chan_sip.c and \ref chan_mgcp.c (and various H.323 channels)
00280  * \section rtpconf rtp.conf
00281  * \verbinclude rtp.conf.sample
00282  */
00283 
00284 /*! \page Config_dun DUNDi Configuration
00285  * \arg See also \ref AstDUNDi
00286  * \section dundiconf dundi.conf
00287  * \verbinclude dundi.conf.sample
00288  */
00289 
00290 /*! \page Config_enum ENUM Configuration
00291  * \section enumconf enum.conf
00292  * \arg See also \ref enumreadme
00293  * \arg Implemented in \ref app_enumlookup.c and \ref enum.c
00294  * \verbinclude enum.conf.sample
00295  */
00296 
00297 /*! \page cdr_custom Custom CDR Configuration
00298  * \par See also 
00299  * \arg \ref cdrconf
00300  * \arg \ref cdr_custom.c
00301  * \verbinclude cdr_custom.conf.sample
00302  */
00303 
00304 /*! \page cdr_ami Manager CDR driver configuration
00305  * \par See also 
00306  * \arg \ref cdrconf
00307  * \arg \ref AstAMI
00308  * \arg \ref cdr_manager.c
00309  * \verbinclude cdr_manager.conf.sample
00310  */
00311 
00312 /*! \page cdr_odbc ODBC CDR driver configuration
00313  * \arg See also \ref cdrconf
00314  * \arg \ref cdr_odbc.c
00315  * \verbinclude cdr_odbc.conf.sample
00316  * See also:
00317  * \arg http://www.unixodbc.org
00318  */
00319 
00320 /*! \page cdr_pgsql PostgreSQL CDR driver configuration
00321  * \arg See also \ref cdrconf
00322  * \arg \ref cdr_pgsql.c
00323  * See also:
00324  * \arg http://www.postgresql.org
00325  * \verbinclude cdr_pgsql.conf.sample
00326  */
00327 
00328 /*! \page cdr_sqlite SQLite CDR driver configuration
00329  * \arg See also \ref cdrconf
00330  * \arg \ref cdr_sqlite.c
00331  * See also:
00332  * \arg http://www.sqlite.org
00333  */
00334 
00335 /*! \page cdr_tds FreeTDS CDR driver configuration
00336  * \arg See also \ref cdrconf
00337  * See also:
00338  * \arg http://www.freetds.org
00339  * \verbinclude cdr_tds.conf.sample
00340  */
00341 
00342 /*! \page Config_cdr CDR configuration
00343  * \par See also
00344  * \arg \ref cdr_drivers
00345  * \arg \link Config_cdr CDR configuration  \endlink  
00346  * \arg \link cdr_custom Custom CDR driver configuration \endlink
00347  * \arg \link cdr_ami Manager CDR driver configuration \endlink
00348  * \arg \link cdr_odbc ODBC CDR driver configuration \endlink
00349  * \arg \link cdr_pgsql PostgreSQL CDR driver configuration \endlink
00350  * \arg \link cdr_sqlite SQLite CDR driver configuration \endlink
00351  * \arg \link cdr_tds FreeTDS CDR driver configuration (Microsoft SQL Server) \endlink
00352  * \verbinclude cdr.conf.sample
00353  */
00354 
00355 /*! \page Config_moh Music on Hold Configuration
00356  * \arg Implemented in \ref res_musiconhold.c
00357  * \section mohconf musiconhold.conf
00358  * \verbinclude musiconhold.conf.sample
00359  */
00360 
00361 /*! \page Config_adsi ADSI Configuration
00362  * \section adsiconf adsi.conf
00363  * \verbinclude adsi.conf.sample
00364  */
00365 
00366 /*! \page Config_codec CODEC Configuration
00367  * \section codecsconf codecs.conf
00368  * \verbinclude codecs.conf.sample
00369  */
00370 
00371 /*! \page Config_ara REALTIME Configuration
00372  * \arg See also: \arg \link AstARA \endlink
00373  * \section extconf extconfig.conf
00374  * \verbinclude extconfig.conf.sample
00375  */
00376 
00377 /*! \page Config_ami AMI configuration
00378  * \arg See also: \arg \link AstAMI \endlink
00379  * \section amiconf manager.conf
00380  * \verbinclude manager.conf.sample
00381  */
00382 
00383 /*! \page Config_qu ACD - Queue system configuration
00384  * \arg Implemented in \ref app_queue.c
00385  * \section quconf queues.conf
00386  * \verbinclude queues.conf.sample
00387  */
00388 
00389 /*! \page Config_mm Meetme - The conference bridge configuration
00390  * \arg Implemented in \ref app_meetme.c
00391  * \section mmconf meetme.conf
00392  * \verbinclude meetme.conf.sample
00393  */
00394 
00395 /*! \page SoundFiles Sound files
00396  *  \section SecSound Asterisk Sound files
00397  *  Asterisk includes a large amount of sound files. Many of these
00398  *  are used by applications and demo scripts within asterisk.
00399  *
00400  *  Additional sound files are available in the asterisk-addons
00401  *  repository on cvs.digium.com
00402  * 
00403  *  \section SoundList List of included sound files
00404  *  \verbinclude sounds.txt
00405  */
00406 
00407 /*! \addtogroup cdr_drivers Module: CDR Drivers
00408  *  \section CDR_generic Asterisk CDR Drivers
00409  *  \brief CDR drivers are loaded dynamically (see \ref Config_mod "Modules Configuration"). Each loaded CDR driver produce a billing record for each call.
00410  *  \arg \ref Config_cdr "CDR Configuration"
00411  */
00412 
00413 
00414 /*! \addtogroup channel_drivers Module: Asterisk Channel Drivers
00415  *  \section channel_generic Asterisk Channel Drivers
00416  *  \brief Channel drivers are loaded dynamically (see \ref Config_mod "Modules Configuration"). 
00417  */
00418 
00419 /*! \addtogroup applications Module: Dial plan applications
00420  *  \section app_generic Asterisk Dial Plan Applications
00421  *  \brief Applications support the dialplan. They register dynamically with \ref ast_register_application() and unregister with ast_unregister_application()
00422  * \par See also
00423  * \arg \ref functions
00424  *  
00425  */
00426 
00427 /*! \addtogroup functions Module: Dial plan functions
00428  *  \section func_generic Asterisk Dial Plan Functions
00429  *  \brief Functions support the dialplan.  They do not change any property of a channel
00430  *  or touch a channel in any way.
00431  * \par See also
00432  * \arg \ref applications
00433  *  
00434  */
00435 
00436 /*! \addtogroup codecs Module: Codecs
00437  *  \section codec_generic Asterisk Codec Modules
00438  *  Codecs are referenced in configuration files by name 
00439  *  \par See also 
00440  *  \arg \ref formats 
00441  *
00442  */
00443 
00444 /*! \addtogroup formats Module: Media File Formats 
00445  *  \section codec_generic Asterisk Format drivers
00446  *  Formats are modules that read or write media files to disk.
00447  *  \par See also
00448  *  \arg \ref codecs 
00449  */

Generated on Sat Mar 24 23:26:04 2007 for Asterisk - the Open Source PBX by  doxygen 1.4.6