[OpenSIPS-Users] rtpengine (setid_avp) issue with BYE and CANCEL

Răzvan Crainea razvan at opensips.org
Tue Nov 20 03:42:31 EST 2018


Hi, Mickael!

AVPs are only available during transaction - initial request and its 
replies, but it is not avaialble to sequential requests (such as CANCEL 
or BYE). If you want to store a value throughout the entire dialog, you 
should save the variable in a dialog variable[1], something like this:

# initial INVITE
$avp(setid) = 1;
create_dialog();
$dlg_val(setid) = $avp(setid);

# CANCEL or BYE, *after* loose_route() is called
# so that the dialog is matched/found
loose_route();
$avp(setid) = $dlg_val(setid);

Hope this helps.

[1] https://opensips.org/html/docs/modules/2.4.x/dialog#pv_dlg_val

Best regards,
Răzvan

On 11/19/18 6:01 PM, Mickael Hubert wrote:
> Hi all,
> I have a rtpengine with opensips, when I use rtpengine without setid_avp 
> all works like a charm
> 
> modparam("rtpengine", "rtpengine_sock", "udp:10.13.0.129:12221 
> <http://10.13.0.129:12221>")
> 
> _When I want use setid_avp:_
> 
> modparam("rtpengine", "setid_avp", "$avp(setid)")
> modparam("rtpengine", "rtpengine_sock", "1 == udp:10.13.0.129:12221 
> <http://10.13.0.129:12221>")
> 
> _I call manage function in initial INVITE:_
> 
> $avp(setid) =  1;
> create_dialog();
> xlog("L_INFO","setid: $avp(setid)\n");
> if(rtpengine_manage("ICE=remove"))
> {
>    xlog("L_INFO","SDP Offer: $ci for INVITE\n");
> }
> 
> for an reply $avp(setid) is populate, and rtpengine works.
> 
> _but for BYE and CANCEL I have an issue:_
> _
> _
> you can see the setid variable isn't populate for this CANCEL, but it is 
> populate for 487 reply !
> I have this error log: ERROR:rtpengine:select_rtpe_node: script error 
> -no valid set selected / ERROR:rtpengine:rtpe_function_call: no 
> available proxies
> 
> When I force the setid to 1 for BYE and CANCEL, there isn't issue.
> 
> However, the module documentation explains :
> /IMPORTANT: if you use multiple sets, take care and use the same set for 
> both rtpengine_offer()/rtpengine_answer() and rtpengine_delete()!!
> /
> /If the set was selected using setid_avp, the avp needs to be set only 
> once before rtpengine_offer() or rtpengine_manage() call. /
> 
> Can you help me please ?
> 
> thanks in advance
> 
> PS: same issue with BYE method
> __
> 
> __
> 
> Nov 19 16:53:41 am-scr1-test /usr/local/sbin/opensips[22531]: 
> ################################################################################
> Nov 19 16:53:41 am-scr1-test /usr/local/sbin/opensips[22531]: CANCEL END 
> OF CALL : call-id 1def6e7f-66b6-1237-7b9d-0050569229dc
> Nov 19 16:53:41 am-scr1-test /usr/local/sbin/opensips[22531]: 
> ################################################################################
> Nov 19 16:53:41 am-scr1-test /usr/local/sbin/opensips[22531]: setid: <null>
> Nov 19 16:53:41 am-scr1-test /usr/local/sbin/opensips[22531]: 
> *ERROR:rtpengine:select_rtpe_node: script error -no valid set selected*
> Nov 19 16:53:41 am-scr1-test /usr/local/sbin/opensips[22531]: 
> *ERROR:rtpengine:rtpe_function_call: no available proxies*
> Nov 19 16:53:41 am-scr1-test /usr/local/sbin/opensips[22521]: 
> 1def6e7f-66b6-1237-7b9d-0050569229dc In ONREPLY ROUTE 2 - fu : 
> sip:+******@am-isbc1-******** , ru : <null> , si : 10.13.0.80, status : 487
> Nov 19 16:53:41 am-scr1-test /usr/local/sbin/opensips[22521]: setid: 1
> 
> if (is_method("CANCEL"))
>    {
>      
> xlog("L_INFO","################################################################################ 
> \n");
>      xlog("L_INFO","CANCEL END OF CALL : call-id $ci \n");
>      
> xlog("L_INFO","################################################################################ 
> \n");
>      xlog("L_INFO","setid: $avp(setid)\n");
>      if(rtpengine_manage("ICE=remove"))
>      {
>        xlog("L_INFO","SDP Offer: $ci for CANCEL\n");
>      }
> .............
> 
> 
> 
> 
> 
> 
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
> 

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



More information about the Users mailing list