[SR-Users] Question about setbflag and isbflagset usage

Володимир Іванець volodyaivanets at gmail.com
Tue May 28 18:43:20 CEST 2019


Hello Alex,

Thank you for the clarification. Now I understand this behavior.

пт, 24 трав. 2019 о 22:07 Alex Balashov <abalashov at evaristesys.com> пише:

> Branches are a creature of transactions. It follows that “branch flags”
> are transaction-persistent flags at the branch level, rather than scoped to
> the transaction as a whole.
>
> ACKs constitute a separate transaction.
>
>> Sent from mobile, with due apologies for brevity and errors.
>
> On May 24, 2019, at 2:45 PM, Sergiu Pojoga <pojogas at gmail.com> wrote:
>
> Then.. I don't know, lol
>
> But the fact that ACKs belong or not to even different transactions
> (depending on whether positive or negative reply) must be playing a role
> here.
>
> Good luck.
>
> On Fri, May 24, 2019, 12:11 PM Володимир Іванець, <
> volodyaivanets at gmail.com> wrote:
>
>> Hello Sergiu,
>>
>> We allow multiple contacts to register on single account. They can have
>> different properties.  On step 1 I'm looking for something specific which
>> can be different for different contacts. If I understood correctly
>> *setbflag* and *isbflagset* can set and check flags for different
>> branches independently.
>>
>> Thank you!
>>
>> пт, 24 трав. 2019 о 18:14 Sergiu Pojoga <pojogas at gmail.com> пише:
>>
>>> I might be wrong, but isn't ACK part of a transaction? If so, you'd need
>>> to use *setflag*/*isflagset*
>>>
>>> Cheers.
>>>
>>> On Fri, May 24, 2019 at 10:03 AM Володимир Іванець <
>>> volodyaivanets at gmail.com> wrote:
>>>
>>>> Hello everyone!
>>>>
>>>> I'm not sure if I correctly understood the description of functions
>>>> *isbflagset* and *isbflagset* so once again I'm asking for help :)
>>>>
>>>> Here is what I do:
>>>> 1. Asterisk sends INVITE to Kamailio. Kamailio performs lookup of
>>>> available contacts and then few checks in branch_route. I'm adding *setbflag("17",
>>>> $T_branch_idx);* there.
>>>> 2. Later in route[NATMANAGE] I added *if (isbflagset("17",
>>>> $T_branch_idx)) {* and additional logic. *isbflagset* results in *true*
>>>> (for same INVITE).
>>>> 3. Finally one of UACs responds with 200 OK. Asterisk generates ACK
>>>> packet that gets in route[NATMANAGE]. *isbflagset* results in *false*.
>>>>
>>>> So my question is: shouldn't *isbflagset* be *true* for ACK too since
>>>> it's the same branch or I interpreted these fenctions incorrectly?
>>>>
>>>> Thanks a lot!
>>>> _______________________________________________
>>>> Kamailio (SER) - Users Mailing List
>>>> sr-users at lists.kamailio.org
>>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>>
>>> _______________________________________________
>>> Kamailio (SER) - Users Mailing List
>>> sr-users at lists.kamailio.org
>>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>>
>> _______________________________________________
>> Kamailio (SER) - Users Mailing List
>> sr-users at lists.kamailio.org
>> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>>
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users at lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
> _______________________________________________
> Kamailio (SER) - Users Mailing List
> sr-users at lists.kamailio.org
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.kamailio.org/pipermail/sr-users/attachments/20190528/0a012d6c/attachment.html>


More information about the sr-users mailing list