[Serusers] sip-communicator
Eduard San Anselmo Mateu
esananselmo at albasoft.com
Wed Mar 3 12:37:21 CET 2004
Thanks for your help, Klaus.
The thing is that sip-communicator indeed realises it is registered for a few
seconds, and the it thinks it's unregistered again, and that's what upsets me,
because it tries to re-register again.
What I was trying to know is if someone has experienced similar problems with
sip-communicator, or if it is only me who's doing something wrong. You know, SER
seems to be working fine: it gets a REGISTER request, and it responds with an OK
(but it shouldn't be getting a second one from the same source!!!).
Again, tahnks for your help (and patience).
Mensaje citado por Klaus Darilion <klaus.mailinglists at pernau.at>:
> The 200 OK to the REGISTER must have as many Contacts as currently
> registered at the proxy. So if you register and restart the client
> (without de-register), there will be 2 bindings (2 contacts) - the new
> one and the old. The old one will expires after some time as it will not
> be renewed.
>
> klaus
>
> Eduard San Anselmo Mateu wrote:
>
> > Hello everyone.
> >
> > I'm testing SER with some different clients, to see which one fits our
> needs
> > better. The last one we tried was sip-communicator (java softphone), but
> I'm
> > experiencing some problems with it. At first, everything seems to work
> well, but
> > after a few seconds, the client says it's unregistered (when that's not
> true).
> > Another issue is that when SER returns the 200 OK response to the REGISTER
> > request, it has three different Contact headers, with different port
> numbers.
> > The config file is this one:
> >
> > listen=192.168.0.15
> > alias=albasoft.com
> > alias=albasoft.com:5060
> > alias=192.168.0.15
> > #alias=192.168.20.15
> > #alias=192.168.20.15:*
> >
>
> >
> > #alias=192.168.20.15
> >
>
> >
> > # ------------------ module loading ----------------------------------
> >
>
> >
> > # Uncomment this if you want to use SQL database
> > loadmodule "/usr/lib/ser/modules/mysql.so"
> >
>
> >
> > loadmodule "/usr/lib/ser/modules/sl.so"
> > loadmodule "/usr/lib/ser/modules/tm.so"
> > loadmodule "/usr/lib/ser/modules/rr.so"
> > loadmodule "/usr/lib/ser/modules/maxfwd.so"
> > loadmodule "/usr/lib/ser/modules/usrloc.so"
> > loadmodule "/usr/lib/ser/modules/registrar.so"
> > loadmodule "/usr/lib/ser/modules/textops.so"
> > loadmodule "/usr/lib/ser/modules/nathelper.so"
> >
> > modparam("usrloc", "db_mode", 2)
> > modparam("rr", "enable_full_lr", 1)
> >
> > route{
> >
>
> >
> > # initial sanity checks -- messages with
> > # max_forwards==0, or excessively long requests
> > if (!mf_process_maxfwd_header("10")) {
> > sl_send_reply("483","Too Many Hops");
> > break;
> > };
> > if (msg:len >= max_len ) {
> > sl_send_reply("513", "Message too big");
> > break;
> > };
> >
>
> >
> > if (loose_route()) {
> > # mark routing logic in request
> > append_hf("P-hint: rr-enforced\r\n");
> > route(1);
> > break;
> > };
> >
>
> >
> > if (!uri==myself) {
> > # mark routing logic in request
> > append_hf("P-hint: outbound\r\n");
> > route(1);
> > break;
> > };
> >
>
> >
> > # if the request is for other domain use UsrLoc
> > # (in case, it does not work, use the following command
> > # with proper names and addresses in it)
> > if (uri==myself) {
> >
>
> >
> > if (method=="REGISTER") {
> >
>
> >
> > # Uncomment this if you want to use digest authentication
> > # if (!www_authorize("iptel.org", "subscriber")) {
> > # www_challenge("iptel.org", "0");
> > # break;
> > # };
> > force_rport();
> > save("location");
> > break;
> > };
> >
>
> >
> > lookup("aliases");
> > if (!uri==myself) {
> > append_hf("P-hint: outbound alias\r\n");
> > route(1);
> > break;
> > };
> >
>
> >
> > # native SIP destinations are handled using our USRLOC DB
> > if (!lookup("location")) {
> > sl_send_reply("404", "Not Found");
> > break;
> > };
> > if (method=="INVITE" && !uri=~"sip:.*@192\.168\.0\..*") {
> > log(1,"IEEE: la peticio va cap a fora\n");
> > #fix_nated_sdp("1");
> > #force_rtp_proxy();
> > #t_on_reply("1");
> > };
> > };
> > append_hf("P-hint: usrloc applied\r\n");
> > route(1);
> > }
> >
>
> >
> > route[1]
> > {
> > # send it out now; use stateful forwarding as it works reliably
> > # even for UDP2TCP
> > if (!t_relay()) {
> > sl_reply_error();
> > };
> > }
> >
> > onreply_route[1] {
> > if (status =~ "(183)|2[0-9][0-9]") {
> > if (!src_ip=~"192\.168\.0.\.*") {
> > log(1,"onreply_route si que funciona\n");
> > #force_rtp_proxy();
> > };
> > };
> > }
> >
>
> >
> > By the way, sip-communicator doesn't seem to be symmetric: the clients
> works on
> > a random port, and the server, on 5060 (configurable), and those different
> > Contact headres I've explained, are for 5060, and the three ports following
> the
> > one sip-communicator has made the request from (for example, 1066, 1067,
> 1068).
> >
> > Thanks in advance.
> >
> > Eduard San Anselmo
> >
> > _______________________________________________
> > Serusers mailing list
> > serusers at lists.iptel.org
> > http://lists.iptel.org/mailman/listinfo/serusers
> >
> >
>
Eduard San Anselmo
More information about the sr-users
mailing list