一、编译环境搭建
1. 编译工具链安装
sudo apt-get install bison g++-multilib git gperf libxml2-utils make zlib1g-dev:i386 zip libncurses5-dev libncursesw5-dev libxml2-dev flex bison
2. mysql数据库安装
sudo apt-get install mysql-server mysql-client libmysqlclient-dev
二、编译安装
编译、安装、配置opensips
$ tar -xzvf opensips-2.3tar.gz
$ cd opensips-2.3/
$ sudo make menuconfig
在menuconfig
中选择--->Configure Compile Options---> Configure Excluded Modules
,方向键向下滚动,按空格选中[*] db_mysql
。按q
键返回上一级,选择---> Configure Install Prefix
,输入/usr/local/opensips_proxy
后按回车(表示安装在/usr/local/opensips_proxy
目录下)。 选择---> Save Changes
保存修改,按q
返回,选择---> Compile And Install OpenSIPS
,回车安装。
安装完成后会将配置文件放在/usr/local/opensips_proxy/etc/opensips
目录下,运行文件在/usr/local/opensips_proxy/sbin
目录下。如果出现依赖错误,先通过apt-get
安装依赖。源代码安装软件要注意查看README
,INSTALL
等文件,这些文件里有很重要的说明和安装信息,里面有安装Opensips
所需要的依赖包。
opensips
安装之后的文件目录:
sbin/
中的可执行命令:opensips
、opensipsctl
、opensipsdbctl
、 opensipsunix
、osipsconfig
、osipsconsole
。etc/opensips/
中的配置文件:opensips.cfg
、opensipsctlrc
和osipsconsolerc
。lib/opensips/
中的库文件:modules
和opensipsctl
两个目录,modules
为当前opensips
所支持的模块。
opensips
配置
opensips
的配置文件都在/etc/opensips/
中,分别为opensips.cfg
、opensipsctlrc
和osipsconsolerc
。
opensips.cfg
opensips.cfg
文件主要用于opensips
启动的配置,所有应用功能的配置都在这个文件中说明。该配置文件主要由三个部分组成:
a、全局变量,例如:
listen=udp:127.0.0.1:5060
disable_tcp=yes
disable_tls=yes
b、设置加载模块相应参数,如:
loadmodule “db_mysql.so”
loadmodule “auth.so”
loadmodule “auth_db.so”
modparam(“auth”, “calculate_ha1”, yes)
modparam(“auth_db”, “password_column”, “password”)
c、路由策略和功能应用,如:
route[relay] {
# for INVITEs enable some additional helper routes
if (is_method(“INVITE”)) {
t_on_branch(“per_branch_ops”);
t_on_reply(“handle_nat”);
t_on_failure(“missed_call”);
}
opensipsctlrc
opensipsctlrc
文件中包含了数据库配置的信息。
进入/usr/local/opensips_proxy/etc/opensips
目录,运行osipsconfig
命令,依次选择---> Generate OpenSIPS Script —> Residential Script —> Configure Residential Script
,选中如下几项:
[*] ENABLE_TCP
[*] USE_ALIASES
[*] USE_AUTH
[*] USE_DBACC
[*] USE_DBUSRLOC
[*] USE_DIALOG
[*] USE_NAT
按q
返回,选择---> Generate Residential Script
回车,生成新的配置文件。按q
(三次)退出命令,将新生成的opensips_residential_*.cfg
文件重命名为opensips.cfg
,并编辑。
参考opensips.cfg 如下:
#
# OpenSIPS residential configuration script
# by OpenSIPS Solutions <team@opensips-solutions.com>
#
# This script was generated via "make menuconfig", from
# the "Residential" scenario.
# You can enable / disable more features / functionalities