当拨打一个空号或受限制的号码时,远端会播放一个提示音,当提示音结束之前由主叫方挂断,线路可正常释放;当提示音结束之后通话会自动结束,但是中继线路并没有被asterisk释放,用 uc show channels 看时,会发现刚才那条线路的状态为 3XXXX,而不是 idle。
以下为testcall的调试信息:
Chan 1, class 'mfcr2', variant 'cn,12,7', end 0, caller 1, from '1887413' to '013235331470'
Loading protocol mfcr2
Thread for channel 0
MFC/R2 Chan 1: Call control(9)
MFC/R2 Chan 1: Unblock
MFC/R2 Chan 1: 1011 -> [1/BLOCKED /Idle /Idle ]
MFC/R2 Chan 1: far_unblocking_expired
Chan 1: -- Far end unblocked!
Chan 1: -- Far end unblocked!
MFC/R2 Chan 1: local_unblocking_expired
Chan 1: -- Local end unblocked!
Chan 1: -- Local end unblocked!
Chan 1: Initiating call
MFC/R2 Chan 1: Call control(1)
MFC/R2 Chan 1: Make call
MFC/R2 Chan 1: Creating a new call with CRN 32769
MFC/R2 Chan 1: 0011 -> [1/DIALING /Seize /Idle ]
Chan 1: -- Dialing on channel 0
Chan 1: -- Dialing on channel 0
MFC/R2 Chan 1: Event
MFC/R2 Chan 1: <- 1111 [1/DIALING /Seize /Idle ]
MFC/R2 Chan 1: 0 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 0 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 1 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 1 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 3 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 3 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 2 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 2 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 3 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 3 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 5 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 5 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 3 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 3 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 3 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 3 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 1 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 1 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 4 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 4 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 7 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 7 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 0 on -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 on [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: 0 off -> [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: <- 1 off [2/DIALING /Group I /DNIS ]
MFC/R2 Chan 1: F on -> [2/DIALING /Group I /End of DNIS ]
MFC/R2 Chan 1: <- 3 on [2/DIALING /Group I /End of DNIS ]
MFC/R2 Chan 1: F off -> [2/DIALING /Group I /End of DNIS ]
MFC/R2 Chan 1: <- 3 off [2/DIALING /Group I /End of DNIS ]
MFC/R2 Chan 1: 3 on -> [2/PROCEED /Group II /Category ]
Chan 1: -- Proceeding on channel 0
MFC/R2 Chan 1: <- 1 on [2/PROCEED /Group II /Category ]
MFC/R2 Chan 1: 3 off -> [2/PROCEED /Group II /Category ]
MFC/R2 Chan 1: <- 1 off [2/PROCEED /Group II /Category ]
Chan 1: -- Alerting on channel 0
Chan 1: -- Alerting on channel 0
Main thread
Main thread
MFC/R2 Chan 1: Event
MFC/R2 Chan 1: <- 1011 [1/ALERTING/Await answer /Category ]
MFC/R2 Chan 1: Far end disconnected(cause=Normal, unspecified cause [31]) - state 0x200
Chan 1: -- Far end disconnected on channel 0
Chan 1: -- Far end disconnected on channel 0
MFC/R2 Chan 1: Call control(7)
MFC/R2 Chan 1: Drop call(cause=Normal Clearing [16])
MFC/R2 Chan 1: Clearing fwd
MFC/R2 Chan 1: 1011 -> [1/FAR DISC/Clear back A /Idle ]
Main thread
Main thread
Main thread
用testcall重复拨打这类号码都很正常,而在asterisk里通过unicall来拨打则会出现线路无法释放的问题。我已经反复安装多次,并更换不同的asterisk版本(包括 astunicall 压缩包里自带的 asterisk-1.4.18),问题依旧。