2008年10月16日 星期四

免費的SIP Server:Asterisk

1.安裝所需套件
yum install gcc gcc-c++ kernel-devel zlib zlib-devel openssl openssl-devel

2.下載asterisk、libpri、zaptel
cd /usr/local/src/
wget http://downloads.digium.com/pub/asterisk/releases/asterisk-1.4.22.tar.gz
wget http://downloads.digium.com/pub/libpri/libpri-1.4.7.tar.gz

wget http://downloads.digium.com/pub/zaptel/zaptel-1.4.12.1.tar.gz

3.安裝zaptel
tar -zxvf zaptel-1.4.12.1.tar.gz
cd
/usr/local/src/zaptel-1.4.12.1
./configure
make
make install
modprobe zaptel


4.安裝libpri
tar -zxvf libpri-1.4.7.tar.gz
cd /usr/local/src/libpri-1.4.7
make
make install


5.安裝asterisk
tar -zxvf asterisk-1.4.22.tar.gz
cd /usr/local/src/asterisk-1.4.22
./configure

make
make install
make samples

asterisk -vvvc



6.設定分機
vim /etc/asterisk/sip.conf

常用的分機設定有:
[101] ;分機註冊帳號
callerid=ABC
;分機顯示名稱(可不設定)
username=101
;SIP再註冊時使用的帳號(可不設定)
type=friend
;連線的模式,一般話機設成friend
secret=101
;分機註冊密碼
qualify=yes
;驗證模式,只有在type=peer時生效(可不設定)
nat=yes
;是否在NAT下
host=dynamic
;搜尋Client的模式,dynamic由話機主動去註冊或輸入Hostname、IP由SIP Server去連線
dtmfmode=rfc2833
;按鍵訊號模式,預設為rfc2833
context=internal
;設定要用extensions.conf裡哪一組的動作
canreinvite=no
;分機直通或由SIP轉接
callgroup=0
;定義群組,可利用於群組廣播....等(可不設定)
pickupgroup=0
;定義代接群組(可不設定)


[102]
username=102
type=friend
secret=102
qualify=yes
nat=yes
host=dynamic
dtmfmode=rfc2833
context=internal
canreinvite=no


7.設定接通動作
vim /etc/asterisk/extensions.conf
最後面加入設定
[internal]
exten => _X.,1,Dial(SIP/${EXTEN}|30)
exten => _X.,n,Hangup()


說明:
_:代表開頭
X:代表0-9
.:代表任意長度的字元
_X.:指電話號碼是以數字開始不管任何長度
Dial:接通
SIP:線路模式
${EXTEN}:收到的號碼
30:只振鈴等待30秒
Hangup:掛斷

8.設定遠端管理帳號(依需求設定)
vim /etc/asterisk/manager.conf
enabled = yes
最後面增加

[admin] secret=admin deny=0.0.0.0/0.0.0.0 permit=127.0.0.1/255.255.255.0 read = system,call,log,verbose,command,agent,user write = system,call,log,verbose,command,agent,user


telnet localhost 5038到asterisk的管理介面
出現Asterisk Call Manager/1.0
輸入
action: login <enter>
username: admin <enter>

secret: admin <enter>

<enter>

成功登入會出現
Response: Success
Message: Authentication accepted


註:可用免費的X-lite以及BOL SIPPhone來做通話測試

4 意見:

CO CO 提到...

請問!
設定遠端管理帳號
出現成功畫面!
有怎樣功能?要怎樣玩?

3Q~~

Yow 提到...

操作方式跟在本機執行
/usr/sbin/asterisk -rvvvvvvv
一樣,可以直接以指令方式操控Asterisk,比較常用就

reload(重新載入設定)、
restart now(重新啟動Asterisk)、
module load XXX.so(載入指定模組)

執行help可以看到指令說明,按TAB也會出現可接續指令,操作方式類似交換機。

匿名 提到...

Hi

Possible to tell what I should enter in SJphone?

- paul

fenky 提到...

你好:
我的os centos 6.2
安裝zaptel時出現下列錯誤:
make[1]: Entering directory `/usr/local/src/zaptel-1.4.12.1'
echo "You do not appear to have the sources for the 2.6.32-220.el6.i686 kernel installed."
You do not appear to have the sources for the 2.6.32-220.el6.i686 kernel installed.
exit 1
make[1]: *** [modules] Error 1
make[1]: Leaving directory `/usr/local/src/zaptel-1.4.12.1'
make: *** [all] Error 2

但我找不到方法解解??
請問是否要更新OS 呢 ?

##EasyReadMore##