My sems start log is included below, there are several warnings in there, but none look too serious to stop sems from working properly:
Configuration: configuration file: /usr/local/etc/sems/sems.conf Ser's FIFO: /tmp/ser_fifo our FIFO: /tmp/am_fifo plug-in path: /usr/local/lib/sems/plug-in/ daemon mode: 0 local IP: 192.168.1.11
(23170) DEBUG: main (sems.cpp:391): Loading application plug-ins (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/echo.so ... (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'echo' loaded. (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/voicemail.so ... (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'voicemail' loaded. (23170) DEBUG: reloadModuleConfig (SemsConfiguration.cpp:70): using inline configuration for module voicemail (23170) DEBUG: loadEmailTemplates (AnswerMachine.cpp:106): loading /usr/local/etc/sems//default.template ... (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/isdngw.so ... (23170) INFO: reload (IsdnConfiguration.cpp:91): isdngw version 0.2 loading (supported backends: isdn4linux) ... (23170) WARNING: reloadModuleConfig (SemsConfiguration.cpp:66): no configuration found for module isdngw, maybe you want to specify config.isdngw in config file. (23170) INFO: IsdnGatewayFactory (IsdnGatewayFactory.cpp:82): isdngw: isdn4linux support disabled in configuration (23170) INFO: IsdnGatewayFactory (IsdnGatewayFactory.cpp:149): isdngw initialization successful. (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'isdngw' loaded. (23170) DEBUG: onLoad (IsdnGatewayFactory.cpp:200): registering fifo function isdninfo for web access... (23170) DEBUG: registerFct (AmServer.cpp:211): AmFifoServer::registerFct: function 'isdninfo' has been registered. (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/conference.so ... (23170) DEBUG: start (AmThread.cpp:87): Thread 0 is just created. (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'conference' loaded. (23170) DEBUG: reloadModuleConfig (SemsConfiguration.cpp:70): using inline configuration for module conference (23170) WARNING: onLoad (Conference.cpp:77): no join_sound specified in configuration (23170) WARNING: onLoad (Conference.cpp:78): file for module conference. (23170) WARNING: onLoad (Conference.cpp:84): no drop_sound specified in configuration (23170) WARNING: onLoad (Conference.cpp:85): file for module conference. (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/early_announce.so ... (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'early_announce' loaded. (23170) WARNING: reloadModuleConfig (SemsConfiguration.cpp:66): no configuration found for module early_announce, maybe you want to specify config.early_announce in config file. (23170) ERROR: onLoad (Announcement.cpp:53): Configuration missing for module early_announce!Please add config.early_announce section to your sems.conf file. (23170) WARNING: onLoad (Announcement.cpp:59): no announce_path specified in configuration (23170) WARNING: onLoad (Announcement.cpp:60): file for module early_announce. (23170) WARNING: onLoad (Announcement.cpp:70): no default_announce specified in configuration (23170) WARNING: onLoad (Announcement.cpp:71): file for module early_announce. (23170) ERROR: onLoad (Announcement.cpp:78): default file for early_announce module does not exist ('/usr/local/lib/sems/audio/default.wav'). (23170) ERROR: onLoad (Announcement.cpp:79): early_announce will not function properly! (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/ttsannounce.so ... (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'ttsannounce' loaded. (23170) WARNING: reloadModuleConfig (SemsConfiguration.cpp:66): no configuration found for module ttsannounce, maybe you want to specify config.ttsannounce in config file. (23170) WARNING: onLoad (TTSAnnounce.cpp:74): no configuration specified for module ttsannounce. (23170) WARNING: onLoad (TTSAnnounce.cpp:75): using default configuration: (23170) WARNING: onLoad (TTSAnnounce.cpp:85): AnnouncePath = "texts/" (23170) WARNING: onLoad (TTSAnnounce.cpp:86): AnnounceFile = "default.txt" (23170) WARNING: onLoad (TTSAnnounce.cpp:87): FestivalServer = "localhost" (23170) WARNING: onLoad (TTSAnnounce.cpp:88): FestivalPort = "1314" (23170) WARNING: onLoad (TTSAnnounce.cpp:89): FestivalVoice = "rab_diphone" (23170) WARNING: onLoad (TTSAnnounce.cpp:90): Caching = true (23170) WARNING: onLoad (TTSAnnounce.cpp:91): CachePath = "/tmp/" (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/bot.so ... (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'bot' loaded. (23170) DEBUG: registerFct (AmServer.cpp:404): AmUnServer::registerFct: function 'bot_start' has been registered. (23170) DEBUG: registerFct (AmServer.cpp:211): AmFifoServer::registerFct: function 'bot_start' has been registered. (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/p2conf.so ... (23170) DEBUG: start (AmThread.cpp:87): Thread 0 is just created. (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'p2conf' loaded. (23170) WARNING: reloadModuleConfig (SemsConfiguration.cpp:66): no configuration found for module p2conf, maybe you want to specify config.p2conf in config file. (23170) ERROR: onLoad (P2Conf.cpp:65): No configuration found for module p2conf, please specify config.p2conf in config file. (23170) WARNING: onLoad (P2Conf.cpp:71): no default_announce specified in configuration (23170) WARNING: onLoad (P2Conf.cpp:72): file for module conference. (23170) ERROR: onLoad (P2Conf.cpp:77): default announce '/usr/local/lib/sems/audio/default.wav' (23170) ERROR: onLoad (P2Conf.cpp:78): for module conference does not exist. (23170) WARNING: onLoad (P2Conf.cpp:85): no join_sound specified in configuration (23170) WARNING: onLoad (P2Conf.cpp:86): file for module conference. (23170) WARNING: onLoad (P2Conf.cpp:92): no drop_sound specified in configuration (23170) WARNING: onLoad (P2Conf.cpp:93): file for module conference. (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/announcement.so ... (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'announcement' loaded. (23170) DEBUG: reloadModuleConfig (SemsConfiguration.cpp:70): using inline configuration for module announcement (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/number_reader.so ... (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'number_reader' loaded. (23170) DEBUG: reloadModuleConfig (SemsConfiguration.cpp:70): using inline configuration for module number_reader (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//apps/semstalk.so ... (23170) DEBUG: loadAppPlugIn (AmPlugIn.cpp:285): application 'semstalk' loaded. (23170) WARNING: reloadModuleConfig (SemsConfiguration.cpp:66): no configuration found for module semstalk, maybe you want to specify config.semstalk in config file. (23170) WARNING: onLoad (Semstalk.cpp:70): no configuration specified for module ttsannounce. (23170) WARNING: onLoad (Semstalk.cpp:71): using default configuration: (23170) WARNING: onLoad (Semstalk.cpp:77): FestivalServer = "localhost" (23170) WARNING: onLoad (Semstalk.cpp:78): FestivalPort = "1314" (23170) WARNING: onLoad (Semstalk.cpp:79): FestivalVoice = "rab_diphone" (23170) WARNING: onLoad (Semstalk.cpp:80): Caching = true (23170) WARNING: onLoad (Semstalk.cpp:81): CachePath = "/tmp/" (23170) DEBUG: main (sems.cpp:395): Loading audio plug-ins (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//audio/gsm.so ... (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:222): codec id 3 inserted (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:237): payload 'GSM'inserted with id 3 (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//audio/ilbc.so ... (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:222): codec id 4 inserted (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:241): payload 'iLBC'inserted with id 96 (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:261): file format iLBC inserted (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//audio/wav.so ... (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:222): codec id 1 inserted (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:222): codec id 2 inserted (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:237): payload 'PCMU'inserted with id 0 (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:237): payload 'PCMA'inserted with id 8 (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:261): file format Wav inserted (23170) DEBUG: load (AmPlugIn.cpp:93): loading /usr/local/lib/sems/plug-in//audio/speex.so ... (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:222): codec id 6 inserted (23170) DEBUG: loadAudioPlugIn (AmPlugIn.cpp:241): payload 'speex'inserted with id 97 (23170) DEBUG: main (sems.cpp:399): Starting session container (23170) DEBUG: start (AmThread.cpp:87): Thread 0 is just created. (23170) DEBUG: main (sems.cpp:402): Starting mailer (23170) DEBUG: start (AmThread.cpp:87): Thread 0 is just created. (23170) DEBUG: main (sems.cpp:405): Starting RTP scheduler (23170) DEBUG: _start (AmThread.cpp:65): Thread 23170 is starting. (23170) DEBUG: _start (AmThread.cpp:65): Thread 23170 is starting. (23170) DEBUG: _start (AmThread.cpp:65): Thread 23170 is starting. (23170) DEBUG: _start (AmThread.cpp:65): Thread 23170 is starting. (23170) DEBUG: _start (AmThread.cpp:65): Thread 23170 is starting. (23170) DEBUG: start (AmThread.cpp:87): Thread 23170 is just created. (23170) DEBUG: main (sems.cpp:408): Starting ICMP watcher (23170) DEBUG: start (AmThread.cpp:87): Thread 0 is just created. (23170) DEBUG: main (sems.cpp:411): Starting SIP Event Notification Daemon (23170) DEBUG: start (AmThread.cpp:87): Thread 0 is just created. (23170) INFO: run (AmServer.cpp:150): FIFO server started (23170) DEBUG: _start (AmThread.cpp:65): Thread 23170 is starting. (23170) DEBUG: _start (AmThread.cpp:65): Thread 23170 is starting.
-----Original Message----- From: Stefan Sayer [mailto:sayer@fokus.fraunhofer.de] Sent: 08 August 2005 14:24 To: Gareth C. Fowler Cc: serusers@lists.iptel.org Subject: Re: [Serusers] SER+SEMS problem
Hello, the configuration looks ok, what does the sems log look like if you start sems with -D 3 -E ?
Stefan
On Mon, 8 Aug 2005, Gareth C. Fowler wrote:
I'm having real difficulties connecting SER to SEMS, I've followed the configuration files, but it doesn't seem to work.
For example if I dial 666 for echo according to the logs it connects, but then instantly disconnects, I've included below my ser.cfg & sems.cfg
files,
if someone wouldn't mind giving me some help.
Thanks.
G.
ser.cfg
debug=7 fork=yes log_stderror=no port=5060 children=4 dns=no rev_dns=no fifo="/tmp/ser_fifo" fifo_db_url="mysql://ser:heslo@localhost/ser"
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/nathelper.so" loadmodule "/usr/local/lib/ser/modules/textops.so" loadmodule "/usr/local/lib/ser/modules/uri_db.so" loadmodule "/usr/local/lib/ser/modules/uri.so" loadmodule "/usr/local/lib/ser/modules/acc.so" loadmodule "/usr/local/lib/ser/modules/xlog.so"
modparam("auth_db|uri_db|usrloc|acc", "db_url", "mysql://ser:heslo@localhost/ser") modparam("auth_db", "calculate_ha1", 1) modparam("auth_db", "password_column", "password") modparam("nathelper", "natping_interval", 30) modparam("nathelper", "ping_nated_only", 1) modparam("nathelper", "rtpproxy_sock", "unix:/var/run/rtpproxy.sock") modparam("usrloc", "db_mode", 2) modparam("registrar", "nat_flag", 6) modparam("rr", "enable_full_lr", 1) modparam("acc", "log_level", 1) modparam("acc", "log_flag", 1) modparam("acc", "log_fmt", "cdfimorstup") modparam("acc", "db_flag", 1) modparam("acc", "log_missed_flag", 2) modparam("acc", "db_missed_flag", 2) modparam("acc", "report_cancels", 1)
route {
if (!mf_process_maxfwd_header("10")) { sl_send_reply("483","Too Many Hops"); break; }; if ( msg:len > max_len ) { sl_send_reply("513", "Message too big"); break; }; record_route(); if (loose_route()) { t_relay(); break; }; if (uri==myself) { if (!(method=="REGISTER" || method=="ACK" || method=="INVITE" ||
method=="BYE" || method=="CANCEL" )) { sl_send_reply("501", "method not understood here"); break; }
if (method=="REGISTER") { sl_send_reply("200","OK"); break; }; if (!t_newtran()){ sl_send_reply("500","could not create transaction"); break; }; if (method=="ACK"){ t_relay(); break; }; t_reply("100","Trying - just wait a minute !"); if (method=="INVITE"){ if (uri=~"sip:100.*@") { xlog("L_INFO", "Starting contact SEMS conference\n\n"); if(!t_write_req("/tmp/am_fifo","conference")) { xlog("L_INFO", "Could not contact SEMS
conference\n\n"); t_reply("500","error contacting sems conference"); }; xlog("L_INFO", "Ending contact SEMS conference\n\n"); break; };
if (uri=~"sip:200.*@") { xlog("L_INFO", "Starting contact with SEMS
annoucement\n\n"); if(!t_write_req("/tmp/am_fifo","announcement")) { xlog("L_INFO", "Could not contact SEMS announcement\n\n"); t_reply("500","error contacting sems annoucement"); }; xlog("L_INFO", "Ending contact with SEMS annoucement\n\n"); break; };
if (uri=~"sip:666.*@") { xlog("L_INFO", "Starting contact with SEMS echo\n\n"); if(!t_write_req("/tmp/am_fifo","echo")) { xlog("L_INFO", "Could not contact SEMS echo\n\n"); t_reply("500","error contacting sems echo"); }; xlog("L_INFO", "Ending contact with SEMS echo\n\n"); break; }; xlog("L_INFO", "Starting contact with SEMS voicemail\n\n"); if(!t_write_req("/tmp/am_fifo","voicemail")) { xlog("L_INFO", "Could not contact SEMS voicemail\n\n"); t_reply("500","error contacting sems voicemail"); }; xlog("L_INFO", "Ending contact with SEMS voicemail\n\n"); break; } else if (method=="BYE" || method=="CANCEL") { if(!t_write_req("/tmp/am_fifo","bye")) { t_reply("500","error contacting sems"); }; break; }; }; if (!t_relay()) { sl_reply_error(); };
}
sems.cfg
fork=yes stderr=no loglevel=3 fifo_name=/tmp/am_fifo ser_fifo_name=/tmp/ser_fifo send_method=fifo
plugin_path=/usr/local/lib/sems/plug-in/ smtp_server=localhost smtp_port=25
config.voicemail=inline rec_file_extension=wav announce_path=/usr/local/lib/sems/audio/ default_announce=default_en.wav max_record_time=30 accept_delay=0 email_template_path=/usr/local/etc/sems/ config.voicemail=end
config.announcement=inline announce_path=/usr/local/lib/sems/audio/ default_announce=default_en.wav config.announcement=end
config.conference=inline default_announce=/usr/local/lib/sems/audio/first_participant.wav config.conference=end
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 config.number_reader=end