[asterisk-users] Asterisk <-> Lync / Call Center Transfer / Refer

Danny Nicholas danny at debsinc.com
Fri Mar 4 08:29:52 CST 2011


-----Original Message-----
From: asterisk-users-bounces at lists.digium.com
[mailto:asterisk-users-bounces at lists.digium.com] On Behalf Of Louis Carreiro
Sent: Friday, March 04, 2011 8:07 AM
To: asterisk-users at lists.digium.com
Subject: [asterisk-users] Asterisk <-> Lync / Call Center Transfer / Refer

Hey all,

Alright. So we decided to not go with Avaya for our next PBX and we are now
full on into an Asterisk/Lync 2010 implementation. Asterisk/FreePBX is our
SIP gateway and call center and Lync is our internal UC and IP-PBX server.
I've already got Asterisk tied with our Nortel/Merridian Option 11 with QSig
and all is beautiful (except for the Opt11 not receiving names from * but
that's another topic). So, my problem now is with the call center.

This setup may be a bit convoluted at first but it'll make sense I hope.
I've created the queues in Asterisk via FreePBX. I then created a ring group
for each Lync extension so we get the "Confirm Calls" option and dodge the
voice mail problem. The agents the login via their Lync phone with the Ring
Group extension as their Agent ID. It kind of looks like this:

Queue 2001
	Agent 4001
	Agent 4002
	Agent 4003

Ring Group 4001 -> Lync Extention 5001
Ring Group 4002 -> Lync Extention 5002
Ring Group 4003 -> Lync Extention 5003

This all works beautifuly! The problem I have is on transfers. If Lync
extension 5001 trasnfers to Lync extension 5010, Asterisk is unaware of the
transfer and shows that 5001 is still active with the call. We're using
OrderlyStats to monitor the queue so I watch the "Talking" counter just keep
counting instead of being aware the transfer took place. Now to me, that
says to me that the transfer took place within Lync so Asterisk is unaware
of the transfer. So my next step was to enable Refer support in Lync so Lync
sends the refer message back to Asterisk to transfer the call so Asterisk is
fully aware of what's going on. It seems like the refer message is trying to
work and Lync is sending it and Asterisk is receiving it but the "Refer-To"
is changing between the two so I'm at a loss.

(Logs are below signature)
Lync says it's sending the following message with a "Refer-to:
<sip:user2 at domainname.com>"

Asterisk is seeing the following and the refer-to changed, it's now
"REFER-TO:
<sip:Lyncserver.internal.domain:5067;transport=Tls;ms-opaque=3bb3da5834ad278
7?REPLACES=aa6f8871-4151-4149-ad5a-29ab941bf4d0%3Bfrom-tag%3D9227b8a39d%3Bto
-tag%3D8be38bb187>".

At first it seems like Lync is sending a true SIP URI so I need to get
Asterisk to know how to handle that SIP URI and then secondly, it seems like
Asterisk doesn't even receive the same REFER-TO message that Lync sent. Is
this because Asterisk doesn't know how to handle the SIP URI? 

So I guess I'm left with wondering if fixing the REFER message stuff is
going to fix my problem even? The end goal is for Asterisk to be aware that
a call was transferred to another extension in Lync.



Thanks in advance everyone!
Louis

<snip>

First of all, I assume you are using 1.8.X.  Regardless, Queueing and
referring have some known issues.  If you look at chan_sip.c, you'll see
that REFER is considered "broken" at this time (I know this to be the case
in 1.4.37 and at least 1 flavor of 1.8).  So my suggestion is that you
either devise some workaround for this or set up multiple queues so you can
feed calls to these "phantom-busy" folks. My "Expertise" (such as it is) is
at the AGI level; I only fool with the portions of the actual tree code that
are patently obvious (usually tweaks to patches).




More information about the asterisk-users mailing list