Thank you - which versions the fix is pushed to? This change may break some configurations (anybody like me using dlg_val before dialog creation) so it might be worth mentioning something about this in release notes...
On Wed, Jan 8, 2025 at 5:58 PM Răzvan Crainea <[email protected]> wrote: > I've just pushed a fix, thanks for helping us identify this issue. > > Best regards, > > Răzvan Crainea > OpenSIPS Core Developer / SIPhub CTO > http://www.opensips-solutions.com / https://www.siphub.com > > On 1/8/25 6:49 PM, Bogdan-Andrei Iancu wrote: > > Hi, > > > > Thanks for the info, Razvan identified the issue - indeed, the > > rtpproxy_offer() forces the dialog creation, without actually of any > > need of it. He will push a fix on this within the next days. > > > > Best regards, > > > > Bogdan-Andrei Iancu > > > > OpenSIPS Founder and Developer > > https://www.opensips-solutions.com > > https://www.siphub.com > > > > On 17.12.2024 19:27, M S wrote: > >> So I did that, and it is very strange: > >> > >> if (is_method("INVITE") && !has_totag()) xlog("L_WARN", "$ci| > >> route|$Ts:$Tsm|DLG_status3 $DLG_status"); > >> if(!rtpproxy_offer("froc")) xlog("L_WARN", "$ci|route|$Ts: > >> $Tsm|rtpproxy_offer failed for: $mb\n"); > >> if (is_method("INVITE") && !has_totag()) xlog("L_WARN", "$ci| > >> route|$Ts:$Tsm|DLG_status4 $DLG_status"); > >> > >> [email protected]:5060|route| > >> 1734456172:140520|DLG_status3 <null> > >> [email protected]:5060|route| > >> 1734456172:140879|DLG_status4 1 > >> > >> But what does rtpproxy_offer has to do with dialog? > >> > >> On Tue, Dec 17, 2024 at 5:06 PM Bogdan-Andrei Iancu > >> <[email protected]> wrote: > >> > >> That means some other script function created the dialog in > >> advance. you can find which one by adding something like this on > >> top of your request route: > >> script_trace( 1, "$rm from $si, dlg is $DLG_status", "dbg"); > >> > >> And see where the print changes from NULL to 1 ;) > >> > >> Regards, > >> > >> Bogdan-Andrei Iancu > >> > >> OpenSIPS Founder and Developer > >> https://www.opensips-solutions.com > >> https://www.siphub.com > >> > >> On 17.12.2024 17:58, M S wrote: > >>> Thank you for your answer. I tried that and it shows DLG_status > >>> 1, which means the dialog is created but I definitely didn't > >>> create a dialog before that line. Also, the dialog is created > >>> further down with create_dialog("pPB") command because I see > >>> OPTIONS being sent to both caller and callee (pP working). > >>> Why would DLG_status print 1? I will try to print it at different > >>> lines of script to see where it changes... I have a t_newtran and > >>> some $acc_extra lines befores (other than some standard processing) > >>> > >>> On Tue, Dec 17, 2024 at 4:39 PM Bogdan-Andrei Iancu > >>> <[email protected]> wrote: > >>> > >>> Hi, > >>> > >>> Yes, the dlg_val assignment fails if there is no current > >>> dialog. Maybe > >>> the dialog is created (internally) by some other script > >>> function you are > >>> using. Try prinitng the $DLG_status before the assignment, > >>> just to see > >>> if there is a dialog or not > >>> > >>> Regards, > >>> > >>> Bogdan-Andrei Iancu > >>> > >>> OpenSIPS Founder and Developer > >>> https://www.opensips-solutions.com > >>> https://www.siphub.com > >>> > >>> On 17.12.2024 14:08, M S wrote: > >>> > Hi list, > >>> > I have a script like this: > >>> > > >>> > ..... some processing > >>> > if (is_method("INVITE") && !has_totag()) { > >>> > $dlg_val(x)="y"; > >>> > } > >>> > .... some processing > >>> > if (is_method("INVITE") && !has_totag()) { > >>> > create_dialog("pPB") > >>> > } > >>> > > >>> > My first question is, why does this work?! documents say > >>> $dlg_val > >>> > cannot be used before dialog is created, and create_dialog > >>> is called > >>> > after dlg_val here. > >>> > I have verified that indeed dialog is created using > >>> create_dialog, and > >>> > indeed $dlg_val(x) stores the value (it is available later > >>> in the dialog). > >>> > > >>> > Second question, once or two times a day (after thousands > >>> of calls) I > >>> > see a do_assign setting PV failed error message on the > >>> $dlg_val(x)="y" > >>> > line. Since this shouldn't have worked to begin with, I > >>> don't know how > >>> > to debug this. Any suggestions? > >>> > > >>> > Thank you! > >>> > > >>> > _______________________________________________ > >>> > Users mailing list > >>> > [email protected] > >>> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users > >>> > >> > > > > Hi, > > > > Thanks for the info, Razvan identified the issue - indeed, the > > rtpproxy_offer() forces the dialog creation, without actually of any > > need of it. He will push a fix on this within the next days. > > > > Best regards, > > > > Bogdan-Andrei Iancu > > > > OpenSIPS Founder and Developer > > https://www.opensips-solutions.com > > https://www.siphub.com > > > > On 17.12.2024 19:27, M S wrote: > >> So I did that, and it is very strange: > >> > >> if (is_method("INVITE") && !has_totag()) xlog("L_WARN", "$ci| > >> route|$Ts:$Tsm|DLG_status3 $DLG_status"); > >> if(!rtpproxy_offer("froc")) xlog("L_WARN", "$ci|route|$Ts: > >> $Tsm|rtpproxy_offer failed for: $mb\n"); > >> if (is_method("INVITE") && !has_totag()) xlog("L_WARN", "$ci| > >> route|$Ts:$Tsm|DLG_status4 $DLG_status"); > >> > >> [email protected]:5060|route| > >> 1734456172:140520|DLG_status3 <null> > >> [email protected]:5060|route| > >> 1734456172:140879|DLG_status4 1 > >> > >> But what does rtpproxy_offer has to do with dialog? > >> > >> On Tue, Dec 17, 2024 at 5:06 PM Bogdan-Andrei Iancu > >> <[email protected]> wrote: > >> > >> That means some other script function created the dialog in > >> advance. you can find which one by adding something like this on > >> top of your request route: > >> script_trace( 1, "$rm from $si, dlg is $DLG_status", "dbg"); > >> > >> And see where the print changes from NULL to 1 ;) > >> > >> Regards, > >> > >> Bogdan-Andrei Iancu > >> > >> OpenSIPS Founder and Developer > >> https://www.opensips-solutions.com > >> https://www.siphub.com > >> > >> On 17.12.2024 17:58, M S wrote: > >>> Thank you for your answer. I tried that and it shows DLG_status > >>> 1, which means the dialog is created but I definitely didn't > >>> create a dialog before that line. Also, the dialog is created > >>> further down with create_dialog("pPB") command because I see > >>> OPTIONS being sent to both caller and callee (pP working). > >>> Why would DLG_status print 1? I will try to print it at different > >>> lines of script to see where it changes... I have a t_newtran and > >>> some $acc_extra lines befores (other than some standard processing) > >>> > >>> On Tue, Dec 17, 2024 at 4:39 PM Bogdan-Andrei Iancu > >>> <[email protected]> wrote: > >>> > >>> Hi, > >>> > >>> Yes, the dlg_val assignment fails if there is no current > >>> dialog. Maybe > >>> the dialog is created (internally) by some other script > >>> function you are > >>> using. Try prinitng the $DLG_status before the assignment, > >>> just to see > >>> if there is a dialog or not > >>> > >>> Regards, > >>> > >>> Bogdan-Andrei Iancu > >>> > >>> OpenSIPS Founder and Developer > >>> https://www.opensips-solutions.com > >>> https://www.siphub.com > >>> > >>> On 17.12.2024 14:08, M S wrote: > >>> > Hi list, > >>> > I have a script like this: > >>> > > >>> > ..... some processing > >>> > if (is_method("INVITE") && !has_totag()) { > >>> > $dlg_val(x)="y"; > >>> > } > >>> > .... some processing > >>> > if (is_method("INVITE") && !has_totag()) { > >>> > create_dialog("pPB") > >>> > } > >>> > > >>> > My first question is, why does this work?! documents say > >>> $dlg_val > >>> > cannot be used before dialog is created, and create_dialog > >>> is called > >>> > after dlg_val here. > >>> > I have verified that indeed dialog is created using > >>> create_dialog, and > >>> > indeed $dlg_val(x) stores the value (it is available later > >>> in the dialog). > >>> > > >>> > Second question, once or two times a day (after thousands > >>> of calls) I > >>> > see a do_assign setting PV failed error message on the > >>> $dlg_val(x)="y" > >>> > line. Since this shouldn't have worked to begin with, I > >>> don't know how > >>> > to debug this. Any suggestions? > >>> > > >>> > Thank you! > >>> > > >>> > _______________________________________________ > >>> > Users mailing list > >>> > [email protected] > >>> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users > >>> > >> > > > >
_______________________________________________ Users mailing list [email protected] http://lists.opensips.org/cgi-bin/mailman/listinfo/users
