[OpenSIPS-Users] dlg_val before create_dialog
Bogdan-Andrei Iancu
bogdan at opensips.org
Wed Jan 8 16:49:39 UTC 2025
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");
>
> 32ac0d41383090087a573dd766679bcc at 10.201.54.109:5060|route|1734456172:140520|DLG_status3
> <null>
> 32ac0d41383090087a573dd766679bcc at 10.201.54.109: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
> <bogdan at opensips.org> 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
>> <bogdan at opensips.org> 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
>> > Users at lists.opensips.org
>> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20250108/ed5b6f0b/attachment.html>
More information about the Users
mailing list