Hello all,
I am interested in using SER, but I am a bit confused. It seems that the
latest distribution is .8.x, but I am seeing people posting regarding .9.1.
I am also interested in the commercial version of SER. Is it the same as
the open source version? or is it completely different code? I sent email
to the iptelorg company and tried to call them on Friday, but I haven't
gotten any response. Does anyone know all of the pricing and the feature
differences? I need to have a special function built to use my API for
least cost routing and I also need ODBC database support instead of mySQL.
Are there any skilled programmers familiar with the SER code base who would
be willing to take on this type of project? Thank you.
-Robert
Tellurian Networks - The Ultimate Internet Connection
http://www.tellurian.com | 888-TELLURIAN | 973-300-9211
"Well done is better than well said." - Benjamin Franklin
Quek Eric <inputdev(a)yahoo.com> wrote: thx Steve,
can u simplify wad to do or where can i learn to create voice mail? due to I'm totally new to SIP...I'm actually a student taking over a project which was done by a student too.
rgds,
Eric
Steve Blair <blairs(a)isc.upenn.edu> wrote:
Eric:
You need to decide what application will provide voice mail service
SEMS, Asterisk, etc. That decision will drive what needs to be in your
config file. Basically you'll need to add t_on_failure("N") and
failure_route[N] statements to handle the unanswered call. In the
failure_route you will want to do hostname and/or port number
re-writing as necessary then t_relay the call to this new (voicemail
server) destination.
-Steve
Quek Eric wrote:
>Hi all,
>
>Im a new learner who is a beginner learning on SIP...
>
>I will like to know how do I enable Voice Mail in my
>ser.cfg file...
>
>Here's my ser.cfg:
>#
># $Id: ser.cfg,v 1.21.4.1 2003/11/10 15:35:15 andrei
>Exp $
>#
># simple quick-start config script
>#
>
># ----------- global configuration parameters
>------------------------
>
>debug=3 # debug level (cmd line: -dddddddddd)
>fork=yes
>log_stderror=yes # (cmd line: -E)
>
>/* Uncomment these lines to enter debugging mode
>debug=7
>fork=no
>log_stderror=yes
>*/
>
>listen=172.16.221.38
>listen=127.0.0.1
>alias="sip.nyp.edu.sg"
>alias=172.16.221.38
>alias=127.0.0.1
>
>check_via=yes # (cmd. line: -v)
>dns=yes # (cmd. line: -r)
>rev_dns=no # (cmd. line: -R)
>port=5060
>children=4
>fifo="/tmp/ser_fifo"
>
># ------------------ module loading
>----------------------------------
>
>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/auth.so"
>loadmodule "/usr/lib/ser/modules/auth_db.so"
>loadmodule "/usr/lib/ser/modules/acc.so"
>loadmodule "/usr/lib/ser/modules/exec.so"
>loadmodule "/usr/lib/ser/modules/group.so"
>loadmodule "/usr/lib/ser/modules/domain.so"
>loadmodule "/usr/lib/ser/modules/print.so"
>loadmodule "/usr/lib/ser/modules/textops.so"
>loadmodule "/usr/lib/ser/modules/uri.so"
>loadmodule "/usr/lib/ser/modules/msilo.so"
>loadmodule "/usr/lib/ser/modules/vm.so"
>
># ----------------- setting module-specific parameters
>---------------
>
># -- tm parameters --
>modparam("tm", "fr_timer", 12)
>modparam("tm", "fr_inv_timer", 24)
>
># -- rr parameters --
>#add value to ;lr param to make some broken UAs happy
>modparam("rr", "enable_full_lr", 1)
>
># -- usrloc parameters --
>#2 enables write-back to persistent mysql storage for
>speed
>#disable=0, write-through=1
>modparam("usrloc", "db_mode", 2)
>#minimize write back window - default is 60 seconds
>modparam("usrloc", "timer_interval", 120)
>#database location
>modparam("usrloc", "db_url",
>"sql://ser:heslo@localhost/ser")
>
># -- auth parameters --
>#database location
>modparam("auth_db", "db_url",
>"sql://ser:heslo@localhost/ser")
>#allows clear text password in the mysql database
>modparam("auth_db", "calculate_ha1", yes)
>#name of password column in mysql database
>modparam("auth_db", "password_column", "password")
>
># -- acc parameters --
>modparam("acc", "log_level", 1)
>modparam("acc", "log_flag", 1)
>modparam("acc", "log_missed_flag", 3)
>
># -- msilo parameters --
>modparam("msilo", "db_table", "silo")
>
># ------------------------- request routing logic
>-------------------
># main routing logic
>
>route{
>
> #checks messages with max_forwards==0
> if (!mf_process_maxfwd_header("10"))
> {
> sl_send_reply("483","too many hops");
> break;
> };
> #or excessively long requests
> if ( msg:len > max_len )
> {
> sl_send_reply("513", "message is 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;
> };
>
> # labeled all transaction for accounting
> setflag(1);
>
> # record-route INVITES to make sure BYEs will visit
>our server too
> if (method=="INVITE") record_route();
>
> # 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")
> {
> #make sure that users don't register infinite loops
> if
>(search("^(Contact|m):.*@(172\.16\.221\.38|(proxy\.)?sip\.nyp\.edu\.sg)"))
> {
> log(1, "LOG: alert: someone trying to set
>aor==contact\n");
> sl_send_reply("476", "no server address in
>contacts allowed");
> break;
> };
>
> #Uncomment this if you want to use digest
>authentication
> # if (!www_authorize("sip.nyp.edu.sg",
>"subscriber"))
> # {
> # www_challenge("sip.nyp.edu.sg", "0");
> # break;
> # };
> save("aliases");
> save("location");
> log("REGISTER received -> dumping messages with
>MSILO\n");
>
> #MSILO - dumping user's offline messages
> if (m_dump())
> {
> log("MSILO: offline messages dumped - if they
>were\n");
> }
> else
> {
> log("MSILO: no offline messages dumped\n");
> };
> break;
> };
>
> #native SIP destinations are handled using our
>USRLOC DB
> if (!lookup("location"))
> {
> if (! t_newtran())
> {
> sl_reply_error();
> break;
> };
>
> if (!method=="MESSAGE")
> {
> if (!t_reply("404", "not found on LDAP or SER"))
> {
> sl_reply_error();
> };
> break;
> };
>
> log("MESSAGE received -> storing using MSILO\n");
> # MSILO - storing as offline message
> if (m_store("0"))
> {
> log("MSILO: offline message stored\n");
> if (!t_reply("202", "accepted for later
>delivery"))
> {
> sl_reply_error();
> };
> }
> else
> {
> log("MSILO: offline message NOT stored\n");
> if (!t_reply("503", "service unavailable"))
> {
> sl_reply_error();
> };
> };
> break;
>
> sl_send_reply("404", "not found on LDAP or SER");
> break;
> };
> #if the downstream UA does not support MESSAGE
>requests
> #go to failure_route[1]
> t_on_failure("1");
> t_relay();
> break;
>
> #native SIP destinations are handled using our
>USRLOC DB
> if (!lookup("location"))
> {
> if (!exec_dset("/etc/ser/sipldap"))
> {
> sl_send_reply("404", "not found on LDAP or SER");
> break;
> }
> else
> {
> log(1, "sipldap call");
> };
> };
> };
> setflag(3);
>
> #forward to current uri now; use stateful forwarding;
>that
> #works reliably even if we forward from TCP to UDP
> if (!t_relay())
> {
> sl_reply_error();
> break;
> };
>
> #does user wish redirection on no availability?
> #(is he in the voicemail (ser->grp) group?
> if (is_user_in("Request-URI", "voicemail"))
> {
> t_on_failure("4");
> setflag(1);
> };
>}
>
>failure_route[1] {
> #forwarding failed -- check if the request was a
>MESSAGE
> if (!method=="MESSAGE")
> {
> break;
> };
> log(1,"MSILO: the downstream UA does not support
>MESSAGE requests ...\n");
> #we have changed the R-URI with the contact address
>-- ignore it now
> if (m_store("1"))
> {
> log("MSILO: offline message stored\n");
> t_reply("202", "accepted for later delivery");
> }
> else
> {
> log("MSILO: offline message NOT stored\n");
> t_reply("503", "service unavailable");
> };
>}
>
>failure_route[4] {
> append_branch("sip:80000@sip.nyp.edu.sg");
> append_urihf("CC-Diversion: ", "\r\n");
> append_hf("P-hint: OFFLINE-VOICEMAIL\r\n");
> t_relay();
>}
>
>
>Pls do help me...
>rgds,
>Eric
>
>
>
>__________________________________
>Do you Yahoo!?
>Yahoo! Personals - Better first dates. More second dates.
>http://personals.yahoo.com
>
>_______________________________________________
>Serusers mailing list
>serusers(a)lists.iptel.org
>http://lists.iptel.org/mailman/listinfo/serusers
>
>
--
ISC Network Engineering
The University of Pennsylvania
3401 Walnut Street, Suite 221A
Philadelphia, PA 19104
voice: 215-573-8396
215-746-8001
fax: 215-898-9348
sip:blairs@upenn.edu
---------------------------------
Do you Yahoo!?
Better first dates. More second dates. Yahoo! Personals
---------------------------------
Yahoo! Messenger
Show us what our next emoticon should look like. Join the fun.
Hi, all
I met serious problems when I load mysql module of SER. But I can use SER without mysql module normally.
So Can you tell me what's version of your MySQL server installation file and libmysqlclient.so, source or binary?
Thanks a lot!
ljzhang
xueyou38(a)163.com
2005-04-04
Hi,Felipe Martins
Can you tell me what's version of your MySQL server installation file, source or binary?
Thanks a lot!
======= 2005-04-01 20:29:54 您在来信中写道:=======
> There is no problem on SER with MySQL, I have it running here with no problem, maybe the prob is your config file (ser.cfg).
> Have you tried to run SER with the default ser.cfg ?? It runs with no authentication. Have you set all the system variables for MySQL in your system ?
>
>Take a closer look at the manuals
>
>
>Best Regards.
>
>
>
>On Fri, 1 Apr 2005 20:18:39 +0800
>"ljzhang" <xueyou38(a)163.com> wrote:
>
>> Hi,
>>
>> I configure SER with Mysql. After I start SER, it don't show "successful" word, and can't end. No UA can register to SER. I found when UA sends Register message, it can't receive any response. But I use serctl command to monitor SER, I can't find any error. After I restart Linux again, Linux'start process is blocked when it is starting ser. My Linux op can't be started. That's horrible.
>>
>> Furthermore, After I configure SER with Mysql, I configure SER without Mysql again, SER also can't start nomally. The only way is to remove it and restall it.
>>
>> Can you help me!! Thanks.
>>
>> My ser.cfg is as following:
>> #
>> # $Id: ser.cfg,v 1.21.4.1 2003/11/10 15:35:15 andrei 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=7
>> 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"
>>
>> # ------------------ 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"
>>
>> # Uncomment this if you want digest authentication
>> # mysql.so must be loaded !
>> loadmodule "/usr/lib/ser/modules/auth.so"
>> loadmodule "/usr/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")
>>
>> # -- rr params --
>> # add value to ;lr param to make some broken UAs happy
>> modparam("rr", "enable_full_lr", 1)
>>
>> # ------------------------- request routing logic -------------------
>>
>> # main routing logic
>>
>> 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;
>> };
>>
>> # 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;
>> };
>>
>> # 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=~"127.0.0.1") {
>>
>> if (method=="REGISTER") {
>>
>> # Uncomment this if you want to use digest authentication
>> # if (!www_authorize("127.0.0.1", "subscriber")) {
>> # www_challenge("127.0.0.1", "0");
>> # break;
>> # };
>>
>> save("location");
>> break;
>> };
>>
>> # native SIP destinations are handled using our USRLOC DB
>> if (!lookup("location")) {
>> sl_send_reply("404", "Not Found");
>> break;
>> };
>> };
>> # forward to current uri now; use stateful forwarding; that
>> # works reliably even if we forward from TCP to UDP
>> if (!t_relay()) {
>> sl_reply_error();
>> };
>>
>> }
>>
>>
>>
>>
>>
>>
>> ________________jenny
>> ________________xueyou38(a)163.com
>> ____________________2005-04-01
>
>
>--
>Felipe Martins
>Mundivox Communications
>Tecnologia e Projetos
>fmartins(a)mundivox.com
>
>Tel.: +55 +21 +3820 8839
>Cel.: +55 +21 +9823 8602
>Fax.: +55 +21 +3820 8844
>www.mundivox.com
>
>
>_______________________________________________
>Serusers mailing list
>Serusers(a)iptel.org
>http://mail.iptel.org/mailman/listinfo/serusers
= = = = = = = = = = = = = = = = = = = =
致
礼!
ljzhang
xueyou38(a)163.com
2005-04-04
Hello SER experts,
I installed SER v0.9.0 and serweb, last CVS version. I unpacked serweb
under <web_root> directory and all the directory tree to have the
`apache:apache' priveligies. However, when I try to login, I get a warning:
Warning: fopen(/tmp/ser_fifo): failed to open stream: Permission
denied in
/var/www/html/zhrodague.net/public_html/serweb/html/functions.php on
line 267
I look at the /tmp/ser_fifo and surprised that it has the root:root
priveligies, although I run ser with the options "-u ser -g ser" (the
'ser' user has just been added just for this purpose).
So, what have I do to get the write permissions on the ser_fifo? Have
I definitely to add `ser' and/or `apache' user to the `root' group?
Thanks.
--
Best regards,
Timur Elzhov
Warelex LLC
Hi
Has anyone used meridian pbx and connected that to a multiport voip box,
or does anyone have any recommendations in general on multiport devices
and PBX setups
tks
Iqbal
Hi,
Does anyone have a LCR howto? I;ve tried google and the mailing lists:
site:http://lists.iptel.org/pipermail/serusers/ lcr
I cant find anything, I want to enable it and don't know whats required in
the ser.cfg and whats needed in the database, any examples would be great.
Thanks
Barry
Hi all...
now i have the following scenario:
I want to forward calls with an 8 as prefix to a PSTN Gateway but
when i place a call to i.e. 8004912345678 i get a busy-tone on my
VoIP Phone and the call gets canceled.
My ser.cfg is configured out, so that i can say "theoretly it have to
do" :-)
I've installed a RTPProxy too. I've took the rtpproxy from ser-cvs.
The connection between ser and rtp is ethablished when i start the ser.
On the PSTN-Gateway i can see, when i place a call, that a request comes
to the Gateway but it isn't the IP-Address of my ser but the IP-Address
of my VoIP Phone
and this IP-Address isn't allowed to connect to the PSTN-Gateway.
Also, when i reconfigure the PSTN-Gateway so that the Phone-IP-Address
is allowed to connect
then i get a busy-tone on my phone, but the PSTN Phone rings. When i
took the PSTN-Phone i hear
nothing and my VoIP-Phone doesn't ring again.
Can anyone help me ? :-(
I become crazy with it - i work now 2 weeks on this Problem :-(
Here is my ser.cfg for reference:
---
#
# $Id: ser.cfg,v 1.21.2.1 2003/07/30 16:46:18 andrei 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=7
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"
alias="terralink.de" # myself=terralink.de
alias="siiip.terralink.de" # myself=siiip.terralink.de
alias="217.9.16.13" # myself
# ------------------ 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"
# 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_radius.so"
#loadmodule "/usr/local/lib/ser/modules/acc.so"
loadmodule "/usr/local/lib/ser/modules/nathelper.so"
loadmodule "/usr/local/lib/ser/modules/xlog.so"
# ----------------- setting module-specific parameters ---------------
# -- usrloc params --
modparam("usrloc", "db_url", "mysql://ser:ser@localhost/ser")
#modparam("usrloc", "db_mode", 0)
modparam("usrloc", "db_mode", 2)
# -- auth params --
#modparam("auth_db", "db_url", "sql://ser:ser@localhost/ser")
#modparam("auth_db", "calculate_ha1", yes)
#modparam("auth_db", "password_column", "password")
modparam("auth_radius", "radius_config",
"/usr/local/etc/radiusclient/radiusclient.conf")
# -- rr params --
modparam("rr", "enable_full_lr", 1)
# -- acc params --
#modparam("acc", "log_level", 1)
#modparam("acc", "log_flag", 1 )
#modparam("acc", "log_missed_flag", 3)
#modparam("acc", "radius_config",
"/usr/local/etc/radiusclient/radiusclient.conf")
#modparam("acc", "radius_flag", 1)
#modparam("acc", "radius_missed_flag", 3)
# -- nat params --
modparam("nathelper", "natping_interval", 10)
modparam("nathelper","rtpproxy_sock", "/var/run/rtpproxy.sock")
# ------------------------- request routing logic -------------------
# main routing logic
route{
# zu viele Hops ?
if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483","Too Many Hops");
break;
};
# nachricht zu lang ?
if ( msg:len > 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; };
# labeled all transaction for accounting
setflag(1);
#if (!lookup("location")) {
# # call invitations to off-line users are reported using the
# # acc_request action; to avoid duplicate reports on request
# # retransmissions, request is processed statefuly
(t_newtran,
# # t_reply)
# if ((method=="INVITE" || method=="ACK") && t_newtran() ) {
# t_reply("404", "Not Found");
# #acc_request("404 Not Found");
# break;
# };
# # all other requests to off-line users are simply replied
# # statelessly and no reports are issued
# #sl_send_reply("404", "Not Found");
# #break;
#} else {
# # user on-line; report on failed transactions; mark the
# # transaction for reporting using the same number as
# # configured above; if the call is really missed, a report
# # will be issued
# setflag(3);
# # forward to user's current destination
# t_relay();
# 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) {
rewritehost("siiip.terralink.de");
#xlog("L_DBG", "time [%Tf] method <%rm> r-uri <%ru> from
<%fu> contact <%ct>\n");
if (method=="REGISTER") { route(1); break; };
if (method=="INVITE") {
fix_nated_contact();
record_route();
force_rtp_proxy();
if (uri=~"^sip:(.+)?@(.+)?") { route(3); break; }
#else { break; };
}
lookup("aliases");
# native SIP destinations are handled using our USRLOC DB
if (!lookup("location")) {
#if (!lookup("location") || !lookup("aliases")) {
sl_send_reply("404", "Not Found");
break;
};
};
# forward to current uri now; use stateful forwarding; that
# works reliably even if we forward from TCP to UDP
if (!t_relay()) {
sl_reply_error();
};
}
route[1] {
#xlog("L_DBG", "Hier registriert sich jemand !\n");
if (!radius_www_authorize("")) {
www_challenge("", "0");
break;
};
save("location");
break;
}
#route[2] {
#xlog("L_DBG", "Hier will jemand intern telefonieren !\n");
#}
route[3] {
#xlog("L_DBG", "Hier will jemand extern telefonieren !\n");
#strip(1);
#rewritehostport("217.9.16.13:5060");
rewritehostport("217.9.21.6:5060");
#forward( 217.9.16.11, 5060 );
append_branch("sip:sip@217.9.16.13");
#t_relay_to_udp("217.9.21.6", "5060");
if (!t_relay_to_udp("217.9.21.6", "5060")) {
sl_reply_error();
break;
};
}
Hi All.
If I have the following INVITE message, the message is sent to 10.3.0.221:5060.
How does t_relay() determine this? Is it because that is the IP in the R-URI?
I have a very odd situation where the INVITE is sent to an IP that is
the same as the SER proxy, but the R-URI is a SIP phone on the public
internet.
This causes SER to send the message to iteself, which then causes
(uri==myself) to be FALSE and I just t_relay() it again in my default
handling.
Does anyone know why ser might attempt to send a message to an IP that
is __not__ the R-URI? In this example I do have "sip.mycompany.com"
defined as an alias so I'm not sure what could be causing this loop.
U 2005/04/01 11:15:09.620910 66.90.46.29:33697 -> 10.3.0.221:5060
INVITE sip:3212514239@sip.mycompany.com;user=phone SIP/2.0.
Via: SIP/2.0/UDP 172.31.130.83:33697;branch=z9hG4bK02b13d3f9557e284.
U 2005/04/01 11:15:09.633247 10.3.0.221:5060 -> 66.90.46.29:33697
SIP/2.0 100 trying -- your call is important to us.
Via: SIP/2.0/UDP
172.31.130.83:33697;branch=z9hG4bK02b13d3f9557e284;rport=33697;received=66.90.46.29.
U 2005/04/01 11:15:09.633687 10.3.0.221:5060 -> 10.3.0.221:5060
INVITE sip:3212514239@172.31.130.110;user=phone SIP/2.0.
Record-Route: <sip:3212514239@10.3.0.221:5060;nat=yes;ftag=946f5da2c0d8a21c;lr>.
Via: SIP/2.0/UDP 10.3.0.221;branch=z9hG4bK8ca2.b43bda21.0.
Via: SIP/2.0/UDP
172.31.130.83:33697;rport=33697;received=66.90.46.29;branch=z9hG4bK02b13d3f9557e284.
Regards,
Paul