2 ; Static and realtime external configuration
5 ; See https://wiki.asterisk.org/wiki/display/AST/Realtime+Database+Configuration
6 ; for basic table formatting information.
10 ; Static configuration files:
12 ; file.conf => driver,database[,table[,priority]]
14 ; maps a particular configuration file to the given
15 ; database driver, database and table (or uses the
16 ; name of the file as the table if not specified)
18 ;uncomment to load queues.conf via the odbc engine.
20 ;queues.conf => odbc,asterisk,ast_config
21 ;extensions.conf => sqlite,asterisk,ast_config
23 ; The following files CANNOT be loaded from Realtime storage:
25 ; extconfig.conf (this file)
28 ; Additionally, the following files cannot be loaded from
29 ; Realtime storage unless the storage driver is loaded
30 ; early using 'preload' statements in modules.conf:
36 ; Realtime configuration engine
38 ; maps a particular family of realtime
39 ; configuration to a given database driver,
40 ; database and table (or uses the name of
41 ; the family if the table is not specified
43 ;example => odbc,asterisk,alttable,1
44 ;example => mysql,asterisk,alttable,2
45 ;example2 => ldap,"dc=oxymium,dc=net",example2
47 ; Additionally, priorities are now supported for use as failover methods
48 ; for retrieving realtime data. If one connection fails to retrieve any
49 ; information, the next sequential priority will be tried next. This
50 ; especially works well with ODBC connections, since res_odbc now caches
51 ; when connection failures occur and prevents immediately retrying those
52 ; connections until after a specified timeout. Note: priorities must
53 ; start at 1 and be sequential (i.e. if you have only priorities 1, 2,
54 ; and 4, then 4 will be ignored, because there is no 3).
56 ; "odbc" is shown in the examples below, but is not the only valid realtime
58 ; odbc ... res_config_odbc
59 ; sqlite ... res_config_sqlite
60 ; pgsql ... res_config_pgsql
61 ; curl ... res_config_curl
62 ; ldap ... res_config_ldap
64 ; Note: The res_config_pgsql and res_config_sqlite backends configure the
65 ; database used in their respective configuration files and ignore the
66 ; database name configured in this file.
68 ;iaxusers => odbc,asterisk
69 ;iaxpeers => odbc,asterisk
70 ;sippeers => odbc,asterisk
71 ;sipregs => odbc,asterisk ; (avoid sipregs if possible, e.g. by using a view)
72 ;voicemail => odbc,asterisk
73 ;extensions => odbc,asterisk
74 ;meetme => mysql,general
75 ;queues => odbc,asterisk
76 ;queue_members => odbc,asterisk
77 ;musiconhold => mysql,general
78 ;queue_log => mysql,general
81 ; While most dynamic realtime engines are automatically used when defined in
82 ; this file, 'extensions', distinctively, is not. To activate dynamic realtime
83 ; extensions, you must turn them on in each respective context within
84 ; extensions.conf with a switch statement. The syntax is:
85 ; switch => Realtime/[[db_context@]tablename]/<opts>
86 ; The only option available currently is the 'p' option, which disallows
87 ; extension pattern queries to the database. If you have no patterns defined
88 ; in a particular context, this will save quite a bit of CPU time. However,
89 ; note that using dynamic realtime extensions is not recommended anymore as a
90 ; best practice; instead, you should consider writing a static dialplan with
91 ; proper data abstraction via a tool like func_odbc.