<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=big5">
<META content="IncrediMail 1.0" name=GENERATOR>
<!--IncrdiXMLRemarkStart>
<IncrdiX-Info>
<X-FID>FLAVOR00-NONE-0000-0000-000000000000</X-FID>
<X-FVER>4.0</X-FVER>
<X-CNT>;</X-CNT>
</IncrdiX-Info>
<IncrdiXMLRemarkEnd-->
</HEAD>
<BODY style="BACKGROUND-POSITION: 0px 0px; FONT-SIZE: 12pt; MARGIN: 5px 10px 10px; FONT-FAMILY: Arial" bgColor=#ffffff background="" scroll=yes ORGYPOS="0">
<TABLE id=INCREDIMAINTABLE cellSpacing=0 cellPadding=2 width="100%" border=0>
<TBODY>
<TR>
<TD id=INCREDITEXTREGION style="FONT-SIZE: 12pt; CURSOR: auto; FONT-FAMILY: Arial" width="100%">
<DIV>when I try to a call, it appear this problem</DIV>
<DIV>and I install ser-0.8.12 and sems(cvs)</DIV>
<DIV>I can't find ans_machine in my server.</DIV>
<DIV>how to solve it.</DIV>
<DIV>thanks.</DIV>
<DIV> </DIV>
<DIV>Aug 14 03:17:12 knuth /usr/local/sbin/ser[19748]: voicemail - initializing child 8<BR>Aug 14 03:17:12 knuth /usr/local/sbin/ser[19742]: voicemail - initializing child 6<BR>Aug 14 03:17:12 knuth /usr/local/sbin/ser[19731]: SER: open_uac_fifo: fifo server up at /tmp/ser_fifo...<BR>Aug 14 03:17:12 knuth /usr/local/sbin/ser[19745]: voicemail - initializing child 7<BR>Aug 14 03:17:12 knuth /usr/local/sbin/ser[19752]: voicemail - initializing child -4<BR>Aug 14 03:17:12 knuth /usr/local/sbin/ser[19696]: voicemail - initializing child 0<BR>Aug 14 03:17:12 knuth /usr/local/sbin/ser[19739]: voicemail - initializing child 5<BR>Aug 14 03:17:18 knuth /usr/local/sbin/ser[19718]: ERROR: voicemail: <STRONG>ans_machine deamon</STRONG> is not running !<BR>Aug 14 03:17:18 knuth /usr/local/sbin/ser[19718]: ERROR: voicemail: No such device or address<BR>Aug 14 03:17:18 knuth /usr/local/sbin/ser[19718]: ERROR: vm_start: write_to_fifo failed<BR>----</DIV>
<DIV><STRONG>I try to sems -E -D 3</STRONG></DIV>
<DIV> </DIV>
<DIV>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command t_reply is not available<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: ringing<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: 00004D3624F6662E<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must have at least 3 chars<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command t_reply is not available<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must have at least 3 chars<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: 00004D3624F6662E<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: Content-Type: application/sdp<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: v=0<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: s=session<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: t=0 0<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: a=rtpmap:0 /^H<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command t_reply is not available<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: could not send response.<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: 00004D3624F6662E<BR>Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must have at least 3 chars</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV><STRONG>here is my and ser.cfg sems.conf </STRONG></DIV>
<DIV><STRONG>----</STRONG></DIV>
<DIV>debug=3<BR>fork=yes<BR>log_stderror=no<BR>check_via=no<BR>dns=no<BR>rev_dns=no<BR>port=5060<BR>children=4<BR>fifo="/tmp/ser_fifo"</DIV>
<DIV><BR>loadmodule "/usr/local/lib/ser/modules/mysql.so"<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/auth.so"<BR>loadmodule "/usr/local/lib/ser/modules/auth_db.so"<BR>loadmodule "/usr/local/lib/ser/modules/vm.so"<BR>loadmodule "/usr/local/lib/ser/modules/exec.so"</DIV>
<DIV> </DIV>
<DIV>modparam("usrloc", "db_mode", 2)<BR>modparam("auth_db", "calculate_ha1", yes)<BR>modparam("auth_db", "password_column", "password")<BR>modparam("rr", "enable_full_lr", 1)<BR>modparam("voicemail", "db_url", "sql://ser:heslo@localhost/ser")<BR>modparam("tm", "fr_inv_timer", 15)</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV># ------------------------- request routing logic -------------------</DIV>
<DIV> </DIV>
<DIV># main routing logic</DIV>
<DIV> </DIV>
<DIV>route{</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> };<BR> if ( len_gt( max_len) ) {<BR> sl_send_reply("513", "Message too big");<BR> break;<BR> };</DIV>
<DIV> </DIV>
<DIV> # we record-route all messages -- to make sure that<BR> # subsequent messages will go through our proxy; that's<BR> # particularly good if upstream and downstream entities<BR> # use different transport protocol<BR> record_route();<BR> # loose-route processing<BR> if (loose_route()) {<BR> t_relay();<BR> break;<BR> };<BR>#nsert_ucontact(locations, contact, expires, q, callid, cseq, flags, cont);<BR> # 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") {</DIV>
<DIV> </DIV>
<DIV># Uncomment this if you want to use digest authentication<BR> if (!www_authorize("<Myserver>", "subscriber")) {<BR> www_challenge("<Myserver>", "0");<BR> break;<BR> };</DIV>
<DIV> </DIV>
<DIV> save("location");</DIV>
<DIV> </DIV>
<DIV><BR> break;<BR> };</DIV>
<DIV> </DIV>
<DIV>lookup("aliases");<BR>};</DIV>
<DIV> </DIV>
<DIV> # native SIP destinations are handled using our USRLOC DB<BR> if (!lookup("location")) {<BR># sl_send_reply("404", "Not Found");<BR># break;<BR># </DIV>
<DIV> </DIV>
<DIV><BR> </DIV>
<DIV> </DIV>
<DIV><BR> if(method=="ACK" || method=="INVITE" || method=="BYE" || method=="REFER"){</DIV>
<DIV> </DIV>
<DIV> if(t_newtran()){</DIV>
<DIV> </DIV>
<DIV> t_reply("100","Trying -- just wait a minute !");</DIV>
<DIV> </DIV>
<DIV> if(method=="INVITE" || method=="REFER"){<BR> log("**************** vm start - begin ******************\n");<BR> if( uri =~ "conference" ){<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> 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> 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> };<BR> <BR> if(method=="BYE"){<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>};<BR> <BR> # forward to current uri now; use stateful forwarding; that<BR> # works reliably even if we forward from TCP to UDP<BR> if (!t_relay()) {<BR> sl_reply_error();<BR> };<BR> <BR>}</DIV>
<DIV> </DIV>
<DIV> </DIV>
<DIV><STRONG>----</STRONG></DIV>
<DIV><STRONG></STRONG> </DIV>
<DIV><STRONG></STRONG> </DIV>
<DIV># $Id: sems.conf.sample,v 1.17 2004/07/19 20:43:14 sayer 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># optional parameter: rtp_low_port=<port><BR>#<BR># - sets port of rtp lowest server<BR>#rtp_low_port=1024</DIV>
<DIV> </DIV>
<DIV># optional parameter: rtp_high_port=<port><BR>#<BR># - sets port of rtp highest server<BR>#rtp_high_port=65535</DIV>
<DIV> </DIV>
<DIV>##################################<BR># module specific parameters #<BR>##################################</DIV>
<DIV> </DIV>
<DIV># sample voicemail configuration (inline)<BR>config.voicemail=inline</DIV>
<DIV> </DIV>
<DIV># optional parameter: rec_file_extension=<ext><BR># <BR># - sets the file extension which will be used<BR># to record messages.<BR># - example 1: wav<BR># - example 2: mp3<BR>#<BR># WARNING: you must compile the mp3 plug-in<BR># in order to use 'mp3' as default<BR># extension. You will need the lame<BR># encoder for that.<BR># See plug-in/mp3/ReadmeMP3.txt for<BR># more information.<BR>#<BR>rec_file_extension=wav</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=0</DIV>
<DIV> </DIV>
<DIV># parameter: email_template=<filename><BR>#<BR># - email template file<BR># <BR># See the README file in <sems-src>/plug-in/voicemail<BR># for more information on the syntax used.<BR>#<BR>email_template=/usr/local/lib/sems/plug-in/mail.template</DIV>
<DIV> </DIV>
<DIV># end of configuration section 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<BR>#<BR>#<BR># The IVR checks for a script with the named of the callee<BR># (<local part in r-uri>.py for python, <local part in r-uri>.pl for perl)<BR># in the directory <ivr_script_path><domain>, then for <BR># <ivr_script_path><domain><ivr_script_file>. If this is not found,<BR># <ivr_script_path>/<local part in r-uri>.py if searched, <BR># and if this is not found, <ivr_script_path>/<ivr_script_file> is used.<BR>#<BR># So with a call to <A href="mailto:sayer@iptel.org">sayer@iptel.org</A> and<BR>#ivr_script_path=/etc/ivr and <BR>#ivr_script_file=ivr.py<BR># these files are checked:<BR>#/etc/ivr/iptel.org/sayer.py<BR>#/etc/ivr/iptel.org/ivr.py<BR>#/etc/ivr/sayer.py<BR>#/etc/ivr/ivr.py<BR>#<BR> #parameter: ivr_script_path:<BR> # path to ivr scripts.<BR> # <BR> ivr_script_path=/etc/ivr/<BR> # default script file: this will be executed if <user>.py does not exist.<BR> #<BR> ivr_script_file=ivr.py</DIV>
<DIV> </DIV>
<DIV> # parameter : tts_caching<BR> # y or n<BR> # text will be read from waves already synthesized and <BR> # cached in cache_path <BR> tts_caching=y</DIV>
<DIV> </DIV>
<DIV> # parameter : tts_cache_path<BR> # path to cache waves<BR> # path must exist! <BR> tts_cache_path=/tmp/wavs<BR># end of configuration section for ivr module<BR>config.ivr=end</DIV>
<DIV> </DIV>
<DIV># 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> </DIV></TD></TR>
<TR>
<TD id=INCREDIFOOTER width="100%">
<TABLE cellSpacing=0 cellPadding=0 width="100%">
<TBODY>
<TR>
<TD width="100%"></TD>
<TD id=INCREDISOUND vAlign=bottom align=middle></TD>
<TD id=INCREDIANIM vAlign=bottom align=middle></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE><SPAN id=IncrediStamp><SPAN dir=ltr><A href="http://www.incredimail.com/index.asp?id=54475"><IMG alt="" hspace=0 src="http://www2.incredimail.com/contents/stamps/imstp_emo_en.gif" align=baseline border=0></A></SPAN></SPAN></BODY></HTML>