我正在使用此代码与Asterisk通话:
exec("DIAL", "DAHDI/g0/" + phoneNo + "," + timeOut + ",mg,");
但是这个片段总是返回 0。
我怎样才能找到电话线忙或没有接听?
首先,我通知您,如果无法进行拨号,则该线路返回 1(但是是的,这种情况很少见)。
结果请查看拨号命令页面:
http://www.voip-info.org/wiki/view/Asterisk+cmd+Dial
它返回 DIALSTATUS 拨号方案变量。
http://www.voip-info.org/wiki/view/Asterisk+variable+DIALSTATUS
对于那些使用Asterisk jav的人
String status = channel.getVariable("DIALSTATUS");
status 将为您提供拨号状态,例如 BUSY,NOANSWER 描述 https://www.voip-info.org/wiki/view/Asterisk+variable+DIALSTATUS