[sr-dev] Is there a sense in calling run_onsend() after the msg_send() function?
Lucian Balaceanu
lucian.balaceanu at 1and1.ro
Mon Oct 27 12:51:21 CET 2014
Hello Daniel,
I must admit I only saw your mail last Friday. Until the 10th of October
I was also on vacation. I know that you actually committed some of the
changes together with your comments on the 12th this month.
I don't know if we can consider the topic of the patch closed. As far as
I understand, the state-full replies have not been addressed, right?
(There should be a change in the t_reply.c) I followed the code to the
relay_reply but I did not yet come to find the send function. Should I
pursue further?
Thank you,
Lucian Balaceanu
> Hi Lucian,
>
> somehow I forgot to follow up on this. But we need to get sorted out
> soon, before we release, so it works as expected with the new version.
> See more comments inline.
>
>
> On 17/09/14 18:09, Lucian Balaceanu wrote:
>> Hi Daniel,
>>
>> Please forgive me for my delay in responding to your mail.
>> Please find attached a second version of the onsend_route_reply patch
>> (which again has some problems). As per your previous indications I
>> did the following:
>>
>> *Issue1*
>>> From performances point of view, there can be added a config
>>> parameter to enable running of onsend_route for replies:
>>>
>>> onsend_route_reply = 0|1
>>
>> Following
>> http://www.asipto.com/pub/kamailio-devel-guide/#c08add_parameters I
>> have tried to add onsend_route_reply parameter. The code compiles,
>> but when trying to start kamailio with this parameter inside, the
>> parsing fails with syntax errors signaling:
>>
>> / 0(1321) :<core> [cfg.y:3423]: yyerror_at(): parse error in config
>> file kamailio-basic.cfg.4.1, from line 107, column 1 to line 108,
>> column 0: syntax error
>> 0(1321) : <core> [cfg.y:3423]: yyerror_at(): parse error in config
>> file kamailio-basic.cfg.4.1, from line 107, column 1 to line 108,
>> column 0:
>> ERROR: bad config file (2 errors)/
>
> The issue is:
>
> +<INITIAL>{ONSEND_RT_REPLY} { yylval.intval=atoi(yytext);
> + yy_number_str=yytext; return NUMBER; }
>
> It should be:
>
> +<INITIAL>{ONSEND_RT_REPLY} { yylval.intval=atoi(yytext);
> + yy_number_str=yytext; return ONSEND_RT_REPLY; }
>
>>
>> *Issue2*
>>> #define onsend_enabled(rtype)
>>> (onsend_rt.rlist[DEFAULT_RT]?((rtype==SIP_REPLY)?onsend_route_reply:1):0)
>> That is to say you see it best to take the chek for
>> onsend_rt.list[DEFAULT_RT] from inside run_onsend() function and call
>> this onsend_enabled(...) before the run_onsend()?
>
> This is to detect whether the onsend_route should be executed for SIP
> replies. The condition being:
>
> - if is a sip reply and onsend_route is set and the onsend_route_reply
> parameter is 1
>>
>> *Issue3*
>>> On the other hand, is onsend_route also executed for local requests?
>>> I had in mind it is only for received requests that are forwarded
>>> ... Iirc, on onsend_route, the sip message is the one received, the
>>> outgoing content being accessible via $snd(buf).
>>>
>> I agree with you with taking out the locally generated requests and
>> only left the run_onsend call in do_forward_reply function (inside
>> forward.c).
>> Could you point me to the reply relaying function that is called for
>> state-full processing?
> Stateful processing for replies is mainly done in t_reply.c from tm
> module. At some point there should be a send buffer function call.
>
> Cheers,
> Daniel
>>
>> Thank you and sorry again for my late answer,
>> Lucian
>
> --
> Daniel-Constantin Mierla
> http://twitter.com/#!/miconda -http://www.linkedin.com/in/miconda
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-dev/attachments/20141027/9174488c/attachment.html>
More information about the sr-dev
mailing list