<DIV>Unfortunately this does not work. It sends the message to the ser2 2 times and won't send to ser4....(see below)</DIV>
<DIV> </DIV>
<DIV> if (isflagset(...)) {<BR> rewritehostport("192.168.25.139:5060");<BR> append_branch();<BR> t_replicate("192.168.25.115","5060");<BR> log(1, "replicated to 139 n 115===\n"); <BR> };</DIV>
<DIV>===========192.168.25.113:5060 -> 192.168.25.103:5060<BR> REGISTER sip:192.168.25.103 SIP/2.0..Via: SIP/2.0/UDP 192.168.25.113:5060;rport;b<BR> ranch=z9hG4bK0D463F2A700A45A6BB50ADC7E5DFAE71..From: matuka <sip:tuka@192.168.25.<BR> 103>;tag=1369320418..To: matuka <sip:tuka@192.168.25.103>..Contact: "matuka" <sip<BR> :tuka@192.168.25.113:5060>..Call-ID: <A href="mailto:5E3468B20AF142938FC6D5069BC203D6@192.168.25">5E3468B20AF142938FC6D5069BC203D6@192.168.25</A>.<BR> 103..CSeq: 50582 REGISTER..Expires: 60..Max-Forwards: 70..User-Agent: X-Lite rele<BR> ase 1103m..Content-Length: 0.... <BR>#<BR>T 192.168.25.103:23 -> 192.168.25.113:2469
[AP]<BR> 4(2829) REGISTER++++fixing contact and port....Fix contact: Insert buf - sip:tuk<BR> <A href="mailto:a@192.168.25.113:5060">a@192.168.25.113:5060</A>.. <BR>#<BR>U 192.168.25.103:5060 -> 192.168.25.113:5060<BR> SIP/2.0 200 OK..Via: SIP/2.0/UDP 192.168.25.113:5060;rport=5060;branch=z9hG4bK0D4<BR> 63F2A700A45A6BB50ADC7E5DFAE71..From: matuka <sip:tuka@192.168.25.103>;tag=1369320<BR> 418..To: matuka <sip:tuka@192.168.25.103>;tag=5607c0bdebf2a92111742e4bf83280c3.c1<BR> 3f..Call-ID: <A
href="mailto:5E3468B20AF142938FC6D5069BC203D6@192.168.25.103..CSeq">5E3468B20AF142938FC6D5069BC203D6@192.168.25.103..CSeq</A>: 50582 REGISTE<BR> R..Contact: <sip:tuka@192.168.25.113:5060>;q=0.00;expires=60..Content-Length: 0..<BR> Warning: 392 192.168.25.103:5060 "Noisy feedback tells: pid=2829 req_src_ip=192.<BR> 168.25.113 req_src_port=5060 in_uri=sip:192.168.25.103 out_uri=sip:192.168.25.103<BR> via_cnt==1".... <BR>#<BR>U 192.168.25.103:5060 -> 192.168.25.115:5060<BR> REGISTER sip:192.168.25.139:5060 SIP/2.0..Via: SIP/2.0/UDP
192.168.25.103;branch=<BR> z9hG4bK2a77.fafffe65.0..Via: SIP/2.0/UDP 192.168.25.113:5060;rport=5060;branch=z9<BR> hG4bK0D463F2A700A45A6BB50ADC7E5DFAE71..From: matuka <sip:tuka@192.168.25.103>;tag<BR> =1369320418..To: matuka <sip:tuka@192.168.25.103>..Contact: "matuka" <sip:tuka@19<BR> 2.168.25.113:5060>..Call-ID: <A href="mailto:5E3468B20AF142938FC6D5069BC203D6@192.168.25.103..CSe">5E3468B20AF142938FC6D5069BC203D6@192.168.25.103..CSe</A><BR> q: 50582 REGISTER..Expires: 60..Max-Forwards: 69..User-Agent: X-Lite release 1103<BR> m..Content-Length: 0.... <BR>#<BR>U 192.168.25.103:5060 ->
192.168.25.115:5060<BR> REGISTER sip:192.168.25.139:5060 SIP/2.0..Via: SIP/2.0/UDP 192.168.25.103;branch=<BR> z9hG4bK2a77.fafffe65.1..Via: SIP/2.0/UDP 192.168.25.113:5060;rport=5060;branch=z9<BR> hG4bK0D463F2A700A45A6BB50ADC7E5DFAE71..From: matuka <sip:tuka@192.168.25.103>;tag<BR> =1369320418..To: matuka <sip:tuka@192.168.25.103>..Contact: "matuka" <sip:tuka@19<BR> 2.168.25.113:5060>..Call-ID: <A href="mailto:5E3468B20AF142938FC6D5069BC203D6@192.168.25.103..CSe">5E3468B20AF142938FC6D5069BC203D6@192.168.25.103..CSe</A><BR> q: 50582 REGISTER..Expires: 60..Max-Forwards: 69..User-Agent: X-Lite release 1103<BR> m..Content-Length: 0.... </DIV>
<DIV> </DIV>
<DIV><BR><B><I>Evan Borgström <evan.borgstrom@ca.mci.com></I></B> wrote: </DIV>
<BLOCKQUOTE class=replbq style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #1010ff 2px solid"><BR>It's just the way that t_register works, if you call t_relay_to more <BR>than once the same error will occur... It's quite messy, you probably <BR>have to use append_branch like;<BR><BR>save("location");<BR><BR>rewritehostport("ser2.domain.com:5060");<BR>append_branch();<BR>rewritehostport("ser3.domain.com:5060");<BR>append_branch();<BR>t_replicate("ser4.domain.com:5060");<BR><BR>I haven't tested this but the logic should work since the t_replicate <BR>function just calls t_relay_to. Also, you'll probably want to use <BR>save_noreply() on the hosts processing the replicated register messages <BR>otherwise the host replicating the register will spew errors. Like I <BR>said, messy.<BR><BR><BR>You could probably do it more elegantly using avpops similar to the <BR>trusted ip example in the docs.<BR><BR>-Evan<BR><BR>Tina wrote:<BR>> Yep, it didn't help<BR>> <BR>>
*/REGISTER++++fixing contact and port/*<BR>> */Fix contact: Insert buf - sip:tuka@192.168.25.113:5060<BR>> 6(1305) ERROR: t_newtran: transaction already in process 0x28361068<BR>> /*<BR>> */"Greger V. Teigre" <GREGER@TEIGRE.COM>/* wrote:<BR>> <BR>> The error means that t_newtran has been run while an<BR>> existing transaction is still in the workings. Have you tried<BR>> moving your save() to *before* the t_replicate()?<BR>> g-)<BR>> <BR>> ---- Original Message ----<BR>> From: Tina<BR>> To: Matt Schulte<BR>> Cc: serusers@lists.iptel.org ; greger@teigre.com<BR>> Sent: Tuesday, April 05, 2005 05:00 PM<BR>> Subject: RE: [Serusers] still no help - usrloc synchronization<BR>> <BR>> > Thanks a lot, gentelmens!<BR>> ><BR>> > I have jumped to the same conclusion. The only thing I am worried -<BR>> > t_replicate() creates aditional SIP traffic between sers. And I also<BR>> > get some strange error with each REGISTER:
<BR>> ><BR>> > 1(712) ERROR: t_newtran: transaction already in process 0x28336768<BR>> ><BR>> > Don't have any idea what I am doing wrong....<BR>> ><BR>> > Below is my ser.cfg snippet.<BR>> > As far as you see I am using mediaproxy package to solve NAT issues.<BR>> > I always force relay, cause I had nathelper problems with<BR>> > UAC1->ser->NAT->UAC2 configuration. <BR>> > I am going to test new mediaproxy release.<BR>> > BRs,<BR>> > Tina<BR>> ><BR>> ><BR>> > < BR>> ============================<BR>> ><BR>> > . . .<BR>> > # ------------------------- request routing logic<BR>> -------------------<BR>> > # main routing logic<BR>> > route{<BR>> > #-------------------------------------------------------<BR>> > if (!method=="REGISTER") record_route();<BR>> ><BR>>
#-------------------------------------------------------????????????????????<BR>> > # loose-route processing<BR>> > if (loose_route()) {<BR>> > route(8); #--go to mediaproxy processing<BR>> > break;<BR>> > };<BR>> > ...<BR>> > if (method=="REGISTER") {<BR>> > #------Replicate to the peers<BR>> ><BR>> > #---Ser 1<BR>> > if (!src_ip==192.168.25.103)<BR>> > t_replicate("192.168.25.103","5060");<BR>> > #---Ser 2<BR>> > if (!src_ip==192.168.25.115)<BR>> > t_replicate("192.168.25.115","5060");<BR>> ><BR>> > save ("location");<BR>> > break;<BR>> > };<BR>> > #-----------------------------------------------INVITE<BR>> > if (method=="INVITE") {<BR>> > log (1, "INVITE: Radius Accounting\n");<BR>> > t_on_failure("4"); #---voice mail<BR>> > use_media_proxy();<BR>> > t_on_reply("5"); #--mediaproxy<BR>> > };<BR>> >
#--------------------------------------------------BYE<BR>> > if (method=="BYE" || method=="CANCEL") {<BR>> > log (1, "BYE or CANCEL: Radius Accounting\n");<BR>> > };<BR>> > #---------------------------------------------------<BR>> > if (!lookup("location") && !lookup("aliases")) {<BR>> > sl_send_reply("404", "Not Found");<BR>> > break;<BR>> > };<BR>> > if (!t_relay()) {<BR>> > sl_reply_error();<BR>> > };<BR>> > }<BR>> ><BR>> > #-------------------------------------------------------<BR>> > failure_route[4]{<BR>> > if (t_check_status("408|486")){<BR>> > append_hf("P-hint: Rewrited to VM");<BR>> > rewritehostport("192.168.25.116:5060");<BR>> > append_branch();<BR>> > t_relay();<BR>> > break;<BR>> > };<BR>> > }<BR>> > #---------------------------------------------------------<BR>> > onreply_route[5]{<BR>> > if (status =~
"(183)|2[0-9][0-9]" && !search("^Content-Length:\<BR>> > 0")) {<BR>> > if ( (!(src_ip=="SERVER1"))<BR>> > && (!(src_ip=="SERVER2"))<BR>> > && (!(src_ip=="SERVER3")) ){<BR>> > if ( search("c=IN IP4 192.168.*")||search("c=IN IP4<BR>> > 10.*")||search("c=IN IP4 172.16.*") ) {<BR>> > fix_contact();<BR>> > };<BR>> > };<BR>> > use_media_proxy();<BR>> > }<BR>> > }<BR>> ><BR>> > ===================================================<BR>> ><BR>> > Matt Schulte <MSCHULTE@NETLOGIC.NET>wrote:<BR>> > I'm starting to lean this direction, using t_replicate and all. I<BR>> > could<BR>> > never get usrloc (db mode) to function properly.. t_replicate is a<BR>> > dirty<BR>> > but very effective workaround.<BR>> ><BR>> > -----Original Message-----<BR>> > From: Greger V. Teigre [mailto:greger@teigre.com]<BR>> > Sent: Saturday, April
02, 2005 1:33 AM<BR>> > To: kramarv@yahoo.com<BR>> > Cc: serusers@lists.iptel.org<BR>> > Subject: Re: [Serusers] still no help - usrloc synchronization<BR>> ><BR>> ><BR>> > Have a look at this thread:<BR>> > http://lists.iptel.org/pipermail/serusers/2005-January/014669.html<BR>> > g-)<BR>> ><BR>> > Java Rockx wrote:<BR>> >> Tina,<BR>> >& gt;<BR>> >> I thought I saw you post the other day that you did not want to use<BR>> >> t_replicate(), however, this is probably your best bet to getting<BR>> >> this<BR>> ><BR>> >> to work, IMHO.<BR>> >><BR>> >> Regards,<BR>> >> Paul<BR>> >><BR>> >> On Apr 1, 2005 4:08 PM, Tina wrote:>><BR>> >>> Hi, please help me, I'm stuck with it!!!!!<BR>> >>> I am trying to set up several sers with a shared MySQL database for<BR>> >>> location service.<BR>>
>>><BR>> >>> I set in each ser.cfg:<BR>> >>><BR>> >>> modparam("usrloc", "db_mode", 2)<BR>> >>> modparam("usrloc",<BR>> >>> "db_url","sql://ser:heslo@192.168.25.163/ser")<BR>> >>><BR>> >>> and the servers are not synchronized.<BR>> >>> The I set<BR>> >>> modparam("usrloc", "db_mode", 2)<BR>> >>><BR>> >>><BR>> >>> made UAC (Xlite) register to one of the servers.<BR>> >>> ; I see it via usrloc, but there is no record in "location" mySQL<BR>> >>> table....So others do not see the client and I'm unable to make<BR>> >>> calls....<BR>> >>><BR>> >>><BR>> >>> Please help how to work with usrloc and mySQL...<BR>> >>><BR>> >>> Tina,<BR>> >>> software engineer<BR>> >>><BR>> >>>
________________________________<BR>> >>> Do you Yahoo!?<BR>> >>> Better first dates. More second dates. Yahoo! Personals<BR>> >>><BR>> >>><BR>> >>> _______________________________________________<BR>> >>> Serusers mailing list<BR>> >>> serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers<BR>> >>><BR>> >>><BR>> >>><BR>> >><BR>> >> _______________________________________________<BR>> >> Serusers mailing list<BR>> >> serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers<BR>> ><BR>> > _______________________________________________<BR>> > Serusers mailing list<BR>> > serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers<BR>> ><BR>> ><BR>> ><BR>> > Do you Yahoo!?<BR>> > Yahoo! Mail - Find what you need with new enhanced search. Learn<BR>>
more.<BR>> <BR>> __________________________________________________<BR>> Do You Yahoo!?<BR>> Tired of spam? Yahoo! Mail has the best spam protection around<BR>> http://mail.yahoo.com<BR>> <BR>> <BR>> ------------------------------------------------------------------------<BR>> <BR>> _______________________________________________<BR>> Serusers mailing list<BR>> serusers@lists.iptel.org<BR>> http://lists.iptel.org/mailman/listinfo/serusers<BR><BR></BLOCKQUOTE><p>
                <hr size=1>Do you Yahoo!?<br>
Better first dates. More second dates. <a href="http://us.rd.yahoo.com/evt=27808/*http://personals.yahoo.com">Yahoo! Personals</a>