opensip和opensip_cp安装配置

一,opensip安装

1,老老实实安装各种库,我在这里吃了点亏:

yum install gcc make
yum install flex bison ncurses libncurses-dev ncurses-devel
yum install mysql mysql-server mysql-libs mysql-devel

2,下载opensip,svn和wget都可以,随便选择:

wget http://opensips.org/pub/opensips/1.8.2/src/opensips-1.8.2_src.tar.gz
tar zxvf opensips-1.8.2_src.tar.gz
cd opensips-1.8.2-tls

make menuconfig (勾选db_mysql,其他不用动)
菜单里选"CompileAnd Install Opensips"
退出menuconfig

注意,到这里如果不出意外理论上是安装好了,但我实际操作的时候有个问题,那就是module目录下的模块没有生成。也许我安装的是opensips_2.1的原因吧,具体不知道了。所以编译安装直接make all&&make install,还是看官网说明。

3,配置opensip,导入数据库

vi etc/opensips/opensipsctlrc,把与mysql有关的注释去掉(DB_PATH和USERCOL保留注释)
service mysqld start
opensipsdbctl create(提示的两个问题都选no),完成后数据库里会生成相应的数据库和表。
osipsconf

选择ENABLE_TCP,USE_AUTH,USE_DBACC,USE_DBUSERLOC,USE_DIALOG,然后generate residential script,用生成的opensips_residential_xxx.cfg替换原先的opensips.cfg。

注意:我配置好之后,启动opensip的时候报错,看日志说是opensip.cfg出错了,两个问题:首先查看lib/module/下有没有对应的模块。其次,在loadmodule"uri.so"下面一行加:

modparam("uri","db_url","mysql://opensips:opensipsrw@localhost/opensips")

vi /usr/etc/opensips/opensips.cfg (改listen地址和mpath,后者一般是/usr/lib/opensips/modules)
opensipsctl start (netstat -anp查端口)
service iptables stop (关闭防火墙)

4,检查配置是否成功:

查看进程:ps aux | grep opensips

查看udb监听:netstat -upln | grep opensips

查看tcp监听:netstat -tpln | grep opensips

检查sip服务端口:netstat -nlutp|grep sips

5,创建测试用户:

opensipsctl add 101 101

如果创建用户时提示“ERROR: domain unknown: useusernames with domain or set default domain in SIP_DOMAIN”,可修改opensipsctlrc文件将SIP_DOMAIN设为本机域名或IP地址。

6,配置日志路径,使用独立的log文件,opensips使用syslog服务,所以缺省情况下日志会进入/var/log/message这个文件,如果希望使用独立的log文件,可以这样设置:

touch /var/log/opensips.log
vi /etc/rsyslog.conf  --> 增加一行:local0.*            /var/log/opensips.log
/etc/init.d/rsyslog restart

二,opensips-cp配置

1, 我们首先你在你的电脑里已经安装的apache+php+mysql,没安装自己搞定。不过就算这些环境你已经安装了,也要老老实话的安装一些库,不然会出问题:

yum install httpd php php-mysql php-xmlrpc php-pear

pear installMDB2
pear install MDB2#mysql
pear install MDB2#mysqli
pear install log

可以选择性的安装,比如如果你已经有环境了php-mysql可以不用安装,但MDB2,pear等一定呀安装的。

2, 在/etc/php.ini里:把short_open_tag置为On

3, 下载opensip_cp解压到你的web目录下,比如/var/www/html,改名为你喜欢的名字。

Vim /etc/httpd/conf/httpd.conf添加下面一行

Alias/cp "/var/www/opensips-cp/web"

4, chown apache:apache/var/www/opensips-cp/config/access.log (如果是其他版本linux,用户名可能是www-data或其他)

5, 安装数据表:

  安装必须的admin:

cd /var/www/opensips-cp/config/tools/admin/add_admin/

mysql -Dopensips -p<ocp_admin_privileges.mysql

mysql -uroot opensips进入mysql命令行,执行下面的命令添加管理员用户:

INSERT INTO ocp_admin_privileges(username,password,ha1,available_tools,permissions) values('admin','admin',md5('admin:admin'),'all','all');

安装cdrviewer:

cd /var/www/opensips-cp/config/tools/system/cdrviewer/

mysql -Dopensips -p < cdrs.mysql

mysql -Dopensips -p<opensips_cdrs.mysql

cd /var/www/opensips-cp/cron_job

vi generate-cdrs_mysql.sh (填写数据库连接信息)

注意,generate-cdrs_mysql.sh这个文件里的“callopensips_cdrs_1_6()”可能要改为“call opensips_cdrs()”,必须要与opensips_cdrs.mysql里定义的名称一致。

vi /etc/crontab (添加定时任务,例如每三分钟生成一次:*/3* * * * root /var/www/opensips-cp/cron_job/generate-cdrs_mysql.sh)

安装smonitor:

cd /var/www/opensips-cp/config/tools/system/smonitor/ (此处INSTALL文档有笔误,这里已更正)

mysql -Dopensips -p < tables.mysql

vi /etc/crontab (添加定时任务,例如每分钟一次:* ** * * root php /var/www/opensips-cp/cron_job/get_opensips_stats.php >/dev/null)

安装add_user:

(最前面已经装过了ocp_admin_privileges.mysql,这里应该不需要再做一次,INSTALL文档的小问题不少)

启动opensips-cp:

service mysqld start

service httpd start

打开浏览器访问http://xxx.xxx.xxx.xxx/cp/ 应该能看到登录界面,用之前创建的admin用户登录。

参考http://www.cnblogs.com/bjzhanghao/archive/2013/02/13/2910903.html

你可能感兴趣的:(opensip和opensip_cp安装配置)