[OpenSER-Users] Call transfer

Iñaki Baz Castillo ibc at aliax.net
Thu Jan 31 00:13:38 CET 2008


El Miércoles, 30 de Enero de 2008, Jan ONDREJ (SAL) escribió:
> On Wed, Jan 30, 2008 at 04:26:26PM -0500, Alex Balashov wrote:
> > On Wed, 30 Jan 2008, Jan ONDREJ (SAL) wrote:
> >> On Wed, Jan 30, 2008 at 04:20:32PM -0500, Alex Balashov wrote:
> >>> Do your phones actually support transfer via the REFER method, or by
> >>> issuing 302 Moved Temporarily messages?
> >>
> >> I see "REFER" in sniffed packets (Polycom phones).
> >
> >   Gotcha.  So what do you want OpenSER to do with these?  Or perhaps a
> > more useful question is, what are you doing with OpenSER?
>
> We are using openser to route calls between our gateway, a PSTN gateway,
> ENUM, etc...
> Evrything worked fine before we tryed to transfer calls from phone to
> phone. I want to add this feature to my VoIP site.

Error: Have you investigated how REFER works? Two examples:


case 1)

3 phones (A, B, C)

- A calls B and they speak.

- B wants to transfer the call to C. So B sends a REFER to A like this:
  REFER sip:A at IP_A
  Refer-To: sip:C at domain

- So A will receive that REFER and then A will generate an INVITE to C:
  INVITE sip:C at domain
  From: A at domain

- So in conclusion: a REFER in fact means: "please, invite this other user".



case 2)

2 phones (A, B) and a gateway.

- The gateway calls B and they speak.

- B wants to transfer to A so it sends a REFER to gateway like this:
  REFER sip:gateway at IP_gateway
  Refer-To: sip:A at domain

- So now the **gateway** should generate an INVITE to A. Unfortunatelly AFAIK 
most of gateways won't allow it (and it sems logical to me).

What you need is a B2BUA between the gateway and phones. In this way the UAS 
receiving the REFER will be the B2BUA (that you control) and not the gateway.
  



> An example configuration with call transfer support can be useful for other
> users too, so it can be good to include it into openser distribution's
> example configurations.

No, OpenSer is a SIP proxy, not a PBX or B2BUA, it just should route the REFER 
according to RFC 3261 for in-dialog messages.



> >   OpenSER is a proxy, so it shouldn't really be "handling" referrals,
> > just passing them back to the user agent/server (UAC/UAS) that will
> > ultimately be taking care of that.
>
> It's not done by default config?

Yes, it's done. The problem you have is that you are sending the REFER to a 
gateway.



-- 
Iñaki Baz Castillo




More information about the sr-users mailing list