[OpenSIPS-Users] Restrict Simultaneous-Use
Brett Nemeroff
brett at nemeroff.com
Fri Mar 6 23:12:04 CET 2009
It was in regards to me loose routing problems I had.. but in my call
traces, I simply wasn't getting a BYE back from the carrier.
Since I've gotten that resolved, my dialog count is nice and clean. nothing
left open for the dialog expiration timeout. Have you looked at the output
of:
opensipsctl fifo dlg_list ?
On Fri, Mar 6, 2009 at 10:21 AM, Robert Borz <robert.borz at web.de> wrote:
> I'm sure not setting the profile twice. I wrapped the part by setting a
> flag and now I additionally used the is_in_profile() method to preventing
> setting the profile twice.
>
> Hmm, I've really no idea at the moment.
>
> Can you give me the subject of the thread you're meaning? Which mailing
> list?
>
> Thank you.
>
>
> Robert.
>
> ________________________________________
> From: brett at nemeroff.com [mailto:brett at nemeroff.com]
> Sent: Friday, March 06, 2009 4:10 PM
> To: robert.borz at web.de
> Cc: bogdan at voice-system.ro; users at lists.opensips.org
> Subject: Re: [OpenSIPS-Users] Restrict Simultaneous-Use
>
> Is it possible that you are setting the profile more than once ever? if you
> are, that could be the problem. I don't think anything prevents that from
> happening, and if you added it twice, the destruction of the dialog would
> only reduce the count by one, instead of two. I may be wrong here.. The
> times I've had dialogs left open that couldn't get cleared, I had
> record-routing problems (see list history!) or I was doing something silly
> with setting the profiles
>
> BTW, I do this now. I'm not sure if it's even necessary. I'm using 1.4, so
> I don't have a create_dialog() function..
> if (!is_in_profile("SRC","$si")) {
> set_dlg_profile("SRC","$si");
> }
>
> Now, if I could pull avps from memory. that'd be sweet. :) I'm going to
> upgrade when 1.5 is released and then we'll start with the memcache fun. :)
> -BRett
>
>
>
> On Fri, Mar 6, 2009 at 9:04 AM, Robert Borz <robert.borz at web.de> wrote:
> Hi Brett,
>
> thanks for the hints, but doesn't work for me.
> The did information in the record route header and the BYEs are there.
> I also tried the other two match modes, with no success. :-(
>
> Any idea?
>
>
> Regards,
> Robert
>
> ________________________________________
> From: brett at nemeroff.com [mailto:brett at nemeroff.com]
> Sent: Friday, March 06, 2009 3:32 PM
> To: robert.borz at web.de
> Cc: bogdan at voice-system.ro; users at lists.opensips.org
> Subject: Re: [OpenSIPS-Users] Restrict Simultaneous-Use
>
> Check to be sure you really get the BYE at the end of the call.
>
> Also take a look at the bye and see if the 'did=' is in there, if it's not
> (ie: if the other end UAC removes it, which it really shouldn't) then you
> may need to change your dialog match mode. See the dialog module docs for
> that.
>
> -Brett
>
> On Fri, Mar 6, 2009 at 7:25 AM, Robert Borz <robert.borz at web.de> wrote:
> Hi Bogdan,
>
> now I'm currently using the svn head of opensips version 1.5.
>
> I succeeded in pushing the channel value from the radius server into
> opensips by an SIP-AVP in the auth-reply. :-)
>
> But I've got problems with the dialog profiling. Maybe I'm missing
> something here. At the moment I've got the following configuration for the
> dialog module:
>
>
> ----------------------------------------------------------------------------
> loadmodule "dialog.so"
> modparam("dialog", "dlg_flag", 4)
> modparam("dialog", "profiles_with_value", "caller")
>
> ----------------------------------------------------------------------------
>
>
> Following the link you told me I do the following in my invite-route after
> radius_proxy_authorize():
>
>
> ----------------------------------------------------------------------------
> if (create_dialog() && set_dlg_profile("caller", "$fu")) {
> xlog("L_INFO", "created dialog/added profile");
> }
> xlog("L_INFO", "SIP-AVP ===> $avp(s:channels)");
>
> if (is_avp_set("$avp(s:channels)/n") && avp_check("$avp(s:channels)",
> "gt/i:0")) {
> get_profile_size("caller", "$fu", "$avp(s:active_channels)");
> xlog("L_INFO", "===> User has $avp(s:active_channels) active
> channels!");
> }
> setflag(4);
>
> ----------------------------------------------------------------------------
>
> The log statements prints "===> User has 1 active channels!" when the first
> invite comes in. But the number doesn't decrease when the dialog gets
> finished. With the next invite (doesn't matter if the previous dialog is
> alive), it prints " ===> User has 2 active channels!" and so forth.
>
> Any idea what's wrong here?
>
>
> Regards,
> Robert
>
>
> -----Original Message-----
> From: bogdan at voice-system.ro [mailto:bogdan at voice-system.ro]
> Sent: Thursday, March 05, 2009 5:55 PM
> To: robert.borz at web.de
> Cc: users at lists.opensips.org
> Subject: Re: [OpenSIPS-Users] Restrict Simultaneous-Use
>
> Robert,
>
> if you do auth via RADIUS, you can push some AVPs in the reply:
>
> http://www.opensips.org/html/docs/modules/1.4.x/auth_radius.html#id227162
>
> The 1.5.0 is plan to be release in 2 weeks from now, if no major bugs
> are discovered :)
>
> Regards,
> Bogdan
>
> Robert Borz wrote:
> > Hi Bogdan,
> >
> > thank you for this hint. I'll check it out.
> >
> > Yes, I also do auth over radius. Currently I've still OpenSER v1.3.2
> installed on debian/lenny and it is working fine.
> >
> > Currently I'm thinking of updating to the latest OpenSIPS release. What's
> the current schedule for the first stable 1.5 release?
> >
> >
> > Regards,
> > Bogdan
> >
> >
> > -----Original Message-----
> > From: users-bounces at lists.opensips.org [mailto:
> users-bounces at lists.opensips.org] On Behalf Of Bogdan-Andrei Iancu
> > Sent: Thursday, March 05, 2009 4:57 PM
> > To: robert.borz at web.de
> > Cc: users at lists.opensips.org
> > Subject: Re: [OpenSIPS-Users] Restrict Simultaneous-Use
> >
> > Hi Robert,
> >
> > Well, you can use the avp_radius module to load from a RADIUS server the
> > number of maximum allowed calls:
> > http://www.opensips.org/html/docs/modules/devel/avp_radius.html
> >
> > This is the most generic way to do it.
> >
> > Do you do auth via RADIUS also ?
> >
> > Regards,
> > Bogdan
> >
> > Robert Borz wrote:
> >
> >> Hi Bogdan,
> >>
> >> thanks a lot. Looks really pretty with the example you showed.
> >>
> >> My problem is that, depending on the amount of concurrent calls a user
> can do, the user belongs to a different group in radius. Imagine a user
> belonging to the group 'pots' has a simultaneous call limit of 1, a user
> belonging to the group 'isdn' has a limit of 2 concurrent calls...
> >>
> >> All rate information/customer attributes is/are stored in the radius and
> we want to keep it like this. So I think I've to get the information about
> how many calls the user can do out of the radius into SER to use the
> example. Any idea how to do that?
> >>
> >>
> >> Regards,
> >> Robert
> >>
> >> -----Original Message-----
> >> From: bogdan at voice-system.ro [mailto:bogdan at voice-system.ro]
> >> Sent: Thursday, March 05, 2009 12:49 PM
> >> To: robert.borz at web.de
> >> Cc: users at lists.opensips.org
> >> Subject: Re: [OpenSIPS-Users] Restrict Simultaneous-Use
> >>
> >> Hi Robert,
> >>
> >> You do not need Radius for this. OpenSIPS can do this by itself. See a
> >> nice tutorial on this topic:
> >>
> http://www.opensips.org/index.php?n=Resources.DocsTutConcurrentCalls
> >>
> >> Regards,
> >> Bogdan
> >>
> >> Robert Borz wrote:
> >>
> >>
> >>> Hi,
> >>>
> >>> currently I'm using a FreeRADIUS server for authentication and billing
> purposes. Now I want to restrict the count of simultaneous calls a user can
> do. For this I implemented it with the "Simultaneous-Use" check in
> FreeRADIUS and it works fine, for outgoing calls initiated from my
> customers. Just trying to initiate a second call when one is still up, the
> request is rejected (Proxy authorization fails for the new call).
> >>>
> >>> But incoming calls from the PSTN come in over an Asterisk machine.
> There's no proxy authorization for invites from the Asterisk, just a
> from_gw() check. So how I can restrict the amount of simultaneous calls per
> user for incoming _and_ outgoing calls?
>
>
>
> >>>
> >>> Any hint would be really appreciated...
> >>>
> >>>
> >>> Regards,
> >>> Robert
> >>>
> >>>
> >>> _______________________________________________
> >>> 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/20090306/52212668/attachment.htm
More information about the Users
mailing list