Various code and documentation cleanups for res_config_sqlite
[asterisk/asterisk.git] / doc / res_config_sqlite.txt
1 /*
2  * res_config_sqlite - SQLite 2 support for Asterisk
3  *
4  * This module can be used as a static/RealTime configuration module, and a CDR
5  * handler.  See the Doxygen documentation for a detailed description of the
6  * module, and the configs/ directory for the sample configuration file.
7  */
8
9 /*
10  * Tables for res_config_sqlite.so.
11  */
12
13 /*
14  * RealTime static table.
15  */
16 CREATE TABLE ast_config (
17         id              INTEGER,
18         commented       TINYINT(1)      NOT NULL        DEFAULT 0,
19         filename        VARCHAR(128)    NOT NULL        DEFAULT '',
20         category        VARCHAR(128)    NOT NULL        DEFAULT 'default',
21         var_name        VARCHAR(128)    NOT NULL        DEFAULT '',
22         var_val         TEXT            NOT NULL        DEFAULT '',
23         PRIMARY KEY     (id)
24 );
25
26 CREATE INDEX ast_config__idx__filename_commented        ON ast_config(filename, commented);
27 CREATE INDEX ast_config__idx__category                  ON ast_config(category);
28
29 /*
30  * CDR table (this table is automatically created if non existent).
31  */
32 CREATE TABLE ast_cdr (
33         id              INTEGER,
34         clid            VARCHAR(80)     NOT NULL        DEFAULT '',
35         src             VARCHAR(80)     NOT NULL        DEFAULT '',
36         dst             VARCHAR(80)     NOT NULL        DEFAULT '',
37         dcontext        VARCHAR(80)     NOT NULL        DEFAULT '',
38         channel         VARCHAR(80)     NOT NULL        DEFAULT '',
39         dstchannel      VARCHAR(80)     NOT NULL        DEFAULT '',
40         lastapp         VARCHAR(80)     NOT NULL        DEFAULT '',
41         lastdata        VARCHAR(80)     NOT NULL        DEFAULT '',
42         start           DATETIME        NOT NULL        DEFAULT '0000-00-00 00:00:00',
43         answer          DATETIME        NOT NULL        DEFAULT '0000-00-00 00:00:00',
44         end             DATETIME        NOT NULL        DEFAULT '0000-00-00 00:00:00',
45         duration        INT(11)         NOT NULL        DEFAULT 0,
46         billsec         INT(11)         NOT NULL        DEFAULT 0,
47         disposition     VARCHAR(45)     NOT NULL        DEFAULT '',
48         amaflags        INT(11)         NOT NULL        DEFAULT 0,
49         accountcode     VARCHAR(20)     NOT NULL        DEFAULT '',
50         uniqueid        VARCHAR(32)     NOT NULL        DEFAULT '',
51         userfield       VARCHAR(255)    NOT NULL        DEFAULT '',
52         PRIMARY KEY     (id)
53 );
54
55 /*
56  * SIP RealTime table.
57  */
58 CREATE TABLE ast_sip (
59         id              INTEGER,
60         commented       TINYINT(1)      NOT NULL        DEFAULT 0,
61         name            VARCHAR(80)     NOT NULL        DEFAULT '',
62         host            VARCHAR(31)     NOT NULL        DEFAULT '',
63         nat             VARCHAR(5)      NOT NULL        DEFAULT 'no',
64         type            VARCHAR(6)      NOT NULL        DEFAULT 'friend',
65         accountcode     VARCHAR(20)                     DEFAULT NULL,
66         amaflags        VARCHAR(13)                     DEFAULT NULL,
67         callgroup       VARCHAR(10)                     DEFAULT NULL,
68         callerid        VARCHAR(80)                     DEFAULT NULL,
69         cancallforward  CHAR(3)                         DEFAULT 'yes',
70         canreinvite     CHAR(3)                         DEFAULT 'yes',
71         context         VARCHAR(80)                     DEFAULT NULL,
72         defaultip       VARCHAR(15)                     DEFAULT NULL,
73         dtmfmode        VARCHAR(7)                      DEFAULT NULL,
74         fromuser        VARCHAR(80)                     DEFAULT NULL,
75         fromdomain      VARCHAR(80)                     DEFAULT NULL,
76         insecure        VARCHAR(4)                      DEFAULT NULL,
77         language        CHAR(2)                         DEFAULT NULL,
78         mailbox         VARCHAR(50)                     DEFAULT NULL,
79         md5secret       VARCHAR(80)                     DEFAULT NULL,
80         deny            VARCHAR(95)                     DEFAULT NULL,
81         permit          VARCHAR(95)                     DEFAULT NULL,
82         mask            VARCHAR(95)                     DEFAULT NULL,
83         musiconhold     VARCHAR(100)                    DEFAULT NULL,
84         pickupgroup     VARCHAR(10)                     DEFAULT NULL,
85         qualify         CHAR(3)                         DEFAULT NULL,
86         regexten        VARCHAR(80)                     DEFAULT NULL,
87         restrictcid     CHAR(3)                         DEFAULT NULL,
88         rtptimeout      CHAR(3)                         DEFAULT NULL,
89         rtpholdtimeout  CHAR(3)                         DEFAULT NULL,
90         secret          VARCHAR(80)                     DEFAULT NULL,
91         setvar          VARCHAR(100)                    DEFAULT NULL,
92         disallow        VARCHAR(100)                    DEFAULT 'all',
93         allow           VARCHAR(100)                    DEFAULT 'g729,ilbc,gsm,ulaw,alaw',
94         fullcontact     VARCHAR(80)     NOT NULL        DEFAULT '',
95         ipaddr          VARCHAR(15)     NOT NULL        DEFAULT '',
96         port            INT(11)         NOT NULL        DEFAULT 0,
97         regserver       VARCHAR(100)                    DEFAULT NULL,
98         regseconds      INT(11)         NOT NULL        DEFAULT 0,
99         username        VARCHAR(80)     NOT NULL        DEFAULT '',
100         PRIMARY KEY     (id)
101         UNIQUE          (name)
102 );
103
104 CREATE INDEX ast_sip__idx__commented ON ast_sip(commented);
105
106 /*
107  * Dialplan RealTime table.
108  */
109 CREATE TABLE ast_exten (
110         id              INTEGER,
111         commented       TINYINT(1)      NOT NULL        DEFAULT 0,
112         context         VARCHAR(80)     NOT NULL        DEFAULT '',
113         exten           VARCHAR(40)     NOT NULL        DEFAULT '',
114         priority        INT(11)         NOT NULL        DEFAULT 0,
115         app             VARCHAR(128)    NOT NULL        DEFAULT '',
116         appdata         VARCHAR(128)    NOT NULL        DEFAULT '',
117         PRIMARY KEY     (id)
118 );
119
120 CREATE INDEX ast_exten__idx__commented                  ON ast_exten(commented);
121 CREATE INDEX ast_exten__idx__context_exten_priority     ON ast_exten(context, exten, priority);