[OpenSIPS-Users] solved => Re: explizit handling auf replyto

Uwe Kastens kiste at kiste.org
Fri Sep 25 17:23:37 CEST 2009


Hi Bogdan,

Thanks again for your help.

I had a problem in my script, that causes some "loop" on one opensips
server. This causes, that the opensips server gets an INVITE from
itself, which was dropped by a security rule. After solving the cause
for that looping the expicit handlling - which caused some other trouble
- was not needed anymore.


BR

Uwe


Bogdan-Andrei Iancu schrieb:
> Hi Uwe,
> 
> Sorry for the delay - I took a look at the logs and there is what I 
> understand from there:
>     - I guess you do a parallel forking as the 486 comes from a second 
> branch (id 1 starting from 0) (see ;branch=z9hG4bK52ad.7d455a97.1 )
>     - The TM decides to store the reply without relaying 
> "DBG:tm:relay_reply: branch=1, save=1, relay=-1"  TM does not relay it 
> as probably there is no final reply on the first branch (id = 0).
> 
> So, the final reply is not forwarded because not all branches are 
> completed yet, so TM cannot pick yet a final reply to be sent to UAC.
> 
> It is a typical behaviour during parallel forking.
> 
> Regards,
> Bogdan
> 
> 
> Uwe Kastens wrote:
>> Hello,
>>
>> Ok. I need to have that forward() in my configuration the get answers
>> like 404, 486, 487 back to my asterisk. Reading your statements this
>> should not be possible since I use t_relay for the requests and the
>> replys should be routed by default.
>>
>> I will make a trace and post it to the list. One with forward and the
>> other without.
>>
>> BR and Thanks in advance
>>
>> Uwe
>>
>>
>>
>> Bogdan-Andrei Iancu schrieb:
>>   
>>> Uwe,
>>>
>>> forward() is a function exclusivly used for REQUESTS - for replies, 
>>> nothing needs to be done as OpenSIPS will do it automatically:
>>>
>>> 1) if the requests was statefully forwarded (via t_relay() ), the 
>>> transaction will contain all the info to route back the reply
>>>
>>> 2) if the requests was statelessly forwarded (via forward() ), the VIA 
>>> stack (in received reply) will contain all the info to route back the reply
>>>
>>> Regards,
>>> Bogdan
>>>
>>>
>>> Uwe Kastens wrote:
>>>     
>>>> Hi Bogdan,
>>>>
>>>>   
>>>>       
>>>>>>  I need to route this
>>>>>> replys with an reply_route and forward them explicitly to the pstn gateway.
>>>>>>   
>>>>>>       
>>>>>>           
>>>>> and how do you do reply routing ?? replies are automatically routed 
>>>>> based on VIA stack and you cannot influence this from script.
>>>>>     
>>>>>         
>>>> ...
>>>> if (!t_relay()) {
>>>>   sl_reply_error();
>>>>  };
>>>>
>>>> t_on_reply("1");
>>>> }
>>>> onreply_route[1]  {
>>>> xlog("L_DBG","========== route [1] t_on_failure msg-len from $si:$sp:
>>>> $ml \n$mb\n ==========\n");
>>>> forward("10.20.30.101:5100");
>>>> }
>>>>
>>>> BR
>>>>
>>>> Uwe
>>>>
>>>>
>>>>
>>>>   
>>>>       
>>>>> Regards,
>>>>> Bogdan
>>>>>     
>>>>>         
>>>>>> This not as it should be?
>>>>>>
>>>>>>
>>>>>>
>>>>>> BR
>>>>>>
>>>>>> Uwe
>>>>>>   
>>>>>>       
>>>>>>           
>>>>>>> using forward() forces a stateless behaviour of OpenSIPS. To be able to 
>>>>>>> catch replies for a requests (what on_reply route does) it requires a 
>>>>>>> statefull approach. This is the reason it does not work for you.
>>>>>>>
>>>>>>> If you use t_relay() instead of forward(), you should be able to use 
>>>>>>> failure and onreply routes.
>>>>>>>
>>>>>>> Regards,
>>>>>>> Bogdan
>>>>>>>
>>>>>>> Uwe Kastens wrote:
>>>>>>>     
>>>>>>>         
>>>>>>>             
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>> I am using opensips 1.5.1 and I have the problem, that busy messages are
>>>>>>>> not passed to the mediagw. Anything else is working (ACK etc.pp.). If I
>>>>>>>> route that message via forward("IP:port") to the media gw in on_replyto,
>>>>>>>> busy is processed correctly. If not, the busy is not send to the mediagw.
>>>>>>>>
>>>>>>>> So I was wondering if I had to handle some replyto messages?
>>>>>>>>
>>>>>>>> BR
>>>>>>>>
>>>>>>>> uwe
>>>>>>>>
>>>>>>>>
>>>>>>>>   
>>>>>>>>       
>>>>>>>>  
> 
> 
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users


-- 

kiste lat: 54.322684, lon: 10.13586



More information about the Users mailing list