配置SIP帐户

# cd /etc/asterisk
# vi sip.conf
[1000]
deny=0.0.0.0/0.0.0.0
secret=1000
dtmfmode=rfc2833
canreinvite=no
context=intercalling
host=dynamic
type=friend
nat=no
port=5060
qualify=yes
qualifyfreq=60
transport=udp
encryption=no
callgroup=
pickupgroup=
dial=SIP/1000
permit=0.0.0.0/0.0.0.0

[1001]
deny=0.0.0.0/0.0.0.0
secret=1001
dtmfmode=rfc2833
canreinvite=no
context=intercalling
host=dynamic
trustrpid=yes
sendrpid=no
type=friend
nat=no
port=5060
qualify=no
qualifyfreq=60
transport=udp
encryption=no
callgroup=
pickupgroup=
dial=SIP/1001
permit=0.0.0.0/0.0.0.0

type - 连接类型(仅对等-传出调用、用户-传入调用、朋友-传入和传出调用)
context - 在/etc/asterisk/extension.conf中的上下文,当拨号时将应用该上下文
secret - SIP电话的密码
host - 电话主机名(动态主机名)
nat - 网络地址转换
qualify - 将其设置为YES将在每2000毫秒后自动向端点发送OPTIONS数据包
canreinvite - 此设备的reinvite策略
callgroup - 此设备所属的调用组号码
pickupgroup - 此设备可以拾取来自任何组的调用。设备不必在任何组中才能接听电话
dtmfmode=auto - dtmf模式(自动|带内|信息| rfc2833)
disallow=all - 不允许所有编解码器
allow=g722 - 允许使用编解码器g722
deny - 必须拒绝访问的IP地址范围
permit - 允许从客户端计算机访问的IP地址范围

Asterisk CLI的高级配置

配置拨号计划插件

# vi extensions.conf
[general]
static=yes
writeprotect=no
clearglobalvars=no

[default]
include => intercalling

 [intercalling]
; If nobody picks up within 30 seconds, the call is sent to  voicemail
; If the extension is busy, the call is sent to voicemail
exten => _100X,1,Set(TARGETNO=${EXTEN})
exten => _100X,n,Dial(SIP/${EXTEN},30)

; routes the call to the status priority (NOANSWER,BUSY,CHANUNAVAIL,CONGESTION,ANSWER)
exten => _100X,n,Goto(s-${DIALSTATUS},1)

; Person at extension "is unavailable" message
exten => s-NOANSWER,1,VoiceMail(${TARGETNO},u)

; Person at extension "is busy" message
exten => s-BUSY,1,VoiceMail(${TARGETNO},b)

; To be safe, clean up the call after an answer by hanging up exten => s-ANSWER,1,Hangup()

; Handle any unhandled status the same way we handle NOANSWER exten => _s-.,1,Goto(s-NOANSWER,1)
日期:2020-06-02 22:17:22 来源:oir作者:oir