I did place this portion inside the myself check and it still tries to transfer to vm after the time expires.
I'm puzzled -- did not you want to transfer to vm after the time
expires?
I will try to make this clearer. I am behind an ATA with a SIP proxy of 209.242.10.153. If I call someone else registered on my domain and they are not available, I want to go to voice mail. If I call 1-800-555-1212 from my phone, I do not want my sip proxy to reroute the call to voicemail after 10 seconds if no one answers(or ever for that matter). Right now if I dial 18005551212 from my handset, I see the destination as sip:18005551212@209.242.10.153 on the server which matches to myself and ser tries to send it to voicemail.
Someone calling into the network is not a problem. They will never hit our server unless the destination is local.
This is the part that I really need help with! When the call timer fails, the call goes to the route[1]. How do I get it into voice mail from that point?
See bellow, I think that should work.
This is what I had originally, and I get the following syslog.
Sep 10 16:36:36 voip2 ser: parse error (127,37-38): Command cannot be used in the block Sep 10 16:36:36 voip2 ser: ERROR: bad config file (1 errors) Sep 10 16:36:36 voip2 ser: ser startup failed
Is says that vm is not valid in the block. According the admin guide, only certain commands can be used within a failure block. I assume that is the problem here. If not, please let me know as this is exactly what I want to do.
THE SAME STUFF LIKE ABOVE, YOU DON'T WANT TO t_relay ANYTHING
if(!vm("/tmp/am_fifo","voicemail")){ t_reply("500", "SEMS error"); }; break;
At 11:44 PM 9/10/2003, Steve Dolloff wrote:
I did place this portion inside the myself check and it still tries to transfer to vm after the time expires.
I'm puzzled -- did not you want to transfer to vm after the time
expires?
I will try to make this clearer. I am behind an ATA with a SIP proxy of 209.242.10.153. If I call someone else registered on my domain and they are not available, I want to go to voice mail. If I call 1-800-555-1212 from my phone, I do not want my sip proxy to reroute the call to voicemail after 10 seconds if no one answers(or ever for that matter).
I guess 1-800-555-1212 is a teleophne number behind a pstn gateway, right?
then you need first to desing a good numbering plan. e.g.:
if (uri==myself) { if (uri="9[0-9]*@") { # calls to IP users; voicemail is used; set up failure route here ... } else { # if the number does not begin with 9, we route to PSTN rewritehostport("gatyeway.somewhere.com:5060"); t_relay(); # we did not setup voicemail handling here };
Right now if I dial 18005551212 from my handset, I see the destination as sip:18005551212@209.242.10.153 on the server which matches to myself and ser tries to send it to voicemail.
If you want to call pstn, than set up a numbering plan, distinguish this option in the plan from ip destinations, and grant it a different handling (no failure_route).
Someone calling into the network is not a problem. They will never hit our server unless the destination is local.
This is the part that I really need help with! When the call timer fails, the call goes to the route[1]. How do I get it into voice mail from that point?
See bellow, I think that should work.
This is what I had originally, and I get the following syslog.
Sep 10 16:36:36 voip2 ser: parse error (127,37-38): Command cannot be used in the block Sep 10 16:36:36 voip2 ser: ERROR: bad config file (1 errors) Sep 10 16:36:36 voip2 ser: ser startup failed
I see -- that's actually a bug in SER. We only tested for remote voicemail and never gave an intergrated version a try. It is now fixed on CVS. Feel free to update from CVS, recompile and retry. Sorry for the inconvenience and thanks for reporting.
-Jiri
Steve and all, Did you ever get resolution on the issue of the timeout and t_on_failure commands killing or routing PSTN calls to voicemail?
I looked through the mail archives and it isn't clear what the resolution was. I'm running into the same problem. If I set t_on_failure to occur after a certain timeout, outgoing PSTN calls fail after that timeout as well.
In fact, it seems that calls fail after the timeout even if t_on_failure isn't set.
I've successfully gotten outgoing PSTN calls being handled by a different t_relay than incoming or internal network calls.
What did you do to resolve the issue?
My config.
RedHat 9.0 kernel 2.4.20-20smp ser 0.8.11 (i386/linux) main.c, v 1.162.2.5
Also, when a Status: 486 (busy) is encountered on the recieving party side, or a timeout occurs due to fr_inv_timer, I'm getting this error in my log
Sep 25 14:07:56 jiffypop /usr/local/sbin/ser[23164]: ERROR: t_newtran: transaction already in process 0x422c0b38
Anyone have any ideas on what the problem is? ser.cft and ngrep output attached.
Thanks, G
Steve Dolloff sdolloff@noc.dls.net wrote:
I did place this portion inside the myself check and it still tries to transfer to vm after the time expires.
I'm puzzled -- did not you want to transfer to vm after the time
expires?
I will try to make this clearer. I am behind an ATA with a SIP proxy of 209.242.10.153. If I call someone else registered on my domain and they are not available, I want to go to voice mail. If I call 1-800-555-1212 from my phone, I do not want my sip proxy to reroute the call to voicemail after 10 seconds if no one answers(or ever for that matter). Right now if I dial 18005551212 from my handset, I see the destination as sip:18005551212@209.242.10.153 on the server which matches to myself and ser tries to send it to voicemail.
Someone calling into the network is not a problem. They will never hit our server unless the destination is local.
This is the part that I really need help with! When the call timer fails, the call goes to the route[1]. How do I get it into voice mail from that point?
See bellow, I think that should work.
This is what I had originally, and I get the following syslog.
Sep 10 16:36:36 voip2 ser: parse error (127,37-38): Command cannot be used in the block Sep 10 16:36:36 voip2 ser: ERROR: bad config file (1 errors) Sep 10 16:36:36 voip2 ser: ser startup failed
Is says that vm is not valid in the block. According the admin guide, only certain commands can be used within a failure block. I assume that is the problem here. If not, please let me know as this is exactly what I want to do.
THE SAME STUFF LIKE ABOVE, YOU DON'T WANT TO t_relay ANYTHING
if(!vm("/tmp/am_fifo","voicemail")){ t_reply("500", "SEMS error"); }; break;
_______________________________________________ Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
--------------------------------- Do you Yahoo!? The New Yahoo! Shopping - with improved product search
# # $Id: ser.cfg,v 1.20 2003/05/31 21:12:19 jiri Exp $ # # simple quick-start config script #
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd) fork=yes log_stderror=no # (cmd line: -E)
/* Uncomment these lines to enter debugging mode debug=8 fork=no log_stderror=yes */
check_via=no # (cmd. line: -v) dns=no # (cmd. line: -r) rev_dns=no # (cmd. line: -R) port=5060 children=4 fifo="/tmp/ser_fifo" sip_warning=no # # ------------------ module loading ---------------------------------- # # Uncomment this if you want to use SQL database loadmodule "/usr/local/lib/ser/modules/mysql.so" # loadmodule "/usr/local/lib/ser/modules/sl.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/maxfwd.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so" loadmodule "/usr/local/lib/ser/modules/registrar.so" loadmodule "/usr/local/lib/ser/modules/vm.so" loadmodule "/usr/local/lib/ser/modules/pa.so" loadmodule "/usr/local/lib/ser/modules/msilo.so" loadmodule "/usr/local/lib/ser/modules/acc.so" loadmodule "/usr/local/lib/ser/modules/textops.so" # #loadmodule "/usr/local/lib/ser/modules/nathelper.so" #loadmodule "/usr/local/lib/ser/modules/uri.so" #loadmodule "/usr/local/lib/ser/modules/group.so" # # Uncomment this if you want digest authentication # mysql.so must be loaded ! loadmodule "/usr/local/lib/ser/modules/auth.so" loadmodule "/usr/local/lib/ser/modules/auth_db.so" # # ----------------- setting module-specific parameters --------------- # # -- usrloc params -- # #modparam("usrloc", "db_mode", 0) # # Uncomment this if you want to use SQL database # for persistent storage and comment the previous line modparam("usrloc", "db_mode", 2) # # -- auth params -- # Uncomment if you are using auth module # modparam("auth_db", "calculate_ha1", yes) # # If you set "calculate_ha1" parameter to yes (which true in this config), # uncomment also the following parameter) # modparam("auth_db", "password_column", "password") # # modparam("acc", "log_level", 1) modparam("acc", "log_flag", 2) modparam("acc", "log_missed_flag", 2) modparam("acc", "log_fmt", "fimos") # #modparam("tm", "fr_inv_timer", 15) #INVITE timeout #modparam("tm", "fr_timer", 5) #negative INVITE reply or no #final reply for a request for ACK # modparam("voicemail", "db_url", "sql://ser:heslo@localhost/ser") # #modparam("acc", "db_url", "sql://ser:heslo@localhost/ser") #modparam("acc", "db_flag", 2) #modparam("acc", "db_missed_flag", 2) # # ------------------------- request routing logic ------------------- # # main routing logic # alias=10.10.10.49 #sip server IP address alias=jiffypop #sip server name alias=mydomain.com #sip domain/realm alias=jiffypop.mydomain.com #sip server FQDN # route{ log(1,"entering main route"); #prevent strangers from claiming to belong to our domain; #if sender claims to be in our domain in From header field, #better authenticate him # code not inserted yet :)
# 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 (len_gt( max_len )) { sl_send_reply("513", "Message too big"); break; };
# we record-route all messages -- to make sure that # subsequent messages will go through our proxy; that's # particularly good if upstream and downstream entities # use different transport protocol record_route(); # loose-route processing if (loose_route()) { t_relay(); break; }; setflag(2); #set flag for accounting # 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") { # digest authentication log(1,"request for registration"); if (!www_authorize("mydomain.com", "subscriber")) { www_challenge("mydomain.com", "0"); break; }; save("location"); break; };
/* ********** Dial out to PSTN logic ************* */
#forward numerical 7 digit requests to gateway if(uri=~"^sip:[0-9]{7}@(mydomain.com|10.10.10.49)"){ rewritehostport("10.10.10.5:5060"); log(1,"7 digit expression match"); route(2); break;
}; # strip 650 and forward to GW if user dials 650 before phone no. if(uri=~"^sip:650[0-9]{7}@(mydomain.com|10.10.10.49)"){ strip(3); rewritehostport("10.10.10.5:5060"); log(1,"650 area code dialed, 650 stripped"); route(2); break; }; #forward numerical 10 digit requests to gateway, append a 1 first if(uri=~"^sip:[0-9]{10}@(mydomain.com|10.10.10.49)"){ prefix("1"); rewritehostport("10.10.10.5:5060"); log(1,"10 digit expression match, prefix 1"); route(2); break; }; #forward numerical 11 digit requests that start with a 1 to GW if(uri=~"^sip:1[0-9]{10}@(mydomain.com|10.10.10.49)"){ rewritehostport("10.10.10.5:5060"); log(1,"10 digit exp match w/leading 1"); route(2); break; }; #forward international N digit requests to gateway if(uri=~"^sip:011[0-9]+@(mydomain.com|10.10.10.49)"){ rewritehostport("10.10.10.5:5060"); log(1,"international expression match"); route(2); break; };
/* ********** VOICEMAIL logic ************* */
if (uri=~"^sip:voicemail+@"){ log(1,"sip:voicemail uri match"); route(3); break; };
/* ****** Find Aliases and Locations of users ********* */ # It is very important to lookup "aliases" before looking up "locations"
if(!lookup("aliases")){ log(1,"Couldn't find any matching alias"); sl_send_reply("404", "User does not exist"); break; }; if(!lookup("location")) { log(1,"unable to locate user"); route(3); break; };
};
# forward to current uri now; use stateful forwarding; that # works reliably even if we forward from TCP to UDP log(1,"routing at eof: should not occur for outgoing PSTN calls"); t_on_failure("1"); if (!t_relay()) { sl_reply_error(); }; log(1,"eof"); }
route[2]{ log(1,"route[2]:SIP-to-PSTN call routed"); if(!t_relay()){ sl_reply_error(); }; }
route[3]{ log(1,"route[3]: voicemail processing"); if(method=="ACK" || method=="INVITE" || method=="BYE" || method=="REFER"){ log(1,"1st if entered in route[3] *vm*"); if(t_newtran()){ t_reply("100","Trying -- just a second"); if(method=="INVITE" || method=="REFER"){ log(1,"route[3]:method==INVITE || REFER"); if(uri =~ "conference" ){ if(!vm("/tmp/am_fifo","conference")){ log(1,"could not contact conference server"); t_reply("500","could not contact conference server"); }; } else if (uri =~"echo"){ if(!vm("/tmp/am_fifo","echo")){ log(1,"could not contact echo"); t_reply("500","could not contact echo"); }; } else{ if(!vm("/tmp/am_fifo","voicemail")){ log(1,"vm module called and failed"); t_reply("500", "voicemail error"); }; }; break; }; if(method=="BYE"){ log(1,"vm end/refer - begin"); if(!vm("/tmp/am_fifo","bye")){ log(1,"could not contact the media server"); t_reply("500" , "could not contact the media server"); }; break; }; } else{ log(1,"route[3]:could not create new transaction"); sl_send_reply("500", "could not create new transaction"); }; log(1,"route[3]:end of first method== check"); };
}
failure_route[1]{ log(1,"failure_route[1]:jump to vm: route[3]"); route(3); }
interface: eth0 (10.10.10.0/255.255.255.0) match: 5060 ### U 10.10.10.5:53667 -> 10.10.10.49:5060 INVITE sip:6609@10.10.10.49:5060 SIP/2.0..Via: SIP/2.0/UDP 10.10.10.5:5060..From: <sip:6502188884@10.10.10. 5>;tag=4CCDE44-B57..To: sip:6609@10.10.10.49..Date: Mon, 01 Mar 1993 22:22:15 GMT..Call-ID: A74AE3D-15AA11 CC-8071812E-8BB375E1@10.10.10.5..Supported: timer,100rel..Min-SE: 1800..Cisco-Guid: 175259037-363467212-215 4725678-2343794145..User-Agent: Cisco-SIPGateway/IOS-12.x..Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, COMET, REFER, SUBSCRIBE, NOTIFY, INFO..CSeq: 101 INVITE..Max-Forwards: 6..Remote-Party-ID: <sip:6502188884@1 0.10.10.5>;party=calling;screen=yes;privacy=off..Timestamp: 731024535..Contact: <sip:6502188884@10.10.10.5:5 060>..Expires: 180..Allow-Events: telephone-event..Content-Type: application/sdp..Content-Length: 185....v=0 ..o=CiscoSystemsSIP-GW-UserAgent 6694 6444 IN IP4 10.10.10.5..s=SIP Call..c=IN IP4 10.10.10.5..t=0 0..m=audi o 18640 RTP/AVP 0..c=IN IP4 10.10.10.5..a=rtpmap:0 PCMU/8000..a=ptime:20.. # U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 100 trying -- your call is important to us..Via: SIP/2.0/UDP 10.10.10.5:5060..From: <sip:6502188884 @10.10.10.5>;tag=4CCDE44-B57..To: sip:6609@10.10.10.49..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10. 10.5..CSeq: 101 INVITE..Server: Sip EXpress router (0.8.11 (i386/linux))..Content-Length: 0.... # U 10.10.10.49:5060 -> 10.10.10.189:5060 INVITE sip:esavelle@10.10.10.189 SIP/2.0..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..Via: SIP /2.0/UDP 10.10.10.49;branch=z9hG4bKaa33.8c7a9b23.0..Via: SIP/2.0/UDP 10.10.10.5:5060..From: <sip:6502188884 @10.10.10.5>;tag=4CCDE44-B57..To: sip:6609@10.10.10.49..Date: Mon, 01 Mar 1993 22:22:15 GMT..Call-ID: A74A E3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..Supported: timer,100rel..Min-SE: 1800..Cisco-Guid: 175259037-363 467212-2154725678-2343794145..User-Agent: Cisco-SIPGateway/IOS-12.x..Allow: INVITE, OPTIONS, BYE, CANCEL, AC K, PRACK, COMET, REFER, SUBSCRIBE, NOTIFY, INFO..CSeq: 101 INVITE..Max-Forwards: 5..Remote-Party-ID: <sip:65 02188884@10.10.10.5>;party=calling;screen=yes;privacy=off..Timestamp: 731024535..Contact: <sip:6502188884@10 .10.10.5:5060>..Expires: 180..Allow-Events: telephone-event..Content-Type: application/sdp..Content-Length: 185....v=0..o=CiscoSystemsSIP-GW-UserAgent 6694 6444 IN IP4 10.10.10.5..s=SIP Call..c=IN IP4 10.10.10.5..t=0 0..m=audio 18640 RTP/AVP 0..c=IN IP4 10.10.10.5..a=rtpmap:0 PCMU/8000..a=ptime:20.. # U 10.10.10.189:5060 -> 10.10.10.49:5060 SIP/2.0 100 trying..Via: SIP/2.0/UDP 10.10.10.49;branch=z9hG4bKaa33.8c7a9b23.0..Via: SIP/2.0/UDP 10.10.10.5 :5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..From: sip:6502188884@10.10.10.5;tag=4CCDE 44-B57..To: sip:6609@10.10.10.49..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE ..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... # U 10.10.10.189:5060 -> 10.10.10.49:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.49;branch=z9hG4bKaa33.8c7a9b23.0..Via: SIP/2.0/UDP 10.10.10.5:5060. .Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..From: sip:6502188884@10.10.10.5;tag=4CCDE44-B57 ..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-08924feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8B B375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ## U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 500 could not create new transaction..Via: SIP/2.0/UDP 10.10.10.5:5060..From: <sip:6502188884@10.10 .10.5>;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=b27e1a1d33761e85846fc98f5f3a7e58.c9a7..Call-ID: A74AE 3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..Server: Sip EXpress router (0.8.11 (i386/linux)) ..Content-Length: 0.... # U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... # U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... # U 10.10.10.5:53667 -> 10.10.10.49:5060 ACK sip:6609@10.10.10.49:5060 SIP/2.0..Via: SIP/2.0/UDP 10.10.10.5:5060..From: sip:6502188884@10.10.10.5; tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=b27e1a1d33761e85846fc98f5f3a7e58.c9a7..Date: Mon, 01 Mar 199 3 22:22:15 GMT..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..Max-Forwards: 6..Content-Length: 0.. CSeq: 101 ACK.... # U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ### U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ##### U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ########### U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ########### U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ######## U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ###### U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ############################exit
Gavin,
I am not exactly sure what the problem is -- indeed, SER transactions time out after some period of time, that's normal behaviour. It is called C-timer in RFC3261, we call the "tm" timer "inv_fr_invite" and can change its value with modparam. When the timer fires, the transaction is cancelled and deleted from server's memory not to waste it for ever. That's it.
If you wish for-ever ringing phones, without proxy cancelling expired transactions you can do so under some specific circumstances. Then proxy drops pending transactions silently, without explicit cancellation, and the transactions may complete statelessly. If my memory serves, this behaviour is actually default unless any of frequent conditions occurs which requires stateful completion. Such conditions are SIP forking, use of accounting, on_failure processing, explicitly disallowing silent transaction drop, etc. (You simply need stateful completion for any of these functions.)
The error as displayed in your logs is caused by your attempt to create two transactions for a single request. You create the first transaction context in route[]. When failure_route is triggered, you follow failure_route[1] and route[3] in which you attempt to create yet another transaction context.
Also, let me remind again: VM module was designed for use in a UAS which stands separately from a proxy server. We never tried to mix proxy with voicemail in a single server instance. I will be glad to look at it as time allows, but I doubt it works now.
-jiri
At 11:40 PM 9/25/2003, Gavin Bensom wrote:
Steve and all, Did you ever get resolution on the issue of the timeout and t_on_failure commands killing or routing PSTN calls to voicemail?
I looked through the mail archives and it isn't clear what the resolution was. I'm running into the same problem. If I set t_on_failure to occur after a certain timeout, outgoing PSTN calls fail after that timeout as well.
In fact, it seems that calls fail after the timeout even if t_on_failure isn't set.
I've successfully gotten outgoing PSTN calls being handled by a different t_relay than incoming or internal network calls.
What did you do to resolve the issue?
My config.
RedHat 9.0 kernel 2.4.20-20smp ser 0.8.11 (i386/linux) main.c, v 1.162.2.5
Also, when a Status: 486 (busy) is encountered on the recieving party side, or a timeout occurs due to fr_inv_timer, I'm getting this error in my log
Sep 25 14:07:56 jiffypop /usr/local/sbin/ser[23164]: ERROR: t_newtran: transaction already in process 0x422c0b38 Anyone have any ideas on what the problem is? ser.cft and ngrep output attached.
Thanks, G
Steve Dolloff sdolloff@noc.dls.net wrote:
I did place this portion inside the myself check and it still tries to transfer to vm after the time expires.
I'm puzzled -- did not you want to transfer to vm after the time
expires?
I will try to make this clearer. I am behind an ATA with a SIP proxy of 209.242.10.153. If I call someone else registered on my domain and they are not available, I want to go to voice mail. If I call 1-800-555-1212 from my phone, I do not want my sip proxy to reroute the call to voicemail after 10 seconds if no one answers(or ever for that matter). Right now if I dial 18005551212 from my handset, I see the destination as sip:18005551212@209.242.10.153 on the server which matches to myself and ser tries to send it to voicemail.
Someone calling into the network is not a problem. They will never hit our server unless the destination is local.
This is the part that I really need help with! When the call timer fails, the call goes to the route[1]. How do I get it into voice mail from that point?
See bellow, I think that should work.
This is what I had originally, and I get the following syslog.
Sep 10 16:36:36 voip2 ser: parse error (127,37-38): Command cannot be used in the block Sep 10 16:36:36 voip2 ser: ERROR: bad config file (1 errors) Sep 10 16:36:36 voip2 ser: ser startup failed
Is says that vm is not valid in the block. According the admin guide, only certain commands can be used within a failure block. I assume that is the problem here. If not, please let me know as this is exactly what I want to do.
THE SAME STUFF LIKE ABOVE, YOU DON'T WANT TO t_relay ANYTHING
if(!vm("/tmp/am_fifo","voicemail")){ t_reply("500", "SEMS error"); }; break;
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
Do you Yahoo!? http://shopping.yahoo.com/?__yltc=s%3A150000443%2Cd%3A22708228%2Cslk%3Atext%2Csec%3AmailThe New Yahoo! Shopping - with improved product search # # $Id: ser.cfg,v 1.20 2003/05/31 21:12:19 jiri Exp $ # # simple quick-start config script #
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd) fork=yes log_stderror=no # (cmd line: -E)
/* Uncomment these lines to enter debugging mode debug=8 fork=no log_stderror=yes */
check_via=no # (cmd. line: -v) dns=no # (cmd. line: -r) rev_dns=no # (cmd. line: -R) port=5060 children=4 fifo="/tmp/ser_fifo" sip_warning=no # # ------------------ module loading ---------------------------------- # # Uncomment this if you want to use SQL database loadmodule "/usr/local/lib/ser/modules/mysql.so" # loadmodule "/usr/local/lib/ser/modules/sl.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/maxfwd.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so" loadmodule "/usr/local/lib/ser/modules/registrar.so" loadmodule "/usr/local/lib/ser/modules/vm.so" loadmodule "/usr/local/lib/ser/modules/pa.so" loadmodule "/usr/local/lib/ser/modules/msilo.so" loadmodule "/usr/local/lib/ser/modules/acc.so" loadmodule "/usr/local/lib/ser/modules/textops.so" # #loadmodule "/usr/local/lib/ser/modules/nathelper.so" #loadmodule "/usr/local/lib/ser/modules/uri.so" #loadmodule "/usr/local/lib/ser/modules/group.so" # # Uncomment this if you want digest authentication # mysql.so must be loaded ! loadmodule "/usr/local/lib/ser/modules/auth.so" loadmodule "/usr/local/lib/ser/modules/auth_db.so" # # ----------------- setting module-specific parameters --------------- # # -- usrloc params -- # #modparam("usrloc", "db_mode", 0) # # Uncomment this if you want to use SQL database # for persistent storage and comment the previous line modparam("usrloc", "db_mode", 2) # # -- auth params -- # Uncomment if you are using auth module # modparam("auth_db", "calculate_ha1", yes) # # If you set "calculate_ha1" parameter to yes (which true in this config), # uncomment also the following parameter) # modparam("auth_db", "password_column", "password") # # modparam("acc", "log_level", 1) modparam("acc", "log_flag", 2) modparam("acc", "log_missed_flag", 2) modparam("acc", "log_fmt", "fimos") # #modparam("tm", "fr_inv_timer", 15) #INVITE timeout #modparam("tm", "fr_timer", 5) #negative INVITE reply or no #final reply for a request for ACK # modparam("voicemail", "db_url", "sql://ser:heslo@localhost/ser") # #modparam("acc", "db_url", "sql://ser:heslo@localhost/ser") #modparam("acc", "db_flag", 2) #modparam("acc", "db_missed_flag", 2) # # ------------------------- request routing logic ------------------- # # main routing logic # alias=10.10.10.49 #sip server IP address alias=jiffypop #sip server name alias=mydomain.com #sip domain/realm alias=jiffypop.mydomain.com #sip server FQDN # route{ log(1,"entering main route"); #prevent strangers from claiming to belong to our domain; #if sender claims to be in our domain in From header field, #better authenticate him # code not inserted yet :)
# 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 (len_gt( max_len )) { sl_send_reply("513", "Message too big"); break; }; # we record-route all messages -- to make sure that # subsequent messages will go through our proxy; that's # particularly good if upstream and downstream entities # use different transport protocol record_route(); # loose-route processing if (loose_route()) { t_relay(); break; }; setflag(2); #set flag for accounting # 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") { # digest authentication log(1,"request for registration"); if (!www_authorize("mydomain.com", "subscriber")) { www_challenge("mydomain.com", "0"); break; }; save("location"); break; };
/* ********** Dial out to PSTN logic ************* */
#forward numerical 7 digit requests to gateway if(uri=~"^sip:[0-9]{7}@(mydomain\.com|10\.10\.10\.49)"){ rewritehostport("10.10.10.5:5060"); log(1,"7 digit expression match"); route(2); break; }; # strip 650 and forward to GW if user dials 650 before phone no. if(uri=~"^sip:650[0-9]{7}@(mydomain\.com|10\.10\.10\.49)"){ strip(3); rewritehostport("10.10.10.5:5060"); log(1,"650 area code dialed, 650 stripped"); route(2); break; }; #forward numerical 10 digit requests to gateway, append a 1 first if(uri=~"^sip:[0-9]{10}@(mydomain\.com|10\.10\.10\.49)"){ prefix("1"); rewritehostport("10.10.10.5:5060"); log(1,"10 digit expression match, prefix 1"); route(2); break; }; #forward numerical 11 digit requests that start with a 1 to GW if(uri=~"^sip:1[0-9]{10}@(mydomain\.com|10\.10\.10\.49)"){ rewritehostport("10.10.10.5:5060"); log(1,"10 digit exp match w/leading 1"); route(2); break; }; #forward international N digit requests to gateway if(uri=~"^sip:011[0-9]+@(mydomain\.com|10\.10\.10\.49)"){ rewritehostport("10.10.10.5:5060"); log(1,"international expression match"); route(2); break; };
/* ********** VOICEMAIL logic ************* */
if (uri=~"^sip:voicemail\+@"){ log(1,"sip:voicemail uri match"); route(3); break; };
/* ****** Find Aliases and Locations of users ********* */ # It is very important to lookup "aliases" before looking up "locations"
if(!lookup("aliases")){ log(1,"Couldn't find any matching alias"); sl_send_reply("404", "User does not exist"); break; }; if(!lookup("location")) { log(1,"unable to locate user"); route(3); break; }; }; # forward to current uri now; use stateful forwarding; that # works reliably even if we forward from TCP to UDP log(1,"routing at eof: should not occur for outgoing PSTN calls"); t_on_failure("1"); if (!t_relay()) { sl_reply_error(); }; log(1,"eof");
}
route[2]{ log(1,"route[2]:SIP-to-PSTN call routed"); if(!t_relay()){ sl_reply_error(); }; }
route[3]{ log(1,"route[3]: voicemail processing"); if(method=="ACK" || method=="INVITE" || method=="BYE" || method=="REFER"){ log(1,"1st if entered in route[3] *vm*"); if(t_newtran()){ t_reply("100","Trying -- just a second"); if(method=="INVITE" || method=="REFER"){ log(1,"route[3]:method==INVITE || REFER"); if(uri =~ "conference" ){ if(!vm("/tmp/am_fifo","conference")){ log(1,"could not contact conference server"); t_reply("500","could not contact conference server"); }; } else if (uri =~"echo"){ if(!vm("/tmp/am_fifo","echo")){ log(1,"could not contact echo"); t_reply("500","could not contact echo"); }; } else{ if(!vm("/tmp/am_fifo","voicemail")){ log(1,"vm module called and failed"); t_reply("500", "voicemail error"); }; }; break; }; if(method=="BYE"){ log(1,"vm end/refer - begin"); if(!vm("/tmp/am_fifo","bye")){ log(1,"could not contact the media server"); t_reply("500" , "could not contact the media server"); }; break; }; } else{ log(1,"route[3]:could not create new transaction"); sl_send_reply("500", "could not create new transaction"); }; log(1,"route[3]:end of first method== check"); };
}
failure_route[1]{ log(1,"failure_route[1]:jump to vm: route[3]"); route(3); }
interface: eth0 (10.10.10.0/255.255.255.0) match: 5060 ### U 10.10.10.5:53667 -> 10.10.10.49:5060 INVITE sip:6609@10.10.10.49:5060 SIP/2.0..Via: SIP/2.0/UDP 10.10.10.5:5060..From: <sip:6502188884@10.10.10. 5>;tag=4CCDE44-B57..To: sip:6609@10.10.10.49..Date: Mon, 01 Mar 1993 22:22:15 GMT..Call-ID: A74AE3D-15AA11 CC-8071812E-8BB375E1@10.10.10.5..Supported: timer,100rel..Min-SE: 1800..Cisco-Guid: 175259037-363467212-215 4725678-2343794145..User-Agent: Cisco-SIPGateway/IOS-12.x..Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, COMET, REFER, SUBSCRIBE, NOTIFY, INFO..CSeq: 101 INVITE..Max-Forwards: 6..Remote-Party-ID: <sip:6502188884@1 0.10.10.5>;party=calling;screen=yes;privacy=off..Timestamp: 731024535..Contact: <sip:6502188884@10.10.10.5:5 060>..Expires: 180..Allow-Events: telephone-event..Content-Type: application/sdp..Content-Length: 185....v=0 ..o=CiscoSystemsSIP-GW-UserAgent 6694 6444 IN IP4 10.10.10.5..s=SIP Call..c=IN IP4 10.10.10.5..t=0 0..m=audi o 18640 RTP/AVP 0..c=IN IP4 10.10.10.5..a=rtpmap:0 PCMU/8000..a=ptime:20.. # U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 100 trying -- your call is important to us..Via: SIP/2.0/UDP 10.10.10.5:5060..From: <sip:6502188884 @10.10.10.5>;tag=4CCDE44-B57..To: sip:6609@10.10.10.49..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10. 10.5..CSeq: 101 INVITE..Server: Sip EXpress router (0.8.11 (i386/linux))..Content-Length: 0.... # U 10.10.10.49:5060 -> 10.10.10.189:5060 INVITE sip:esavelle@10.10.10.189 SIP/2.0..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..Via: SIP /2.0/UDP 10.10.10.49;branch=z9hG4bKaa33.8c7a9b23.0..Via: SIP/2.0/UDP 10.10.10.5:5060..From: <sip:6502188884 @10.10.10.5>;tag=4CCDE44-B57..To: sip:6609@10.10.10.49..Date: Mon, 01 Mar 1993 22:22:15 GMT..Call-ID: A74A E3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..Supported: timer,100rel..Min-SE: 1800..Cisco-Guid: 175259037-363 467212-2154725678-2343794145..User-Agent: Cisco-SIPGateway/IOS-12.x..Allow: INVITE, OPTIONS, BYE, CANCEL, AC K, PRACK, COMET, REFER, SUBSCRIBE, NOTIFY, INFO..CSeq: 101 INVITE..Max-Forwards: 5..Remote-Party-ID: <sip:65 02188884@10.10.10.5>;party=calling;screen=yes;privacy=off..Timestamp: 731024535..Contact: <sip:6502188884@10 .10.10.5:5060>..Expires: 180..Allow-Events: telephone-event..Content-Type: application/sdp..Content-Length: 185....v=0..o=CiscoSystemsSIP-GW-UserAgent 6694 6444 IN IP4 10.10.10.5..s=SIP Call..c=IN IP4 10.10.10.5..t=0 0..m=audio 18640 RTP/AVP 0..c=IN IP4 10.10.10.5..a=rtpmap:0 PCMU/8000..a=ptime:20.. # U 10.10.10.189:5060 -> 10.10.10.49:5060 SIP/2.0 100 trying..Via: SIP/2.0/UDP 10.10.10.49;branch=z9hG4bKaa33.8c7a9b23.0..Via: SIP/2.0/UDP 10.10.10.5 :5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..From: sip:6502188884@10.10.10.5;tag=4CCDE 44-B57..To: sip:6609@10.10.10.49..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE ..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... # U 10.10.10.189:5060 -> 10.10.10.49:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.49;branch=z9hG4bKaa33.8c7a9b23.0..Via: SIP/2.0/UDP 10.10.10.5:5060. .Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..From: sip:6502188884@10.10.10.5;tag=4CCDE44-B57 ..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-08924feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8B B375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ## U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 500 could not create new transaction..Via: SIP/2.0/UDP 10.10.10.5:5060..From: <sip:6502188884@10.10 .10.5>;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=b27e1a1d33761e85846fc98f5f3a7e58.c9a7..Call-ID: A74AE 3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..Server: Sip EXpress router (0.8.11 (i386/linux)) ..Content-Length: 0.... # U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... # U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... # U 10.10.10.5:53667 -> 10.10.10.49:5060 ACK sip:6609@10.10.10.49:5060 SIP/2.0..Via: SIP/2.0/UDP 10.10.10.5:5060..From: sip:6502188884@10.10.10.5; tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=b27e1a1d33761e85846fc98f5f3a7e58.c9a7..Date: Mon, 01 Mar 199 3 22:22:15 GMT..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..Max-Forwards: 6..Content-Length: 0.. CSeq: 101 ACK.... # U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ### U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ##### U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ########### U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ########### U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ######## U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ###### U 10.10.10.49:5060 -> 10.10.10.5:5060 SIP/2.0 486 ..Via: SIP/2.0/UDP 10.10.10.5:5060..Record-Route: sip:6609@10.10.10.49;ftag=4CCDE44-B57;lr..F rom: sip:6502188884@10.10.10.5;tag=4CCDE44-B57..To: sip:6609@10.10.10.49;tag=c02cab98-902a-cad0-7e53-089 24feebae5..Call-ID: A74AE3D-15AA11CC-8071812E-8BB375E1@10.10.10.5..CSeq: 101 INVITE..User-Agent: Grandstream SIP UA 1.0.3.81..Content-Length: 0.... ############################exit _______________________________________________ Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
-- Jiri Kuthan http://iptel.org/~jiri/