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