[Users] several questions/concerns about branches

Klaus Darilion klaus.mailinglists at pernau.at
Thu Feb 8 23:37:57 CET 2007


On Thu, February 8, 2007 18:48, Bogdan-Andrei Iancu said:
> Hi Klaus,
>
> from the beginning I say it is a bug in dispatcher module :)

but it works. I just wonder about the values reported by $du and $fs.

regards
klaus

>
> the module tries to do both - processing ruri/duri and handling the
> forking (appending branches). The problem is when doing append_branch-
> it uses the internal function for replicating the branch[0] as a new
> branch (changing only duri)...and this does not trigger the new logic
> about appending branches.
>
> so, I see 2 possible fixups:
>     1) the module will do only uri processing and you do append_branch()
> from script, if necessary (in failure route). This will be coherent with
> the current model that you need to do an append_branch in failure route
> if you want to continue processing. Also it gives you more liberty in
> processing the duri and ruri after being set by the module (if they are
> directly pushed into branches they cannot be modified anymore). The big
> disadvantage will be of course that we change something people got used
> with - they need an extra append_branch().
>     2) make the module to do append_branch via do_action() instead of
> doing it directly.
>
> regards,
> bogdan
>
> Klaus Darilion wrote:
>> Hi!
>>
>> I hav the following questions about branch handling in openser 1.1.1:
>>
>> In route[1] I use the dispatcher to forward to the gateway 11.22.33.46.
>> Thus, the DURI will be set. Further I use port 6060 to send calls to the
>> GW. So far everything is ok.
>>
>> ... setting fr_timer to 2 seconds
>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
>> route[1]: request's uri:             $ru=sip:123456789 at foobar.net
>> route[1]: request's destination uri: $du=sip:11.22.33.46:5060
>> route[1]: request's force_send_sock: $fs=udp:11.22.33.44:6060
>> route[1]: request's first branch:    $br=<null>
>> route[1]: request's all branches:    $bR=
>> route[1]: request's destination set: $ds=Contact:
>> sip:123456789 at foobar.net
>> ... t_relay
>>
>>
>> Then, if the GW does not reply within 2 seconds the failure route
>> triggers:
>>
>> First question: Why is the DURI set to NULL now?
>>
>> ... entering failure route
>> ERROR: no response from gateway or clients a1.net ...
>> branches before ds_next_dst: $ru=sip:123456789 at foobar.net, $du=, $bR=
>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
>> failure_route[1]: request's uri:
>> $ru=sip:123456789 at foobar.net
>> failure_route[1]: request's destination uri: $du=
>> failure_route[1]: request's force_send_sock: $fs=udp:11.22.33.44:6060
>> failure_route[1]: request's first branch:    $br=<null>
>> failure_route[1]: request's all branches:    $bR=
>> failure_route[1]: request's destination set: $ds=Contact:
>> sip:123456789 at foobar.net
>> ... ds_next_dst
>>
>> branches after ds_next_dst: $ru=sip:123456789 at foobar.net, $du=,
>> $bR=sip:123456789 at foobar.net
>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
>> failure_route[1]: request's uri:
>> $ru=sip:123456789 at foobar.net
>> failure_route[1]: request's destination uri: $du=
>> failure_route[1]: request's force_send_sock: $fs=udp:11.22.33.44:6060
>> failure_route[1]: request's first branch:
>> $br=sip:123456789 at foobar.net
>> failure_route[1]: request's all branches:
>> $bR=sip:123456789 at foobar.net
>> failure_route[1]: request's destination set: $ds=Contact:
>> sip:123456789 at foobar.net, sip:979004369911
>> ... activating branch_route
>> ... t_relay
>>
>>
>> Second question: In the branch route the send_socket is reported as
>> NULL.
>> AFAIK it will be copied from branches[0] to the new branch during
>> ds_next_dst. Also the request is sent from port 6060 - thus it looks
>> like
>> the $fs is wrong in branch_route.
>>
>> ====================================================
>> branch_route[1]: request's uri:             $ru=sip:123456789 at foobar.net
>> branch_route[1]: request's destination uri: $du=sip:11.22.33.45:5060
>> branch_route[1]: request's force_send_sock: $fs=<null>
>> branch_route[1]: request's first branch:    $br=sip:123456789 at foobar.net
>> branch_route[1]: request's all branches:    $bR=sip:123456789 at foobar.net
>> branch_route[1]: request's destination set: $ds=Contact:
>> sip:123456789 at foobar.net, sip:9790043699111
>>
>>
>>
>>
>> thanks
>> klaus
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at openser.org
>> http://openser.org/cgi-bin/mailman/listinfo/users
>>
>>
>
>






More information about the sr-users mailing list