[asterisk-users] How to correctly set REDIRECTING to indicate diversion reason

Benoit Panizzon benoit.panizzon at imp.ch
Tue Nov 21 05:04:59 CST 2017

Hi Richard

Thank you

> You need to set more redirecting information [1].
> In sip.conf send_diversion=yes needs to be in effect.  You also need
> to setup
> the from party id information (at least the from number) to indicate
> where you
> are redirecting from.  You should also increment the redirecting
> count.
> Richard
> [1]
> https://wiki.asterisk.org/wiki/display/AST/Manipulating+Party+ID+Information

I'm back to chan_sip to get quicker progress in our test scenario as I
know this better than pjsip :-)

send_diversion=yes is the default if it is not set, so that's correctly

I altered my test dialplan and got some success but also another weird
problem now:

exten => XX,1,NoOp(Call to ${EXTEN} from ${CALLERID(all)})
exten => XX,n,Progress
exten => XX,n,Ringing
exten => XX,n,Wait(10)
exten => XX,n,set(REDIRECTING(from-num)=${EXTEN})
exten => XX,n,set(REDIRECTING(reason)=cfnr)
exten => XX,n,Transfer(SIP/ZZ)

How everytime REDIRECTING is called, this causes a 181 call is being
forwarded to the caller, but containing no diversion information.

The Transfer (302 Moved Temporarily) contains two Diversion: headers,
one with reason=unknown and one with reason=no-answer which would be the
correct one.

I start to think I stumbled over a bug. Maybe using REDIRECTING() would
set the correct headers if I used DIAL to forward the call. But I don't
want to create a second call leg. So maybe Transfer already is setting
a Diversion: header with hardcoded reason 'unknown'.

-Benoît Panizzon-
I m p r o W a r e   A G    -    Leiter Commerce Kunden

Zurlindenstrasse 29             Tel  +41 61 826 93 00
CH-4133 Pratteln                Fax  +41 61 826 93 01
Schweiz                         Web  http://www.imp.ch

More information about the asterisk-users mailing list