Just found a website that includes a good description of asterisk's dialog matching issues:
http://www.codename-pineapple.org/doc/html/sip3_dialog_match.html
I'm looking forward for chan_sip3 :-)
Christian
Christian Schlatter wrote:
Ardjan Zwartjes wrote:
Hello list,
Can anybody help me with the following problem: I have a network with a machine running OpenSER (1.1.0) and a machine running Asterisk (1.2.7). When a call is made to a certain number on the OpenSER machine I use a append_branch to fork the call to two phones, this works fine. The problem arises when I want to fork the call to two extensions on the asterisk machine. Only one of the extensions will actually start ringing. Using ethereal I found out that OpenSER sends two invites to the asterisk machine, asterisk returns a "100 Trying" on both invites, but after that Asterisk seems to forget about the second call. The first Invite is processed correctly. I suspect that the problem lies in the fact that asterisk receives two calls with the same Call-ID and just drops one of them. This behaviour is understandable since call-ids are supposed to be unique (as far as I know). Sending two invites with the same call-id on the otherhand also is the logical thing to do from OpenSERs point of view, but clearly this isn't "compatible".
You suspect correct, asterisk only looks at the call-id instead of additionally using the branch-id to determine if two sip messages belong to the same transaction or not. This behavior violates RFC 3261 and should be fixed in the next release of the asterisk sip stack. This is also the reason why asterisk cannot detect sip spirals.
So my question is: Is there some way to let OpenSER succesfully
branch a single call to two extensions on the same Asterisk? I hope somebody knows of a way how to fix this. Thanks in advance.
I haven't found a solution so far other than replacing asterisk with an RFC 3261 compliant gateway.
Christian
Kind regards, Ardjan Zwartjes.
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users
Users mailing list Users@openser.org http://openser.org/cgi-bin/mailman/listinfo/users