opensips配置

RC文件

opensipsctlrc包含opensipsctl,opensipsdbctl和osipsconsole工具的所有配置选项。
安装后文件位于

[INSTALL_PATH]/etc/opensips/opensipsctlrc

这个文件包含如下配置项:和数据库的交互,和opensips的运行时交互,通过opensipsctl和osipsconsole工具的控制选项。
最相关或最常用的配置如下:

  • SIP_DOMAIN - opensips代理的sip域,用于系统添加一个新用户(通过opensipsctl工具)
  • DB parameters - 包含创建数据库时opensipsdbctl使用的db认证信息,以及插入配置信息时opensipsctl需要的信息
  • CTLENGINE - 当在opensipsctl工具运行mi命令时,fifo engine将使用transport。选项包括FIFO,XMLRPC和UDP
  • OSIPS_FIFO - 当前opensips实例的opensips FIFO路径。加入你再同一个服务器上部署了多个opensips实例,你应该修改他。
  • STORE_PLAINTEXT_PW - 当通过“opensipsctl add username”明星添加用户时,password以明文存储于在db,或者仅仅包含提供的password的hash版本。

配置文件

opensips配置文件包含所有的opensips核心和模块的所有配置参数,以及用于路由sip流量的实际路由逻辑。
安装后,默认的配置文件路径:

[INSTALL_PATH]/etc/opensips/opensips.cfg

配置文件是基于文本的,用opensips自定义语音编写,非常类似于c语音。你讲找到各种变量(拥有不同的作用域,在手册中进一步说明)你也可以使用像if/while/switch这样的经典构造,也可以调用带参数的sub-routines,这样脚本对于具有一些sip和变成技能的人非常易于阅读。

假如你修改了配置文件,必须重启opensips才能生效

由于每次修改opensips配置文件都需要重启opensips,因此根据opensips语法确保所做的更改都是正确的非常重要。
你可以通过运行来检查opensips配置文件的有效性。

[INSTALL_PATH]/sbin/opensips -C [PATH_TO_CFG]

检查配置文件的有效性时,如果cfg是正确的返回0,
如果配置文件包含任何错误,会在控制台展示,并返回-1

产生配置文件

使用menuconfig工具可以生成opensips配置文件。因为图形界面是给予ncurses的,所以请首先确保安装了ncurses开发库(通常是libncurses5-dev)。

使用menuconfig工具

menuconfig可以从opensips源码运行,也可以在安装后,再安装路径运行。

  • 在源码,你可以运行
make menuconfig
  • 安装之后,可以在安装路径直接运行menuconfig
[install_path]/sbin/osipsconfig

进入menuconfig工具后,导航到“generate opensips script”选项,然后选择所需要的脚本类型。选择脚本类型后,你可以配置该脚本的各个可用选项(如下所述)。使用空格可以为每个脚本启动某些选项。配置好所需选项后,可以按"q"键回退到上个菜单and点击“save changes”。然后可以根据你的配置生成opensips脚本。最后,图形界面将提供新生成的配置文件的路径。

/usr/local/opensips_proxy_1.12/etc/opensips/opensips_residential_2013-5-21_12:39:48.cfg

配置文件的类型

到目前为止,opensips1.12menuconfig自动脚本生成器支持三种类型的脚本。一下是脚本类型以及每隔脚本的可选项。

  • Residential Script
    • ENABLE_TCP: opensips将在tcp上监听sip请求
    • ENABLE_TLS: opensips将在tcp上监听sip请求
    • USE_ALIASES: opensips 将允许使用sip用户的别名
    • USE_AUTH: opensips将认证invite和register请求
    • USE_DBACC: opensips为所有的呼叫在db上存储ACC实体
    • USE_DBUSERLOC: opensips将在数据库永久存储用户落地实体
    • USE_DIALOG: opensips将跟踪活跃的对话
    • USE_MULTIDOMAIN: opensips支持订阅者的多个域
    • USE_NAT: opensips将通过修复sip消息并使用rtpproxy来应对nat
    • USE_PRESENCE: opensips将充当presence服务器
    • USE_DIALPLAN: opensips使用dialplana转换本地号码
    • VM_DIVERSION: OpenSIPS will redirect to VM calls not reaching the subscribers
    • HAVE_INBOUND_PSTN: opensips接收来自pstn的呼叫(带有静态ip认证)
    • HAVE_OUTBOUND_PSTN: opensips向pstn发送数据拨号(带有静态ip认证)
    • USE_DR_PSTN: opensips使用动态路由支持(LCR: dynamic routing support)和pstn互连
  • Trunking Script
    • ENABLE_TCP: opensips将在tcp上监听sip请求
    • ENABLE_TLS: opensips将在tcp上监听sip请求
    • USE_DBACC: opensips为所有的呼叫在db上存储ACC实体
    • USE_DIALPLAN: opensips使用dialplana转换本地号码
    • USE_DIALOG: opensips将跟踪活跃的对话
    • DO_CALL_LIMITATION: opensips将限制每隔终极的并行呼叫数
  • Load-Balancer Script
    • ENABLE_TCP: opensips将在tcp上监听sip请求
    • ENABLE_TLS: opensips将在tcp上监听sip请求
    • USE_DBACC: opensips为所有的呼叫在db上存储ACC实体
    • USE_DISPATCHER: opensips将使用DISPATCHER而不是负载均衡来分配流量
    • DISALBE_PINGING:

签名产生的脚本的编辑

使用menuconfig产生opensips脚本后,你需要使用你喜欢的编辑器打开脚本,并且查看脚本中所有的“#CUSTOMIZE ME”注释。这些注释标记了用户需要关注的地方,并且通常是指自定义opensips监听地址或设置正确的数据库url.
在进行适当的“#CUSTOMIZE ME”更改后,你可以保存脚本并试用。

猜你喜欢

转载自blog.csdn.net/long_longago/article/details/88649584