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