Hi all,
I've got SER running on a Red Hat 9 platform. I've got MySQL and serweb
working and using the default ser.cfg file I can register UAs and make local
calls within the proxy. What I have not been able to do is get routing /
dial plan stuff to work via a Cisco SIP gateway. I cannot get SER to run
once I add any routing information to the ser.cfg script. I tried following
the examples like the following from the "How to" guide:
# attempt handoff to PSTN
if (uri=~"^sip:9[0-9]*@mydomain.com") { ## This assumes that the caller is
log("Forwarding to PSTN\n"); ## registered in our realm
t_relay_to( "192.168.0.2", "5060"); ## Our Cisco router
break;
};
Anyone have any ser.cfg script files that work succesfully for simple dial
plan / routing to a SIP gatewat they could share? I'm having a hard time
with the routing.
Thanks,
Paul
I am trying to understand how tm module works.
I found in http://www.iptel.org/ser/doc/prerelease/x545.html--->Stateful
User Agent Server:
______________________________________________
t_newtran shields subsequent code from retransmissions. It returns success
and continues when a new request arrived. It exits current route block
immediately on receipt of a retransmissions.
-----------------------------------------------
I found in the README included in tm module:
_______________________________________________
Name: t_newtran
Params: 0
Desc: creates a new transaction, returns a negative value on
error; this is the only way a script can add a new transaction
in an atomic way; typically, it is used to deploy a UAS
-----------------------------------------------
I think the two explanations above are inconsistent. I am quite confused.
Take the scripts below for example:
_______________________________
if ( !t_newtran()) {
sl_reply_error();
break;
};
# the following log will be only printed on receipt of
# a new message; retranmissions are absorbed by t_newtran
log(1, "New Transaction Arrived\n");
if (uri=~"a@") {
if (!t_reply("409", "Bizzar Error")) {
sl_reply_error();
};
} else {
if (!t_reply("699", "I don't want to chat with you")) {
sl_reply_error();
};
};
-------------------------------
My understanding is: If t_newtran() returns successfully, the scripts will
not execute forward until a new message rather than retransmission of the
original message is received. Am I right? If wrong, how does it work
actually?
Thanks!
Younger Wang
Hello,
i forgot to answer some of the questions:
>Any ideas why is this happening?
I think it is a compatibility problem between Ser & Sems FIFO interface. I
would be able to tell you more if i see the ans_machine's debug logs. Start
it with '-D 3 -E' and send me the complete output. Do the same with Ser (in
ser.cfg: debug=7, fork=no, log_stderror=yes).
>I also would like to know what codecs does this voicemail supports?
Mu-Law, A-Law, GSM. Futher codecs are planned.
If you want to add codec support on your own, Sems has an easy-to-use
plug-in interface/Sdk & for this purpose. Just have a look at the existing
ones in the plug-in directory (gsm & wav). If you have any question
regarding the implementation/integration of new codecs, feel free to mail me
personally (raphael.coeffic(a)iptel.org).
>Is there a way to retrieve the messages by phone or just by email?
At the moment, just by email. There are some plans to develop some web-based
solution. A phone-based solution would suppose to implement an IVR, which is
not yet on the roadmap, as we think that it belongs to the past. If you need
this for commercial use, contact Jiri Kuthan (jiri(a)iptel.org) for more
information.
Regards,
Raphael.
Hello,
Has anyone tried the voicemail module along with SEMS (Sip Express Media Server)?
I have tried to use it with an ATA 186 phone but I get the following erros:
(13328) ERROR: parse_sdp_line_ex (AmSdp.cpp:317): parse_sdp_line : parameter 'v=' was not found
(process:13354): oRTP-WARNING **: Error receiving udp packet: Socket operation on non-socket.
(process:13354): oRTP-WARNING **: Error receiving udp packet: Socket operation on non-socket.
(process:13354): oRTP-WARNING **: Error receiving udp packet: Socket operation on non-socket.
(process:13354): oRTP-WARNING **: Error receiving udp packet: Socket operation on non-socket.
...... it keeps logging this message .....
Any ideas why is this happening?
I also would like to know what codecs does this voicemail supports?
Is there a way to retrieve the messages by phone or just by email?
Attached are ethereal captures and config files.
Regards,
Claudio Thorell
##########################
SER.CFG
##########################
# ----------- global configuration parameters ------------------------
debug=3 # debug level (cmd line: -dddddddddd)
fork=yes
log_stderror=no
check_via=no # (cmd. line: -v)
dns=no # (cmd. line: -r)
rev_dns=no # (cmd. line: -R)
port=5060
children=4
fifo="/tmp/ser_fifo"
# ------------------ module loading ----------------------------------
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/acc.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/exec.so"
loadmodule "/usr/local/lib/ser/modules/mysql.so"
loadmodule "/usr/local/lib/ser/modules/auth.so"
loadmodule "/usr/local/lib/ser/modules/textops.so"
loadmodule "/usr/local/lib/ser/modules/auth_db.so"
loadmodule "/usr/local/lib/ser/modules/uri.so"
loadmodule "/usr/local/lib/ser/modules/vm.so"
# ----------------- setting module-specific parameters ---------------
# -- usrloc params --
modparam("usrloc", "db_mode", 2)
modparam("usrloc", "timer_interval", 10)
# -- auth params --
modparam("auth", "secret", "alsdkhglaksdhfkloiwr")
modparam("auth_db", "calculate_ha1", yes)
modparam("auth_db", "password_column", "password")
# -- tm params --
modparam("tm","ruri_matching",0)
# ------------------------- request routing logic -------------------
# main routing logic
route{
# initial sanity checks -- messages with
# max_forwars==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
loose_route();
# Make MSN Messenger happy...
if (method=="REGISTER") {
log(1,"Register message\n");
save("tln_location");
sl_send_reply("200","ok");
break;
};
# Voicemail specific configuration - begin
if(method=="ACK" || method=="INVITE" || method=="BYE"){
if(t_newtran()){
t_reply("100","Trying -- just wait a minute !");
if(method=="INVITE"){
log(1,"**************** vm start - begin ******************\n");
if(!vm("/tmp/am_fifo","voicemail")){
log("could not contact the answer machine\n");
t_reply("500","could not contact the answer machine");
};
log(1,"**************** vm start - end ******************\n");
break;
};
if(method=="BYE"){
log(1,"**************** vm end - begin ******************\n");
if(!vm("/tmp/am_fifo","bye")){
log("could not contact the answer machine\n");
t_reply("500","could not contact the answer machine");
};
log(1,"**************** vm end - end ******************\n");
break;
};
}
else {
log("could not create new transaction\n");
sl_send_reply("500","could not create new transaction");
};
};
# Voicemail specific configuration - end
}
##########################
SEMS.CFG
##########################
# $Id: sems.conf.sample,v 1.1 2003/06/17 16:05:01 ullstar 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=yes
# optional parameter: stderr={yes|no}
#
# - debug mode: do not fork and log to stderr
stderr=no
# optional parameter: loglevel={0|1|2|3}
#
# - sets log level (error=0, warning=1, info=2, debug=3)
loglevel=1
# optional parameter: fifo_name=<filename>
#
# - path and file name of our fifo file
fifo_name=/tmp/am_fifo
# optional parameter: ser_fifo_name=<filename>
#
# - path and file name of Ser's fifo file
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/src/answer_machine/lib
##################################
# voicemail specific parameters #
##################################
# optional parameter: announce_path=<path>
#
# - sets the path where announce files are searched for
announce_path=/usr/local/src/answer_machine/wav/
# optional parameter: default_announce=<filename>
#
# - sets the name of the default announce WAV file
#default_announce=/usr/local/src/answer_machine/wav/default.wav
default_announce=default.wav
# optional parameter: max_record=<seconds>
#
# - maximum record time
max_record=30
# 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
##################################
# module specific parameters #
##################################
# sample isdngw module configuration (external file)
# config.isdngw=/etc/isdngw.conf
# sample isdngw module configuration (inline)
config.isdngw=inline
# parameters for outgoing service (SIP -> PSTN)
# required parameter: outdevices=<dev1>, <dev2>, <dev3>, ...
#
# - specifies which ttyI* devices to use for outgoing telephony calls
# - devices must be fully accessible by the vm process' user
# - the number of devices listed is the maximum of simultaneous
# outgoing phone calls (if not otherwise restricted)
outdevices=/dev/ttyI10, /dev/ttyI11, /dev/ttyI12
# required parameter: outmsn=<msn>
#
# - specifies the default msn for outgoing calls
outmsn=
# optional parameter: lockdir=/where/to/store/logfiles
#
# - specifies the directory where to put the lockfiles
# - default: lockdir=/var/lock
lockdir=/var/lock
# optional parameter: outmaxconn=<number>
#
# - specifies the maximum number of outgoing connections
# - parameter is max-limited by:
# * number of devices specified in outdevices
# * number of available ISDN b-channels
# - setting to 0 or omitting the parameter allows any number of calls
outmaxcon=0
# optional parameter: outlogfile=<file>
#
# - specifies a log file, where all outgoing calls are listed
outlogfile=
# optional parameter: forcenumber=<start of number>
#
# - specifies allowed numbers
# - e.g. forcenumber=030 means allow only numbers starting with 030
forcenumber=
# end of configuration section for isdngw module
config.isdngw=end
# add more module configurations here (inline or external):
#
# config.mymodule=<filename>
# or
# config.mymodule=inline
# ...
# config.mymodule=end
We will be abandoning 8.10 soon. Ask ispbs author about current status
-- that's 2rd party software in which we are not involved.
-jiri
At 11:48 AM 6/24/2003, Andrzej Radke wrote:
>Hello all !
>
>In message http://lists.iptel.org/pipermail/serusers/2003-April/001057.html
>Jiri wrote:
>
>yes, there is support for accounting in SER in module/acc.
>In 0.8.10, the accounting support is unsupported, it is ok
>on CVS.
>
>-Jiri
>
>At 11:54 AM 4/10/2003, Sunithi JP wrote:
>>hi all,
>> is there any minimal support for accounting with SER?
>>
>>rgds,
>> sunithi
>
>In ispbs software I've found information:
>
>Install and configure ser server available at iptel.org
>Version supported is ser-0.8.10 .You also have to install
> ^^^^^^^^^^^^
>sql version of acc module available at
>http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/acc/
>
>
>How it is in real ?
>Can I use ser-0.8.10 (with acc module) with ispbs 2.3b7 or should I
>upgrade ser ?
>I would like make accouning my SIP connections (billing) for my users
Hello all !
In message http://lists.iptel.org/pipermail/serusers/2003-April/001057.html
Jiri wrote:
yes, there is support for accounting in SER in module/acc.
In 0.8.10, the accounting support is unsupported, it is ok
on CVS.
-Jiri
At 11:54 AM 4/10/2003, Sunithi JP wrote:
>hi all,
> is there any minimal support for accounting with SER?
>
>rgds,
> sunithi
In ispbs software I've found information:
Install and configure ser server available at iptel.org
Version supported is ser-0.8.10 .You also have to install
^^^^^^^^^^^^
sql version of acc module available at
http://cvs.berlios.de/cgi-bin/viewcvs.cgi/ser/sip_router/modules/acc/
How it is in real ?
Can I use ser-0.8.10 (with acc module) with ispbs 2.3b7 or should I
upgrade ser ?
I would like make accouning my SIP connections (billing) for my users
Greetings
Andrzej Radke
Hi all
i have some problems with ser.
I've configurated ser with mysql. When I register a user with serctl it add
to ser database but this is the only information that i can see on ser
database. How can i register all information about ser activities on
database? Where can i found some log of sip activities?
I can't use my server sip with MSN. When I configure user for communication
services MSN can't found server. How can i configure server for use with MSN?
thanks,
andrea
hi, all,
Would you tell me how you get the performance number you listed on the website? More specificaly, for the network configuration, what kind of server in meaning of registrar, redirect server, and stateless proxy are deployed in the network? Thanks for help.
kaiduan
---------------------------------
Post your free ad now! Yahoo! Canada Personals
Hello,
The CVS repository now contains both stable and unstable branches of ser. For
more information on how to get the stable branch see http://iptel.org/ser/cvs
regards, Jan.