[OpenSIPS-Users] Dialog and avp_timeout

Razvan Crainea razvan at opensips.org
Thu Apr 5 10:10:45 CEST 2012


Hi, Marcello!

The dialog is matched by the loose_route function. And this is when all 
the dialog structures are updated. If you are changing anything after 
the loose_route, the changes won't be visible in the dialog.

Regards,

--
Răzvan Crainea
OpenSIPS Developer
http://www.opensips-solutions.com


On 04/05/2012 11:06 AM, Marcello Lupo wrote:
> Hi,
> effectively i was using it after the loose_route().
> I will try to do it after the loose_route().
> Why it have to be done in this way? Just for information.
> Thank you for the answer.
> Regards
> Marcello
>
> On Apr 5, 2012, at 9:36 AM, Razvan Crainea wrote:
>
>> Hi, Marcello!
>>
>> The block used to handle the ACK timeout is executed before loose_route or after? It should be before.
>>
>> Regards,
>>
>> --
>> Răzvan Crainea
>> OpenSIPS Developer
>> http://www.opensips-solutions.com
>>
>>
>> On 04/04/2012 11:59 PM, Marcello Lupo wrote:
>>> Hi,
>>> I'm using opensips 1.6.4 with dialog support.
>>> I use dialog default timeout to close automatically calls after 3 hours and it works great.
>>> Sometimes happen that some dialog remain in state 3 (200 OK received but ACK not received) till the default_timeout is reached.
>>> I was trying to set default_timeout to 120 seconds and change the avp_timeout on the ACK to a greater value so the calls in state 3 will be automatically closed form the system after 120 sec.
>>> I read around the docs that the timeout can be changed everywhere in the script after the dialog has been created but it is not working for me.
>>>
>>> Every time the system give me:
>>>
>>> DBG:dialog:get_dlg_timeout: invalid AVP value, use default timeout
>>>
>>> and never update the timeout_avp.
>>>
>>> I have in the config:
>>>
>>> modparam("dialog", "default_timeout", 120)
>>> modparam("dialog", "timeout_avp", "$avp(i:104)")
>>> modparam("dialog", "bye_on_timeout_flag", 21)
>>>
>>> In routing block when dialog start:
>>>
>>> create_dialog();
>>> setflag(21);
>>>
>>>
>>> In routing block to check ACK:
>>>
>>>          if(method=="ACK"&&   $DLG_status!=NULL) {
>>>                  $avp(i:104)="10800";
>>>                 # $avp(i:104)=10800;
>>>                  setflag(21);
>>>          }
>>>
>>> I tried to put the avp_timeout value as INT or as STRING but no difference. Looking in the source code seems that default_timeout is INT but timeout_avp expect string value.
>>>
>>> Someone can help?
>>> Thank you
>>> Bye
>>> Marcello
>>>
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users



More information about the Users mailing list