El Thursday 20 September 2007 18:06:50 Jeremy McNamara escribió:
Remember Asterisk is not a SIP Proxy and only generally complies with what is called a B2B-UA.
Specially, note that Asterisk sip_channel doesn't allow sip spiral, this is, call to a SIP proxy which returns the INVITE to Asterisk with different URI. In that case Asterisk rejects it with "Loop detected" (this is a pain if you want to implement parallel forwarding to PSNT and so). Imagine this case:
- Asterisk receives a call from PSTN. - Asterisk calls to a user in OpenSer. - OpenSer has a forwarding for this user that points to PSTN (through Asterisk then). - OpenSer creates a new branch with forwarding URI and sends it to Asterisk. - Asterisk detects it's the same call (maybe by call-id and from-tag) and rejects it because "Loop detected".
Afortunatelly there is a patch for that, but just for a past SVN version of chan_sip. I've tested it and works, but now they ask for more people testing it to confirm it works and upgrade it to the trunk.
This is the reported bug and patch: http://bugs.digium.com/view.php?id=7403
I explain how to get it working:
- ~# cd /usr/src - ~# svn checkout http://svn.digium.com/svn/asterisk/trunk asterisk-svn48358 -r 48358 - Download sip_spiral.patch from http://bugs.digium.com/view.php?id=7403 - Apply it: - ~# mv sip_spiral.patch /usr/src/asterisk-svn48358 - ~# cd /usr/src/asterisk-svn48358 - ~# patch -p0 < sip_spiral3.patch - configure, make, amke install and so.
With this patch Asterisk allows SIP spiral.
It could be great is people here could test and report it in the Asterisk bugtracker in order to developers of chan_sip include it in the trunk.
Regards.