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