Opensips 설치 및 사용법
SIP proxy인 Opensips를 설치하고 UA(pjsua)와 연동하기위한 방법입니다.
2016년 6월 30일 신C
*Documents
http://www.opensips.org/Documentation/Manual-2-2
*source download
git clone https://github.com/OpenSIPS/opensips.git -b 2.2 opensips_2_2
* compile
make all && make install
* opensipctlrc 수정
9 ## your SIP domain* Create DB
10 SIP_DOMAIN=myopensips.org // /etc/hosts 에 myopensips.org 등록.
11
12 ## chrooted directory
13 # $CHROOT_DIR="/path/to/chrooted/directory"
14
15 ## database type: MYSQL, PGSQL, ORACLE, DB_BERKELEY, DBTEXT, or SQLITE
16 ## by default none is loaded
17 # If you want to setup a database with opensipsdbctl, you must at least specify
18 # this parameter.
19 # DBENGINE=MYSQL
20 DBENGINE=DBTEXT
21
22 ## database port (PostgreSQL=5432 default; MYSQL=3306 default)
23 DBPORT=3306
24
25 ## database host
26 DBHOST=localhost
27
28 ## database name (for ORACLE this is TNS name)
29 DBNAME=opensips
30
31 # database path used by dbtext, db_berkeley, or sqlite
32 DB_PATH="/usr/local/etc/opensips/dbtext"
33
34 ## database read/write user
35 DBRWUSER=opensips
36
37 ## password for database read/write user
38 DBRWPW="opensipsrw"
1. Configuring DB Credentials
sudo /usr/local/etc/opensips/opensipsctlrc db_opensips
INFO: creating DBTEXT tables at: db_opensips ...
INFO: creating DBTEXT presence tables at: db_opensips ...
INFO: creating DBTEXT extra tables at: db_opensips ...
-ERROR: database engine not specified, please setup one in the config script
-> 환경파일에 접근권한이 없음, sudo로 수행할 것.
- DB 파일패스 설정 스크립트: /usr/local/lib64/opensips/opensipsctl/opensipsdbctl.dbtext
- DB 파일패스:/usr/local//share/opensips/dbtext/opensips/
*실행
- $opensips -l 192.168.1.17:5060
Listening on
udp: 127.0.0.1 [127.0.0.1]:5060
udp: 192.168.1.17 [192.168.1.17]:5060
Aliases:
- opensipsctl start|stop
- ERROR: PID file /var/run/opensips.pid does not exist -- OpenSIPS start failed
- TODO: 왜 안될까??
*사용자 계정등록
등록된 사용자 보기: $opensipsctl ul show
등록된 사용자 제거: $opensipsctl ul rm user_name
*pjsua실행시 등록을 위한 파라미터
--id sip:paul@192.168.1.17
--registrar sip:192.168.1.17
--proxy sip:192.168.1.17;lr :Route: <sip:192.168.1.17;lr> 로 전송된다.
--realm *
--username paul
--password 1234
잘 등록됐는 지 확인:
- $opensipsctl ul show paul
AOR:: paul
Contact:: sip:paul@192.168.1.11:5060;ob Q=
Expires:: 14
Callid:: 70e7b77c-3820-4176-aa4d-3726903b6db1
Cseq:: 57254
User-agent:: PJSUA v2.5 Linux-3.18/armv7l/glibc-2.22
State:: CS_NEW
Flags:: 0
Cflags::
Socket:: udp:192.168.1.17:5060
Methods:: 8063
*연동확인 한 UA: Linephone, microsip, pjsua