mirror of https://github.com/sipwise/db-schema.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
325 lines
12 KiB
325 lines
12 KiB
USE mysql;
|
|
DROP DATABASE IF EXISTS kamailio;
|
|
|
|
CREATE DATABASE IF NOT EXISTS kamailio CHARACTER SET 'latin1';
|
|
|
|
USE kamailio;
|
|
|
|
CREATE TABLE `acc` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`method` varchar(16) NOT NULL DEFAULT '',
|
|
`from_tag` varchar(64) NOT NULL DEFAULT '',
|
|
`to_tag` varchar(64) NOT NULL DEFAULT '',
|
|
`callid` varchar(64) NOT NULL DEFAULT '',
|
|
`sip_code` varchar(3) NOT NULL DEFAULT '',
|
|
`sip_reason` varchar(128) NOT NULL DEFAULT '',
|
|
`time` datetime NOT NULL,
|
|
`src_leg` varchar(255) default NULL,
|
|
`dst_leg` varchar(255) default NULL,
|
|
`dst_user` varchar(64) NOT NULL default '',
|
|
`dst_ouser` varchar(64) NOT NULL default '',
|
|
`dst_domain` varchar(128) NOT NULL default '',
|
|
`src_user` varchar(64) NOT NULL default '',
|
|
`src_domain` varchar(128) NOT NULL default '',
|
|
PRIMARY KEY (`id`),
|
|
KEY `callid_idx` (`callid`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
|
|
|
CREATE TABLE `dbaliases` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`alias_username` varchar(64) NOT NULL DEFAULT '',
|
|
`alias_domain` varchar(64) NOT NULL DEFAULT '',
|
|
`username` varchar(64) NOT NULL DEFAULT '',
|
|
`domain` varchar(64) NOT NULL DEFAULT '',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `alias_idx` (`alias_username`,`alias_domain`),
|
|
KEY `target_idx` (`username`,`domain`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `dialog` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`hash_entry` int(10) unsigned NOT NULL,
|
|
`hash_id` int(10) unsigned NOT NULL,
|
|
`callid` varchar(255) NOT NULL,
|
|
`from_uri` varchar(128) NOT NULL,
|
|
`from_tag` varchar(64) NOT NULL,
|
|
`to_uri` varchar(128) NOT NULL,
|
|
`to_tag` varchar(64) NOT NULL,
|
|
`caller_cseq` varchar(7) NOT NULL,
|
|
`callee_cseq` varchar(7) NOT NULL,
|
|
`caller_route_set` varchar(512) DEFAULT NULL,
|
|
`callee_route_set` varchar(512) DEFAULT NULL,
|
|
`caller_contact` varchar(128) NOT NULL,
|
|
`callee_contact` varchar(128) NOT NULL,
|
|
`caller_sock` varchar(64) NOT NULL,
|
|
`callee_sock` varchar(64) NOT NULL,
|
|
`state` int(10) unsigned NOT NULL,
|
|
`start_time` int(10) unsigned NOT NULL,
|
|
`timeout` int(10) unsigned NOT NULL DEFAULT '0',
|
|
`sflags` int(10) unsigned NOT NULL DEFAULT '0',
|
|
`toroute` int(10) unsigned NOT NULL DEFAULT '0',
|
|
`req_uri` varchar(128) NOT NULL,
|
|
PRIMARY KEY (`id`),
|
|
KEY `hash_idx` (`hash_entry`,`hash_id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `dialplan` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`dpid` int(11) NOT NULL,
|
|
`pr` int(11) NOT NULL,
|
|
`match_op` int(11) NOT NULL,
|
|
`match_exp` varchar(64) NOT NULL,
|
|
`match_len` int(11) NOT NULL,
|
|
`subst_exp` varchar(64) NOT NULL,
|
|
`repl_exp` varchar(32) NOT NULL,
|
|
`attrs` varchar(32) NOT NULL,
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `dispatcher` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`setid` int(11) NOT NULL DEFAULT '0',
|
|
`destination` varchar(192) NOT NULL DEFAULT '',
|
|
`flags` int(11) NOT NULL DEFAULT '0',
|
|
`priority` int(11) NOT NULL DEFAULT '0',
|
|
`description` varchar(64) NOT NULL DEFAULT '',
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `domain` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`domain` varchar(64) NOT NULL DEFAULT '',
|
|
`last_modified` datetime NOT NULL DEFAULT '1900-01-01 00:00:01',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `domain_idx` (`domain`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `gw` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`lcr_id` smallint(5) unsigned NOT NULL,
|
|
`gw_name` varchar(128) NOT NULL,
|
|
`grp_id` int(10) unsigned NOT NULL,
|
|
`ip_addr` varchar(15) NOT NULL,
|
|
`hostname` varchar(64) DEFAULT NULL,
|
|
`port` smallint(5) unsigned DEFAULT NULL,
|
|
`uri_scheme` tinyint(3) unsigned DEFAULT NULL,
|
|
`transport` tinyint(3) unsigned DEFAULT NULL,
|
|
`strip` tinyint(3) unsigned DEFAULT NULL,
|
|
`tag` varchar(16) DEFAULT NULL,
|
|
`weight` int(10) unsigned DEFAULT NULL,
|
|
`flags` int(10) unsigned NOT NULL DEFAULT '0',
|
|
`defunct` int(10) unsigned DEFAULT NULL,
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `lcr_id_grp_id_gw_name_idx` (`lcr_id`,`grp_id`,`gw_name`),
|
|
UNIQUE KEY `lcr_id_grp_id_ip_addr_idx` (`lcr_id`,`grp_id`,`ip_addr`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `lcr` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`lcr_id` smallint(5) unsigned NOT NULL,
|
|
`prefix` varchar(16) DEFAULT NULL,
|
|
`from_uri` varchar(64) DEFAULT NULL,
|
|
`grp_id` int(10) unsigned NOT NULL,
|
|
`priority` tinyint(3) unsigned NOT NULL,
|
|
PRIMARY KEY (`id`),
|
|
KEY `lcr_id_idx` (`lcr_id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `location` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`username` varchar(64) NOT NULL DEFAULT '',
|
|
`domain` varchar(64) DEFAULT NULL,
|
|
`contact` varchar(255) NOT NULL DEFAULT '',
|
|
`received` varchar(128) DEFAULT NULL,
|
|
`path` varchar(128) DEFAULT NULL,
|
|
`expires` datetime NOT NULL DEFAULT '2020-05-28 21:32:15',
|
|
`q` float(10,2) NOT NULL DEFAULT '1.00',
|
|
`callid` varchar(255) NOT NULL DEFAULT 'Default-Call-ID',
|
|
`cseq` int(11) NOT NULL DEFAULT '13',
|
|
`last_modified` datetime NOT NULL DEFAULT '1900-01-01 00:00:01',
|
|
`flags` int(11) NOT NULL DEFAULT '0',
|
|
`cflags` int(11) NOT NULL DEFAULT '0',
|
|
`user_agent` varchar(255) NOT NULL DEFAULT '',
|
|
`socket` varchar(64) DEFAULT NULL,
|
|
`methods` int(11) DEFAULT NULL,
|
|
PRIMARY KEY (`id`),
|
|
KEY `account_contact_idx` (`username`,`domain`,`contact`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `speed_dial` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`username` varchar(64) NOT NULL DEFAULT '',
|
|
`domain` varchar(64) NOT NULL DEFAULT '',
|
|
`sd_username` varchar(64) NOT NULL DEFAULT '',
|
|
`sd_domain` varchar(64) NOT NULL DEFAULT '',
|
|
`new_uri` varchar(128) NOT NULL DEFAULT '',
|
|
`fname` varchar(64) NOT NULL DEFAULT '',
|
|
`lname` varchar(64) NOT NULL DEFAULT '',
|
|
`description` varchar(64) NOT NULL DEFAULT '',
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `speed_dial_idx` (`username`,`domain`,`sd_domain`,`sd_username`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `subscriber` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`username` varchar(64) NOT NULL DEFAULT '',
|
|
`domain` varchar(64) NOT NULL DEFAULT '',
|
|
`password` varchar(25) NOT NULL DEFAULT '',
|
|
`email_address` varchar(64) NOT NULL DEFAULT '',
|
|
`ha1` varchar(64) NOT NULL DEFAULT '',
|
|
`ha1b` varchar(64) NOT NULL DEFAULT '',
|
|
`rpid` varchar(64) DEFAULT NULL,
|
|
`uuid` char(36) NOT NULL,
|
|
`timezone` varchar(64) NOT NULL DEFAULT '',
|
|
`datetime_created` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`id`),
|
|
UNIQUE KEY `account_idx` (`username`,`domain`),
|
|
KEY `username_idx` (`username`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `trusted` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`src_ip` varchar(50) NOT NULL,
|
|
`proto` varchar(4) NOT NULL,
|
|
`from_pattern` varchar(64) DEFAULT NULL,
|
|
`tag` varchar(64) DEFAULT NULL,
|
|
PRIMARY KEY (`id`),
|
|
KEY `peer_idx` (`src_ip`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `usr_preferences` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`uuid` char(36) NOT NULL,
|
|
`username` varchar(128) NOT NULL DEFAULT '0',
|
|
`domain` varchar(64) NOT NULL DEFAULT '',
|
|
`attribute` varchar(32) NOT NULL DEFAULT '',
|
|
`type` int(11) NOT NULL DEFAULT '0',
|
|
`value` varchar(128) NOT NULL DEFAULT '',
|
|
`last_modified` datetime NOT NULL DEFAULT '1900-01-01 00:00:01',
|
|
PRIMARY KEY (`id`),
|
|
KEY `ua_idx` (`uuid`,`attribute`),
|
|
KEY `uda_idx` (`username`,`domain`,`attribute`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `dom_preferences` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`uuid` char(36) NOT NULL,
|
|
`username` varchar(128) NOT NULL DEFAULT '0',
|
|
`domain` varchar(64) NOT NULL DEFAULT '',
|
|
`attribute` varchar(32) NOT NULL DEFAULT '',
|
|
`type` int(11) NOT NULL DEFAULT '0',
|
|
`value` varchar(128) NOT NULL DEFAULT '',
|
|
`last_modified` datetime NOT NULL DEFAULT '1900-01-01 00:00:01',
|
|
PRIMARY KEY (`id`),
|
|
KEY `ua_idx` (`uuid`,`attribute`),
|
|
KEY `uda_idx` (`username`,`domain`,`attribute`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `address` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`grp` smallint(5) unsigned NOT NULL DEFAULT '0',
|
|
`ip_addr` varchar(15) NOT NULL,
|
|
`mask` tinyint(4) NOT NULL DEFAULT '32',
|
|
`port` smallint(5) unsigned NOT NULL DEFAULT '0',
|
|
PRIMARY KEY (`id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `version` (
|
|
`table_name` varchar(32) NOT NULL,
|
|
`table_version` int(10) unsigned NOT NULL DEFAULT '0'
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `voicemail_users` (
|
|
`uniqueid` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`customer_id` char(36) NOT NULL DEFAULT '',
|
|
`context` varchar(63) NOT NULL DEFAULT 'default',
|
|
`mailbox` varchar(31) NOT NULL,
|
|
`password` varchar(31) NOT NULL DEFAULT '0',
|
|
`fullname` varchar(255) NOT NULL DEFAULT '',
|
|
`email` varchar(255) NOT NULL DEFAULT '',
|
|
`pager` varchar(255) NOT NULL DEFAULT '',
|
|
`tz` varchar(10) NOT NULL DEFAULT 'central',
|
|
`attach` varchar(4) NOT NULL DEFAULT 'yes',
|
|
`saycid` varchar(4) NOT NULL DEFAULT 'yes',
|
|
`dialout` varchar(10) NOT NULL DEFAULT '',
|
|
`callback` varchar(10) NOT NULL DEFAULT '',
|
|
`review` varchar(4) NOT NULL DEFAULT 'no',
|
|
`operator` varchar(4) NOT NULL DEFAULT 'no',
|
|
`envelope` varchar(4) NOT NULL DEFAULT 'no',
|
|
`sayduration` varchar(4) NOT NULL DEFAULT 'no',
|
|
`saydurationm` tinyint(4) NOT NULL DEFAULT '1',
|
|
`sendvoicemail` varchar(4) NOT NULL DEFAULT 'no',
|
|
`delete` varchar(4) NOT NULL DEFAULT 'no',
|
|
`nextaftercmd` varchar(4) NOT NULL DEFAULT 'yes',
|
|
`forcename` varchar(4) NOT NULL DEFAULT 'no',
|
|
`forcegreetings` varchar(4) NOT NULL DEFAULT 'no',
|
|
`hidefromdir` varchar(4) NOT NULL DEFAULT 'yes',
|
|
`stamp` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
|
|
PRIMARY KEY (`uniqueid`),
|
|
KEY `customer_idx` (`customer_id`),
|
|
KEY `mailbox_context` (`mailbox`,`context`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `voicemail_spool` (
|
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
|
|
`msgnum` int(11) NOT NULL DEFAULT '0',
|
|
`dir` varchar(127) DEFAULT '',
|
|
`context` varchar(63) DEFAULT '',
|
|
`macrocontext` varchar(63) DEFAULT '',
|
|
`callerid` varchar(255) DEFAULT '',
|
|
`origtime` int(11) unsigned DEFAULT '0',
|
|
`duration` int(11) unsigned DEFAULT '0',
|
|
`mailboxuser` varchar(255) DEFAULT '',
|
|
`mailboxcontext` varchar(63) DEFAULT '',
|
|
`recording` longblob,
|
|
PRIMARY KEY (`id`),
|
|
KEY `dir` (`dir`),
|
|
KEY `mailboxuser_idx` (`mailboxuser`),
|
|
CONSTRAINT `v_s_mailboxuser_ref` FOREIGN KEY (`mailboxuser`) REFERENCES `voicemail_users` (`customer_id`) ON DELETE CASCADE ON UPDATE CASCADE
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `fax_preferences` (
|
|
`subscriber_id` int(10) unsigned NOT NULL,
|
|
`password` varchar(64) default NULL,
|
|
`name` varchar(64) default NULL,
|
|
`active` enum('true','false') NOT NULL default 'true',
|
|
`send_status` enum('true','false') NOT NULL default 'false',
|
|
`send_copy` enum('true','false') NOT NULL default 'false',
|
|
`send_copy_cc` enum('true','false') NOT NULL default 'false',
|
|
PRIMARY KEY (`subscriber_id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
CREATE TABLE `fax_destinations` (
|
|
`id` int(10) unsigned NOT NULL auto_increment,
|
|
`subscriber_id` int(10) unsigned NOT NULL,
|
|
`destination` varchar(64) NOT NULL,
|
|
`filetype` enum('ps','tiff','pdf','pdf14') NOT NULL default 'tiff',
|
|
`cc` enum('true','false') NOT NULL default 'false',
|
|
`incoming` enum('true','false') NOT NULL default 'true',
|
|
`outgoing` enum('true','false') NOT NULL default 'false',
|
|
`status` enum('true','false') NOT NULL default 'false',
|
|
PRIMARY KEY (`id`),
|
|
KEY `subscriber_id` (`subscriber_id`)
|
|
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
|
|
|
|
INSERT INTO `version` VALUES
|
|
('acc',4),
|
|
('gw',10),
|
|
('lcr',3),
|
|
('domain',1),
|
|
('trusted',5),
|
|
('location',1004),
|
|
('dbaliases',1),
|
|
('speed_dial',2),
|
|
('usr_preferences',2),
|
|
('subscriber',6),
|
|
('dialog',4),
|
|
('dispatcher',3),
|
|
('address',3),
|
|
('dialplan',1);
|
|
|
|
|
|
INSERT INTO `dispatcher` VALUES ('1','2','sip:127.0.0.1:5070','0','0','Voicemail servers');
|
|
INSERT INTO `dispatcher` VALUES ('2','3','sip:127.0.0.1:5080','0','0','Application servers');
|
|
INSERT INTO `dispatcher` VALUES ('3','4','sip:127.0.0.1:5090','0','0','Fax2Mail servers');
|