Hi<BR><BR>I'm tryin to configure ser with sems, on a RedHat version 9.
<BR><BR>I'm receiving this errors: <BR><BR>Feb &nbsp;9 01:36:00 sip
ser[4781]: ERROR: fifo_server: command DB is not available <BR>Feb &nbsp;9
01:36:00 sip ser[4781]: ERROR: fifo_server:n command must begin with ::
<BR>email_address <BR>Feb &nbsp;9 01:36:00 sip ser[4781]: ERROR:
fifo_server: command must begin with :: <BR>subscriber <BR>Feb &nbsp;9
01:36:00 sip ser[4781]: ERROR: fifo_server: command must have at least <BR>3
chars <BR>Feb &nbsp;9 01:36:00 sip Sems[4816]: Error:
(AmSession.cpp)(startSession)(468): 404 <BR>voicemail: no email address for
user &lt;1002&gt; <BR>Feb &nbsp;9 01:36:00 sip ser[4781]: ERROR:
fifo_server: command t_reply is not <BR>available <BR>Feb &nbsp;9 01:36:00
sip ser[4781]: ERROR: fifo_server: command must begin with :: <BR>voicemail:
no email address for user &lt;1002&gt; <BR>Feb &nbsp;9 01:36:00 sip
ser[4781]: ERROR: fifo_server: command must begin with ::
<BR>000012D07BAA2BC1 <BR>Feb &nbsp;9 01:36:00 sip ser[4781]: ERROR:
fifo_server: command must have at least <BR>3 chars <BR>Feb &nbsp;9 01:36:00
sip Sems[4816]: Error: (AmRequest.cpp)(reply)(335): <BR>AmRequestUAS::reply:
500 command 't_reply' not available <BR><BR>Can anyone help me with this,
thank you in advanced. I've attached my ser.cfg <BR>and sems.conf below.
<BR><BR>----- start of ser.cfg ----- <BR><BR># <BR># $Id: ser.cfg,v 1.21.4.1
2003/11/10 15:35:15 andrei Exp $ <BR># <BR># simple quick-start config
script <BR># <BR><BR># ----------- global configuration parameters
------------------------ <BR><BR>#debug=3 &nbsp; &nbsp; &nbsp; &nbsp; #
debug level (cmd line: -dddddddddd) <BR>#fork=yes <BR>#log_stderror=no
&nbsp; &nbsp; &nbsp; &nbsp;# (cmd line: -E) <BR><BR>/* Uncomment these lines
to enter debugging mode <BR>debug=7 <BR>fork=no <BR>log_stderror=yes <BR>*/
<BR><BR>check_via=no &nbsp; &nbsp;# (cmd. line: -v) <BR>dns=no &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; # (cmd. line: -r) <BR>rev_dns=no &nbsp; &nbsp; &nbsp;#
(cmd. line: -R) <BR>port=5060 <BR>children=4 <BR>listen=192.168.0.2
<BR>alias="sip.nhadzter.com" <BR>alias="nhadzter.com"
<BR>alias="192.168.0.2" <BR>fifo="/tmp/ser_fifo" <BR><BR>#
------------------ module loading ----------------------------------
<BR><BR># Uncomment this if you want to use SQL database <BR>loadmodule
"/usr/local/lib/ser/modules/mysql.so" <BR><BR>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/vm.so" <BR><BR># 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" <BR><BR># ----------------- setting
module-specific parameters --------------- <BR><BR># -- usrloc params --
<BR><BR>#modparam("usrloc", "db_mode", &nbsp; 0) <BR><BR># 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><BR># -- 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><BR># -- rr params -- <BR># add value to
;lr param to make some broken UAs happy <BR>modparam("rr", "enable_full_lr",
1) <BR><BR># ----------------- voicemail parameters ---------------
<BR><BR>#modparam("voicemail",
"db_url","/home/rco/cvs/ser/sip_router/modules/vm/db")
<BR>modparam("voicemail", "db_url", "mysql://ser:heslo@localhost/ser")
<BR>modparam("voicemail", "email_column", "email_address")
<BR>modparam("voicemail", "subscriber_table", "subscriber")
<BR>modparam("voicemail", "user_column", "username")
<BR>modparam("voicemail", "domain_column", "domain") <BR><BR>#
------------------------- &nbsp;request routing logic -------------------
<BR><BR># main routing logic <BR><BR>route{ <BR><BR>&nbsp; &nbsp; &nbsp;
&nbsp;# initial sanity checks -- messages with <BR>&nbsp; &nbsp; &nbsp;
&nbsp;# max_forwards==0, or excessively long requests <BR>&nbsp; &nbsp;
&nbsp; &nbsp;if (!mf_process_maxfwd_header("10")) { <BR>&nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply("483","Too Many Hops");
<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;break; <BR>&nbsp;
&nbsp; &nbsp; &nbsp;}; <BR>&nbsp; &nbsp; &nbsp; &nbsp;if ( msg:len &gt;
max_len ) { <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;sl_send_reply("513", "Message too big"); <BR>&nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;break; <BR>&nbsp; &nbsp; &nbsp; &nbsp;};
<BR><BR>&nbsp; &nbsp; &nbsp; &nbsp;# we record-route all messages -- to make
sure that <BR>&nbsp; &nbsp; &nbsp; &nbsp;# subsequent messages will go
through our proxy; that's <BR>&nbsp; &nbsp; &nbsp; &nbsp;# particularly good
if upstream and downstream entities <BR>&nbsp; &nbsp; &nbsp; &nbsp;# use
different transport protocol <BR>&nbsp; &nbsp; &nbsp; &nbsp;record_route();
<BR>&nbsp; &nbsp; &nbsp; &nbsp;# loose-route processing <BR>&nbsp; &nbsp;
&nbsp; &nbsp;if (loose_route()) { <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp;t_relay(); <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;break; <BR>&nbsp; &nbsp; &nbsp; &nbsp;}; <BR><BR>&nbsp; &nbsp;
&nbsp; &nbsp;# if the request is for other domain use UsrLoc <BR>&nbsp;
&nbsp; &nbsp; &nbsp;# (in case, it does not work, use the following command
<BR>&nbsp; &nbsp; &nbsp; &nbsp;# with proper names and addresses in it)
<BR>&nbsp; &nbsp; &nbsp; &nbsp;if (uri==myself) { <BR><BR>&nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if (method=="REGISTER") { <BR><BR>#
Uncomment this if you want to use digest authentication <BR>&nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if
(!www_authorize("nhadzter.com", "subscriber")) { <BR>&nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;www_challenge("nhadzter.com", "0"); <BR>&nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;break; <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}; <BR><BR>&nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;save("location");
<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;break; <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;}; <BR><BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#
Voicemail specific configuration - begin <BR><BR>&nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;if(method=="ACK" || method=="INVITE" ||
method=="BYE" || <BR>method=="REFER"){ <BR><BR>&nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if(t_newtran()){
<BR><BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;t_reply("100","Trying --
just wait a <BR>minute !"); <BR><BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;if(method=="INVITE" || method=="REFER"){ <BR>&nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;log("**************** vm start -
begin <BR>******************\n"); <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;if( uri =~ "conference" ){
<BR><BR>if(!vm("/tmp/am_fifo","conference")){ <BR>&nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp;log("could not contact <BR>conference server\n");
<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;t_reply("500","could <BR>not
contact conference server"); <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}; <BR>&nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;} <BR>&nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&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; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;if(!vm("/tmp/am_fifo","echo")) <BR>{ <BR>&nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;log("could not contact <BR>echo\n"); <BR>&nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp;t_reply("500","could <BR>not contact echo"); <BR>&nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;}; <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;} <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;else { <BR><BR>if(!vm("/tmp/am_fifo","voicemail")){ <BR>&nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;log("could not contact <BR>voicemail\n");
<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;t_reply("500","could <BR>not
contact voicemail"); <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}; <BR>&nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;}; <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;log("**************** vm start - end
<BR>******************\n"); <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp;break; <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;};
<BR><BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&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; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;log("**************** vm end/refer - <BR>begin ******************\n");
<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;if(!vm("/tmp/am_fifo","bye")){ <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;log("could not
contact the <BR>media server\n"); <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;t_reply("500","could
not <BR>contact the media server"); <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;}; <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp;log("**************** vm end/refer - <BR>end
********************\n"); <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp;break; <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;};
<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;} <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp;else { <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; log("could
not create new transaction\n"); <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
sl_send_reply("500","could not create new <BR>transaction"); <BR>&nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;}; <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;};
<BR><BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;# Voicemail
specific configuration - end <BR><BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp;# native SIP destinations are handled using our USRLOC
DB <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;if
(!lookup("location")) { <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sl_send_reply("404", "Not Found");
<BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp;break; <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp;}; <BR>&nbsp; &nbsp; &nbsp; &nbsp;}; <BR>&nbsp; &nbsp; &nbsp; &nbsp;#
forward to current uri now; use stateful forwarding; that <BR>&nbsp; &nbsp;
&nbsp; &nbsp;# works reliably even if we forward from TCP to UDP <BR>&nbsp;
&nbsp; &nbsp; &nbsp;if (!t_relay()) { <BR>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;
&nbsp; &nbsp; &nbsp;sl_reply_error(); <BR>&nbsp; &nbsp; &nbsp; &nbsp;};
<BR><BR>} <BR><BR>------------- end of ser.cfg ------------------
<BR><BR>---------start of sems.conf ----------------------- <BR><BR># $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>#
<BR><BR>################################## <BR># global parameters &nbsp;
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;#
<BR>################################## <BR><BR># optional parameter:
fork={yes|no} <BR># <BR># - specifies if sems should run in daemon mode
(background) <BR># &nbsp; (fork=no is the same as -E) <BR>fork=yes <BR><BR>#
optional parameter: stderr={yes|no} <BR># <BR># - debug mode: do not fork
and log to stderr <BR># &nbsp; (stderr=yes is the same as -E) <BR>stderr=no
<BR><BR># optional parameter: loglevel={0|1|2|3} <BR># <BR># - sets log
level (error=0, warning=1, info=2, debug=3) <BR># &nbsp; (same as -D)
<BR>loglevel=1 <BR><BR># 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 <BR><BR># 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 <BR><BR># 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/ <BR><BR># optional parameter:
smtp_server=&lt;hostname&gt; <BR># <BR># - sets address of smtp server
<BR>smtp_server=localhost <BR><BR># optional parameter:
smtp_port=&lt;port&gt; <BR># <BR># - sets port of smtp server
<BR>smtp_port=25 <BR><BR>################################## <BR># module
specific parameters &nbsp; &nbsp; # <BR>##################################
<BR><BR># sample voicemail configuration (inline)
<BR>config.voicemail=inline <BR><BR># 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;
&lt;announce_path&gt;/&lt;domainname&gt;/&lt;username&gt;.wav <BR># &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/ <BR><BR># parameter:
default_announce=&lt;filename&gt; <BR># <BR># - sets the name of the default
announce WAV file <BR>default_announce=default_en.wav <BR><BR># parameter:
max_record_time=&lt;seconds&gt; <BR># <BR># - maximum record time
<BR>max_record_time=30 <BR><BR># parameter: accept_delay=&lt;x&gt; <BR>#
<BR># - delays accepting of the call for x seconds <BR># - default value is
0 <BR>accept_delay=20 <BR><BR># end of configuration section <BR># for
voicemail module <BR>config.voicemail=end <BR><BR># sample announcement
configuration (inline) <BR>config.announcement=inline <BR><BR># 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/
<BR><BR># parameter: default_announce=&lt;filename&gt; <BR># <BR># - sets
the name of the default announce WAV file
<BR>default_announce=default_en.wav <BR><BR># end of configuration section
for announcement module <BR>config.announcement=end <BR><BR># sample isdngw
module configuration (external file) <BR># config.isdngw=/etc/isdngw.conf
<BR><BR># sample ivr module configuration (inline) <BR>config.ivr=inline
<BR><BR>#parameter: python_script_path=&lt;full path&gt;
<BR>python_script_path=/etc/ivr <BR><BR>#parameter:
python_script_file=&lt;filename&gt; <BR>python_script_file=example.py
<BR><BR># end of configuration section for ivr module <BR>config.ivr=end
<BR><BR># sample conference configuration (inline)
<BR>config.conference=inline <BR><BR># parameter:
default_announce=&lt;filename&gt; <BR># <BR># - sets the full pathed name of
the default announce WAV file. <BR># &nbsp; Will be played to lonely users.
<BR>default_announce=/usr/local/lib/sems/audio/first_participant.wav
<BR><BR># end of configuration section for conference module
<BR>config.conference=end <BR><BR># example configuration for number reader
<BR>config.number_reader=inline
<BR><BR>number_path=/usr/local/lib/sems/audio/
<BR><BR>prolog_file=welcome_to_number_reader.wav
<BR><BR>epilog_file=thanks_calling_number_reader.wav <BR><BR># end of
number_reader configuration <BR>config.number_reader=end <BR><BR># 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 <BR><BR>------------- end of sems.conf
------------------- <BR>