[Users] Re: [Devel] how to prevent concurrent calls per subscriber?

Bogdan-Andrei Iancu bogdan at voice-system.ro
Tue Sep 6 12:21:27 CEST 2005


Hi Raymond,

try this in failure route:

failure_route[x] {
    log(1,"--inside failure route\n");
    if (t_check_status("(404)|(487)")) {
          log(1,"--status is 404 or 487\n");
          avp_db_delete("$from","s:/inuse"); # no need to load before
    }
    exit;
}

watch the log messages and the mysql queries in the logs.

regards,
bogdan


Raymond Chen wrote:

>HI Andrei,
>
>Finally get the avp_check working, we have not problem adding a entry using
>avp_db_store now.  But how to catch SIP 404 not found message and
>avp_db_delete the entry in database?    We've tried 
>
>    if (t_check_status("404|487")) {
>                if (avp_db_load("$from","s:inuse/inuse")) {
>                            avp_db_delete("$from","s:/inuse");
>                }
>               exit();
>     }
>
>In failure_route, but it doesn't seem to catch the 404 status message.  Any
>idea?
>
>Thanks
>
>Ray
>
>-----Original Message-----
>From: Bogdan-Andrei Iancu [mailto:bogdan at voice-system.ro] 
>Sent: Tuesday, September 06, 2005 1:32 AM
>To: Raymond Chen
>Cc: users at openser.org
>Subject: Re: [Devel] how to prevent concurrent calls per subscriber?
>
>Hi Raymond,
>
>this is a runtime error. it means that you try to check via "avp_check" 
>two avps which have different types of values (int and string).
>my guess is that the problem is around :
>
>avp_write("s:inuse","$intinuse");
>
>if (avp_check("s:limit","gt/$intinuse/g")) {
>
>
>avp_write will actually write the "s:inuse" string into $intinuse AVP 
>and not copy the value (not sure which is the intention).
>
>Use avp_print() before each "avp_check" to see the values (use debug=6).
>
>regards,
>bogdan
>  
>




More information about the Users mailing list