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

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这个字段首先被加载,原因和问题在以前的文章中有讲解,不再赘述。

  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/433288.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

matlab自动排版,工具方法| Matlab 简单绘图与排版

matlab启动界面 来自百度百科对于很多教师与学生,Matlab是做数值计算很好的一款软件。收集、整理、分析数据十分的方便,我们也可以通过Matlab画出相对比较好看的图。这里简单总结下Matlab的画图方式与排版,供初学者参考、交流。Matlab基本都是…

坦克大战代码_坦克大战系列文章-坦克大战简介

前言本篇主要对坦克大战Robocode做一个简单的介绍,对java最初的人工智能算法演练工具做一个了解坦克大战简介今天我们要谈的是java 最初的基于人工智能算法的仿真模拟坦克大战,全称Robocode。Robocode 是一位IBM的工程师 Mat Nelson 用Java 语言所创造的…

php mongo sort -1出错,mongoDB排序引起的ERROR

mongo 使用过程中遇到了一个问题,需求就是要对mongo 库中数据进行排序查询logger.info("历史采集汇总");// 一天数据calendar Calendar.getInstance();calendar.add(Calendar.HOUR_OF_DAY, -24);cond new BasicDBObject();cond.put("workTime"…

数学_同取对数(HDU_1060)

m n^n > lg(m) lg(n^n) > lg(m) n*lg(n) > m 10^(n*lg(n)) 对于 10^N 10^123.456 10^(1230.456) 10^123 * 10^0.0.456 10^123 的最高位为 1,即 10^N 的最高位取决于 n*lg(n) 的小数部位 #include <stdio.h> #include <string.h> #include &l…

python浮点型数据怎么显示为图片_python数字图像处理(4):图像数据类型及颜色空间转换...

一、图像数据类型及转换在skimage中&#xff0c;一张图片就是一个简单的numpy数组&#xff0c;数组的数据类型有很多种&#xff0c;相互之间也可以转换。这些数据类型及取值范围如下表所示&#xff1a;Data typeRangeuint80 to 255uint160 to 65535uint320 to 232float-1 to 1 …

uboot mkimage使用详解

mkimage使用详解 uboot源代码的tools/目录下有mkimage工具&#xff0c;这个工具可以用来制作不压缩或者压缩的多种可启动映象文件。 mkimage在制作映象文件的时候&#xff0c;是在原来的可执行映象文件的前面加上一个0x40字节的头&#xff0c;记录参数所指定的信息&#xff0c…

php查询文件名,php怎么查询文件名

php查询文件名的方法&#xff1a;可以利用pathinfo()函数来查询。pathinfo()函数以数组的形式返回关于文件路径的信息&#xff0c;包括目录路径、文件名等&#xff0c;如&#xff1a;【print_r(pathinfo("/testweb/test.txt"))】。pathinfo() 函数以数组的形式返回关…

基于live555的视频直播 DM368IPNC RTSP分析

因需要&#xff0c;从个人的理解顺序和需求角度对live555的分析与开发整理&#xff0c;包含RTSP Server与RTSP Client、如何直播H.264流与JPEG流等&#xff0c;均进行了探讨&#xff0c;对live555的初学者有一定的指导意义。 本人习惯使用excel归档&#xff0c;所以本文均为exc…

图像风格迁移_图像风格迁移—谷歌大脑团队任意图像风格化迁移论文详解

点击蓝字关注我们AI研习图书馆&#xff0c;发现不一样的世界风格迁移图像风格化迁移是一个很有意思的研究领域&#xff0c;它可以将一张图的风格迁移到另外一张图像上&#xff0c;由此还诞生了Prisma和Ostagram这样的商业化产品。本文&#xff0c;我们将介绍谷歌大脑团队的一篇…

石子合并问题java,石子合并问题 GarsiaWachs算法

石子合并问题 GarsiaWachs算法目录引入一个较为朴素的算法GarsiaWachs算法引入在一个操场上摆放着一排 \(N\) 堆石子。现要将石子有次序地合并成一堆。规定每次只能选相邻的 \(2\) 堆石子合并成新的一堆&#xff0c;并将新的一堆石子数记为该次合并的得分。试设计一个算法&…

Asterisk NAT

网络结构如下&#xff1a; asterisk(192.168.1.99) <--> 无线路由器&#xff08;公网IP: 55.66.77.88&#xff09; <-----------------------> 无线路由器&#xff08;公网IP: 21.31.41.51&#xff09; <--> eyeBeam(sip软电话: 192.168.12.43) 也就是说ast…

python读取图像数据流_浅谈TensorFlow中读取图像数据的三种方式

本文面对三种常常遇到的情况&#xff0c;总结三种读取数据的方式&#xff0c;分别用于处理单张图片、大量图片&#xff0c;和TFRecorder读取方式。并且还补充了功能相近的tf函数。1、处理单张图片我们训练完模型之后&#xff0c;常常要用图片测试&#xff0c;有的时候&#xff…

oracle无效的关联运算符,菜鸟请教:关联操作符=>用法

定位符和命名符create or replace procedure CallMe(p_ParameterA varchar2,p_ParameterB number,p_ParameterC boolean,p_ParameterD date) asbeginnull;end CallMe;declarev_Variable1 varchar2(10);v_Variable2 number(7, 6);v_Variable3 boolean;v_Variable4 date;beginCal…

asterisk的NAT配置

【转】asterisk的NAT配置 http://www.asteriskguru.com/tutorials/sip_nat_oneway_or_no_audio_asterisk.html 这篇文章已经把该说的都说了&#xff0c;能理解多少是多少&#xff01; 1. sip.conf: Externip:在[general] context配置的属性&#xff0c;配置你的公网地址&…

jeecgboot前端开发_Jeecg-Boot 技术文档

## 2.4 新版本文档请移步到&#xff1a; http://doc.jeecg.com## (重要的事情说三遍&#xff0c;注意注意注意啦&#xff01;&#xff01;&#xff01;)*** --- __![输入图片说明](https://static.oschina.net/uploads/img/201905/24164523_XDhg.png "在这里输入图片标题&…

xml与oracle对比,Oracle XML DB和DB2 pure XML在XML文档存储查询性能方面的比较分析

0引言随着互联网和信息化技术的快速发展,医院在逐步完成医院信息数字化建设过程中,它的核心技术之一就是电子病历的数字化管理和应用。电子病历包括病人就诊或治疗的全部临床信息,这些信息一般由数字、文字、图形和图像等数字信息组成。本文仅对纯文本数据电子病例的存储和查询…

sip配置

sip配置 sip--会话初始协议&#xff0c;通常用于voip电话&#xff0c;进行呼叫建立、呼叫结束以及呼叫进程中的协商。基本上&#xff0c;它帮助二个端点互相通话。sip不处理媒体;当呼叫建立之后&#xff0c;它通过实时传输协议在电话之间直接传输媒体。 SIP使用UDP5060端口进行…

[leetcode]Merge Intervals

整体不难&#xff0c;一开始以为是线段树&#xff0c;后来仔细看来不需要&#xff0c;从左到右扫&#xff0c;判断是否要merge就是了。此题有几个要注意的地方&#xff1a;1.Java的Comparator要会写&#xff1b;2.循环结束后的ans.add(tmp)不要忘记&#xff1b;3.merge的时候&a…

php公交查询系统源代码,基于Smarty公交查询系统的设计与实现(PHP,MySQL)

基于Smarty公交查询系统的设计与实现(,MySQL)(任务书,开题报告,中期报告,毕业论文11000字,程序代码,MySQL数据库,答辩PPT)本系统主要分为前台页面、后台逻辑及数据库三大部分。前台页面主要由首页&#xff0c;各查询页面及管理数据页面等&#xff0c;后台逻辑则分别针对各个页面…

xilinx芯片管脚使用限制_修复焊接BGA芯片过程

我们能够享受现代电子设备小巧玲珑但又功能强大的优点&#xff0c;得益于芯片的小型封装的优势&#xff0c;其中一个最为优秀的封装形式就是锡球阵列封装(BGA)。这种封装形式芯片的管脚是分布于芯片底部的一系列点阵排列的焊盘&#xff0c;通过均匀的锡球与PCB板连接在一起。比…