2016년 6월 30일 목요일

Opensips 설치 및 사용법

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
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"
* Create DB
  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

댓글 없음:

댓글 쓰기