當使用者數量上去,單憑一台asterisk是很能支援龐大的使用者群體,所以要根據使用者量來部署多台asterisk來應付實際情況的需求.但部署多台asterisk所帶來的乙個問題就是a伺服器的使用者如果call b伺服器的使用者呢?其實asterisk的設計者早已幫我們解決問題,以下是通過sip把兩台asterisk對接起來(不過官方推薦asterisk的對接用aix).
分別在192.168.1.21 和192.168.1.22兩台伺服器上裝上asterisk,然後配置各自的使用者,trunk和**規則。
配置192.168.1.21
開啟/etc/asterisk/sip.conf配置192.168.1.22在[general]組下新增註冊到22的命令
register=>ast22:[email protected]
然後在檔案尾新增相關組資訊
[ast21]
type=friend
secret=123456
host=dynamic
username=ast21
disallow=all
allow=ulaw;alaw
context=fromsip
[22trunk]
type=friend
username=ast22
secret=123456
host=192.168.1.22
dtmfmode=rfc2833
context=fromsip
fromuser=ast22
insecure=very
開啟/etc/asterisk/extensions.conf 新增下面內容
[fromsip]
exten => _90.,1,dila(sip/91$@22trunk,40,m(default))
exten => _91.,1,dial(sip/$,40,m(default))
當接收到91開頭的號碼,把91後面的號碼進行內部呼叫。
開啟/etc/asterisk/sip.conf這樣就配置好了兩台asterisk的sip對接,不過當使用者數量龐大和分布在不同地區顯然2臺asterisk不足以應付的。在n臺asterisk下通過手動配置conf檔案來實現對接是不可能的,因為使用者會根據不同情況可能登陸不同的asterisk裡,在這情況exten是無法固下來;這個時候就可能採asterisk的ami和agi來動態處理,通過ami來獲取號碼登陸的asterisk伺服器位址,agi在根據號碼所在asterisk做乙個動態的trunk拔打就行。在[general]組下新增註冊到22的命令
register=>ast21:[email protected]
然後在檔案尾新增相關組資訊
[ast22]
type=friend
secret=123456
host=dynamic
username=ast22
disallow=all
allow=ulaw;alaw
context=fromsip
[21trunk]
type=friend
username=ast21
secret=bsmofeng
host=192.168.1.21
fromuser=ast21
dtmfmode=rfc2833
context=fromsip
insecure=very
開啟/etc/asterisk/extensions.conf 新增下面內容
[fromsip]
exten => _90.,1,dila(sip/91$@21trunk,40,m(default))
exten => _91.,1,dial(sip/$,40,m(default))
當接收到91開頭的號碼,把91後面的號碼進行內部呼叫。
作為乙個語音較交換伺服器asterisk的確算是乙個好的產品,他除了開源外,還提供ami,agi等介面;使其他語言平台通過這些介面來擴充套件自己的業務需求。
asterisk使用SIP相互對接
當使用者數量上去 單憑一台 asterisk 是很能支援龐大的使用者群體 所以要根據使用者量來部署多台 asterisk 來應付實際情況的需求 但部署多台 asterisk 所帶來的乙個問題就是 a伺服器的使用者如果 call b 伺服器的使用者呢?其實 asterisk 的設計者早已幫我們解決問題...
xLite連線asterisk提示sip408錯誤
xlite連線asterisk提示sip408錯誤 1.sip408應答 全文 408 request timeout 在一段時間內,伺服器不能產生乙個終結應答,例如,如果它無法及時決定使用者的位置。客戶端可以在稍後不更改請求的內容然後重新嘗試請求。2.原因 造成無法連線的原因一般是linux防火牆...
Asterisk配置SIP伺服器
要配置sip伺服器,前提是要先安裝了asterisk 1.編輯sip.conf 進入到 etc asterisk 後,vi sip.conf general allowoverlap no bindport 5060 bindaddr 0.0.0.0 srvlookup yes qualify ye...