when I try to a call, it appear this problem and I install ser-0.8.12 and sems(cvs) I can't find ans_machine in my server. how to solve it. thanks.
Aug 14 03:17:12 knuth /usr/local/sbin/ser[19748]: voicemail - initializing child 8 Aug 14 03:17:12 knuth /usr/local/sbin/ser[19742]: voicemail - initializing child 6 Aug 14 03:17:12 knuth /usr/local/sbin/ser[19731]: SER: open_uac_fifo: fifo server up at /tmp/ser_fifo... Aug 14 03:17:12 knuth /usr/local/sbin/ser[19745]: voicemail - initializing child 7 Aug 14 03:17:12 knuth /usr/local/sbin/ser[19752]: voicemail - initializing child -4 Aug 14 03:17:12 knuth /usr/local/sbin/ser[19696]: voicemail - initializing child 0 Aug 14 03:17:12 knuth /usr/local/sbin/ser[19739]: voicemail - initializing child 5 Aug 14 03:17:18 knuth /usr/local/sbin/ser[19718]: ERROR: voicemail: ans_machine deamon is not running ! Aug 14 03:17:18 knuth /usr/local/sbin/ser[19718]: ERROR: voicemail: No such device or address Aug 14 03:17:18 knuth /usr/local/sbin/ser[19718]: ERROR: vm_start: write_to_fifo failed ---- I try to sems -E -D 3
Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command t_reply is not available Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: ringing Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: 00004D3624F6662E Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must have at least 3 chars Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command t_reply is not available Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must have at least 3 chars Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: 00004D3624F6662E Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: Content-Type: application/sdp Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: v=0 Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: s=session Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: t=0 0 Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: a=rtpmap:0 /^H Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command t_reply is not available Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: could not send response. Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: 00004D3624F6662E Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must have at least 3 chars
here is my and ser.cfg sems.conf ---- debug=3 fork=yes log_stderror=no check_via=no dns=no rev_dns=no port=5060 children=4 fifo="/tmp/ser_fifo"
loadmodule "/usr/local/lib/ser/modules/mysql.so" loadmodule "/usr/local/lib/ser/modules/sl.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/maxfwd.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so" loadmodule "/usr/local/lib/ser/modules/registrar.so" loadmodule "/usr/local/lib/ser/modules/auth.so" loadmodule "/usr/local/lib/ser/modules/auth_db.so" loadmodule "/usr/local/lib/ser/modules/vm.so" loadmodule "/usr/local/lib/ser/modules/exec.so"
modparam("usrloc", "db_mode", 2) modparam("auth_db", "calculate_ha1", yes) modparam("auth_db", "password_column", "password") modparam("rr", "enable_full_lr", 1) modparam("voicemail", "db_url", "sql://ser:heslo@localhost/ser") modparam("tm", "fr_inv_timer", 15)
# ------------------------- request routing logic -------------------
# main routing logic
route{
# initial sanity checks -- messages with # max_forwards==0, or excessively long requests if (!mf_process_maxfwd_header("10")) { sl_send_reply("483","Too Many Hops"); break; }; if ( len_gt( max_len) ) { sl_send_reply("513", "Message too big"); break; };
# we record-route all messages -- to make sure that # subsequent messages will go through our proxy; that's # particularly good if upstream and downstream entities # use different transport protocol record_route(); # loose-route processing if (loose_route()) { t_relay(); break; }; #nsert_ucontact(locations, contact, expires, q, callid, cseq, flags, cont); # if the request is for other domain use UsrLoc # (in case, it does not work, use the following command # with proper names and addresses in it) if (uri==myself) {
if (method=="REGISTER") {
# Uncomment this if you want to use digest authentication if (!www_authorize("<Myserver>", "subscriber")) { www_challenge("<Myserver>", "0"); break; };
save("location");
break; };
lookup("aliases"); };
# native SIP destinations are handled using our USRLOC DB if (!lookup("location")) { # sl_send_reply("404", "Not Found"); # break; #
if(method=="ACK" || method=="INVITE" || method=="BYE" || method=="REFER"){
if(t_newtran()){
t_reply("100","Trying -- just wait a minute !");
if(method=="INVITE" || method=="REFER"){ log("**************** vm start - begin ******************\n"); if( uri =~ "conference" ){ if(!vm("/tmp/am_fifo","conference")){ log("could not contact conference server\n"); t_reply("500","could not contact conference server"); }; } else if( uri =~ "echo" ){ if(!vm("/tmp/am_fifo","echo")){ log("could not contact echo\n"); t_reply("500","could not contact echo"); }; } else { if(!vm("/tmp/am_fifo","voicemail")){ log("could not contact voicemail\n"); t_reply("500","could not contact voicemail"); }; }; log("**************** vm start - end ******************\n"); break; };
if(method=="BYE"){ log("**************** vm end/refer - begin ******************\n"); if(!vm("/tmp/am_fifo","bye")){ log("could not contact the media server\n"); t_reply("500","could not contact the media server"); }; log("**************** vm end/refer - end ********************\n"); break; }; } else { log("could not create new transaction\n"); sl_send_reply("500","could not create new transaction"); }; };
};
# forward to current uri now; use stateful forwarding; that # works reliably even if we forward from TCP to UDP if (!t_relay()) { sl_reply_error(); };
}
----
# $Id: sems.conf.sample,v 1.17 2004/07/19 20:43:14 sayer Exp $ # # sems.conf.sample # # Sip Express Media Server (sems) # # sample configuration file # # # whitespaces (spaces and tabs) are ignored # comments start with a "#" and may be used inline # # example: option=value1, value2 # i like this option #
################################## # global parameters # ##################################
# optional parameter: fork={yes|no} # # - specifies if sems should run in daemon mode (background) # (fork=no is the same as -E) fork=yes
# optional parameter: stderr={yes|no} # # - debug mode: do not fork and log to stderr # (stderr=yes is the same as -E) stderr=no
# optional parameter: loglevel={0|1|2|3} # # - sets log level (error=0, warning=1, info=2, debug=3) # (same as -D) loglevel=1
# optional parameter: fifo_name=<filename> # # - path and file name of our fifo file (same as -i) fifo_name=/tmp/am_fifo
# optional parameter: ser_fifo_name=<filename> # # - path and file name of Ser's fifo file (same as -o) ser_fifo_name=/tmp/ser_fifo
# optional parameter: plugin_path=<path> # # - sets the path to the plug-ins # - may be absolute or relative to CWD plugin_path=/usr/local/lib/sems/plug-in/
# optional parameter: smtp_server=<hostname> # # - sets address of smtp server smtp_server=localhost
# optional parameter: smtp_port=<port> # # - sets port of smtp server smtp_port=25
# optional parameter: rtp_low_port=<port> # # - sets port of rtp lowest server #rtp_low_port=1024
# optional parameter: rtp_high_port=<port> # # - sets port of rtp highest server #rtp_high_port=65535
################################## # module specific parameters # ##################################
# sample voicemail configuration (inline) config.voicemail=inline
# optional parameter: rec_file_extension=<ext> # # - sets the file extension which will be used # to record messages. # - example 1: wav # - example 2: mp3 # # WARNING: you must compile the mp3 plug-in # in order to use 'mp3' as default # extension. You will need the lame # encoder for that. # See plug-in/mp3/ReadmeMP3.txt for # more information. # rec_file_extension=wav
# optional parameter: announce_path=<path> # # - sets the path where announce files are searched for # - the file to be played is determined the following way: # <announce_path>/<domainname>/<username>.wav # if this file is not available <announce_path>/<default_anounce> is used announce_path=/usr/local/lib/sems/audio/
# parameter: default_announce=<filename> # # - sets the name of the default announce WAV file default_announce=default_en.wav
# parameter: max_record_time=<seconds> # # - maximum record time max_record_time=30
# parameter: accept_delay=<x> # # - delays accepting of the call for x seconds # - default value is 0 accept_delay=0
# parameter: email_template=<filename> # # - email template file # # See the README file in <sems-src>/plug-in/voicemail # for more information on the syntax used. # email_template=/usr/local/lib/sems/plug-in/mail.template
# end of configuration section for voicemail module config.voicemail=end
# sample announcement configuration (inline) config.announcement=inline
# optional parameter: announce_path=<path> # # - sets the path where announce files are searched for announce_path=/usr/local/lib/sems/audio/
# parameter: default_announce=<filename> # # - sets the name of the default announce WAV file default_announce=default_en.wav
# end of configuration section for announcement module config.announcement=end
# sample isdngw module configuration (external file) # config.isdngw=/etc/isdngw.conf
# sample ivr module configuration (inline) config.ivr=inline # # # The IVR checks for a script with the named of the callee # (<local part in r-uri>.py for python, <local part in r-uri>.pl for perl) # in the directory <ivr_script_path><domain>, then for # <ivr_script_path><domain><ivr_script_file>. If this is not found, # <ivr_script_path>/<local part in r-uri>.py if searched, # and if this is not found, <ivr_script_path>/<ivr_script_file> is used. # # So with a call to sayer@iptel.org and #ivr_script_path=/etc/ivr and #ivr_script_file=ivr.py # these files are checked: #/etc/ivr/iptel.org/sayer.py #/etc/ivr/iptel.org/ivr.py #/etc/ivr/sayer.py #/etc/ivr/ivr.py # #parameter: ivr_script_path: # path to ivr scripts. # ivr_script_path=/etc/ivr/ # default script file: this will be executed if <user>.py does not exist. # ivr_script_file=ivr.py
# parameter : tts_caching # y or n # text will be read from waves already synthesized and # cached in cache_path tts_caching=y
# parameter : tts_cache_path # path to cache waves # path must exist! tts_cache_path=/tmp/wavs # end of configuration section for ivr module config.ivr=end
# sample conference configuration (inline) config.conference=inline
# parameter: default_announce=<filename> # # - sets the full pathed name of the default announce WAV file. # Will be played to lonely users. default_announce=/usr/local/lib/sems/audio/first_participant.wav
# end of configuration section for conference module config.conference=end
# example configuration for number reader config.number_reader=inline
number_path=/usr/local/lib/sems/audio/
prolog_file=welcome_to_number_reader.wav
epilog_file=thanks_calling_number_reader.wav
# end of number_reader configuration config.number_reader=end
# add more module configurations here (inline or external): # # config.mymodule=<filename> # or # config.mymodule=inline # ... # config.mymodule=end
I think that there is version mismatch. You have to use cvs version of ser with cvs version of sems.
Richard
--- Sean u0085200@cc.ncu.edu.tw wrote:
when I try to a call, it appear this problem and I install ser-0.8.12 and sems(cvs) I can't find ans_machine in my server. how to solve it. thanks.
Aug 14 03:17:12 knuth /usr/local/sbin/ser[19748]: voicemail - initializing child 8 Aug 14 03:17:12 knuth /usr/local/sbin/ser[19742]: voicemail - initializing child 6 Aug 14 03:17:12 knuth /usr/local/sbin/ser[19731]: SER: open_uac_fifo: fifo server up at /tmp/ser_fifo... Aug 14 03:17:12 knuth /usr/local/sbin/ser[19745]: voicemail - initializing child 7 Aug 14 03:17:12 knuth /usr/local/sbin/ser[19752]: voicemail - initializing child -4 Aug 14 03:17:12 knuth /usr/local/sbin/ser[19696]: voicemail - initializing child 0 Aug 14 03:17:12 knuth /usr/local/sbin/ser[19739]: voicemail - initializing child 5 Aug 14 03:17:18 knuth /usr/local/sbin/ser[19718]: ERROR: voicemail: ans_machine deamon is not running ! Aug 14 03:17:18 knuth /usr/local/sbin/ser[19718]: ERROR: voicemail: No such device or address Aug 14 03:17:18 knuth /usr/local/sbin/ser[19718]: ERROR: vm_start: write_to_fifo failed
I try to sems -E -D 3
Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command t_reply is not available Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: ringing Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: 00004D3624F6662E Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must have at least 3 chars Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command t_reply is not available Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must have at least 3 chars Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: 00004D3624F6662E Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: Content-Type: application/sdp Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: v=0 Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: s=session Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: t=0 0 Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: a=rtpmap:0 /^H Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command t_reply is not available Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: could not send response. Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must begin with :: 00004D3624F6662E Aug 14 03:20:13 knuth /usr/local/sbin/ser[19731]: ERROR: fifo_server: command must have at least 3 chars
here is my and ser.cfg sems.conf
debug=3 fork=yes log_stderror=no check_via=no dns=no rev_dns=no port=5060 children=4 fifo="/tmp/ser_fifo"
loadmodule "/usr/local/lib/ser/modules/mysql.so" loadmodule "/usr/local/lib/ser/modules/sl.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/maxfwd.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so" loadmodule "/usr/local/lib/ser/modules/registrar.so" loadmodule "/usr/local/lib/ser/modules/auth.so" loadmodule "/usr/local/lib/ser/modules/auth_db.so" loadmodule "/usr/local/lib/ser/modules/vm.so" loadmodule "/usr/local/lib/ser/modules/exec.so"
modparam("usrloc", "db_mode", 2) modparam("auth_db", "calculate_ha1", yes) modparam("auth_db", "password_column", "password") modparam("rr", "enable_full_lr", 1) modparam("voicemail", "db_url", "sql://ser:heslo@localhost/ser") modparam("tm", "fr_inv_timer", 15)
# ------------------------- request routing logic
# main routing logic
route{
# initial sanity checks -- messages with # max_forwards==0, or excessively long
requests if (!mf_process_maxfwd_header("10")) { sl_send_reply("483","Too Many Hops"); break; }; if ( len_gt( max_len) ) { sl_send_reply("513", "Message too big"); break; };
# we record-route all messages -- to make
sure that # subsequent messages will go through our proxy; that's # particularly good if upstream and downstream entities # use different transport protocol record_route(); # loose-route processing if (loose_route()) { t_relay(); break; }; #nsert_ucontact(locations, contact, expires, q, callid, cseq, flags, cont); # if the request is for other domain use UsrLoc # (in case, it does not work, use the following command # with proper names and addresses in it) if (uri==myself) {
if (method=="REGISTER") {
# Uncomment this if you want to use digest authentication if (!www_authorize("<Myserver>", "subscriber")) {
www_challenge("<Myserver>", "0"); break; };
save("location"); break; };
lookup("aliases"); };
# native SIP destinations are
handled using our USRLOC DB if (!lookup("location")) { # sl_send_reply("404", "Not Found"); # break; #
if(method=="ACK" || method=="INVITE"
|| method=="BYE" ||
=== message truncated ===> _______________________________________________
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers
__________________________________ Do you Yahoo!? New and Improved Yahoo! Mail - 100MB free storage! http://promotions.yahoo.com/new_mail