格式:
Dial(type/identifier, timeout, options, URL)
Dial(type1/identifier1[&type2/identifier2[&type3/identifier3... ] ], timeout, options, URL)
RetryDial(announce|sleep|loops|Technology/resource[&Technology2/resource2...][|[timeout][|[options][|URL]]])
a)如果呼叫在超时之前被接听,通道就被桥接,拨号方案完成,如果被叫地没 有应答,Dial( ) 会继续到该extension 的下一个priority。但是,如果被叫通道忙,Dial( )将转到priority n+101,如果其存在的话(其中的n 是Dial( )被调用的priority)
b)参数
t或T: 表示允许被叫通过拍xfer键进行呼叫转移。xfer键的定义在features.conf中
r:强制产生回铃音,呼叫过程中没有语音直到被叫摘机。没有这个选项, aserisk会适当地根据情况自动地产生回铃音。强制产生回铃有可能使主叫听不到忙音,彩铃。在呼叫多个被叫时,回铃音不通被透传,这时需要强制一个回铃音。
R:当被叫在震铃时通知主叫被在震铃,,呼叫过程中没有语音直到被叫摘机。这个选项仅在kapejod's Bristuff有用。注:BRIstuff 是一个BRI驱动和补丁集
m:提供Music on Hold给主叫直到被叫摘机。注:与r不同的时m可以指定一类Music on Hold的音乐
o:传送主叫ID,默认是送分机的号码(extension's number)
j:如果所有通道忙跳到n+101
M(x):当通道一旦连接执行宏x,比如被叫摘机时。
h:允许主叫挂机通过*号键
H:允许被叫挂机通过*号键
i:asterisk忽略在本次拨号时的任何转发请求。这个在在1.4只有用,当你在震铃一个震铃组时,他们有一个设置了电话转移到voicemail或设置了阻止免打扰,这时你的震铃组就会呼叫失败
C:重置CDR
p:使能屏幕模式即不用记忆怎么出理主叫的基本个人隐私模式。
P(x): 使用隐私管理-PrivacyManager, x可选,x是数据库。
g:当被叫挂机时,退出,然后在当前的context中执行更多的命令
G(context^exten^pri):当呼叫叫建立,转移双方到指定的contex和extension。主叫方转移到优先级pri,被叫方到优先级pri+1
A(x):拨放一个通知音(x.gsm)给被叫方,需要通道接通后播放
S(x):被叫摘机后x秒后挂机。
d:这个标志胜过H标标,在等待呼叫应答时截取任何的DTMF,并返回的值。这个允许你已经设置1的(退出)exeten后,然后在呼叫时按1退出当前的呼叫
D(digits):在被叫摘机后送digits DTMF流。
L(x:[y]:[:z]):限制呼叫x毫秒,当y毫秒到达时发出警告,每z秒重复一次。以下这几个通道变量可设置:
LIMIT_PLAYAUDIO_CALLER - yes|no (default yes) - 拨放Warning语音给主叫
LIMIT_PLAYAUDIO_CALLEE - yes|no - 拨放Warning语音给被叫.
LIMIT_TIMEOUT_FILE - 拨放的文件
LIMIT_CONNECT_FILE - 当呼叫开始拨放的文件(被叫接通时,向主叫播放的语音文件)
LIMIT_WARNING_FILE - 播放的文件当y定义的时侯,如果LIMIT_WARNING_FILE没有定义,默认的行为是播放("You have [XX minutes] YY seconds").
f:当外呼或重定向呼叫时强制主叫ID设置为line的extensions,有些PSTNs只允许一个主叫ID时,你分配一个给他
w:允许被叫记录在按*1时,或在features.conf中定义的,需要Set(DYNAMIC_FEATURES=automon)
W:允许主叫记录在按*1时,或在features.conf中定义的,需要Set(DYNAMIC_FEATURES=automon)
p:通过定义在features.conf中的dtmf 序列允许被叫方使能呼叫停泊(parking)
P:通过定义在features.conf中的dtmf 序列允许被主方使能呼叫停泊(parking)
Dial(type/identifier, timeout, options, URL)
Dial(type1/identifier1[&type2/identifier2[&type3/identifier3... ] ], timeout, options, URL)
RetryDial(announce|sleep|loops|Technology/resource[&Technology2/resource2...][|[timeout][|[options][|URL]]])
a)如果呼叫在超时之前被接听,通道就被桥接,拨号方案完成,如果被叫地没 有应答,Dial( ) 会继续到该extension 的下一个priority。但是,如果被叫通道忙,Dial( )将转到priority n+101,如果其存在的话(其中的n 是Dial( )被调用的priority)
b)参数
t或T: 表示允许被叫通过拍xfer键进行呼叫转移。xfer键的定义在features.conf中
r:强制产生回铃音,呼叫过程中没有语音直到被叫摘机。没有这个选项, aserisk会适当地根据情况自动地产生回铃音。强制产生回铃有可能使主叫听不到忙音,彩铃。在呼叫多个被叫时,回铃音不通被透传,这时需要强制一个回铃音。
R:当被叫在震铃时通知主叫被在震铃,,呼叫过程中没有语音直到被叫摘机。这个选项仅在kapejod's Bristuff有用。注:BRIstuff 是一个BRI驱动和补丁集
m:提供Music on Hold给主叫直到被叫摘机。注:与r不同的时m可以指定一类Music on Hold的音乐
o:传送主叫ID,默认是送分机的号码(extension's number)
j:如果所有通道忙跳到n+101
M(x):当通道一旦连接执行宏x,比如被叫摘机时。
h:允许主叫挂机通过*号键
H:允许被叫挂机通过*号键
i:asterisk忽略在本次拨号时的任何转发请求。这个在在1.4只有用,当你在震铃一个震铃组时,他们有一个设置了电话转移到voicemail或设置了阻止免打扰,这时你的震铃组就会呼叫失败
C:重置CDR
p:使能屏幕模式即不用记忆怎么出理主叫的基本个人隐私模式。
P(x): 使用隐私管理-PrivacyManager, x可选,x是数据库。
g:当被叫挂机时,退出,然后在当前的context中执行更多的命令
G(context^exten^pri):当呼叫叫建立,转移双方到指定的contex和extension。主叫方转移到优先级pri,被叫方到优先级pri+1
A(x):拨放一个通知音(x.gsm)给被叫方,需要通道接通后播放
S(x):被叫摘机后x秒后挂机。
d:这个标志胜过H标标,在等待呼叫应答时截取任何的DTMF,并返回的值。这个允许你已经设置1的(退出)exeten后,然后在呼叫时按1退出当前的呼叫
D(digits):在被叫摘机后送digits DTMF流。
L(x:[y]:[:z]):限制呼叫x毫秒,当y毫秒到达时发出警告,每z秒重复一次。以下这几个通道变量可设置:
LIMIT_PLAYAUDIO_CALLER - yes|no (default yes) - 拨放Warning语音给主叫
LIMIT_PLAYAUDIO_CALLEE - yes|no - 拨放Warning语音给被叫.
LIMIT_TIMEOUT_FILE - 拨放的文件
LIMIT_CONNECT_FILE - 当呼叫开始拨放的文件(被叫接通时,向主叫播放的语音文件)
LIMIT_WARNING_FILE - 播放的文件当y定义的时侯,如果LIMIT_WARNING_FILE没有定义,默认的行为是播放("You have [XX minutes] YY seconds").
f:当外呼或重定向呼叫时强制主叫ID设置为line的extensions,有些PSTNs只允许一个主叫ID时,你分配一个给他
w:允许被叫记录在按*1时,或在features.conf中定义的,需要Set(DYNAMIC_FEATURES=automon)
W:允许主叫记录在按*1时,或在features.conf中定义的,需要Set(DYNAMIC_FEATURES=automon)
p:通过定义在features.conf中的dtmf 序列允许被叫方使能呼叫停泊(parking)
P:通过定义在features.conf中的dtmf 序列允许被主方使能呼叫停泊(parking)
如果要自动实现二次拨号,可以通过在宏里面实现dtmf 的发送。
dial( SIP/83142167@out-trunk,M(senddtmf))
dial( SIP/83142167@out-trunk,M(senddtmf))
[macro-senddtmf]
exten =>s,1,noop(Senddtmf)
exten =>s,n,wait(2)
exten =>s,n,SendDTMF(83142167)
exten =>s,1,noop(Senddtmf)
exten =>s,n,wait(2)
exten =>s,n,SendDTMF(83142167)
等待2秒的原因是由于一般要听到ivr 提示方可以允许用户输入的。可以根据实际调整等待参数。
如果一次要执行多个宏,可以用^ (6字符)来分隔
dial( SIP/83142167@out-trunk,M(senddtmf^record-file))