您的位置:首页 > 数据库 > MySQL

asterisk账号和拨号方案mysql存储(静态)

2014-09-28 13:33 337 查看
asterisk账号和拨号方案的静态存储相对动态的话,比较简单,而且也比较好理解,说白了就是把

sip.conf和extensions.conf文件的内容完完整整的放入到数据库中,不像动态存储那样,不但需要数据库而且还需要

sip.conf和extensions.conf文件的配合,这个在以前的文章中有详细的介绍。而静态存储完全不再需要这两个配置文件

1. 加载相应的模块,和动态的一样

2. 修改extconfig.conf文件

extensions.conf => mysql,general,ext_config1

sip.conf => mysql,general,sip_config1

3. 修改res_config_mysql.conf文件,和动态一样

4. 在数据库中建表,账号和拨号方案的表结构一样

CREATE TABLE `表名` (

`id` int(11) NOT NULL auto_increment,

`cat_metric` int(11) NOT NULL default '0', 用于排序

`var_metric` int(11) NOT NULL default '0',

`commented` int(11) NOT NULL default '0',

`filename` varchar(128) NOT NULL default '', sip.conf或extensions.conf

`category` varchar(128) NOT NULL default 'default', 主键名称

`var_name` varchar(128) NOT NULL default '', 子键名称

`var_val` varchar(128) NOT NULL default '', 子键值

PRIMARY KEY (`id`),

KEY `filename_comment` (`filename`,`commented`)

);

5. 表数据示例

账号表

insert into sip_config1(filename,category,var_name,var_val) values ('sip.conf','general','context','unauthenticated');

insert into sip_config1(filename,category,var_name,var_val) values ('sip.conf','general','allowguest','no');

insert into sip_config1(filename,category,var_name,var_val) values ('sip.conf','general','srvlookup','yes');

insert into sip_config1(filename,category,var_name,var_val) values ('sip.conf','general','udpbindaddr','0.0.0.0');

insert into sip_config1(filename,category,var_name,var_val) values ('sip.conf','general','tcpenable','no');

insert into sip_config1(filename,category,var_name,var_val) values ('sip.conf','general','videosupport','yes');

insert into sip_config1(filename,category,var_name,var_val) values ('sip.conf','general','canreinvite','no');

insert into sip_config1(filename,category,var_name,var_val) values ('sip.conf','general','registersip','yes');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1001','type','friend');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1001','host','dynamic');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1001','context','outgoing');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1001','nat','yes');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1001','secret','123456');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1001','dtmfmode','rfc2833');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,1,'sip.conf','1001','disallow','all');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1001','allow','ulaw');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1001','allow','alaw');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1001','allow','h263');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1002','type','friend');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1002','host','dynamic');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1002','context','outgoing');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1002','nat','yes');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1002','secret','123456');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1002','dtmfmode','rfc2833');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,1,'sip.conf','1002','disallow','all');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1002','allow','ulaw');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1002','allow','alaw');

insert into sip_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,2,'sip.conf','1002','allow','h263');

拨号方案表

insert into ext_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,1,'extensions.conf','outgoing','exten','_XXXX,1,Dial(SIP/${EXTEN})');

insert into ext_config1(cat_metric,var_metric,filename,category,var_name,var_val) values (1,1,'extensions.conf','outgoing','exten','_XXXX,2,Hangup()');

6.重启asterisk或者,用命令

module reload extconfig 重新加载extconfig模块以重新读取extconfig.conf

module reload chan_sip 重新加载chan_sip模块以从数据库读取sip.conf信息

dialplan reload 重新从数据库里读取extensions.conf信息并加载拨号方案

7.注意

cat_metric,var_metric这两个字段代表了每一条记录被读取的顺序,一般无所谓,都写1就行。但是在账号表中

一定要让disallow这个字段首先被加载,原因和问题在以前的文章中有讲解,不再赘述。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: