
我無法找到執行以下操作的確切文件:
我有一個 SIP 帳戶。我希望位於美國某處 VPS 上的 Asterisk 伺服器接受 SIP 帳戶的憑證。當人們透過 111-222-3333 分機號碼 55 撥打我的 SIP 帳戶電話號碼時,它應該會將呼叫重新路由到我位於加拿大某處的手機。
誰能告訴我該怎麼做?或給我參考相關文件?
答案1
你基本上應該做兩件事:
- 設定 Asterisk 伺服器以允許正確註冊您的 SIP 帳戶。這是透過在 /etc/asterisk/sip.conf 配置 SIP 憑證來完成的
- 設定 Asterisk 撥號方案以將分機號碼 55 對應為手機的撥出。這是在 /etc/asterisk/extension.conf 中完成的
您可以在 voip-info.org 網站找到有關如何執行此操作的大量文件:sip設定檔和擴展名.conf)。這個其他關聯似乎是您需要的一個很好的例子。
這是一個關於它的樣子的小例子:
sip設定檔
[mysipprovider]
type=peer
secret=password
username=2345
host=sipserver.mysipprovider.com
fromuser=2345
canreinvite=no
insecure=very
qualify=yes
nat=yes
context=from-mysipprovider ; this section will be defined in extensions.conf
並在extension.conf中:
[from-mysipprovider]
exten => 55,1,Verbose(1|Echo test application)
exten => 55,n,Dial(SIP/mysipprovider/5551234); Here is the outbound call, the exact dialstring depends on outgoing provider and channeltype
exten => 55,n,Hangup()
答案2
好吧,我還有事要做。這正是我的 sip.conf 和 extensions.conf 的樣子,我保留所有其他設定檔不變
sip.conf - a) 將 [使用者名稱]、[密碼]、[主機] 和 [連接埠] 替換為適當的值
b) 因為我的 SIP 提供者非常挑剔,所以我必須嘗試 [host] 的各種值,有時 register => 行中的 [host] 與 host= 行中的 [host] 是不同的值(但這可能不會成為別人的問題)
[general]
register => [username]:[password]@[host]:[port]
context=default
[mysipprovider]
type=friend
secret=pass
username=[username]
host=host
port=5070
fromuser=[username]
canreinvite=no
;insecure=very
qualify=2000
dtmfmode=inband
nat=yes
擴展.conf
[default]
exten => s,1,Answer
exten => s,n,Wait(1)
exten => s,n,Playback(vm-extension)
exten => s,n,WaitExten()
exten => 55,1,Dial(SIP/mysipacc/3332221111) ; extension 55 calls phone 3332221111
exten => 55,n,Hangup
exten => 66,1,Dial(SIP/mysipacc/1112225555) ; extension 66 calls phone 1112225555
exten => 66,n,Hangup