Call Transfer not working on Softphones

Today I found a very strange problem on a fresh Asterisk 1.6.2.15 install. The customer wants to use SIP Softphones, so I tested out Zoiper and Draytek Softphone on the server. Everything worked, except for Blind Call Transfer. When I want to do a Blind Call Transfer, I get the following output on the CLI (same on both softphones):

Call from 201 to 220 (softphone), then I want to blind transfer the active call from 220 to 201:

 == Using SIP RTP CoS mark 5
    -- Executing [220@iternal_calls:1] Dial("SIP/201-00000078", "SIP/220,20,tT") in new stack
  == Using SIP RTP CoS mark 5
    -- Called 220
    -- SIP/220-00000079 is ringing
    -- SIP/220-00000079 answered SIP/201-00000078
    -- Started music on hold, class 'default', on SIP/201-00000078
    -- Stopped music on hold on SIP/201-00000078
  == Spawn extension (internal_calls, 202, 1) exited non-zero on 'SIP/201-00000078'

The problem is that the ext. 201 doesn’t get any SIP packets at all. When I want to do a Blind Call Transfer on a softphone, both legs of the call are dropped. If I want to do a Blind Call Transfer on an ordinary SIP Phone, there is no problem at all.

I really do not see what can be wrong in the configuration, my extensions.conf entrys for the extensions are simply:

exten => 201,1,Dial(SIP/201,20,tT)
exten => 202,1,Dial(SIP/202,20,tT)
exten => 220,1,Dial(SIP/220,20,tT)

It’s the same thing if I use t or tT as Dial application arguments.

The funny thing is, that when I tried the same thing with the same softphone on my Asterisk server that is running 1.6.2.8, Blind Call Transfer works without any problems on the Softphone.

Has something strange happened in the latest versions of Asterisk. I found a similar problem here, but there is no solution (using call parking or Blind Call Transfer via # transfer is not a solution in my book):

viewtopic.php?f=1&t=76034&p=150475&hilit=zoiper&sid=7af4a4e1ec45a6e9a83052a7113cc8ee#p150475

If someone needs it, I also have a SIP trace of the call. SIP packages are as follows:

  1. ext 220 sends SIP REFER to Asterisk
  2. Asterisk responds with 202 Accepted
  3. Asterisk drops both calls

I really hope there is a config issue here because I would hate to downgrade the server …

Does anyone at least have an idea on how to further debug this issue? Because if this indeed is a bug in the code it needs to be reported and fixed …

sip set debug on

Like I said in the first thread, I already did a SIP trace of the call and found nothing wrong. If somebody thinks that checking out the SIP trace of the call might help pin pointing the cause of the problem just let me know and I will do a re-capture of the SIP call. But I think that the problem is in the code regression. I just found this issue on the bug tracker that is originally posted for 1.8.1.1, but has a user confirming it for 1.6.2.15:

issues.asterisk.org/view.php?id=18516

Can please someone advise if this bug will be fixed in the 1.6.2 branch and if the 1.6.2.16 already has this fix.

I asked for the trace because there wasn’t enough information in the current thread. Maybe there was in the old thread, but I expected it to be self contained.

As I read the issue that you reference, the problem was fixed in 1.6.2 branch independently of the issue. To find out if it is a 1.6.2 release version, look at the relevant change log.

However, if that had not been the case, it is rather unlikely that anyone here could comment on the scheduling of bug fix work, unless they were actively working on it at the time.

The patch referenced in that bugnote didn’t make it until 1.6.2.16 - see the Changelog (downloads.asterisk.org/pub/telep … .2-current)

Cheers.

I upgraded my server to 1.6.2.16.1 and I can confirm that the issue is resolved. I am not sure if the patch on the bug tracker made it to the 1.6.2.16.1, but now call transfers in SoftPhones work like they should.