[OpenSIPS-Users] How to limit number of AOR for user

Anton lav at ptcomm.ru
Mon Nov 17 22:48:00 CET 2014


yes, really, if you use the save() function with a single parameter 
("location") and the max_contacts parameter, registration is only one AOR!
But if you try to use save("location","c($avp(maxaor))") restrictions on 
the AOR is canceled (and used a string of the form: 
"$avp(loadedip)=domain;$avp(subscriber_username)=username;$avp(maxaor)=maxaor")
This save function bug?
But I need some users to allocate more than 1 Number of AOR...

17.11.2014 15:27, Ra(zvan Crainea ?????:
> Hi, Anton!
>
> Have you tried using the save() function with a single parameter 
> ("location") and the max_contacts parameter, and you still have two 
> contacts for your AOR?
>
> Best regards,
> Ra(zvan Crainea
> OpenSIPS Solutions
> www.opensips-solutions.com
> On 11/15/2014 10:35 PM, Anton wrote:
>> Please tell me that is part of the AOR?
>> Why, in my case in the list of permitted two AOR instead of one?
>> Does "max_contacts" come if registration requests with the same 
>> username and password, but different in other parameters (From, To 
>> Contact...)?
>>
>> 14.11.2014 23:18, Anton ?????:
>>> In any case, here there is a parameter modparam ("registrar", 
>>> "max_contacts", 1)
>>> so as not not be 2 AOR....
>>> I think that the second AOR here - it's UACbehind NAT...
>>> How to disable registration in this case?
>>>
>>> 14.11.2014 18:30, Ra(zvan Crainea ?????:
>>>> I think there is a bug and I opened an issue on github related to 
>>>> that[1]. If you could confirm it works when explicitely specifying 
>>>> the AVP that would be great.
>>>>
>>>> [1] https://github.com/OpenSIPS/opensips/issues/385
>>>>
>>>> Best regards,
>>>> Ra(zvan Crainea
>>>> OpenSIPS Solutions
>>>> www.opensips-solutions.com
>>>> On 11/14/2014 03:14 PM, Anton wrote:
>>>>> Why so? Quote from: 
>>>>> http://www.opensips.org/html/docs/modules/1.11.x/auth_db.html#id293578
>>>>>
>>>>> *Example 1.8. |load_credentials| parameter usage*
>>>>>
>>>>> # load rpid column into $avp(13) and email_address column
>>>>> # into $avp(email_address)
>>>>> modparam("auth_db", "load_credentials", "$avp(13)=rpid;email_address")
>>>>>
>>>>>
>>>>> But  as I have:
>>>>> modparam("auth_db", "load_credentials", "$avp(loadedip)=domain;$avp(subscriber_username)=username;maxaor")
>>>>> .....
>>>>>
>>>>> Nelly  is not  correct?
>>>>>
>>>>> 14.11.2014 15:20, Ra(zvan Crainea ?????:
>>>>>> Can you print $avp(maxaor) just before the save() function? I am 
>>>>>> pretty sure it is not populated. And the reason is that you are 
>>>>>> not specifying an AVP to store it. The load_credentials parameter 
>>>>>> should be
>>>>>> "$avp(loadedip)=domain;$avp(subscriber_username)=username;$avp(maxaor)=maxaor"
>>>>>> Ra(zvan Crainea
>>>>>> OpenSIPS Solutions
>>>>>> www.opensips-solutions.com
>>>>>> On 11/14/2014 09:41 AM, ?????? ????? ?????????? wrote:
>>>>>>> Hi!
>>>>>>>
>>>>>>> There is a need to limit the maximum number of AOR for the user.
>>>>>>> To do so:
>>>>>>>
>>>>>>> modparam("registrar", "max_contacts", 1)
>>>>>>> modparam("auth_db", "load_credentials", 
>>>>>>> "$avp(loadedip)=domain;$avp(subscriber_username)=username;maxaor")
>>>>>>>
>>>>>>> [user at opensips]# opensipsctl db show subscriber
>>>>>>> id      username        domain  password email_address   ha1     
>>>>>>> ha1b    rpid    maxaor  quota
>>>>>>> 1    202020  77.66.55.44  123456 
>>>>>>> f665ec129cd4556aeed95f3b204ff002 
>>>>>>> 888f4df11367b3f2859c4993a4ad7dd3        NULL 1 1
>>>>>>>
>>>>>>> Where: maxaor - maximum number of AOR (max limit).
>>>>>>>
>>>>>>> Next in the config:
>>>>>>>
>>>>>>> if (is_method("REGISTER"))
>>>>>>>     {
>>>>>>>         if(client_nat_test("8"))
>>>>>>>         {
>>>>>>>             sl_send_reply("403", "Not working NAT");
>>>>>>>             www_challenge("", "0");
>>>>>>>             exit;
>>>>>>>         }
>>>>>>>         # authenticate the REGISTER requests (uncomment to 
>>>>>>> enable auth)
>>>>>>>         if (!www_authorize("", "subscriber"))
>>>>>>>         {
>>>>>>>             www_challenge("", "0");
>>>>>>>             exit;
>>>>>>>         }
>>>>>>>         if ($si!=$avp(loadedip))
>>>>>>>         {
>>>>>>>             www_challenge("", "0");
>>>>>>>             exit;
>>>>>>>         }
>>>>>>> save("location","c($avp(maxaor))");
>>>>>>>         if (!db_check_to())
>>>>>>>         {
>>>>>>>             sl_send_reply("403","Forbidden auth ID");
>>>>>>>             exit;
>>>>>>>         }
>>>>>>>
>>>>>>>         if (!save("location"))
>>>>>>>             sl_reply_error();
>>>>>>>         exit;
>>>>>>>     }
>>>>>>>
>>>>>>> But in the presence of 2 AOR record:
>>>>>>>
>>>>>>> [user at opensips]# opensipsctl ul show 202020
>>>>>>> Contact:: 
>>>>>>> <sip:202020 at 77.66.55.44;uniq=6041F87C7634A40A246E833DDA15E>;q=;expires=1471;flags=0x0;cflags=0x0;socket=<udp:85.85.85.85:5060>;callid=<A8502C3B45165582 at 192.168.178.1>;methods=0x3F7F;user_agent=<AVM 
>>>>>>> FRITZ!Box Fon WLAN 7140 Annex A 39.04.77 (Feb 14 2014)>
>>>>>>> Contact:: 
>>>>>>> <sip:202020 at 77.66.55.44:5075>;q=;expires=450;flags=0x0;cflags=0x0;socket=<udp:85.85.85.85:5060>;callid=<5E7D-E2CA-46940374551E59A3ADE4-649 at SipHost>;methods=0xFFFFFFFF;user_agent=<204 
>>>>>>> 12-37-1612531>
>>>>>>>
>>>>>>> Why? What did I do wrong?
>>>>>>>
>>>>>>> Added a check here:
>>>>>>>     if ($ct.fields(uri)=~'uniq')
>>>>>>>     {
>>>>>>>         sl_send_reply("403", "Wrong contact params");
>>>>>>>         www_challenge("", "0");
>>>>>>>         exit;
>>>>>>>     }
>>>>>>> But it seems to me that this is not quite right.....
>>>>>>> Please help!
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Users mailing list
>>>>>>> Users at lists.opensips.org
>>>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>>>
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> Users mailing list
>>>>>> Users at lists.opensips.org
>>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Users mailing list
>>>>> Users at lists.opensips.org
>>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> Users mailing list
>>>> Users at lists.opensips.org
>>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>>
>>>
>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at lists.opensips.org
>>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>>
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
>
>
> _______________________________________________
> 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/20141118/6ff5cbaf/attachment-0001.htm>


More information about the Users mailing list