From: Peter Lemenkov <lemenkov@gmail.com>
Date: Wed, 17 Jun 2015 13:46:04 +0300
Subject: [PATCH] Update configs
Signed-off-by: Peter Lemenkov <lemenkov@gmail.com>
diff --git a/CMakeLists.txt b/CMakeLists.txt
index d098fc43..71cacc56 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -25,9 +25,14 @@ ELSE(EXISTS ${CMAKE_SOURCE_DIR}/.git)
"${SEMS_MAJOR_VERSION}.${SEMS_MINOR_VERSION}.${SEMS_BUILD_VERSION}")
ENDIF(EXISTS ${CMAKE_SOURCE_DIR}/.git)
-MESSAGE(STATUS "Configuring ${CMAKE_PROJECT_NAME} v. ${SEMS_VERSION}")
+ADD_DEFINITIONS(-DSEMS_VERSION=\\\"${SEMS_VERSION}\\\")
+ADD_DEFINITIONS(-DARCH=\\\"${CMAKE_SYSTEM_PROCESSOR}\\\")
+ADD_DEFINITIONS(-DOS=\\\"${CMAKE_SYSTEM_NAME}\\\")
+
+ADD_DEFINITIONS(-DSYSTEM_SAMPLECLOCK_RATE=32000LL)
+ADD_DEFINITIONS(-DSEMS_APP_NAME=\\\"sems\\\")
-SET(SEMS_APP_NAME "sems")
+MESSAGE(STATUS "Configuring ${CMAKE_PROJECT_NAME} v. ${SEMS_VERSION}")
OPTION(SEMS_USE_SPANDSP "Build with spandsp" OFF)
OPTION(SEMS_USE_LIBSAMPLERATE "Build with libsamplerate" OFF)
@@ -281,6 +286,15 @@ ADD_DEFINITIONS(-DLOG_BUFFER_LEN=2048)
#ADD_DEFINITIONS(-DDEBUG_PLAYOUTBUF)
+# Propagate all unparsed SIP headers into AmSipReply. Disabled by default
+# because only special applications might need this and it brings higher memory
+# demands and affects performance.
+#ADD_DEFINITIONS(-DPROPAGATE_UNPARSED_REPLY_HEADERS)
+
+IF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+ ADD_DEFINITIONS(-DPROPAGATE_COREDUMP_SETTINGS)
+ENDIF(${CMAKE_SYSTEM_NAME} STREQUAL "Linux")
+
SET(CMAKE_SHARED_LIBRARY_PREFIX "")
ADD_SUBDIRECTORY (core)
diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
index ae4c46e8..14dd8b57 100644
--- a/apps/CMakeLists.txt
+++ b/apps/CMakeLists.txt
@@ -16,6 +16,7 @@ IF(OPENSSL_FOUND)
ENDIF(OPENSSL_FOUND)
ADD_SUBDIRECTORY(dsm)
ADD_SUBDIRECTORY(early_announce)
+ADD_SUBDIRECTORY(early_dbprompt)
#ADD_SUBDIRECTORY(examples)
IF(MISDN_FOUND)
# ADD_SUBDIRECTORY(gateway)
@@ -29,6 +30,7 @@ ENDIF(LIBEV_FOUND)
IF(PYTHONLIBS_FOUND)
ADD_SUBDIRECTORY(mailbox)
ENDIF(PYTHONLIBS_FOUND)
+ADD_SUBDIRECTORY(mobile_push)
ADD_SUBDIRECTORY(monitoring)
IF(LAME_FOUND)
ADD_SUBDIRECTORY(mp3)
diff --git a/apps/dsm/etc/dsm.conf.cmake b/apps/dsm/etc/dsm.conf.cmake
index caad8bca..98a0a0ae 100644
--- a/apps/dsm/etc/dsm.conf.cmake
+++ b/apps/dsm/etc/dsm.conf.cmake
@@ -127,8 +127,8 @@ load_prompts=${SEMS_CFG_PREFIX}/etc/sems/etc/dsm_in_prompts.conf,${SEMS_CFG_PREF
# conf_dir=<path>
#
-# <path> is scanned for *.conf files. Every .conf
-# file is loaded, and in the .conf file, the following
+# <path> is scanned for *.conf files configuring application bundles ("app bundles").
+# Every .conf file is loaded as app bundle, and in the .conf file, the following
# DSM config parameters are processed:
# diag_path=
# load_diags=
diff --git a/apps/dsm/mods/CMakeLists.txt b/apps/dsm/mods/CMakeLists.txt
index 91369c93..6d4d3da9 100644
--- a/apps/dsm/mods/CMakeLists.txt
+++ b/apps/dsm/mods/CMakeLists.txt
@@ -1,6 +1,8 @@
#ADD_SUBDIRECTORY (mod_aws)
ADD_SUBDIRECTORY (mod_conference)
+#ADD_SUBDIRECTORY (mod_curl)
ADD_SUBDIRECTORY (mod_dlg)
+ADD_SUBDIRECTORY (mod_groups)
IF(SEMS_USE_MONITORING)
ADD_SUBDIRECTORY (mod_monitoring)
ENDIF(SEMS_USE_MONITORING)
@@ -8,7 +10,13 @@ IF(MYSQLPP_FOUND)
ADD_SUBDIRECTORY (mod_mysql)
ENDIF(MYSQLPP_FOUND)
ADD_SUBDIRECTORY (mod_py)
+#ADD_SUBDIRECTORY (mod_redis)
+ADD_SUBDIRECTORY (mod_regex)
+#ADD_SUBDIRECTORY (mod_sbc)
+ADD_SUBDIRECTORY (mod_subscription)
ADD_SUBDIRECTORY (mod_sys)
ADD_SUBDIRECTORY (mod_uri)
ADD_SUBDIRECTORY (mod_utils)
+#ADD_SUBDIRECTORY (mod_xml)
+#ADD_SUBDIRECTORY (mod_zrtp)
diff --git a/apps/dsm/mods/mod_sbc/CMakeLists.txt b/apps/dsm/mods/mod_sbc/CMakeLists.txt
new file mode 100644
index 00000000..9cb76f13
--- /dev/null
+++ b/apps/dsm/mods/mod_sbc/CMakeLists.txt
@@ -0,0 +1,7 @@
+set (mod_sbc_SRCS
+ModSbc.cpp
+)
+
+SET(sems_dsm_module_name mod_sbc)
+INCLUDE(${CMAKE_SOURCE_DIR}/cmake/dsm.lib.rules.txt)
+
diff --git a/apps/dsm/mods/mod_subscription/CMakeLists.txt b/apps/dsm/mods/mod_subscription/CMakeLists.txt
new file mode 100644
index 00000000..713339e8
--- /dev/null
+++ b/apps/dsm/mods/mod_subscription/CMakeLists.txt
@@ -0,0 +1,7 @@
+set (mod_subscription_SRCS
+ModSubscription.cpp
+)
+
+SET(sems_dsm_module_name mod_subscription)
+INCLUDE(${CMAKE_SOURCE_DIR}/cmake/dsm.lib.rules.txt)
+
diff --git a/apps/early_dbprompt/CMakeLists.txt b/apps/early_dbprompt/CMakeLists.txt
new file mode 100644
index 00000000..08c30b8a
--- /dev/null
+++ b/apps/early_dbprompt/CMakeLists.txt
@@ -0,0 +1,5 @@
+
+SET(sems_dsm_script_names
+ early_dbprompt.dsm
+)
+INCLUDE(${CMAKE_SOURCE_DIR}/cmake/dsm.script.rules.txt)
diff --git a/apps/mobile_push/CMakeLists.txt b/apps/mobile_push/CMakeLists.txt
new file mode 100644
index 00000000..fefbda75
--- /dev/null
+++ b/apps/mobile_push/CMakeLists.txt
@@ -0,0 +1,5 @@
+
+SET(sems_dsm_script_names
+ mobile_push.dsm
+)
+INCLUDE(${CMAKE_SOURCE_DIR}/cmake/dsm.script.rules.txt)
diff --git a/apps/monitoring/etc/monitoring.conf.cmake b/apps/monitoring/etc/monitoring.conf.cmake
index 1f667834..b61c1cad 100644
--- a/apps/monitoring/etc/monitoring.conf.cmake
+++ b/apps/monitoring/etc/monitoring.conf.cmake
@@ -12,3 +12,9 @@ run_garbage_collector = yes
# Default: 10
#
#garbage_collector_interval = 20
+
+# retain_samples_s=10
+#
+# retain "sample" type values for n seconds
+#
+#retain_samples_s=20
diff --git a/apps/sbc/etc/sbc.conf.cmake b/apps/sbc/etc/sbc.conf.cmake
index e5dab802..033df47d 100644
--- a/apps/sbc/etc/sbc.conf.cmake
+++ b/apps/sbc/etc/sbc.conf.cmake
@@ -31,6 +31,13 @@ active_profile=transparent
# e.g. load_cc_plugins=cc_pcalls;cc_ctl
#load_cc_plugins=cc_pcalls;cc_ctl
+# handle OPTIONS messages in the core? (with limits etc)
+# Default: no
+#core_options_handling=yes
+
+# How many threads to use for processing out-of-dialog messages, default: 1
+# out_of_dialog_threads=4
+
## RFC4028 Session Timer
# default configuration - can be overridden by call profiles
diff --git a/apps/sbc/etc/transparent.sbcprofile.conf.cmake b/apps/sbc/etc/transparent.sbcprofile.conf.cmake
index b7686201..c2692aeb 100644
--- a/apps/sbc/etc/transparent.sbcprofile.conf.cmake
+++ b/apps/sbc/etc/transparent.sbcprofile.conf.cmake
@@ -19,11 +19,23 @@
#force_outbound_proxy=yes
# destination IP[:port] for outgoing requests
#next_hop=192.168.5.106:5060
-# set RURI as calculated next_hop
+# set RURI to (calculated) next_hop
#patch_ruri_next_hop=yes
+# update next_hop from remote destination? (e.g. from SRV)
+#next_hop_fixed=yes
# outbound interface to use (interface ID)
#outbound_interface=extern
+# registration cache: use local registration cache
+# enable_reg_caching=yes
+# register upstream every 3600 sec
+# min_reg_expires=3600
+# and make UA re-register every 60 sec
+# max_ua_expires=60
+
+# SIP NAT handling: recommended if dealing with far end NATs
+#dlg_nat_handling=yes
+
## RTP relay
# enable RTP relaying (bridging):
#enable_rtprelay=yes
@@ -56,10 +68,17 @@
## append extra headers
#append_headers="P-Source-IP: $si\r\nP-Source-Port: $sp\r\n"
+## subscription-less NOTIFY pass through
+#allow_subless_notify=no
+
## reply translations
# translate some 6xx class replies to 4xx class:
#reply_translations="603=>488 Not acceptable here|600=>406 Not Acceptable"
+## fix replaces for call transfers
+# fix_replaces_inv=yes
+# fix_replaces_ref=yes
+
## authentication:
#enable_auth=yes
#auth_user=$P(u)
@@ -70,6 +89,12 @@
#auth_aleg_user=$P(au)
#auth_aleg_pwd=$P(ap)
+## UAS auth for B leg
+#uas_auth_bleg_enabled=yes
+#uas_auth_bleg_realm=$P(sr)
+#uas_auth_bleg_user=$P(su)
+#uas_auth_bleg_pwd=$P(sp)
+
## call timer
#enable_call_timer=yes
#call_timer=60
@@ -83,9 +108,8 @@
## session timer:
#enable_session_timer=yes
-# if session_expires is not configured here,
-# the values from sbc.conf are used, or the
-# default values
+# if any of the session timer parameters below are not defined here,
+# the values from sbc.conf are used, or the default values
#session_expires=120
#minimum_timer=90
#session_refresh_method=UPDATE_FALLBACK_INVITE
diff --git a/apps/webconference/etc/webconference.conf.cmake b/apps/webconference/etc/webconference.conf.cmake
index 69c0e9f0..1566504a 100644
--- a/apps/webconference/etc/webconference.conf.cmake
+++ b/apps/webconference/etc/webconference.conf.cmake
@@ -29,6 +29,13 @@ star_finishes_pin=yes
# the conference room, without asking for the PIN.
#
direct_room_re=000777.*
+
+# room_pin_split=n - split PIN/room mode, if set split pin in room
+# and pin at position n, makes sense together with private
+# rooms mode
+#
+#room_pin_split=4
+
#
# direct_room_strip specifies the number of digits to strip
# from the user part of the request uri to get the conference
@@ -36,6 +43,12 @@ direct_room_re=000777.*
# e.g. direct_room_strip=5, called 000777123 => room 123
direct_room_strip=6
+# lonely_user_timer - a caller that is that many seconds in a room alone will be kicked
+#
+# Default: disabled (0)
+#
+#lonely_user_timer=120
+
#
# master_password sets optionally a master password which can be used to
# retreive a room's password with the getRoomPassword function
@@ -140,6 +153,9 @@ stats_dir=/var/log/sems-webconference/
# or, get participant ID from header:
#participant_id_header=x-participantid
+# Loop the first_participant_prompt? [yes|no]
+# default: no
+#loop_first_participant_prompt=yes
###############################################################
# RFC4028 Session Timer
diff --git a/core/plug-in/CMakeLists.txt b/core/plug-in/CMakeLists.txt
index 1ef710d8..0be6e536 100644
--- a/core/plug-in/CMakeLists.txt
+++ b/core/plug-in/CMakeLists.txt
@@ -14,6 +14,7 @@ IF(SEMS_USE_ILBC)
ENDIF(SEMS_USE_ILBC)
#ADD_SUBDIRECTORY (isac)
ADD_SUBDIRECTORY (l16)
+#ADD_SUBDIRECTORY (opus)
ADD_SUBDIRECTORY (session_timer)
#ADD_SUBDIRECTORY (silk)
IF(SPEEX_FOUND)
diff --git a/core/sems.h.cmake b/core/sems.h.cmake
index 1c2cccda..7adc87ff 100644
--- a/core/sems.h.cmake
+++ b/core/sems.h.cmake
@@ -28,12 +28,6 @@
#ifndef _ans_machine_h_
#define _ans_machine_h_
-#define SEMS_VERSION "${SEMS_VERSION}"
-#define OS "${CMAKE_SYSTEM_NAME}"
-#define ARCH "${CMAKE_SYSTEM_PROCESSOR}"
-
-#define SEMS_APP_NAME "${SEMS_APP_NAME}"
-
#define CONFIG_FILE "${SEMS_CFG_PREFIX}/etc/sems/sems.conf"
#define MOD_CFG_PATH "${SEMS_CFG_PREFIX}/etc/sems/etc/"
#define ANNOUNCE_PATH "${SEMS_AUDIO_PREFIX}/sems/audio"