SEMS core configuration parameters

The sample configuration file core/etc/sems.conf.sample explains all core configuration parameters.

If there is no configuration file present, 'make install' installs this file into the default location.

# $Id: sems.conf.sample 927 2008-04-30 17:25:42Z sayer $
#
# 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=value # i like this option
#

# parameter: plugin_config_path=<path>
#
# - in this path configuration files of the applications 
#   (e.g. announcement.conf) are searched
plugin_config_path=/usr/local/etc/sems/etc/

# 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=2

# optional parameter: syslog_facility={DAEMON|USER|LOCAL[0-7]}
#
# - sets the log facility that is used for syslog. Using this,
#   the log can for example be filtered into a special file 
#   by the syslog daemon.
#
# Default: DAEMON
#
# Example:
# syslog_facility=LOCAL0

# optional parameter: log_sessions=[yes|no]
# 
# Default: no
# 
# If log_sessions=yes is set, INFO level log messages are generated
# for each session when it is started and stopped.
#
# log_sessions=yes

# optional parameter: application
# 
# This config value controls which application is to be 
# executed if there is no explicit application requested
# from the SIP stack (i.e. unixsockctrl and second parameter 
# of t_write_unix).
#
# This can be one of 
#    $(ruri.user)       - user part of ruri is taken as application,
#                         e.g. sip:announcement@host
#    $(ruri.param)      - uri parameter "app", e.g. 
#                         sip:joe@host.net;app=announcement
#    $(apphdr)          - the value of the P-App-Name header is used
#
#    $(mapping)         - regex=>application mapping is read from
#                         app_mapping.conf (see app_mapping.conf)
#    <application name> - application name configured here, e.g.
#                         application=announcement
#   
# examples:
# application = conference
# application = $(mapping)
# application = $(apphdr)
# application = $(ruri.user)
# application = $(ruri.param)

# 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: load_plugins=<modules list>
# 
# semicolon-separated list of modules to load
# If empty, all modules in plugin_path are loaded.
#
# example for announcement with g711 and ilbc codecs only 
# load_plugins=wav;ilbc;announcement

# optional parameter: exclude_plugins=<modules list>
#
# semicolon-separated list of modules to exclude from loading
# ('blacklist'). This has only effect it load_plugins is empty.
# If empty, all modules in plugin_path are loaded.
#
# o binrpcctrl and unixsockctrl: excluded as sipctrl is default ctrl
# o precoded_announce: no precoded sample files present
exclude_plugins=binrpcctrl;unixsockctrl;precoded_announce

# optional parameter: exclude_payloads=<payload list>
#
# semicolon-separated list of payloads to exclude from loading
# ('blacklist'). 
# 
# For example, to only use low bandwidth codecs:
#  exclude_payloads=PCMU;PCMA;G726-40;G726-32;G721;L16
# or, to use only codecs which are not CPU-intensive:
#  exclude_payloads=iLBC;speex;
# only use G711 (exclude everything else):
#  exclude_payloads=iLBC;speex;G726-40;G726-32;G721;G726-24;G726-16;GSM;L16

# optional parameter: rtp_low_port=<port>
#
# - sets lowest for RTP used port
rtp_low_port=10000

# optional parameter: rtp_high_port=<port>
#
# - sets highest for RTP used port 
rtp_high_port=60000

# optional parameter: media_processor_threads=<num_value>
# 
# - controls how many threads should be created that
#   process media - on single-processor systems set this 
#   parameter to 1 (default), on MP systems to a higher
#   value
media_processor_threads=1


# optional parameter: session_limit=<limit>;<err code>;<err reason>
# 
# - this sets a maximum active session limit. If that limit is 
#   reached, no further calls are accepted, but the error reply 
#   with err code/err reason is sent out.
# 
# Default: 0 (None)
#
# Example:
#  session_limit="1000;503;Server overload"

# optional parameter: listen=<ip_address>|<device>
# 
# - this informs SEMS about the interface where its SER is 
#   bound to. SEMS needs this information to correctly set 
#   the contact header in outgoing calls and registrations. 
#   Should be set to equal the 'listen' configuration option
#   in ser_sems.cfg.
#   If not set, this defaults to the interface SEMS binds to.
# Examples: 
#  listen=10.0.0.34
#  listen=eth0

# optional parameter: sip_ip=<ip_address>
#
# - this informs SEMS about the SIP IP where its SIP stack is 
#   bound to or should be bound to. If 'sipctrl' SIP stack is used,
#   the SIP stack will bind to this address. This also sets 
#   the value used for contact header in outgoing calls and 
#   registrations. 
#   It defaults to the value of 'listen' (see above).
#
# Example:
#  sip_ip=10.0.0.34
#
# default: <listen ip address>
#
#sip_ip=10.0.0.34

# optional parameter: public_ip=<ip_address>
# 
# - when running SEMS behind certain simple NAT configurations,
#   you can use this parameter to inform SEMS of its public IP
#   address. If this parameter is set, SEMS will write this value
#   into SDP bodies.
#   If this parameter is not set, the local IP address is used.
#   N.B., there is no support for port translation; the local 
#   RTP port is used in either case.
#   
# Example:
#  public_sip=75.101.219.48
#  
  
# optional parameter: sip_port=<port_number>
#
# - this informs SEMS about the port where its SIP stack is 
#   bound to or should be bound to. SEMS needs this information
#   to correctly set the contact header in outgoing calls 
#   and registrations. Should be set to equal the 'port' 
#   configuration option in ser_sems.cfg.
#   This does not need to be set if sipctrl SIP stack, outgoing 
#   calls and registrations from SEMS are not used.
#  
#   default: 5060
#
sip_port=5080

# optional parameter: outbound_proxy=uri
#
# - this sets a next hop for calls and registrations outgoing 
#   from SEMS. This does not apply to requests in a dialog that 
#   is initiated by someone else and incoming to SEMS, as in 
#   this case the next_hop is taken by SEMS from the incoming 
#   request that established the dialog.
#   If this is not set (default setting), then for dialogs 
#   initiated by SEMS the r-uri is resolved and the request 
#   is sent there directly.
#   This is resolved by the SIP stack with DNS if a name is given.
#   Warning: If the value set here can not be resolved, no 
#            requests will be sent out at all!
#  
#   default: empty
#
#   example:
#   outbound_proxy=sip:proxy.mydomain.net
#
#outbound_proxy=sip:192.168.0.1

# optional parameter: dead_rtp_time=<unsigned int>
#
# - if != 0, after this time (in seconds) of no RTP
#   a session is considered dead and stopped. If set
#   to 0 no check is done for rtp timeout.
#
#   default=300 (5 minutes)
#
# Examples:
#    # disable RTP timeout
#    dead_rtp_time=0  
#    # RTP timeout after 10 seconds
#    dead_rtp_time=10  

# optional parameter: use_default_signature={yes|no}
#
# - use a Server/User-Agent header with the SEMS server 
#   signature and version.
#   Set server_signature=0 in ser_sems.cfg if you use it.   
#
#   default=no
#
# use_default_signature=no

# optional parameter: signature=<signature string>
#
# - use a Server/User-Agent header with a custom user agent
#   signature.
#   Overridden by default signature if 
#   use_default_signature is set.
#   Set server_signature=0 in ser_sems.cfg if you use it.   
#
#
# signature="SEMS media server 1.0"

# optional parameter: single_codec_in_ok={yes|no}
#
# - use single codec in 200 OK response
#
#   default=no
#
# single_codec_in_ok=no

# optional parameter: codec_order=codec_name_1,codec_name2,...
#
# - Codec order used when sending INVITE requests.  Codecs in codec_order
#   will be on the top of the list followed by other supported codecs
#   (if any).
#
#   default=empty
#
# codec_order=iLBC,GSM

# optional parameter: ignore_rtpxheaders={yes|no}
#
# - if this is set to yes, RTP extension headers (e.g. when using ZRTP)
#   are ignored. If set to no, the whole RTP packets with extension 
#   headers will be ignored and a debug message is printed on every 
#   received packet.
#
#   default=no
#
# ignore_rtpxheaders=yes

# optional parameter: dtmf_detector={spandsp|internal}
#
# sets inband DTMF detector to use. spandsp support must be compiled in
# for this to have effect if dtmf_detector=spandsp.
#  
# default: internal
#
#dtmf_detector=spandsp


Generated on Fri May 16 12:12:49 2008 for SEMS by  doxygen 1.5.1
Home |  Recent changes |  Search |  Glossary |  Sitemap |  Login