<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=koi8-r">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>I found some example configuration someware here i 
the mailing lisy but throw some strange error .. </FONT></DIV>
<DIV><FONT face=Arial size=2>here is the configuration files </FONT></DIV>
<DIV><FONT face=Arial size=2>1. Conf file for the main ser server </FONT></DIV>
<DIV><FONT face=Arial size=2>#<BR># $Id: ser.cfg,v 1.21 2003/06/04 13:47:36 jiri 
Exp $<BR>#<BR># simple quick-start config script<BR>#</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2># ----------- global configuration parameters 
------------------------</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial 
size=2>debug=3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # debug level 
(cmd line: -dddddddddd)<BR>fork=yes<BR>log_stderror=no&nbsp;# (cmd line: 
-E)</FONT></DIV>
<DIV>&nbsp;</DIV><FONT face=Arial size=2>
<DIV><BR># Uncomment these lines to enter debugging mode 
<BR>/*<BR>debug=7<BR>fork=no<BR>log_stderror=yes<BR>*/</DIV>
<DIV>&nbsp;</DIV>
<DIV>check_via=no&nbsp;# (cmd. line: 
-v)<BR>dns=no&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # 
(cmd. line: -r)<BR>rev_dns=no&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # (cmd. line: 
-R)<BR>listen=80.72.85.178<BR>port=5060<BR>children=4<BR>fifo="/tmp/ser_fifo"<BR>alias=testinfo.intersoftpro.com 
127.0.0.1 80.72.85.178</DIV>
<DIV>&nbsp;</DIV>
<DIV># ------------------ module loading 
----------------------------------</DIV>
<DIV>&nbsp;</DIV>
<DIV># Uncomment this if you want to use SQL database<BR>loadmodule 
"/usr/local/lib/ser/modules/mysql.so"</DIV>
<DIV>&nbsp;</DIV>
<DIV>loadmodule "/usr/local/lib/ser/modules/sl.so"<BR>loadmodule 
"/usr/local/lib/ser/modules/tm.so"<BR>loadmodule 
"/usr/local/lib/ser/modules/rr.so"<BR>loadmodule 
"/usr/local/lib/ser/modules/maxfwd.so"<BR>loadmodule 
"/usr/local/lib/ser/modules/usrloc.so"<BR>loadmodule 
"/usr/local/lib/ser/modules/registrar.so"<BR>loadmodule 
"/usr/local/lib/ser/modules/textops.so"</DIV>
<DIV>&nbsp;</DIV>
<DIV># Uncomment this if you want digest authentication<BR># mysql.so must be 
loaded !<BR>loadmodule "/usr/local/lib/ser/modules/auth.so"<BR>loadmodule 
"/usr/local/lib/ser/modules/auth_db.so"</DIV>
<DIV>&nbsp;</DIV>
<DIV># load the voicemail module<BR>#loadmodule 
"/usr/local/lib/ser/modules/vm.so"</DIV>
<DIV>&nbsp;</DIV>
<DIV># load the enum module<BR>loadmodule 
"/usr/local/lib/ser/modules/enum.so"</DIV>
<DIV>&nbsp;</DIV>
<DIV># load the group module, to verify if a user forwards to 
voicemail<BR>loadmodule "/usr/local/lib/ser/modules/group.so"</DIV>
<DIV>&nbsp;</DIV>
<DIV># load the nathelper module<BR>loadmodule 
"/usr/local/lib/ser/modules/nathelper.so"</DIV>
<DIV>&nbsp;</DIV>
<DIV># ----------------- setting module-specific parameters 
---------------</DIV>
<DIV>&nbsp;</DIV>
<DIV># -- registrar parameter<BR># special NAT flag indicates that a registered 
client is behind NAT<BR>modparam("registrar", "nat_flag", 6)</DIV>
<DIV>&nbsp;</DIV>
<DIV># -- usrloc params --</DIV>
<DIV>&nbsp;</DIV>
<DIV>#modparam("usrloc", "db_mode",&nbsp;&nbsp; 0)</DIV>
<DIV>&nbsp;</DIV>
<DIV># Uncomment this if you want to use SQL database <BR># for persistent 
storage and comment the previous line<BR>modparam("usrloc", "db_mode", 
2)<BR>modparam("usrloc", "db_url", "mysql://ser:heslo@localhost/ser")</DIV>
<DIV>&nbsp;</DIV>
<DIV># -- auth params --<BR># Uncomment if you are using auth 
module<BR>#<BR>modparam("auth_db", "calculate_ha1", yes)<BR>#<BR># If you set 
"calculate_ha1" parameter to yes (which true in this config), <BR># uncomment 
also the following parameter)<BR>#<BR>modparam("auth_db", "password_column", 
"password")<BR>modparam("auth_db", "db_url", 
"mysql://ser:heslo@localhost/ser")</DIV>
<DIV>&nbsp;</DIV>
<DIV># -- rr params --<BR># add value to ;lr param to make some broken UAs 
happy<BR>modparam("rr", "enable_full_lr", 1)</DIV>
<DIV>&nbsp;</DIV>
<DIV># -- voicemail params --<BR>#modparam("voicemail", 
"db_url","mysql://ser:heslo@localhost/ser")</DIV>
<DIV>&nbsp;</DIV>
<DIV># -- voicemail params --<BR>modparam("group", 
"db_url","mysql://serro:heslo@localhost/ser")</DIV>
<DIV>&nbsp;</DIV>
<DIV># -- nathelper params --<BR>modparam("nathelper", "natping_interval", 
60)<BR>modparam("nathelper", "ping_nated_only", 1)</DIV>
<DIV>&nbsp;</DIV>
<DIV>modparam("tm", "fr_inv_timer", 30 )<BR>#modparam("tm", "fr_inv_timer", 8 
)</DIV>
<DIV>&nbsp;</DIV>
<DIV># -------------------------&nbsp; request routing logic 
-------------------</DIV>
<DIV>&nbsp;</DIV>
<DIV># main routing logic</DIV>
<DIV>&nbsp;</DIV>
<DIV>route{<BR>&nbsp;log(1, 
"-------------------------------------------\n");<BR>&nbsp;log(1, "entering main 
loop\n");<BR>&nbsp;<BR>&nbsp;if (nat_uac_test("2")) {<BR>&nbsp;&nbsp;log(1, "src 
address different than via header-&gt;NAT detected\n");<BR>&nbsp;&nbsp;log(1, 
"force_rport and fix_nated_contact and setflag(5)\n");<BR>&nbsp;&nbsp;#try NAT 
traversal, works only if the client is 
symmetrical<BR>&nbsp;&nbsp;force_rport();<BR>&nbsp;&nbsp;fix_nated_contact();<BR>&nbsp;&nbsp;append_hf("P-hint: 
fixed NAT contact for request\r\n");<BR>&nbsp;&nbsp;# flag 5 indicates that 
incoming request is from NATed 
client<BR>&nbsp;&nbsp;setflag(5);<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (method=="REGISTER")<BR>&nbsp;&nbsp;log(1, "REGISTER message 
received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (method=="INVITE")<BR>&nbsp;&nbsp;log(1, "INVITE message 
received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (method=="ACK")<BR>&nbsp;&nbsp;log(1, "ACK message 
received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (method=="BYE")<BR>&nbsp;&nbsp;log(1, "BYE message 
received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="CANCEL")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "CANCEL message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (method=="SUBSCRIBE")<BR>&nbsp;&nbsp;log(1, "SUBSCRIBE message 
received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (method=="NOTIFY")<BR>&nbsp;&nbsp;log(1, "NOTIFY message 
received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (method=="OPTIONS")<BR>&nbsp;&nbsp;log(1, "OPTIONS message 
received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (method=="INFO")<BR>&nbsp;&nbsp;log(1, "INFO message 
received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (method=="MESSAGE")<BR>&nbsp;&nbsp;log(1, "MESSAGE message 
received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (method=="REFER")<BR>&nbsp;&nbsp;log(1, "REFER message 
received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;# initial sanity checks -- messages with<BR>&nbsp;# max_forwards==0, 
or excessively long requests<BR>&nbsp;if (!mf_process_maxfwd_header("10")) 
{<BR>&nbsp;&nbsp;sl_send_reply("483","Too Many 
Hops");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (msg:len &gt; max_len) {<BR>&nbsp;#if (len_gt( max_len )) 
{<BR>&nbsp;&nbsp;sl_send_reply("513", "Message too 
big");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};<BR>&nbsp;<BR>&nbsp;# loose-route 
processing<BR>&nbsp;if (loose_route()) {<BR>&nbsp;&nbsp;log(1, "loose_route 
processing\n");<BR>&nbsp;&nbsp;t_relay();<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;# create transaction state; abort if error occured<BR>#&nbsp;if ( 
!t_newtran()) 
{<BR>#&nbsp;&nbsp;sl_reply_error();<BR>#&nbsp;&nbsp;break;<BR>#&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;# if the request is for other domain use UsrLoc<BR>&nbsp;# (in case, 
it does not work, use the following command<BR>&nbsp;# with proper names and 
addresses in it)<BR>&nbsp;if (uri==myself) {</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;if (method=="REGISTER") {<BR>&nbsp;&nbsp;&nbsp;log(1, 
"analyzing REGISTER request\n");<BR># Uncomment this if you want to use digest 
authentication<BR>&nbsp;&nbsp;&nbsp;if (!www_authorize("80.72.85.178", 
"subscriber")) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;www_challenge("80.72.85.178", 
"0");<BR>&nbsp;&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;&nbsp;<BR>&nbsp;&nbsp;&nbsp;if 
(isflagset(5)) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;#register from nated client, save 
nat_flag=6<BR>&nbsp;&nbsp;&nbsp;&nbsp;#in location 
table<BR>&nbsp;&nbsp;&nbsp;&nbsp;setflag(6);<BR>&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;&nbsp;if 
(!save("location")) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;log(1, "save location 
error\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;sl_reply_error();<BR>&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;lookup("aliases");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;# check if number beginns with 00, then convert it into a 
+<BR>&nbsp;&nbsp;if (uri=~"^sip:359[0-9]*@") {<BR>&nbsp;&nbsp;&nbsp;log(1, "00 
International number detected\n");<BR>&nbsp;&nbsp;&nbsp;# strip booth leading 
"0"<BR>&nbsp;&nbsp;&nbsp;strip(2);<BR>&nbsp;&nbsp;&nbsp;prefix("+");<BR>&nbsp;&nbsp;};<BR>&nbsp;&nbsp;# 
check if request uri begins with an internation phone number, if yes, try enum 
to resolve<BR>&nbsp;&nbsp;if (uri=~"^sip:\+[0-9]*@") 
{<BR>&nbsp;&nbsp;&nbsp;log(1, "+ International number 
detected\n");<BR>&nbsp;&nbsp;&nbsp;if (!enum_query("voice")) 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;log(1, "ENUM query failed, try enum without voice 
prefix\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;if (enum_query("")) 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log(1, "ENUM without voice prefix also 
failed\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;if (uri != myself) {<BR>&nbsp;&nbsp;&nbsp;&nbsp;log(1, 
"ENUM lookup revealed an external address, 
relaying...");<BR>&nbsp;&nbsp;&nbsp;&nbsp;route(1);<BR>&nbsp;&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;};<BR>&nbsp;<BR>&nbsp;&nbsp;#mark 
transaction for voicemail<BR>&nbsp;&nbsp;if (is_user_in("Request-URI", 
"voicemail\n")) {<BR>&nbsp;&nbsp;&nbsp;log(1, "requested user is in voicemail 
group");<BR>&nbsp;&nbsp;&nbsp;setflag(4);<BR>&nbsp;&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;# native SIP destinations are handled using our USRLOC 
DB<BR>&nbsp;&nbsp;if (!lookup("location")) {<BR>&nbsp;&nbsp;&nbsp;# handle user 
which was not found<BR>&nbsp;&nbsp;&nbsp;log(1, "requested user not 
found\n");<BR>&nbsp;&nbsp;&nbsp;route(4);<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;};<BR>&nbsp;};<BR>&nbsp;<BR>&nbsp;#add 
failure route which should be performed if response code 
&gt;=300<BR>&nbsp;if&nbsp; (method=="INVITE" &amp;&amp; isflagset(4)) 
{<BR>&nbsp;&nbsp;log(1, "invite for voicemail user-&gt;initiate 
failureroute[1]\n");<BR>&nbsp;&nbsp;t_on_failure("1");<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;# forward to current uri now; use stateful forwarding; 
that<BR>&nbsp;# works reliably even if we forward from TCP to UDP</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;route(1);<BR>}</DIV>
<DIV>&nbsp;</DIV>
<DIV>route[1]{<BR>&nbsp;log(1, 
"-------------------------------------------\n");<BR>&nbsp;log(1, "entering 
route[1] - relaying SIP message\n");<BR>&nbsp;if ((isflagset(5)) || 
(isflagset(6))) {<BR>&nbsp;&nbsp;log(1, "at least one of the participants is 
NATed-&gt;record_route\n");<BR>&nbsp;&nbsp;record_route();<BR>&nbsp;&nbsp;log(1, 
"&nbsp;&nbsp;&nbsp;&nbsp; --&gt;setting up reply processing 
-&gt;onreply_route[1]");<BR>&nbsp;&nbsp;t_on_reply("1");<BR>&nbsp;&nbsp;if 
(method=="INVITE") {<BR>&nbsp;&nbsp;&nbsp;log(1, "&nbsp;&nbsp;&nbsp;&nbsp; 
INVITE request--&gt;force_rtp_proxy, set NATED-INVITE 
flag(7)");<BR>&nbsp;&nbsp;&nbsp;force_rtp_proxy();<BR>&nbsp;&nbsp;&nbsp;append_hf("P-hint: 
request forced to rtp 
proxy\r\n");<BR>&nbsp;&nbsp;&nbsp;setflag(7);<BR>&nbsp;&nbsp;};<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;log(1, "relaying message ...\n");<BR>&nbsp;if (!t_relay()) 
{<BR>&nbsp;&nbsp;log(1, "t_relay error 
occured\n");<BR>&nbsp;&nbsp;sl_reply_error();<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>}</DIV>
<DIV>&nbsp;</DIV>
<DIV># all incoming replies for t_onrepli-ed transactions enter 
here<BR>onreply_route[1] {<BR>&nbsp;log(1, 
"-------------------------------------------\n");<BR>&nbsp;log(1, 
"onreply_route[1] entered\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if (isflagset(6)) {<BR>&nbsp;&nbsp;log(1, "transaction was sent to a 
NATED client -&gt; fix nated 
contact\n");<BR>&nbsp;&nbsp;fix_nated_contact();<BR>&nbsp;&nbsp;append_hf("P-hint: 
fixed NAT contact for response\r\n");<BR>&nbsp;}</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if ( (status=~"100") ) {<BR>&nbsp;&nbsp;log(1, "status 100 
received\n");<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if ( (status=~"180") ) {<BR>&nbsp;&nbsp;log(1, "status 180 
received\n");<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if ( (status=~"202") ) {<BR>&nbsp;&nbsp;log(1, "status 202 
received\n");<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if ( (status=~"200" || status=~"183") ) {<BR>&nbsp;&nbsp;log(1, 
"status 2xx or 183");<BR>&nbsp;&nbsp;if ( isflagset(7) ) 
{<BR>&nbsp;&nbsp;&nbsp;log(1, "marked(7) as NATED-INVITE -&gt; force_rtp_proxy 
\n");<BR>&nbsp;&nbsp;&nbsp;force_rtp_proxy();<BR>&nbsp;&nbsp;&nbsp;append_hf("P-hint: 
response forced to rtp 
proxy\r\n");<BR>&nbsp;&nbsp;};<BR>&nbsp;};<BR>}&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>route[4]{<BR>&nbsp;log(1, 
"-------------------------------------------\n");<BR>&nbsp;log(1, "entering 
route[4] = requested user not online\n");<BR>&nbsp;# non-Voip -- just send 
"off-line"<BR>&nbsp;if (!(method == "INVITE" || method == "ACK" || method == 
"CANCEL" || method == "REFER" || method == "BYE")) {<BR>&nbsp;&nbsp;log(1, "no 
invite,ack,cancel,refer-&gt;return 404\n");<BR>&nbsp;&nbsp;sl_send_reply("404", 
"Not Found");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;# not voicemail subscriber and no echo/conference 
call<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ( isflagset(4)) 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "flag(4) active\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
};<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (uri =~ "conference") 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "conference call\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
};<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (uri =~ "echo") 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "echo call\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
};<BR>&nbsp;if ( !( isflagset(4) || (uri =~ "conference") || (uri =~ "echo") ) ) 
{<BR>&nbsp;&nbsp;log(1, "no voicemail subscriber-&gt;return 404"); 
<BR>&nbsp;&nbsp;sl_send_reply("404", "Not Found and no voicemail turned 
on");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if ( isflagset(5) ) 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "caller is 
NATed-&gt;record_route\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
record_route();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "&nbsp;&nbsp;&nbsp;&nbsp; --&gt;setting up reply processing 
-&gt;onreply_route[1]");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
t_on_reply("1");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
if (method=="INVITE") 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "&nbsp;&nbsp;&nbsp;&nbsp; INVITE 
request--&gt;force_rtp_proxy");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
force_rtp_proxy();<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
};<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; };<BR>&nbsp;<BR>&nbsp;# forward 
to voicemail 
now<BR>&nbsp;#rewritehostport("machtnix.ict.tuwien.ac.at:5060");<BR>&nbsp;log(1, 
"forward to voicemail\n");<BR>&nbsp;t_relay_to_udp("80.72.85.178", 
"5090");<BR>&nbsp;<BR>&nbsp;#klaus<BR>&nbsp;#forward(machtnix.ict.tuwien.ac.at, 
5060)<BR>}</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR>&nbsp;&nbsp;&nbsp;<BR>failure_route[1] {<BR>&nbsp; /* XX: note: unsafe 
if preloaded routes without username used */<BR>&nbsp;log(1, 
"-------------------------------------------\n");<BR>&nbsp;log(1, 
"failureroute[1] 
entered\");<BR>&nbsp;revert_uri();<BR>&nbsp;#rewritehostport("machtnix.ict.tuwien.ac.at:5060");<BR>#&nbsp;append_branch();<BR>&nbsp;t_relay_to_udp("machtnix.ict.tuwien.ac.at", 
"5060");<BR>}</DIV>
<DIV>2. Configuration for the second instance of the ser server (for voice mail 
(</DIV>
<DIV>#<BR># $Id: ser.cfg,v 1.21 2003/06/04 13:47:36 jiri Exp $<BR>#<BR># simple 
quick-start config script<BR>#</DIV>
<DIV>&nbsp;</DIV>
<DIV># ----------- global configuration parameters 
------------------------</DIV>
<DIV>&nbsp;</DIV>
<DIV>debug=3&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # debug level (cmd 
line: -dddddddddd)<BR>fork=yes<BR>log_stderror=no&nbsp;# (cmd line: -E)</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR>#Uncomment these lines to enter debugging 
mode<BR>/*<BR>debug=7<BR>fork=no<BR>log_stderror=yes<BR>*/</DIV>
<DIV>&nbsp;</DIV>
<DIV>check_via=no&nbsp;# (cmd. line: 
-v)<BR>dns=no&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # 
(cmd. line: -r)<BR>rev_dns=no&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; # (cmd. line: 
-R)<BR>listen=80.72.85.178<BR>port=5090<BR>children=4<BR>fifo="/tmp/ser_fifo"<BR>alias=testinfo.intersoftpro.com 
127.0.0.1 80.72.85.178</DIV>
<DIV>&nbsp;</DIV>
<DIV># ------------------ module loading 
----------------------------------</DIV>
<DIV>&nbsp;</DIV>
<DIV># Uncomment this if you want to use SQL database<BR>loadmodule 
"/usr/local/lib/ser/modules/mysql.so"</DIV>
<DIV>&nbsp;</DIV>
<DIV>loadmodule "/usr/local/lib/ser/modules/sl.so"<BR>loadmodule 
"/usr/local/lib/ser/modules/tm.so"<BR>loadmodule 
"/usr/local/lib/ser/modules/rr.so"<BR>loadmodule 
"/usr/local/lib/ser/modules/maxfwd.so"</DIV>
<DIV>&nbsp;</DIV>
<DIV># load the voicemail module<BR>loadmodule 
"/usr/local/lib/ser/modules/vm.so"</DIV>
<DIV>&nbsp;</DIV>
<DIV># ----------------- setting module-specific parameters 
---------------</DIV>
<DIV>&nbsp;</DIV>
<DIV>modparam("voicemail", "db_url","mysql://ser:heslo@localhost/ser")</DIV>
<DIV>&nbsp;</DIV>
<DIV># -------------------------&nbsp; request routing logic 
-------------------</DIV>
<DIV>&nbsp;</DIV>
<DIV># main routing logic</DIV>
<DIV>&nbsp;</DIV>
<DIV>route{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; log(1, "entering main 
loop\n");&nbsp; <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="REGISTER")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "REGISTER message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="INVITE")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "INVITE message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="ACK")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "ACK message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="BYE")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "BYE message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="CANCEL")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "CANCEL message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="SUBSCRIBE")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "SUBSCRIBE message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="NOTIFY")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "NOTIFY message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="OPTIONS")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "OPTIONS message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="INFO")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "INFO message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="MESSAGE")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "MESSAGE message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if 
(method=="REFER")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "REFER message received\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>#&nbsp;lookup("aliases");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;# initial sanity checks -- messages with<BR>&nbsp;# max_forwards==0, 
or excessively long requests<BR>&nbsp;if (!mf_process_maxfwd_header("10")) 
{<BR>&nbsp;&nbsp;sl_send_reply("483","Too Many 
Hops");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>#&nbsp;check changed from 0.8.11 to 0.8.12<BR>#&nbsp;if (len_gt( max_len )) 
{<BR>&nbsp;if (msg:len &gt; max_len) {<BR>&nbsp;&nbsp;sl_send_reply("513", 
"Message too big");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>#&nbsp;if (!uri==myself) {<BR>#&nbsp;&nbsp;sl_send_reply("404", "not 
reponsible for host in request-uri");<BR>#&nbsp;&nbsp;break;<BR>#&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;# Voicemail specific configuration - begin</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;if(method=="ACK" || method=="INVITE" || method=="BYE" || 
method=="REFER" || 
method=="CANCEL"){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "Entering voicemail processing\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "check if new transaction ... 
\n");<BR>&nbsp;&nbsp;if(t_newtran()){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "... yes, new 
transaction\n");<BR>&nbsp;&nbsp;&nbsp;t_reply("100","voicemail ser - Trying -- 
just wait a minute !");<BR>&nbsp;&nbsp;&nbsp;t_reply("100","voicemail ser - 
Trying 2 -- just wait a minute !");<BR>&nbsp;&nbsp;&nbsp;if(method=="INVITE" || 
method=="REFER"){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log("**************** vm 
start - begin ******************\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if( uri 
=~ "conference" 
){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "incoming conference 
call\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!vm("/tmp/am_fifo","conference")){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log("could 
not contact conference 
server\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;t_reply("500","could 
not contact conference 
server");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else 
if( uri =~ "echo" 
){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "incoming echo 
call\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!vm("/tmp/am_fifo","echo")){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log("could 
not contact 
echo\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;t_reply("500","could not 
contact 
echo");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
log(1, "incoming voicemail 
call\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!vm("/tmp/am_fifo","voicemail")){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log("could 
not contact 
voicemail\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;t_reply("500","could 
not contact 
voicemail");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log("**************** 
vm start - end 
******************\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;&nbsp;if(method=="BYE" || 
method=="CANCEL"){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log("**************** vm 
end/refer - begin 
******************\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(!vm("/tmp/am_fifo","bye")){<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log("could 
not contact the media 
server\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;t_reply("500","could not 
contact the media 
server");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;log("**************** 
vm end/refer - end 
********************\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;}<BR>&nbsp;&nbsp;else 
{<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; log("could not create new 
transaction\n");<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
sl_send_reply("500","could not create new 
transaction");<BR>&nbsp;&nbsp;};<BR>&nbsp;};</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;&nbsp;# Voicemail specific configuration - end</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;sl_send_reply("501", "method not understood here");<BR>&nbsp;log(1, 
"method not understood here\n");</DIV>
<DIV>&nbsp;</DIV>
<DIV>}</DIV>
<DIV>3. Configuration for sems server </DIV>
<DIV># $Id: sems.conf.sample,v 1.11.2.1 2004/01/27 15:08:28 rco Exp $<BR>#<BR># 
sems.conf.sample<BR>#<BR># Sip Express Media Server (sems)<BR># <BR># sample 
configuration file<BR># <BR>#<BR># whitespaces (spaces and tabs) are 
ignored<BR># comments start with a "#" and may be used inline<BR># <BR># 
example: option=value1, value2&nbsp; # i like this option<BR>#</DIV>
<DIV>&nbsp;</DIV>
<DIV>##################################<BR># global 
parameters&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
#<BR>##################################</DIV>
<DIV>&nbsp;</DIV>
<DIV># optional parameter: fork={yes|no}<BR># <BR># - specifies if sems should 
run in daemon mode (background)<BR>#&nbsp;&nbsp; (fork=no is the same as 
-E)<BR>fork=yes</DIV>
<DIV>&nbsp;</DIV>
<DIV># optional parameter: stderr={yes|no}<BR>#<BR># - debug mode: do not fork 
and log to stderr<BR>#&nbsp;&nbsp; (stderr=yes is the same as 
-E)<BR>stderr=no</DIV>
<DIV>&nbsp;</DIV>
<DIV># optional parameter: loglevel={0|1|2|3}<BR>#<BR># - sets log level 
(error=0, warning=1, info=2, debug=3)<BR>#&nbsp;&nbsp; (same as 
-D)<BR>loglevel=1</DIV>
<DIV>&nbsp;</DIV>
<DIV># optional parameter: fifo_name=&lt;filename&gt;<BR>#<BR># - path and file 
name of our fifo file (same as -i)<BR>fifo_name=/tmp/am_fifo</DIV>
<DIV>&nbsp;</DIV>
<DIV># optional parameter: ser_fifo_name=&lt;filename&gt;<BR>#<BR># - path and 
file name of Ser's fifo file (same as -o)<BR>ser_fifo_name=/tmp/ser_fifo</DIV>
<DIV>&nbsp;</DIV>
<DIV># optional parameter: plugin_path=&lt;path&gt;<BR># <BR># - sets the path 
to the plug-ins<BR># - may be absolute or relative to 
CWD<BR>plugin_path=/usr/local/lib/sems/plug-in/</DIV>
<DIV>&nbsp;</DIV>
<DIV># optional parameter: smtp_server=&lt;hostname&gt;<BR>#<BR># - sets address 
of smtp server<BR>smtp_server=localhost</DIV>
<DIV>&nbsp;</DIV>
<DIV># optional parameter: smtp_port=&lt;port&gt;<BR>#<BR># - sets port of smtp 
server<BR>smtp_port=25</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR>##################################<BR># module specific 
parameters&nbsp;&nbsp;&nbsp;&nbsp; #<BR>##################################</DIV>
<DIV>&nbsp;</DIV>
<DIV># sample voicemail configuration (inline)<BR>config.voicemail=inline</DIV>
<DIV>&nbsp;</DIV>
<DIV># optional parameter: announce_path=&lt;path&gt;<BR># <BR># - sets the path 
where announce files are searched for<BR># - the file to be played is determined 
the following way:<BR>#&nbsp;&nbsp; 
&lt;announce_path&gt;/&lt;domainname&gt;/&lt;username&gt;.wav<BR>#&nbsp;&nbsp; 
if this file is not available &lt;announce_path&gt;/&lt;default_anounce&gt; is 
used<BR>announce_path=/usr/local/lib/sems/audio/</DIV>
<DIV>&nbsp;</DIV>
<DIV># parameter: default_announce=&lt;filename&gt;<BR># <BR># - sets the name 
of the default announce WAV file<BR>default_announce=default_en.wav</DIV>
<DIV>&nbsp;</DIV>
<DIV># parameter: max_record_time=&lt;seconds&gt;<BR>#<BR># - maximum record 
time<BR>max_record_time=30</DIV>
<DIV>&nbsp;</DIV>
<DIV># parameter: 
accept_delay=&lt;x&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<BR>#<BR># - delays accepting of the call for x 
seconds&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <BR># - default value is 
0&nbsp;&nbsp;&nbsp;&nbsp; <BR>accept_delay=20</DIV>
<DIV>&nbsp;</DIV>
<DIV># end of configuration section <BR># for voicemail 
module<BR>config.voicemail=end</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR># sample announcement configuration 
(inline)<BR>config.announcement=inline</DIV>
<DIV>&nbsp;</DIV>
<DIV># optional parameter: announce_path=&lt;path&gt;<BR># <BR># - sets the path 
where announce files are searched 
for<BR>announce_path=/usr/local/lib/sems/audio/</DIV>
<DIV>&nbsp;</DIV>
<DIV># parameter: default_announce=&lt;filename&gt;<BR># <BR># - sets the name 
of the default announce WAV file<BR>default_announce=default_en.wav</DIV>
<DIV>&nbsp;</DIV>
<DIV># end of configuration section for announcement 
module<BR>config.announcement=end</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR># sample isdngw module configuration (external file)<BR># 
config.isdngw=/etc/isdngw.conf</DIV>
<DIV>&nbsp;</DIV>
<DIV># sample ivr module configuration (inline)<BR>config.ivr=inline</DIV>
<DIV>&nbsp;</DIV>
<DIV>#parameter: python_script_path=&lt;full 
path&gt;<BR>python_script_path=/etc/ivr</DIV>
<DIV>&nbsp;</DIV>
<DIV>#parameter: 
python_script_file=&lt;filename&gt;<BR>python_script_file=example.py</DIV>
<DIV>&nbsp;</DIV>
<DIV># end of configuration section for ivr module<BR>config.ivr=end</DIV>
<DIV>&nbsp;</DIV>
<DIV><BR># sample conference configuration 
(inline)<BR>config.conference=inline</DIV>
<DIV>&nbsp;</DIV>
<DIV># parameter: default_announce=&lt;filename&gt;<BR>#<BR># - sets the full 
pathed name of the default announce WAV file.<BR>#&nbsp;&nbsp; Will be played to 
lonely 
users.<BR>default_announce=/usr/local/lib/sems/audio/first_participant.wav</DIV>
<DIV>&nbsp;</DIV>
<DIV># end of configuration section for conference 
module<BR>config.conference=end</DIV>
<DIV>&nbsp;</DIV>
<DIV># example configuration for number 
reader<BR>config.number_reader=inline</DIV>
<DIV>&nbsp;</DIV>
<DIV>number_path=/usr/local/lib/sems/audio/</DIV>
<DIV>&nbsp;</DIV>
<DIV>prolog_file=welcome_to_number_reader.wav</DIV>
<DIV>&nbsp;</DIV>
<DIV>epilog_file=thanks_calling_number_reader.wav</DIV>
<DIV>&nbsp;</DIV>
<DIV># end of number_reader configuration<BR>config.number_reader=end</DIV>
<DIV>&nbsp;</DIV>
<DIV># add more module configurations here (inline or external):<BR>#<BR># 
config.mymodule=&lt;filename&gt;<BR>#&nbsp; or<BR># config.mymodule=inline<BR># 
..<BR># config.mymodule=end</DIV>
<DIV>&nbsp;</DIV>
<DIV>Error is in second instance of the ser server </DIV>
<DIV>&nbsp;0(19586) **************** vm start - end 
******************<BR>&nbsp;0(19586) DEBUG:destroy_avp_list: destroing list 
(nil)<BR>&nbsp;0(19586) receive_msg: cleaning up<BR>&nbsp;2(19588) ERROR: 
fifo_server: command t_reply is not available<BR>&nbsp;2(19588) ERROR: 
fifo_server: command must begin with :: ringing<BR>&nbsp;2(19588) ERROR: 
fifo_server: command must begin with :: 00004C89728793F0<BR>&nbsp;2(19588) 
ERROR: fifo_server: command must have at least 3 chars<BR>&nbsp;2(19588) INFO: 
fifo_server: command empty<BR>&nbsp;2(19588) ERROR: fifo_server: command t_reply 
is not available<BR>&nbsp;2(19588) ERROR: fifo_server: command must have at 
least 3 chars<BR>&nbsp;2(19588) ERROR: fifo_server: command must begin with :: 
00004C89728793F0<BR>&nbsp;2(19588) ERROR: fifo_server: command must begin with 
:: Content-Type: application/sdp<BR>&nbsp;2(19588) ERROR: fifo_server: command 
must begin with :: v=0<BR>&nbsp;2(19588) ERROR: fifo_server: command must begin 
with :: s=session<BR>&nbsp;2(19588) ERROR: fifo_server: command must begin with 
:: t=0 0<BR>&nbsp;2(19588) ERROR: fifo_server: command must begin with :: 
a=rtpmap:0 /<BR>&nbsp;2(19588) INFO: fifo_server: command 
empty<BR>&nbsp;2(19588) ERROR: fifo_server: command t_reply is not 
available<BR>&nbsp;2(19588) ERROR: fifo_server: command must begin with :: could 
not send response.<BR>&nbsp;2(19588) ERROR: fifo_server: command must begin with 
:: 00004C89728793F0<BR>&nbsp;2(19588) ERROR: fifo_server: command must have at 
least 3 chars<BR>&nbsp;2(19588) INFO: fifo_server: command 
empty<BR>&nbsp;1(19587) DEBUG: timer routine:0,tl=0x402ecf9c 
next=(nil)<BR>&nbsp;1(19587) DEBUG: FR_handler:stop retr. and send CANCEL 
(0x402ece60)<BR>&nbsp;1(19587) -&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; T_code=100, 
new_code=408<BR></DIV>
<DIV>actualy i think that i miss some modiule to load but i am not sure and dont 
have any fogest idea what to do .. </DIV>
<DIV>&nbsp;</DIV>
<DIV>10x in advance </DIV>
<DIV>Ps:</DIV>
<DIV>sry about my bad english </DIV>
<DIV></FONT>&nbsp;</DIV></BODY></HTML>