[asterisk-dev] REFER and NOTIFY behavior

Russell Bryant russell at digium.com
Wed Sep 15 15:00:46 CDT 2010


On Wed, 2010-09-15 at 11:51 +0200, Klaus Darilion wrote:
> Hi!
> 
> I just tested blind transfer notification with Asterisk (1.6.2.9) and it 
> seems to be wrong:
> 
> Asterisk does:
> 
> U1(SIP)          Asterisk         U2(SIP)             U3(ISDN)
>    |                  |              |                    |
>    |----INVITE------->|              |                    |
>    |                  |---INVITE---->|                    |
>    |                  |<--200 OK-----|                    |
>    |                  |---ACK------->|                    |
>    |<------200 OK.----|              |                    |
>    |----ACK---------->|              |                    |
>    |                  |              |                    |
>    |---REFER--------->|              |                    |
>    |<--202 Accepted---|              |                    |
>    |                  |              |                    |
>    |                  |              |                    |
>    |<--NOTIFY---------|              |                    |
>    |  w/ 183 Ringing  |              |                    |
>    |                  |              |                    |
>    |<--NOTIFY---------|              |                    |
>    |  w/ 200 OK       |              |                    |
>    |                  |              |                    |
>    |                  |----------------SETUP------------->|
>    |                  |              |                    |
> 
> So Asterisk notifies the transferer that the blind transfer is ringing 
> and was performed successfully although it does not even have tried to 
> contact the target. I would expect that NOTIFY with sipfrag 183/200 is 
> only sent when the PROGRESS/CONNECT is received from the transfer target.
> 
> Just as shown in  http://tools.ietf.org/html/rfc5359#section-2.4

I think this is expected behavior for Asterisk.  The reason is that the
transfer really is "complete" as far as Asterisk is concerned.  The
target of the transfer isn't U3, it's the Asterisk dialplan.  Asterisk
has successfully completed the transfer of U2 to a specified dialplan
location which will now executed (and may happen to make a new outbound
call, who knows).

-- 
Russell Bryant
Digium, Inc.  |  Engineering Manager, Open Source Software
445 Jan Davis Drive NW   -    Huntsville, AL 35806  -  USA
jabber: rbryant at digium.com    -=-    skype: russell-bryant
www.digium.com -=- www.asterisk.org -=- blogs.asterisk.org





More information about the asterisk-dev mailing list