How To Propagate NOANSWER Up Through A Local Channel?

Home » Asterisk Users » How To Propagate NOANSWER Up Through A Local Channel?
Asterisk Users 2 Comments

I am using a local channel in order to provide a layer of processing when dialling out. I have put a timeout on the inner dial, which returns a DIALSTATUS of NOANSWER if the call times out while ringing.

However, this then causes the Local channel to return CHANUNAVAIL
instead of NOANSWER, because effectively the proxy channel has just gone away.

Here is a simplified example:

[test]
exten => _X.,1,Dial(Local/${EXTEN}@outbound)
exten => _X.,n,NoOp(${CONTEXT}:DIALSTATUS=${DIALSTATUS})

[outbound]
exten => _X.,1,Dial(SIP/ext${EXTEN},30)
exten => _X.,n,NoOp(${CONTEXT}:DIALSTATUS=${DIALSTATUS})

So if I don’t answer within 30 sec, I see outbound:DIALSTATUS=NOANSWER
but test:DIALSTATUS=CHANUNAVAIL

If instead I put the timeout on the outer Dial instead, I see test:DIALSTATUS=NOANSWER and outbound:DIALSTATUS

2 thoughts on - How To Propagate NOANSWER Up Through A Local Channel?

  • In article <20121108092952.78cb607d@ws78.int.tlc>, Chad Wallace wrote:

    Thanks! Just need to get my platform updated from 1.2 🙁

    Cheers Tony