Various code and documentation cleanups for res_config_sqlite

(closes issue #10711, rbraun_proformatique)


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@82321 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Russell Bryant
2007-09-13 15:26:40 +00:00
parent 5b1668603f
commit 1282de797d
4 changed files with 354 additions and 335 deletions

View File

@@ -1,8 +1,8 @@
/*
* res_sqlite - SQLite 2 support for Asterisk
*
* res_config_sqlite - SQLite 2 support for Asterisk
*
* This module can be used as a static/RealTime configuration module, and a CDR
* handler. See the Doxygen documentation for a detailed description of the
* handler. See the Doxygen documentation for a detailed description of the
* module, and the configs/ directory for the sample configuration file.
*/
@@ -13,105 +13,109 @@
/*
* RealTime static table.
*/
CREATE TABLE ast_config
(
id INTEGER PRIMARY KEY,
commented INT(11) NOT NULL DEFAULT '0',
filename VARCHAR(128) NOT NULL,
category VARCHAR(128) NOT NULL,
var_name VARCHAR(128) NOT NULL,
var_val VARCHAR(128) NOT NULL
CREATE TABLE ast_config (
id INTEGER,
commented TINYINT(1) NOT NULL DEFAULT 0,
filename VARCHAR(128) NOT NULL DEFAULT '',
category VARCHAR(128) NOT NULL DEFAULT 'default',
var_name VARCHAR(128) NOT NULL DEFAULT '',
var_val TEXT NOT NULL DEFAULT '',
PRIMARY KEY (id)
);
CREATE INDEX ast_config_filename_commented ON ast_config(filename, commented);
CREATE INDEX ast_config__idx__filename_commented ON ast_config(filename, commented);
CREATE INDEX ast_config__idx__category ON ast_config(category);
/*
* CDR table (this table is automatically created if non existent).
*
* CREATE TABLE ast_cdr
* (
* id INTEGER PRIMARY KEY,
* clid VARCHAR(80) NOT NULL DEFAULT '',
* src VARCHAR(80) NOT NULL DEFAULT '',
* dst VARCHAR(80) NOT NULL DEFAULT '',
* dcontext VARCHAR(80) NOT NULL DEFAULT '',
* channel VARCHAR(80) NOT NULL DEFAULT '',
* dstchannel VARCHAR(80) NOT NULL DEFAULT '',
* lastapp VARCHAR(80) NOT NULL DEFAULT '',
* lastdata VARCHAR(80) NOT NULL DEFAULT '',
* start CHAR(19) NOT NULL DEFAULT '0000-00-00 00:00:00',
* answer CHAR(19) NOT NULL DEFAULT '0000-00-00 00:00:00',
* end CHAR(19) NOT NULL DEFAULT '0000-00-00 00:00:00',
* duration INT(11) NOT NULL DEFAULT '0',
* billsec INT(11) NOT NULL DEFAULT '0',
* disposition INT(11) NOT NULL DEFAULT '0',
* amaflags INT(11) NOT NULL DEFAULT '0',
* accountcode VARCHAR(20) NOT NULL DEFAULT '',
* uniqueid VARCHAR(32) NOT NULL DEFAULT '',
* userfield VARCHAR(255) NOT NULL DEFAULT ''
* );
*/
CREATE TABLE ast_cdr (
id INTEGER,
clid VARCHAR(80) NOT NULL DEFAULT '',
src VARCHAR(80) NOT NULL DEFAULT '',
dst VARCHAR(80) NOT NULL DEFAULT '',
dcontext VARCHAR(80) NOT NULL DEFAULT '',
channel VARCHAR(80) NOT NULL DEFAULT '',
dstchannel VARCHAR(80) NOT NULL DEFAULT '',
lastapp VARCHAR(80) NOT NULL DEFAULT '',
lastdata VARCHAR(80) NOT NULL DEFAULT '',
start DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
answer DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
end DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
duration INT(11) NOT NULL DEFAULT 0,
billsec INT(11) NOT NULL DEFAULT 0,
disposition VARCHAR(45) NOT NULL DEFAULT '',
amaflags INT(11) NOT NULL DEFAULT 0,
accountcode VARCHAR(20) NOT NULL DEFAULT '',
uniqueid VARCHAR(32) NOT NULL DEFAULT '',
userfield VARCHAR(255) NOT NULL DEFAULT '',
PRIMARY KEY (id)
);
/*
* SIP RealTime table.
*/
CREATE TABLE ast_sip
(
id INTEGER PRIMARY KEY,
commented INT(11) NOT NULL DEFAULT '0',
name VARCHAR(80) NOT NULL,
accountcode VARCHAR(20),
amaflags VARCHAR(13),
callgroup VARCHAR(10),
callerid VARCHAR(80),
canreinvite CHAR(3),
context VARCHAR(80),
defaultip VARCHAR(15),
dtmfmode VARCHAR(7),
fromuser VARCHAR(80),
fromdomain VARCHAR(80),
fullcontact VARCHAR(80),
host VARCHAR(31) NOT NULL,
insecure VARCHAR(4),
language CHAR(2),
mailbox VARCHAR(50),
md5secret VARCHAR(80),
nat VARCHAR(5) NOT NULL DEFAULT 'no',
deny VARCHAR(95),
permit VARCHAR(95),
mask VARCHAR(95),
pickupgroup VARCHAR(10),
port VARCHAR(5) NOT NULL,
qualify CHAR(3),
restrictcid CHAR(1),
rtptimeout CHAR(3),
rtpholdtimeout CHAR(3),
secret VARCHAR(80),
type VARCHAR(6) NOT NULL DEFAULT 'friend',
username VARCHAR(80) NOT NULL,
disallow VARCHAR(100),
allow VARCHAR(100),
musiconhold VARCHAR(100),
regseconds INT(11) NOT NULL DEFAULT '0',
ipaddr VARCHAR(15) NOT NULL,
regexten VARCHAR(80) NOT NULL,
cancallforward CHAR(3),
setvar VARCHAR(100) NOT NULL
CREATE TABLE ast_sip (
id INTEGER,
commented TINYINT(1) NOT NULL DEFAULT 0,
name VARCHAR(80) NOT NULL DEFAULT '',
host VARCHAR(31) NOT NULL DEFAULT '',
nat VARCHAR(5) NOT NULL DEFAULT 'no',
type VARCHAR(6) NOT NULL DEFAULT 'friend',
accountcode VARCHAR(20) DEFAULT NULL,
amaflags VARCHAR(13) DEFAULT NULL,
callgroup VARCHAR(10) DEFAULT NULL,
callerid VARCHAR(80) DEFAULT NULL,
cancallforward CHAR(3) DEFAULT 'yes',
canreinvite CHAR(3) DEFAULT 'yes',
context VARCHAR(80) DEFAULT NULL,
defaultip VARCHAR(15) DEFAULT NULL,
dtmfmode VARCHAR(7) DEFAULT NULL,
fromuser VARCHAR(80) DEFAULT NULL,
fromdomain VARCHAR(80) DEFAULT NULL,
insecure VARCHAR(4) DEFAULT NULL,
language CHAR(2) DEFAULT NULL,
mailbox VARCHAR(50) DEFAULT NULL,
md5secret VARCHAR(80) DEFAULT NULL,
deny VARCHAR(95) DEFAULT NULL,
permit VARCHAR(95) DEFAULT NULL,
mask VARCHAR(95) DEFAULT NULL,
musiconhold VARCHAR(100) DEFAULT NULL,
pickupgroup VARCHAR(10) DEFAULT NULL,
qualify CHAR(3) DEFAULT NULL,
regexten VARCHAR(80) DEFAULT NULL,
restrictcid CHAR(3) DEFAULT NULL,
rtptimeout CHAR(3) DEFAULT NULL,
rtpholdtimeout CHAR(3) DEFAULT NULL,
secret VARCHAR(80) DEFAULT NULL,
setvar VARCHAR(100) DEFAULT NULL,
disallow VARCHAR(100) DEFAULT 'all',
allow VARCHAR(100) DEFAULT 'g729,ilbc,gsm,ulaw,alaw',
fullcontact VARCHAR(80) NOT NULL DEFAULT '',
ipaddr VARCHAR(15) NOT NULL DEFAULT '',
port INT(11) NOT NULL DEFAULT 0,
regserver VARCHAR(100) DEFAULT NULL,
regseconds INT(11) NOT NULL DEFAULT 0,
username VARCHAR(80) NOT NULL DEFAULT '',
PRIMARY KEY (id)
UNIQUE (name)
);
CREATE UNIQUE INDEX ast_sip_name ON ast_sip(name);
CREATE INDEX ast_sip__idx__commented ON ast_sip(commented);
/*
* Dialplan RealTime table.
*/
CREATE TABLE ast_exten
(
id INTEGER PRIMARY KEY,
commented INT(11) NOT NULL DEFAULT '0',
context VARCHAR(20) NOT NULL,
exten VARCHAR(20) NOT NULL,
priority TINYINT(4) NOT NULL,
app VARCHAR(20) NOT NULL,
appdata VARCHAR(128) NOT NULL
CREATE TABLE ast_exten (
id INTEGER,
commented TINYINT(1) NOT NULL DEFAULT 0,
context VARCHAR(80) NOT NULL DEFAULT '',
exten VARCHAR(40) NOT NULL DEFAULT '',
priority INT(11) NOT NULL DEFAULT 0,
app VARCHAR(128) NOT NULL DEFAULT '',
appdata VARCHAR(128) NOT NULL DEFAULT '',
PRIMARY KEY (id)
);
CREATE INDEX ast_exten__idx__commented ON ast_exten(commented);
CREATE INDEX ast_exten__idx__context_exten_priority ON ast_exten(context, exten, priority);