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@IP_A
Refer-To: sip:C@domain
- So A will receive that REFER and then A will generate an INVITE to C:
INVITE sip:C@domain
From: A@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@IP_gateway
Refer-To: sip:A@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