Is it possible to specify multiple authentication credentials within the UAC
module? What I want to do is access multiple PSTN gateways that each require
different credentials. The basic purpose of this is to allow least cost
routing.
Example
Provider 1 offers cheap calling to +44 (UK)
Provider 2 offers cheap calling to +1 (US)
When user dials a 44 destination ser should relay to Provider 1 gateway,
which will require authentication using Credential 1.
When user dials a 1 destination ser should relay to Provider 2 gateway,
which will require authentication using Credential 2.
Any advice would be greatfully received.
Regards
Cameron
I am struggling to understand the syntax of sipsak. I want to use it to
register against a proxy. I enter the command:
sipsak -U -C sip:1234@192.168.0.5 -a password -s sip:1234@192.168.0.5
I get the message error: REGISTER Contact uri doesn't not contain sip:, *,
or is not empty"
If I enter the command
sipsak -U -s sip:1234@192.168.0.5 -a password
then the register message gets sent but with a contact of sip:1234@127.0.0.1
Could anyone help me with the correct syntax to use?
Regards
Cameron
Hi all.
This list had a long discussion for the last two months about how to use
SER with prepaid applications, since it does not participate into the
media path. I´ll try to put things together in a easy way - at least for
me... - for trying to solve some doubts about how this feature can work
with SIP without creating new problems. And, of course, I´m assuming
that we WILL NOT use b2bua, but try to make this work in a proxied
environment.
As mentioned before, one way to do so, is using the session timer
(RFC-4028) definitions.
The main reason those definitions were created, is for using when a BYE
message don´t reach one of the UAs involved into a SIP dialog, that
without those definitions would be virtualy connected "forever" since it
did not receive any SIP signaling to disconect. With session timer
working, even if a BYE message never reaches the other point, the
maximun time that the "not-reached" UA would stay connected is the time
setted into the session-timer parameter.
Ok. But let´s use it to work with the prepaid environment. We implement
a logic into our sip proxy (SER), that record-route all signaling
messages between all UAs of our SIP network. Then we put our proxy to
analize all re-invite messages that goes into our SIP dialogs and, if
the customer credit (in seconds) is below that the time into the
session-timer parameter, it rewrites the "seconds-credit" into the
message session-timer position, decrements the last session time into
the customer seconds credits table, and counts on the UAs to
disconecting the call, since it - the proxy - will drop/block the next
re-invite(s) to this especific dialog.
In this aproach, we need to check the first invite as well, because if
the customer credit is below that the value of the first/default
session-timer, the SIP message needs to be rewriten too.
Problems on this aproach:
- If a re-invite from the caling user - the one that will be billed
- never reachs the proxy, the UA will disconect the call sending a BYE,
and, if the BYE never reachs the proxy either, the seconds of the last
session won´t be billed, correct?
- Thinking about security issues into a environment that just one UA
support session-timers, It would be very easy for a malicious UA - the
one that supports session-timers - when it runs out of credit, to send
its last re-invite - the never answered one - withouting disconecting
the media path. In this case, the proxy will "think" that the call is
off, but it would be not true.
Does anyone work with a true proxied prepaid environment using session
timers?
There is any aproach, other than using RFC-4028 - session timers, for
doing this?
Any clue will be welcome.
Thanks in advance for the list.
Regards,
Ricardo Poppi
I don't think that session timers have the accuracy required for a billing system. If you take a look at the specification, minimum values are 90 seconds and recommended values are 30 minutes. If you reduce these values to bill every second a user is accessing the service, you could end up in interoperability problems. Moreover, any traversed proxy may use Min-SE header to increase the minimum value to few minutes, or hours, and then your user is gonna feel really happy having minutes for free...
I really think the only reliable way is to use a b2bua because it is the only entity aware of the media path and able of dropping the call "instantaneously". I don't even think a statefull proxy will work since it is not in the media path and it is not supposed to initiate BYEs...
I would suggest to choose between b2bua or flat fares. I think the latter suits more the IP world: almost everywhere you pay X per month for internet access, doesn't it apply better to VoIP?? interconnecting with PSTN is another topic and I think something like skype would suit better to IP than the classic X minutes->Y money.
Samuel.
Unclassified.
>>> Ricardo Poppi <rpoppi77(a)giro.com.br> 06/20/05 06:11PM >>>
Hi all.
This list had a long discussion for the last two months about how to use
SER with prepaid applications, since it does not participate into the
media path. I ll try to put things together in a easy way - at least for
me... - for trying to solve some doubts about how this feature can work
with SIP without creating new problems. And, of course, I m assuming
that we WILL NOT use b2bua, but try to make this work in a proxied
environment.
As mentioned before, one way to do so, is using the session timer
(RFC-4028) definitions.
The main reason those definitions were created, is for using when a BYE
message don t reach one of the UAs involved into a SIP dialog, that
without those definitions would be virtualy connected "forever" since it
did not receive any SIP signaling to disconect. With session timer
working, even if a BYE message never reaches the other point, the
maximun time that the "not-reached" UA would stay connected is the time
setted into the session-timer parameter.
Ok. But let s use it to work with the prepaid environment. We implement
a logic into our sip proxy (SER), that record-route all signaling
messages between all UAs of our SIP network. Then we put our proxy to
analize all re-invite messages that goes into our SIP dialogs and, if
the customer credit (in seconds) is below that the time into the
session-timer parameter, it rewrites the "seconds-credit" into the
message session-timer position, decrements the last session time into
the customer seconds credits table, and counts on the UAs to
disconecting the call, since it - the proxy - will drop/block the next
re-invite(s) to this especific dialog.
In this aproach, we need to check the first invite as well, because if
the customer credit is below that the value of the first/default
session-timer, the SIP message needs to be rewriten too.
Problems on this aproach:
- If a re-invite from the caling user - the one that will be billed
- never reachs the proxy, the UA will disconect the call sending a BYE,
and, if the BYE never reachs the proxy either, the seconds of the last
session won t be billed, correct?
- Thinking about security issues into a environment that just one UA
support session-timers, It would be very easy for a malicious UA - the
one that supports session-timers - when it runs out of credit, to send
its last re-invite - the never answered one - withouting disconecting
the media path. In this case, the proxy will "think" that the call is
off, but it would be not true.
Does anyone work with a true proxied prepaid environment using session
timers?
There is any aproach, other than using RFC-4028 - session timers, for
doing this?
Any clue will be welcome.
Thanks in advance for the list.
Regards,
Ricardo Poppi
_______________________________________________
Serusers mailing list
serusers(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers
I am not an advocate for either ser or openser, but I would like to
comment.
Is openser going to be equipped with a forum/ticket system where people
can document bugs, feature requests, etc (non-configuration issues)?
This is just my observation and you may not agree, but I believe this
project could be much better maintained if it used a more structured
ticketing style system to manage development issues instead of the
current mailing lists. In my experience, mailing lists like this foster
a terrible user experience where many development issues can go on
without response.
Ideally, if there was a mailing list to address user issues and
ticketing system like the one Digium uses to manage Asterisk, I think
everyone would benefit by being better informed and ser would ultimately
be a better product for it. How many people out there feel that their
issues have fallen through the cracks in the past couple years?
-----Original Message-----
From: Daniel-Constantin Mierla [mailto:daniel@voice-system.ro]
Sent: Wednesday, June 15, 2005 4:28 AM
To: Andrei Pelinescu-Onciul
Cc: SER developer mailing list; serusers; users(a)openser.org;
devel(a)openser.org
Subject: Re: [Serusers] OpenSER release
On 06/14/05 23:21, Andrei Pelinescu-Onciul wrote:
>On Jun 14, 2005 at 22:48, Daniel-Constantin Mierla
<daniel(a)voice-system.ro> wrote:
>
>[...]
>
>
>>It is your opinion, but I repeat myself, that the SER code maintained
by
>>us will go further -- I don't think that someone can claim that we
>>didn't do the job for our code (the only discrepancy is some
last-minute
>>adds in xlog (to print avps) - will be committed on unstable very soon
>>with the new color patch). The cvs was created just to ease the
>>maintainance. The patches would be a nightmare.
>>
>>
>
>Maybe I've misunderstood you: is this only a parallel "stabilized"
>version + some features or is it a full fork (do you intend to fork
>unstable also)?
>
>
It is fork for the code that we changed (acc module, usrloc module ...),
in the future may be other that they do not find the path in SER. We
will maintain and upgrade our part of code from SER continuously.
>I have no problem with another stable version, what worries me is
>fragmenting the development for unstable (which is the place where
major
>changes are made).
>
>
I see no fragmenting there -- the situation is the same for SER as it
was before. For example, there is no fragment for acc module, it will be
maintained by who did it till now, adding what he considers necessary
there. But we came to meet a lot of requests of why the acc patch is not
included in the CVS (it was fully backward compatible and had new
features requested by many SER users) and we want to promote _more open_
approach to contributions to all parts of code. The acc patch was sent
on November 1, 2004. No real response (neither negative, nor positive)
from maintainer to the submission since then ... are you aware of a good
reason?!?! ... should we wait just about (or more) half an year for each
contribution?!? I will not do that anymore!!!
Daniel
>
>Andrei
>
>
>
_______________________________________________
Serusers mailing list
Serusers(a)iptel.org
http://mail.iptel.org/mailman/listinfo/serusers
Multiple aliases will fork the call in parallel.
-----Original Message-----
From: Jesus Rodriguez [mailto:jesusr@voztele.com]
Sent: Monday, June 20, 2005 10:05 AM
To: Nerea Munguira
Cc: serusers(a)lists.iptel.org
Subject: Re: [Serusers] double INVITE in a single call
On Mon, 20 Jun 2005, Nerea Munguira wrote:
Hola Nerea,
> I have several calls that have two branches, one in one way and
another in
> the other way, I mean, for the same call ID, user 1 calls user 2, and
also,
> user 2 calls user 1.
>
> I wonder if this is normal, or if I have a something wrong. This only
occur
> sometimes, so it isn?t a routing problem.
>
> I have this problem in different scenarios, so it has to do with ser
> configuration, not with the user routing scheme. Also, I have this
problem
> with calls between sip users or calls between sip user and PSTN.
>
> For the same call, I?ve got two logs:
>
> User 1 -> User 2 INVITE fromtag: id1 totag: id2 CALLID1
> User 2 -> User 1 INVITE fromtag: id2 totag: id1 CALLID1
>
> Where id1 and id2 are the same identifier.
What you see is possibly a re-INVITE because a codec or other SDP
parameter negotiation.
Saludos
JesusR.
-------------------------------
Jesus Rodriguez
VozTelecom Sistemas, S.L.
jesusr(a)voztele.com
http://www.voztele.com
Tel. 902360305
-------------------------------
_______________________________________________
Serusers mailing list
serusers(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers
Hello ,
I've heard that nathepler could provide MOH with
rttproxy.
I should try to use annoucement module.
I want a dedicated directory to put .wav files
My problem would be to write a boucle "while
<condition>
do <action> .
In other words play file(1), file(2), ... file(3),
file(1) ...
I need help to start this boucle !
Is it a good idea ?
Regards
Harry
___________________________________________________________________________
Appel audio GRATUIT partout dans le monde avec le nouveau Yahoo! Messenger
Téléchargez cette version sur http://fr.messenger.yahoo.com
In fact there's the print module which is there just to give an example of a starting point for a new module......or is there anyone using print?? ;)
Samuel.
Unclassified.
>>> Andreas Granig <andreas.granig(a)inode.info> 06/20/05 03:17PM >>>
Steve Blair wrote:
> I'd like to write a new module for SER. I see a number of other people
> have asked this question but I don't see a how-to guide mentioned in
> any of their messages. Does such a guide exist? If so can someone
> provide a pointer to it?
IMHO the "group" module is a good starting point because of it's simplicity..
Andy
_______________________________________________
Serusers mailing list
serusers(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers
I think that the UA should send the re-registration message before. I would try to push UAs developers to upgrade the firmware instead of adding more stuff to SER just to correct end points which are not compliant.
Said that, since we are not in a perfect world, you might try something like (just until the ATA firmware is corrected, of course ;) ):
save_noreply();
//modify Expires in reply
sl_send_reply;
I don't know exactly how to modify the Expires.....maybe something like subst textopts. Or remove the header and add a header to the reply (there was a function to do that but I don't remember the exact syntax or how it exactly works).
I can not help you more than that....and I don't know for sure if it would work, just give it a try.
Samuel
Unclassified.
>>> Java Rockx <javarockx(a)gmail.com> 06/20/05 02:21PM >>>
Greger,
That would be possible, but the way SER generates the 200OK reply, it would
contain the altered "expires=" value. By doing so, the ATA would take that
new value and use it, so if the ATA sent the REGISTER with an expires=300
and SER replied with a 200OK and a contact header containing expires=360,
the ATA would not send another REGISTER for 360 seconds.
I was fooling around with sip_msg.c and reply.c were I padded the expires
with 60 seconds before saving to usrloc and then removing the pad before
sending the reply and it works, but I would just feel better by not altering
the source code.
I guess I'd just feel more comfortable if SER had some sort of AVP or
modparam for the registrar module that did this automagically.
Regards,
Paul
On 6/20/05, Greger V. Teigre <greger(a)teigre.com> wrote:
>
> It was supposed to be short, but maybe too short. I meant doing the subst
> on the REGISTER message before save.
> g-)
> ---- Original Message ----
> From: Greger V. Teigre
> To: Java Rockx ; serusers
> Sent: Monday, June 20, 2005 09:01 AM
> Subject: Re: [Serusers] Is there an AVP to alter "expires=" in
> REGISTERmessages?
>
> > Hi Paul,
> > Would it be possible to "do it upside down" ? ;-) I.e. do a
> > subst("/^Expires:(.*)[0-9]$/ Expires: yourvalue+60/gi");
> > g-)
> >
> > ---- Original Message ----
> > From: Java Rockx
> > To: serusers
> > Sent: Sunday, June 19, 2005 04:28 PM
> > Subject: [Serusers] Is there an AVP to alter "expires=" in REGISTER
> > messages?
> >
> >> Hi All.
> >>
> >> We've got some ATAs that don't quite re-REGISTER in a timely fashion
> >> and therefore SER expires the usrloc record a few seconds before the
> >> ATA sends another REGISTER message.
> >>
> >> Is there an AVP or something to add, for example, 60 seconds to the
> >> "expires=" value in the REGISTER message prior to calling save()? By
> >> doing so, these "broken" ATAs would re-REGISTER before SER removes
> >> the usrloc record from cache.
> >>
> >> Regards,
> >> Paul
> >>
> >>
> >>
> >>
> >> _______________________________________________
> >> Serusers mailing list
> >> serusers(a)lists.iptel.org
> >> http://lists.iptel.org/mailman/listinfo/serusers
> >
> >
> >
> > _______________________________________________
> > Serusers mailing list
> > serusers(a)lists.iptel.org
> > http://lists.iptel.org/mailman/listinfo/serusers
>