Yes, this is the same issue I'm going through, append_branch seems to work on the server side. Haven't had time to test on the client side though.
-----Original Message----- From: Evan Borgström [mailto:evan.borgstrom@ca.mci.com] Sent: Wednesday, April 06, 2005 3:20 PM To: kramarv@yahoo.com Cc: Greger V. Teigre; Matt Schulte; serusers@lists.iptel.org Subject: Re: [Serusers] still no help - usrloc synchronization
It's just the way that t_register works, if you call t_relay_to more than once the same error will occur... It's quite messy, you probably have to use append_branch like;
save("location");
rewritehostport("ser2.domain.com:5060"); append_branch(); rewritehostport("ser3.domain.com:5060"); append_branch(); t_replicate("ser4.domain.com:5060");
I haven't tested this but the logic should work since the t_replicate function just calls t_relay_to. Also, you'll probably want to use save_noreply() on the hosts processing the replicated register messages otherwise the host replicating the register will spew errors. Like I said, messy.
You could probably do it more elegantly using avpops similar to the trusted ip example in the docs.
-Evan
Tina wrote:
Yep, it didn't help
*/REGISTER++++fixing contact and port/* */Fix contact: Insert buf - sip:tuka@192.168.25.113:5060 6(1305) ERROR: t_newtran: transaction already in process 0x28361068 /* */"Greger V. Teigre" greger@teigre.com/* wrote:
The error means that t_newtran has been run while an existing transaction is still in the workings. Have you tried moving your save() to *before* the t_replicate()? g-) ---- Original Message ---- From: Tina To: Matt Schulte Cc: serusers@lists.iptel.org ; greger@teigre.com Sent: Tuesday, April 05, 2005 05:00 PM Subject: RE: [Serusers] still no help - usrloc synchronization > Thanks a lot, gentelmens! > > I have jumped to the same conclusion. The only thing I am worried - > t_replicate() creates aditional SIP traffic between sers. And I also > get some strange error with each REGISTER: > > 1(712) ERROR: t_newtran: transaction already in process 0x28336768 > > Don't have any idea what I am doing wrong.... > > Below is my ser.cfg snippet. > As far as you see I am using mediaproxy package to solve NAT issues. > I always force relay, cause I had nathelper problems with > UAC1->ser->NAT->UAC2 configuration. > I am going to test new mediaproxy release. > BRs, > Tina > > > < BR>> ============================ > > . . . > # ------------------------- request routing logic ------------------- > # main routing logic > route{ > #------------------------------------------------------- > if (!method=="REGISTER") record_route(); > #-------------------------------------------------------???????????????????? > # loose-route processing > if (loose_route()) { > route(8); #--go to mediaproxy processing > break; > }; > ... > if (method=="REGISTER") { > #------Replicate to the peers > > #---Ser 1 > if (!src_ip==192.168.25.103) > t_replicate("192.168.25.103","5060"); > #---Ser 2 > if (!src_ip==192.168.25.115) > t_replicate("192.168.25.115","5060"); > > save ("location"); > break; > }; > #-----------------------------------------------INVITE > if (method=="INVITE") { > log (1, "INVITE: Radius Accounting\n"); > t_on_failure("4"); #---voice mail > use_media_proxy(); > t_on_reply("5"); #--mediaproxy > }; > #--------------------------------------------------BYE > if (method=="BYE" || method=="CANCEL") { > log (1, "BYE or CANCEL: Radius Accounting\n"); > }; > #--------------------------------------------------- > if (!lookup("location") && !lookup("aliases")) { > sl_send_reply("404", "Not Found"); > break; > }; > if (!t_relay()) { > sl_reply_error(); > }; > } > > #------------------------------------------------------- > failure_route[4]{ > if (t_check_status("408|486")){ > append_hf("P-hint: Rewrited to VM"); > rewritehostport("192.168.25.116:5060"); > append_branch(); > t_relay(); > break; > }; > } > #--------------------------------------------------------- > onreply_route[5]{ > if (status =~ "(183)|2[0-9][0-9]" && !search("^Content-Length:\ > 0")) { > if ( (!(src_ip=="SERVER1")) > && (!(src_ip=="SERVER2")) > && (!(src_ip=="SERVER3")) ){ > if ( search("c=IN IP4 192.168.*")||search("c=IN IP4 > 10.*")||search("c=IN IP4 172.16.*") ) { > fix_contact(); > }; > }; > use_media_proxy(); > } > } > > =================================================== > > Matt Schulte <mschulte@netlogic.net> wrote: > I'm starting to lean this direction, using t_replicate and all. I > could > never get usrloc (db mode) to function properly.. t_replicate is a > dirty > but very effective workaround. > > -----Original Message----- > From: Greger V. Teigre [mailto:greger@teigre.com] > Sent: Saturday, April 02, 2005 1:33 AM > To: kramarv@yahoo.com > Cc: serusers@lists.iptel.org > Subject: Re: [Serusers] still no help - usrloc synchronization > > > Have a look at this thread: > http://lists.iptel.org/pipermail/serusers/2005-January/014669.html > g-) > > Java Rockx wrote: >> Tina, >& gt; >> I thought I saw you post the other day that you did not want to use >> t_replicate(), however, this is probably your best bet to getting >> this > >> to work, IMHO. >> >> Regards, >> Paul >> >> On Apr 1, 2005 4:08 PM, Tina wrote:>> >>> Hi, please help me, I'm stuck with it!!!!! >>> I am trying to set up several sers with a shared MySQL database for >>> location service. >>> >>> I set in each ser.cfg: >>> >>> modparam("usrloc", "db_mode", 2) >>> modparam("usrloc", >>> "db_url","sql://ser:heslo@192.168.25.163/ser") >>> >>> and the servers are not synchronized. >>> The I set >>> modparam("usrloc", "db_mode", 2) >>> >>> >>> made UAC (Xlite) register to one of the servers. >>> ; I see it via usrloc, but there is no record in "location" mySQL >>> table....So others do not see the client and I'm unable to make >>> calls.... >>> >>> >>> Please help how to work with usrloc and mySQL... >>> >>> Tina, >>> software engineer >>> >>> ________________________________ >>> Do you Yahoo!? >>> Better first dates. More second dates. Yahoo! Personals >>> >>> >>> _______________________________________________ >>> Serusers mailing list >>> serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers >>> >>> >>> >> >> _______________________________________________ >> Serusers mailing list >> serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers > > _______________________________________________ > Serusers mailing list > serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers > > > > Do you Yahoo!? > Yahoo! Mail - Find what you need with new enhanced search. Learn more.
Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
--
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers