Doxygen updates
[asterisk/asterisk.git] / include / asterisk / doxyref.h
1 /*
2  * Asterisk -- An open source telephony toolkit.
3  *
4  * Copyright (C) 1999 - 2005, Digium, Inc.
5  *
6  * Mark Spencer <markster@digium.com>
7  *
8  * See http://www.asterisk.org for more information about
9  * the Asterisk project. Please do not directly contact
10  * any of the maintainers of this project for assistance;
11  * the project provides a web site, mailing lists and IRC
12  * channels for your use.
13  *
14  * This program is free software, distributed under the terms of
15  * the GNU General Public License Version 2. See the LICENSE file
16  * at the top of the source tree.
17  */
18
19 /* \file This file generates Doxygen pages from files in the /doc
20  directory of the Asterisk source code tree 
21  */
22
23 /* The following is for Doxygen Developer's documentation generated
24  * by running "make progdocs" with doxygen installed on your
25  * system.
26  */
27 /*! \page DevDoc Asterisk Developer's Documentation - appendices
28  *  \arg \ref CodeGuide : The must-read document for all developer's
29  *  \arg \ref AstAPI
30  *  \arg \ref Def_Channel : What's a channel, anyway?
31  *  \arg \ref channel_drivers : Existing channel drivers
32  *  \arg \ref AstDebug : Hints on debugging
33  *  \arg \ref AstAMI : The Call management socket API
34  *  \arg \ref AstARA : A generic data storage and retrieval API for Asterisk
35  *  \arg \ref AstDUNDi : A way to find phone services dynamically by using the DUNDi protocol
36  *  \arg \ref AstCDR
37  *  \arg \ref AstREADME
38  *  \arg \ref AstVar
39  *  \arg \ref AstVideo
40  *  \arg \ref AstENUM : The IETF way to redirect from phone numbers to VoIP calls
41  *  \arg \ref AstHTTP
42  *  \arg \ref AstSpeech
43  *  \arg \ref DataStores
44  *  \arg \ref ConfigFiles
45  *  \arg \ref SoundFiles included in the Asterisk distribution
46  *  \arg \ref AstCREDITS : A Thank You to contributors
47  \n\n
48  * \section weblinks Web sites
49  * \arg \b Main:  Asterisk Developer's website http://www.asterisk.org/developers/
50  * \arg \b Bugs: The Issue tracker http://bugs.digium.com
51  * \arg \b Lists: List server http://lists.digium.com
52  * \arg \b Wiki: The Asterisk Wiki      http://www.voip-info.org
53  * \arg \b Docs: The Asterisk Documentation Project http://www.asteriskdocs.org
54  * \arg \b Digium: The Asterisk company http://www.digium.com
55  *
56  */
57
58 /*! \page CodeGuide Coding Guidelines
59  *  \section Coding Guidelines
60  *  This file is in the /doc directory in your Asterisk source tree.
61  *  Make sure to stay up to date with the latest guidelines.
62  *  \verbinclude CODING-GUIDELINES
63  */
64
65 /*! \page AstAPI Asterisk API
66  *  \section Asteriskapi Asterisk API
67  *  Some generic documents on the Asterisk architecture
68  *  \subsection model_txt Generic Model
69  *  \verbinclude model.txt
70  *  \subsection channel_txt Channels
71  *  \arg See \ref Def_Channel
72  */
73
74 /*! \page AstDebug Debugging
75  *  \section debug Debugging
76  *  \verbinclude backtrace.txt
77  */
78
79 /*! \page AstSpeech The Generic Speech Recognition API
80  *  \section debug The Generic Speech Recognition API
81  *  \verbinclude speechrec.txt
82  */
83
84 /*! \page DataStores Channel Data Stores
85  *  \section debug Channel Data Stores
86  *  \verbinclude datastores.txt
87  */
88
89 /*! \page AstAMI AMI - The Manager Interface
90  *  \section ami AMI - The manager Interface
91  *  \arg \link Config_ami Configuration file \endlink
92  * \arg \ref manager.c
93  *  \verbinclude manager.txt
94  */
95
96 /*!  \page AstARA ARA - The Asterisk Realtime Interface
97  *  \section realtime ARA - a generic API to storage and retrieval
98  *  Implemented in \ref config.c 
99  *  Implemented in \ref pbx_realtime.c 
100  *  \verbinclude realtime.txt
101  *  \verbinclude extconfig.txt
102  */
103
104 /*!  \page AstDUNDi DUNDi
105 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.
106
107 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. 
108
109         \par References
110         \arg DUNDi is documented at http://www.dundi.com
111         \arg Implemented in \ref pbx_dundi.c and \ref dundi-parser.c
112         \arg Configuration in \link Config_dun dundi.conf \endlink
113  */
114
115 /*! \page AstCDR CDR - Call Data Records and billing
116  * \section cdr Call Data Records
117  * \par See also
118  * \arg \ref cdr.c
119  * \arg \ref cdr_drivers
120  * \arg \ref Config_cdr CDR configuration files
121  *
122  *  \verbinclude cdr.txt
123  */
124
125 /*! \page AstREADME README - the general administrator introduction
126  *  \verbinclude README
127  */
128  
129 /*! \page AstCREDITS CREDITS
130  *  \verbinclude CREDITS
131  */
132
133 /*! \page AstVideo Video support in Asterisk
134  * \section sectAstVideo Video support in Asterisk
135  *  \verbinclude video.txt
136  */
137
138 /*! \page AstVar Global channel variables
139  * \section globchan Global Channel Variables
140  *  \verbinclude channelvariables.txt
141  */
142
143 /*! \page AstENUM ENUM
144  * \section enumreadme ENUM
145  * \arg Configuration: \ref Config_enum
146  * \arg \ref enum.c
147  * \arg \ref func_enum.c
148  *
149  * \verbinclude enum.txt
150  */
151
152 /*! \page ConfigFiles Configuration files
153  * \section config Main configuration files
154  * \arg \link Config_ast asterisk.conf - the main configuration file \endlink
155  * \arg \link Config_ext extensions.conf - The Dial Plan \endlink
156  * \arg \link Config_mod modules.conf - which modules to load and not to load \endlink
157  * \arg \link Config_fea features.conf - call features (transfer, parking, etc) \endlink
158  * \section chanconf Channel configuration files
159  * \arg \link Config_iax IAX2 configuration  \endlink
160  * \arg \link Config_sip SIP configuration  \endlink
161  * \arg \link Config_mgcp MGCP configuration  \endlink
162  * \arg \link Config_rtp RTP configuration  \endlink
163  * \arg \link Config_zap Zaptel configuration  \endlink
164  * \arg \link Config_oss OSS (sound card) configuration  \endlink
165  * \arg \link Config_alsa ALSA (sound card) configuration  \endlink
166  * \arg \link Config_agent Agent (proxy channel) configuration  \endlink
167  * \arg \link Config_misdn MISDN Experimental ISDN BRI channel configuration  \endlink
168  * \arg \link Config_h323 H.323 configuration  \endlink
169  * \section appconf Application configuration files
170  * \arg \link Config_mm Meetme (conference bridge) configuration  \endlink
171  * \arg \link Config_qu Queue system configuration  \endlink
172  * \arg \link Config_vm Voicemail configuration  \endlink
173  * \arg \link Config_followme Followme configuration  \endlink
174  * \section cdrconf CDR configuration files
175  * \arg \link Config_cdr CDR configuration  \endlink
176  * \arg \link cdr_custom Custom CDR driver configuration \endlink
177  * \arg \link cdr_ami Manager CDR driver configuration \endlink
178  * \arg \link cdr_odbc ODBC CDR driver configuration \endlink
179  * \arg \link cdr_pgsql PostgreSQL CDR driver configuration \endlink
180  * \arg \link cdr_sqlite SQLite CDR driver configuration \endlink
181  * \arg \link cdr_tds FreeTDS CDR driver configuration (Microsoft SQL Server) \endlink
182  * \section miscconf Miscellenaous configuration files
183  * \arg \link Config_adsi ADSI configuration  \endlink
184  * \arg \link Config_ami AMI - Manager configuration  \endlink
185  * \arg \link Config_ara Realtime configuration  \endlink
186  * \arg \link Config_codec Codec configuration  \endlink
187  * \arg \link Config_dun DUNDi configuration  \endlink
188  * \arg \link Config_enum ENUM configuration  \endlink
189  * \arg \link Config_moh Music on Hold configuration  \endlink
190  * \arg \link Config_vm Voicemail configuration  \endlink
191  */
192
193 /*! \page Config_ast Asterisk.conf
194  * \verbinclude asterisk-conf.txt
195  */
196 /*! \page Config_mod Modules configuration
197  * All res_ resource modules are loaded with globals on, which means
198  * that non-static functions are callable from other modules.
199  *
200  * If you want your non res_* module to export functions to other modules
201  * you have to include it in the [global] section.
202  * \verbinclude modules.conf.sample
203  */
204
205 /*! \page Config_fea Call features configuration
206  * \par See also
207  * \arg \ref res_features.c : Call feature implementation
208  * \section featconf features.conf
209  * \verbinclude features.conf.sample
210  */
211
212 /*! \page Config_followme followme.conf 
213  * \section followmeconf Followme.conf
214  * - See app_followme.c
215  * \verbinclude followme.conf.sample
216  */
217
218 /*! \page Config_ext Extensions.conf - the Dial Plan
219  * \section dialplan Extensions.conf 
220  * \verbinclude extensions.conf.sample
221  */
222
223 /*! \page Config_iax IAX2 configuration
224  * IAX2 is implemented in \ref chan_iax2.c
225  * \arg \link Config_iax iax.conf Configuration file example \endlink
226  * \section iaxreadme IAX readme file
227  * \verbinclude iax.txt
228  * \section Config_iax IAX Configuration example
229  * \verbinclude iax.conf.sample
230  * \section iaxjitter IAX Jitterbuffer information
231  * \verbinclude jitterbuffer.txt
232  */
233
234 /*! \page Config_iax IAX configuration
235  * \arg Implemented in \ref chan_iax2.c
236  * \section iaxconf iax.conf
237  * \verbinclude iax.conf.sample
238  */
239
240 /*! \page Config_sip SIP configuration
241  * Also see \ref Config_rtp RTP configuration
242  * \arg Implemented in \ref chan_sip.c
243  * \section sipconf sip.conf
244  * \verbinclude sip.conf.sample
245  *
246  * \arg \b Back \ref chanconf
247  */
248
249 /*! \page Config_mgcp MGCP configuration
250  * Also see \ref Config_rtp RTP configuration
251  * \arg Implemented in \ref chan_mgcp.c
252  * \section mgcpconf mgcp.conf
253  * \verbinclude mgcp.conf.sample
254  */
255
256 /*! \page README_misdn MISDN documentation
257  * \arg See \ref Config_misdn
258  * \section mISDN configuration
259  * \verbinclude misdn.txt
260  */
261
262 /*! \page Config_misdn MISDN configuration
263  * \arg Implemented in \ref chan_misdn.c
264  * \arg \ref README_misdn
265  * \arg See the mISDN home page: http://www.isdn4linux.de/mISDN/
266  * \section misdnconf misdn.conf
267  * \verbinclude misdn.conf.sample
268  */
269
270 /*! \page Config_vm VoiceMail configuration
271  * \section vmconf voicemail.conf
272  * \arg Implemented in \ref app_voicemail.c
273  * \verbinclude voicemail.conf.sample
274  */
275
276 /*! \page Config_zap Zaptel configuration
277  * \section zapconf zapata.conf
278  * \arg Implemented in \ref chan_zap.c
279  * \verbinclude zapata.conf.sample
280  */
281
282 /*! \page Config_h323 H.323 channel driver information
283  * This is the configuration of the H.323 channel driver within the Asterisk
284  * distribution. There's another one, called OH323, in asterisk-addons
285  * \arg Implemented in \ref chan_h323.c
286  * \section h323conf h323.conf
287  * \ref chan_h323.c
288  * \verbinclude h323.txt
289  */
290
291 /*! \page Config_oss OSS configuration
292  * \section ossconf oss.conf
293  * \arg Implemented in \ref chan_oss.c
294  * \verbinclude oss.conf.sample
295  */
296
297 /*! \page Config_alsa ALSA configuration
298  * \section alsaconf alsa.conf
299  * \arg Implemented in \ref chan_alsa.c
300  * \verbinclude alsa.conf.sample
301  */
302
303 /*! \page Config_agent Agent configuration
304  * \section agentconf agents.conf
305  * The agent channel is a proxy channel for queues
306  * \arg Implemented in \ref chan_agent.c
307  * \verbinclude agents.conf.sample
308  */
309
310 /*! \page Config_rtp RTP configuration
311  * \arg Implemented in \ref rtp.c
312  * Used in \ref chan_sip.c and \ref chan_mgcp.c (and various H.323 channels)
313  * \section rtpconf rtp.conf
314  * \verbinclude rtp.conf.sample
315  */
316
317 /*! \page Config_dun DUNDi Configuration
318  * \arg See also \ref AstDUNDi
319  * \section dundiconf dundi.conf
320  * \verbinclude dundi.conf.sample
321  */
322
323 /*! \page Config_enum ENUM Configuration
324  * \section enumconf enum.conf
325  * \arg See also \ref enumreadme
326  * \arg Implemented in \ref func_enum.c and \ref enum.c
327  * \verbinclude enum.conf.sample
328  */
329
330 /*! \page cdr_custom Custom CDR Configuration
331  * \par See also 
332  * \arg \ref cdrconf
333  * \arg \ref cdr_custom.c
334  * \verbinclude cdr_custom.conf.sample
335  */
336
337 /*! \page cdr_ami Manager CDR driver configuration
338  * \par See also 
339  * \arg \ref cdrconf
340  * \arg \ref AstAMI
341  * \arg \ref cdr_manager.c
342  * \verbinclude cdr_manager.conf.sample
343  */
344
345 /*! \page cdr_odbc ODBC CDR driver configuration
346  * \arg See also \ref cdrconf
347  * \arg \ref cdr_odbc.c
348  * \verbinclude cdr_odbc.conf.sample
349  * See also:
350  * \arg http://www.unixodbc.org
351  */
352
353 /*! \page cdr_pgsql PostgreSQL CDR driver configuration
354  * \arg See also \ref cdrconf
355  * \arg \ref cdr_pgsql.c
356  * See also:
357  * \arg http://www.postgresql.org
358  * \verbinclude cdr_pgsql.conf.sample
359  */
360
361 /*! \page cdr_sqlite SQLite CDR driver configuration
362  * \arg See also \ref cdrconf
363  * \arg \ref cdr_sqlite.c
364  * See also:
365  * \arg http://www.sqlite.org
366  */
367
368 /*! \page cdr_tds FreeTDS CDR driver configuration
369  * \arg See also \ref cdrconf
370  * See also:
371  * \arg http://www.freetds.org
372  * \verbinclude cdr_tds.conf.sample
373  */
374
375 /*! \page Config_cdr CDR configuration
376  * \par See also
377  * \arg \ref cdr_drivers
378  * \arg \link Config_cdr CDR configuration  \endlink  
379  * \arg \link cdr_custom Custom CDR driver configuration \endlink
380  * \arg \link cdr_ami Manager CDR driver configuration \endlink
381  * \arg \link cdr_odbc ODBC CDR driver configuration \endlink
382  * \arg \link cdr_pgsql PostgreSQL CDR driver configuration \endlink
383  * \arg \link cdr_sqlite SQLite CDR driver configuration \endlink
384  * \arg \link cdr_tds FreeTDS CDR driver configuration (Microsoft SQL Server) \endlink
385  * \verbinclude cdr.conf.sample
386  */
387
388 /*! \page Config_moh Music on Hold Configuration
389  * \arg Implemented in \ref res_musiconhold.c
390  * \section mohconf musiconhold.conf
391  * \verbinclude musiconhold.conf.sample
392  */
393
394 /*! \page Config_adsi ADSI Configuration
395  * \section adsiconf adsi.conf
396  * \verbinclude adsi.conf.sample
397  */
398
399 /*! \page Config_codec CODEC Configuration
400  * \section codecsconf codecs.conf
401  * \verbinclude codecs.conf.sample
402  */
403
404 /*! \page Config_ara REALTIME Configuration
405  * \arg See also: \arg \link AstARA \endlink
406  * \section extconf extconfig.conf
407  * \verbinclude extconfig.conf.sample
408  */
409
410 /*! \page Config_ami AMI configuration
411  * \arg See also: \arg \link AstAMI \endlink
412  * \section amiconf manager.conf
413  * \verbinclude manager.conf.sample
414  */
415
416 /*! \page Config_qu ACD - Queue system configuration
417  * \arg Implemented in \ref app_queue.c
418  * \section quconf queues.conf
419  * \verbinclude queues.conf.sample
420  */
421
422 /*! \page Config_mm Meetme - The conference bridge configuration
423  * \arg Implemented in \ref app_meetme.c
424  * \section mmconf meetme.conf
425  * \verbinclude meetme.conf.sample
426  */
427
428 /*! \page SoundFiles Sound files
429  *  \section SecSound Asterisk Sound files
430  *  Asterisk includes a large amount of sound files. Many of these
431  *  are used by applications and demo scripts within asterisk.
432  *
433  *  Additional sound files are available in the asterisk-addons
434  *  repository on cvs.digium.com
435  * 
436  *  \section SoundList List of included sound files
437  *  \verbinclude sounds.txt
438  */
439
440 /*! \addtogroup cdr_drivers Module: CDR Drivers
441  *  \section CDR_generic Asterisk CDR Drivers
442  *  \brief CDR drivers are loaded dynamically (see \ref Config_mod "Modules Configuration"). Each loaded CDR driver produce a billing record for each call.
443  *  \arg \ref Config_cdr "CDR Configuration"
444  */
445
446
447 /*! \addtogroup channel_drivers Module: Asterisk Channel Drivers
448  *  \section channel_generic Asterisk Channel Drivers
449  *  \brief Channel drivers are loaded dynamically (see \ref Config_mod "Modules Configuration"). 
450  */
451
452 /*! \addtogroup applications Module: Dial plan applications
453  *  \section app_generic Asterisk Dial Plan Applications
454  *  \brief Applications support the dialplan. They register dynamically with \ref ast_register_application() and unregister with ast_unregister_application()
455  * \par See also
456  * \arg \ref functions
457  *  
458  */
459
460 /*! \addtogroup functions Module: Dial plan functions
461  *  \section func_generic Asterisk Dial Plan Functions
462  *  \brief Functions support the dialplan.  They do not change any property of a channel
463  *  or touch a channel in any way.
464  * \par See also
465  * \arg \ref applications
466  *  
467  */
468
469 /*! \addtogroup codecs Module: Codecs
470  *  \section codec_generic Asterisk Codec Modules
471  *  Codecs are referenced in configuration files by name 
472  *  \par See also 
473  *  \arg \ref formats 
474  *
475  */
476
477 /*! \addtogroup formats Module: Media File Formats 
478  *  \section codec_generic Asterisk Format drivers
479  *  Formats are modules that read or write media files to disk.
480  *  \par See also
481  *  \arg \ref codecs 
482  */
483
484 /*! \page AstHTTP AMI over HTTP support
485  * The http.c file includes support for manager transactions over
486  * http.
487  *  \section ami AMI - The manager Interface
488  *  \arg \link Config_ami Configuration file \endlink
489  *  \verbinclude ajam.txt
490  */
491