[sems] Ver. 1.3.0

Peter Lemenkov peter at fedoraproject.org
Mon Sep 27 13:01:11 UTC 2010


commit 481684af361bc4ea00e5841147a054eabb679503
Author: Peter Lemenkov <lemenkov at gmail.com>
Date:   Mon Sep 27 17:01:06 2010 +0400

    Ver. 1.3.0
    
    Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>

 .gitignore                                         |    1 +
 ...001-Force-to-use-system-wide-GSM-includes.patch |    8 +-
 ...llow-rewrite-of-custom-makefiles-by-CMake.patch |   12 +-
 ...Set-CFG_PREFIX-to-empty-string-by-default.patch |   10 +-
 ...ql-in-conference-and-early_announce-modul.patch |    6 +-
 sems-0004-Fix-for-old-python-2.4.patch             |   26 -
 ...aid_sip-plugin-to-default-exclude-list-du.patch |   26 +
 ...5-More-compatibility-with-older-CMake-2.4.patch |  177 ------
 sems-0006-More-cmake-templates.patch               |  605 ++++++++++++++++++++
 sems-0006-Typo-paramater-parameter.patch           |   77 ---
 ...typo-this-conf-file-actually-is-a-early_a.patch |   35 --
 sems-0007-Enable-py_sems-building-with-CMake.patch |   34 ++
 sems-0008-Enable-sst_b2b-building-with-sems.patch  |   25 +
 sems-0008-Fix-MOD_NAME-passing-to-gcc.patch        |   28 -
 ...009-More-CMake-templates-for-config-files.patch |   49 --
 ...-variables-escaping-strategy-on-new-CMake.patch |   28 -
 ...stream-AmSession-rtp_str-only-if-really-n.patch |  549 ------------------
 sems.spec                                          |   79 +--
 sources                                            |    2 +-
 19 files changed, 739 insertions(+), 1038 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index ba05e60..ba29498 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
 sems-1.2.1.w_o_ilbc_sources.tar.gz
+/sems-1.3.0.w_o_ilbc_sources.tar.gz
diff --git a/sems-0001-Force-to-use-system-wide-GSM-includes.patch b/sems-0001-Force-to-use-system-wide-GSM-includes.patch
index 48d064d..df3fae0 100644
--- a/sems-0001-Force-to-use-system-wide-GSM-includes.patch
+++ b/sems-0001-Force-to-use-system-wide-GSM-includes.patch
@@ -1,7 +1,7 @@
-From eff73786b505f8be8bf54815c379323f01cf7fd2 Mon Sep 17 00:00:00 2001
+From f40d07c03612e51bbd0d3330535d8ebc365b506c Mon Sep 17 00:00:00 2001
 From: Peter Lemenkov <lemenkov at gmail.com>
 Date: Wed, 31 Mar 2010 11:52:52 +0400
-Subject: [PATCH 01/12] Force to use system-wide GSM includes
+Subject: [PATCH 1/8] Force to use system-wide GSM includes
 
 Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
 ---
@@ -9,7 +9,7 @@ Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/core/plug-in/gsm/gsm.c b/core/plug-in/gsm/gsm.c
-index 805ef78..bfc6a59 100644
+index 286a989..3517e59 100644
 --- a/core/plug-in/gsm/gsm.c
 +++ b/core/plug-in/gsm/gsm.c
 @@ -27,7 +27,7 @@
@@ -22,5 +22,5 @@ index 805ef78..bfc6a59 100644
  
  #include <stdlib.h>
 -- 
-1.7.2.1
+1.7.2.3
 
diff --git a/sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch b/sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch
index 652d32b..7da8a9e 100644
--- a/sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch
+++ b/sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch
@@ -1,7 +1,7 @@
-From d4fd6eb9b0964fdf982c35a919b254d1f50a6c2d Mon Sep 17 00:00:00 2001
+From c53a56b9667ea821281e14ed763d4db49e256c71 Mon Sep 17 00:00:00 2001
 From: Peter Lemenkov <lemenkov at gmail.com>
 Date: Wed, 31 Mar 2010 11:53:48 +0400
-Subject: [PATCH 02/12] Allow rewrite of custom makefiles by CMake
+Subject: [PATCH 2/8] Allow rewrite of custom makefiles by CMake
 
 Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
 ---
@@ -9,12 +9,12 @@ Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
  1 files changed, 0 insertions(+), 9 deletions(-)
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 518b14c..c7c6e40 100644
+index 502561e..c17c956 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -9,15 +9,6 @@ SET(SEMS_EXTRA_VERSION dev)
+@@ -12,15 +12,6 @@ SET(SEMS_EXTRA_VERSION dev)
  SET(SEMS_VERSION
-     "${SEMS_MAJOR_VERSION}.${SEMS_MINOR_VERSION}.${SEMS_BUILD_VERSION}")
+     "${SEMS_MAJOR_VERSION}.${SEMS_MINOR_VERSION}.${SEMS_BUILD_VERSION}-${SEMS_EXTRA_VERSION}")
  
 -IF(CMAKE_SOURCE_DIR STREQUAL CMAKE_BINARY_DIR AND NOT MSVC_IDE)
 -	message(FATAL_ERROR "In-source builds are not allowed.
@@ -29,5 +29,5 @@ index 518b14c..c7c6e40 100644
  OPTION(SEMS_USE_LIBSAMPLERATE "Build with libsamplerate" OFF)
  OPTION(SEMS_USE_ZRTP          "Build with ZRTP" OFF)
 -- 
-1.7.2.1
+1.7.2.3
 
diff --git a/sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch b/sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch
index 98b7b52..6da11a1 100644
--- a/sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch
+++ b/sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch
@@ -1,7 +1,7 @@
-From fae8f9be9808a690bf8e75fa9b330b32f6953e28 Mon Sep 17 00:00:00 2001
+From f240f4b7cf5701ce93b812e4be77428d9514fb28 Mon Sep 17 00:00:00 2001
 From: Peter Lemenkov <lemenkov at gmail.com>
 Date: Wed, 31 Mar 2010 18:56:39 +0400
-Subject: [PATCH 03/12] Set CFG_PREFIX to empty string by default
+Subject: [PATCH 3/8] Set CFG_PREFIX to empty string by default
 
 Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
 ---
@@ -9,10 +9,10 @@ Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
  1 files changed, 1 insertions(+), 1 deletions(-)
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
-index c7c6e40..e0d749a 100644
+index c17c956..7b4c49b 100644
 --- a/CMakeLists.txt
 +++ b/CMakeLists.txt
-@@ -25,7 +25,7 @@ OPTION(MAX_RTP_SESSIONS:int   "How many rtp sessions SEMS will handle simultaneo
+@@ -34,7 +34,7 @@ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} STREQUAL "2.4")
  SET(CMAKE_DL_LIBS ${CMAKE_DL_LIBS} m pthread)
  
  IF (NOT SEMS_CFG_PREFIX)
@@ -22,5 +22,5 @@ index c7c6e40..e0d749a 100644
  MESSAGE(STATUS "SEMS cfg prefix was set to: ${SEMS_CFG_PREFIX}")
  
 -- 
-1.7.2.1
+1.7.2.3
 
diff --git a/sems-0011-Disable-mysql-in-conference-and-early_announce-modul.patch b/sems-0004-Disable-mysql-in-conference-and-early_announce-modul.patch
similarity index 93%
rename from sems-0011-Disable-mysql-in-conference-and-early_announce-modul.patch
rename to sems-0004-Disable-mysql-in-conference-and-early_announce-modul.patch
index c0c0cd9..01027c0 100644
--- a/sems-0011-Disable-mysql-in-conference-and-early_announce-modul.patch
+++ b/sems-0004-Disable-mysql-in-conference-and-early_announce-modul.patch
@@ -1,7 +1,7 @@
-From 90b5fcd79d4c6366b1b8f8d12c8670968d6c70d3 Mon Sep 17 00:00:00 2001
+From 460b5e654e5789b75a3514d1de9b658f0245a62e Mon Sep 17 00:00:00 2001
 From: Peter Lemenkov <lemenkov at gmail.com>
 Date: Fri, 25 Jun 2010 12:16:45 +0400
-Subject: [PATCH 11/12] Disable mysql++ in conference and early_announce modules
+Subject: [PATCH 4/8] Disable mysql++ in conference and early_announce modules
 
 Unfortunately, this breaks existing configurations, which is a
 no-go situation for EPEL repository. We'll enable it later.
@@ -59,5 +59,5 @@ index 184d282..1e23638 100644
  SET(sems_module_name early_announce)
  INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt)
 -- 
-1.7.2.1
+1.7.2.3
 
diff --git a/sems-0005-Add-sw_prepaid_sip-plugin-to-default-exclude-list-du.patch b/sems-0005-Add-sw_prepaid_sip-plugin-to-default-exclude-list-du.patch
new file mode 100644
index 0000000..5bb333d
--- /dev/null
+++ b/sems-0005-Add-sw_prepaid_sip-plugin-to-default-exclude-list-du.patch
@@ -0,0 +1,26 @@
+From 18a743c479753fca2dd561cebea0317ce3de6871 Mon Sep 17 00:00:00 2001
+From: Peter Lemenkov <lemenkov at gmail.com>
+Date: Mon, 27 Sep 2010 14:13:00 +0400
+Subject: [PATCH 5/8] Add sw_prepaid_sip plugin to default exclude list (due to missing cc_acc)
+
+Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
+---
+ core/etc/sems.conf.cmake |    2 +-
+ 1 files changed, 1 insertions(+), 1 deletions(-)
+
+diff --git a/core/etc/sems.conf.cmake b/core/etc/sems.conf.cmake
+index fa9f1d9..14d5f4b 100644
+--- a/core/etc/sems.conf.cmake
++++ b/core/etc/sems.conf.cmake
+@@ -140,7 +140,7 @@ plugin_path=${SEMS_EXEC_PREFIX}/${SEMS_LIBDIR}/sems/plug-in/
+ #
+ # o binrpcctrl and unixsockctrl: excluded as sipctrl is default ctrl
+ # o precoded_announce: no precoded sample files present
+-exclude_plugins=binrpcctrl;unixsockctrl;precoded_announce
++exclude_plugins=binrpcctrl;unixsockctrl;precoded_announce;sw_prepaid_sip
+ 
+ # optional parameter: application
+ # 
+-- 
+1.7.2.3
+
diff --git a/sems-0006-More-cmake-templates.patch b/sems-0006-More-cmake-templates.patch
new file mode 100644
index 0000000..4046250
--- /dev/null
+++ b/sems-0006-More-cmake-templates.patch
@@ -0,0 +1,605 @@
+From 67543e5578c9ef136444afa32acf625a744ad1fb Mon Sep 17 00:00:00 2001
+From: Peter Lemenkov <lemenkov at gmail.com>
+Date: Mon, 27 Sep 2010 15:38:10 +0400
+Subject: [PATCH 6/8] More cmake templates
+
+Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
+---
+ apps/auth_b2b/etc/auth_b2b.conf.cmake             |    7 +++
+ apps/call_timer/etc/call_timer.conf.cmake         |   13 +++++
+ apps/conference/etc/conference.conf.cmake         |   34 ++++++++++++
+ apps/dsm/etc/dsm.conf.cmake                       |   61 +++++++++++++++++++++
+ apps/gateway/etc/gateway.conf.cmake               |    9 +++
+ apps/ivr/etc/ivr.conf.cmake                       |   37 +++++++++++++
+ apps/jsonrpc/etc/jsonrpc.conf.cmake               |   13 +++++
+ apps/monitoring/etc/monitoring.conf.cmake         |   14 +++++
+ apps/msg_storage/etc/msg_storage.conf.cmake       |    8 +++
+ apps/reg_agent/etc/reg_agent.conf.cmake           |   34 ++++++++++++
+ apps/sst_b2b/etc/sst_b2b.conf.cmake               |   39 +++++++++++++
+ apps/sw_prepaid_sip/etc/sw_prepaid_sip.conf.cmake |    2 +
+ apps/webconference/etc/webconference.conf.cmake   |   40 ++++++++++++++
+ apps/xmlrpc2di/etc/xmlrpc2di.conf.cmake           |   38 +++++++++++++
+ core/plug-in/CMakeLists.txt                       |    1 +
+ core/plug-in/echo/etc/echo.conf.cmake             |   35 ++++++++++++
+ core/plug-in/g729/CMakeLists.txt                  |    9 +++
+ core/plug-in/stats/etc/stats.conf.cmake           |    2 +
+ sems.h.cmake                                      |    2 +
+ 19 files changed, 398 insertions(+), 0 deletions(-)
+ create mode 100644 apps/auth_b2b/etc/auth_b2b.conf.cmake
+ create mode 100644 apps/call_timer/etc/call_timer.conf.cmake
+ create mode 100644 apps/conf_auth/etc/conf_auth.conf.cmake
+ create mode 100644 apps/gateway/etc/gateway.conf.cmake
+ create mode 100644 apps/jsonrpc/etc/jsonrpc.conf.cmake
+ create mode 100644 apps/monitoring/etc/monitoring.conf.cmake
+ create mode 100644 apps/msg_storage/etc/msg_storage.conf.cmake
+ create mode 100644 apps/reg_agent/etc/reg_agent.conf.cmake
+ create mode 100644 apps/sst_b2b/etc/sst_b2b.conf.cmake
+ create mode 100644 apps/sw_prepaid_sip/etc/sw_prepaid_sip.conf.cmake
+ create mode 100644 apps/xmlrpc2di/etc/xmlrpc2di.conf.cmake
+ create mode 100644 core/plug-in/echo/etc/echo.conf.cmake
+ create mode 100644 core/plug-in/g729/CMakeLists.txt
+ create mode 100644 core/plug-in/stats/etc/stats.conf.cmake
+
+diff --git a/apps/auth_b2b/etc/auth_b2b.conf.cmake b/apps/auth_b2b/etc/auth_b2b.conf.cmake
+new file mode 100644
+index 0000000..e9803e1
+--- /dev/null
++++ b/apps/auth_b2b/etc/auth_b2b.conf.cmake
+@@ -0,0 +1,7 @@
++
++# Account to use on the outgoing call leg. If this is not set,
++# the account is taken from P-App-Param header (see Readme.auth_b2b)
++#
++# user=someuser
++# domain=somedomain.net
++# pwd=sompwd
+diff --git a/apps/call_timer/etc/call_timer.conf.cmake b/apps/call_timer/etc/call_timer.conf.cmake
+new file mode 100644
+index 0000000..ff4da06
+--- /dev/null
++++ b/apps/call_timer/etc/call_timer.conf.cmake
+@@ -0,0 +1,13 @@
++
++#
++# use_app_param=[yes|no]
++#
++# sets whether App-Param header is used for call time value
++# (or default_call_time below)
++#
++use_app_param=yes
++
++#
++# call timer value used if not in P-App-Param. in seconds
++#
++default_call_time=1200
+\ No newline at end of file
+diff --git a/apps/conf_auth/etc/conf_auth.conf.cmake b/apps/conf_auth/etc/conf_auth.conf.cmake
+new file mode 100644
+index 0000000..e69de29
+diff --git a/apps/conference/etc/conference.conf.cmake b/apps/conference/etc/conference.conf.cmake
+index d1cb13d..0f02fe3 100644
+--- a/apps/conference/etc/conference.conf.cmake
++++ b/apps/conference/etc/conference.conf.cmake
+@@ -33,3 +33,37 @@ playout_type=adaptive_playout
+ #default:
+ # use_rfc4240_rooms=no
+ #
++
++###############################################################
++# RFC4028 Session Timer
++#
++
++# - enables the session timer ([yes,no]; default: no)
++# 
++# enable_session_timer=yes
++
++# - set the "Session-Expires" parameter for the session timer.
++#
++# session_expires=240
++
++# - set the "Min-SE" parameter for the session timer.
++#
++# minimum_timer=90
++
++# session refresh (Session Timer, RFC4028) method
++#
++# INVITE                 - use re-INVITE
++# UPDATE                 - use UPDATE
++# UPDATE_FALLBACK_INVITE - use UPDATE if indicated in Allow, re-INVITE otherwise
++#
++# Default: UPDATE_FALLBACK_INVITE
++#
++# Note: Session Timers are only supported in some applications
++#
++#session_refresh_method=UPDATE
++
++# accept_501_reply - accept 501 reply as successful refresh? [yes|no]
++#
++# Default: yes
++#
++#accept_501_reply=no
+diff --git a/apps/dsm/etc/dsm.conf.cmake b/apps/dsm/etc/dsm.conf.cmake
+index d56acae..caad8bc 100644
+--- a/apps/dsm/etc/dsm.conf.cmake
++++ b/apps/dsm/etc/dsm.conf.cmake
+@@ -16,6 +16,10 @@ mod_path=${SEMS_EXEC_PREFIX}/${SEMS_LIBDIR}/sems/dsm/
+ # print raw DSM text while loading to debug log?
+ # debug_raw_dsm=yes
+ 
++# do rough consistency checking after loading DSM?
++#  (default: yes)
++#dsm_consistency_check=no
++
+ # DSM to start for in/outbound call if application to execute=dsm
+ # (from application=xyz in sems.conf, either application=dsm or
+ #  application=$(apphdr)/$(ruriparam) etc)
+@@ -51,6 +55,10 @@ load_prompts=${SEMS_CFG_PREFIX}/etc/sems/etc/dsm_in_prompts.conf,${SEMS_CFG_PREF
+ #
+ #set_param_variables=yes
+ 
++# run these system DSMs on startup (system DSMs are DSMs executed without a call)
++#
++#run_system_dsms=system_dsm1,system_dsm2
++
+ # monitoring_full_stategraph=[yes|no]
+ #
+ # Controls whether to log the full call graph (all states visited)
+@@ -95,6 +103,21 @@ load_prompts=${SEMS_CFG_PREFIX}/etc/sems/etc/dsm_in_prompts.conf,${SEMS_CFG_PREF
+ #
+ #monitor_select_use_callee=no
+ 
++# monitor_select_filters=<comma-separated list of filter variables>
++#
++# for mon_select, records are also filtered by these variables,
++# the values taked of P-App-Params. 
++#
++# e.g. if 
++#    P-App-Param: product_id=2;appdomain=iptel.org
++# and
++#    monitor_select_filters=product_id,appdomain
++#  the record in monitoring must have also those avps set:
++#   appdomain=iptel.org
++#   product_id=2
++#
++# monitor_select_filters=product_id,appdomain
++
+ # monitor_select_fallback=app
+ #
+ # fallback application for $(mon_select) application selection
+@@ -113,6 +136,44 @@ load_prompts=${SEMS_CFG_PREFIX}/etc/sems/etc/dsm_in_prompts.conf,${SEMS_CFG_PREF
+ #   mod_path=
+ #   preload_mods=
+ #   run_invite_event=
++#   set_param_variables=
++#   run_system_dsms=
++  
++#   and additional configuration variables (as script variables)
++#
++# conf_dir=${SEMS_CFG_PREFIX}/etc/sems/etc/dsm/
++
++
++###############################################################
++# RFC4028 Session Timer
++#
++
++# - enables the session timer ([yes,no]; default: no)
++#
++# enable_session_timer=yes
++
++# - set the "Session-Expires" parameter for the session timer.
+ #
++# session_expires=240
++
++# - set the "Min-SE" parameter for the session timer.
++#
++# minimum_timer=90
++
++# session refresh (Session Timer, RFC4028) method
++#
++# INVITE                 - use re-INVITE
++# UPDATE                 - use UPDATE
++# UPDATE_FALLBACK_INVITE - use UPDATE if indicated in Allow, re-INVITE otherwise
++#
++# Default: UPDATE_FALLBACK_INVITE
++#
++# Note: Session Timers are only supported in some applications
++#
++#session_refresh_method=UPDATE
++
++# accept_501_reply - accept 501 reply as successful refresh? [yes|no]
+ #
++# Default: yes
+ #
++#accept_501_reply=no
+diff --git a/apps/gateway/etc/gateway.conf.cmake b/apps/gateway/etc/gateway.conf.cmake
+new file mode 100644
+index 0000000..4aa03d8
+--- /dev/null
++++ b/apps/gateway/etc/gateway.conf.cmake
+@@ -0,0 +1,9 @@
++callerdomain=192.168.0.15
++calleddomain=netitel.pl
++msn=6240495,6240496,6240497,6233270
++outprefixes=0*,1*,2*,3*,4*,5*,6*,7*,8*,9*,*
++defaultmsn=6240495
++auth_enable=yes
++auth_realm=netitel.pl
++auth_user=semsgw
++auth_pwd=***
+\ No newline at end of file
+diff --git a/apps/ivr/etc/ivr.conf.cmake b/apps/ivr/etc/ivr.conf.cmake
+index b80cdab..65bf919 100644
+--- a/apps/ivr/etc/ivr.conf.cmake
++++ b/apps/ivr/etc/ivr.conf.cmake
+@@ -1 +1,38 @@
++# script_path - *.py from this path is loaded as applications
+ script_path=${SEMS_EXEC_PREFIX}/${SEMS_LIBDIR}/sems/ivr/
++
++
++###############################################################
++# RFC4028 Session Timer
++#
++
++# - enables the session timer ([yes,no]; default: no)
++# 
++# enable_session_timer=yes
++
++# - set the "Session-Expires" parameter for the session timer.
++#
++# session_expires=240
++
++# - set the "Min-SE" parameter for the session timer.
++#
++# minimum_timer=90
++
++# session refresh (Session Timer, RFC4028) method
++#
++# INVITE                 - use re-INVITE
++# UPDATE                 - use UPDATE
++# UPDATE_FALLBACK_INVITE - use UPDATE if indicated in Allow, re-INVITE otherwise
++#
++# Default: UPDATE_FALLBACK_INVITE
++#
++# Note: Session Timers are only supported in some applications
++#
++#session_refresh_method=UPDATE
++
++# accept_501_reply - accept 501 reply as successful refresh? [yes|no]
++#
++# Default: yes
++#
++#accept_501_reply=no
++
+diff --git a/apps/jsonrpc/etc/jsonrpc.conf.cmake b/apps/jsonrpc/etc/jsonrpc.conf.cmake
+new file mode 100644
+index 0000000..490ef7c
+--- /dev/null
++++ b/apps/jsonrpc/etc/jsonrpc.conf.cmake
+@@ -0,0 +1,13 @@
++# jsonrpc_port  - json-rpc server port to listen on
++#
++# optional; default: 7080
++#
++# jsonrpc_port=7080
++
++
++# server_threads  - json-rpc server threads to start
++#
++# optional; default: 5
++#
++# server_threads=5
++
+diff --git a/apps/monitoring/etc/monitoring.conf.cmake b/apps/monitoring/etc/monitoring.conf.cmake
+new file mode 100644
+index 0000000..0267785
+--- /dev/null
++++ b/apps/monitoring/etc/monitoring.conf.cmake
+@@ -0,0 +1,14 @@
++
++#run_garbage_collector=[yes | no]
++#
++# run garbage collection on expired session info? 
++# Default: no
++#
++#run_garbage_collector = yes
++
++#garbage_collector_interval=10
++#
++# run garbage collection every n seconds
++# Default: 10
++#
++#garbage_collector_interval = 20
+\ No newline at end of file
+diff --git a/apps/msg_storage/etc/msg_storage.conf.cmake b/apps/msg_storage/etc/msg_storage.conf.cmake
+new file mode 100644
+index 0000000..b1ee125
+--- /dev/null
++++ b/apps/msg_storage/etc/msg_storage.conf.cmake
+@@ -0,0 +1,8 @@
++
++#
++# storage_dir is where messages are saved on disk. this 
++# folder must be writable. 
++#
++# default: /var/spool/voicebox/
++#
++#storage_dir=/var/spool/voicebox/
+\ No newline at end of file
+diff --git a/apps/reg_agent/etc/reg_agent.conf.cmake b/apps/reg_agent/etc/reg_agent.conf.cmake
+new file mode 100644
+index 0000000..87ce9d7
+--- /dev/null
++++ b/apps/reg_agent/etc/reg_agent.conf.cmake
+@@ -0,0 +1,34 @@
++#
++#
++# Registrations at SIP registrar,
++# refreshed if necessary.
++#
++#
++
++#domain=mydomain.net
++#user=myuser
++#display_name=myuser
++#auth_user=myuser
++#pwd=verysecret
++# optional:
++#proxy=sip.mydomain.net:5060
++
++#
++# For multiple registrations add more entries
++#
++#domain1=iptel.org
++#user1=xyz
++#display_name1=xyz
++#auth_user1=xyz
++#pwd1=ppp
++# optional:
++#proxy1=sip.iptel.org:5060
++
++#domain2=iptel.org
++#user2=xyz
++#display_name2=xyz
++#auth_user2=xyz
++#pwd2=ppp
++# optional:
++#proxy2=sip.iptel.org:5060
++
+diff --git a/apps/sst_b2b/etc/sst_b2b.conf.cmake b/apps/sst_b2b/etc/sst_b2b.conf.cmake
+new file mode 100644
+index 0000000..a939a15
+--- /dev/null
++++ b/apps/sst_b2b/etc/sst_b2b.conf.cmake
+@@ -0,0 +1,39 @@
++# RFC4028 Session Timer
++#
++
++# - enables the session timer ([yes,no]; default: no)
++#
++enable_session_timer=yes
++
++# - set the "Session-Expires" parameter for the session timer.
++#
++# session_expires=240
++
++# - set the "Min-SE" parameter for the session timer.
++#
++# minimum_timer=90
++
++# session refresh (Session Timer, RFC4028) method
++#
++# INVITE                 - use re-INVITE
++# UPDATE                 - use UPDATE
++# UPDATE_FALLBACK_INVITE - use UPDATE if indicated in Allow, re-INVITE otherwise
++#
++# Default: UPDATE_FALLBACK_INVITE
++#
++# Note: Session Timers are only supported in some applications
++#
++#session_refresh_method=UPDATE
++
++# accept_501_reply - accept 501 reply as successful refresh? [yes|no]
++#
++# Default: yes
++#
++#accept_501_reply=no
++
++######################################################
++#authentication (questionable whether that works)
++# user=someuser
++# domain=somedomain.net
++# pwd=sompwd
++
+diff --git a/apps/sw_prepaid_sip/etc/sw_prepaid_sip.conf.cmake b/apps/sw_prepaid_sip/etc/sw_prepaid_sip.conf.cmake
+new file mode 100644
+index 0000000..2bd1ab1
+--- /dev/null
++++ b/apps/sw_prepaid_sip/etc/sw_prepaid_sip.conf.cmake
+@@ -0,0 +1,2 @@
++# the plugin to be used as accounting backend:
++acc_plugin = cc_acc
+diff --git a/apps/webconference/etc/webconference.conf.cmake b/apps/webconference/etc/webconference.conf.cmake
+index cf04813..4c818dc 100644
+--- a/apps/webconference/etc/webconference.conf.cmake
++++ b/apps/webconference/etc/webconference.conf.cmake
+@@ -106,3 +106,43 @@ stats_dir=/var/log/sems-webconference/
+ # or dialout is called
+ #
+ # room_sweep_interval=10
++
++# predefined_rooms
++#
++# list of rooms that are openend at server startup
++#
++# predefined_rooms=discussion:some_pwd;support:other_pwd;
++
++###############################################################
++# RFC4028 Session Timer
++#
++
++# - enables the session timer ([yes,no]; default: no)
++# 
++# enable_session_timer=yes
++
++# - set the "Session-Expires" parameter for the session timer.
++#
++# session_expires=240
++
++# - set the "Min-SE" parameter for the session timer.
++#
++# minimum_timer=90
++
++# session refresh (Session Timer, RFC4028) method
++#
++# INVITE                 - use re-INVITE
++# UPDATE                 - use UPDATE
++# UPDATE_FALLBACK_INVITE - use UPDATE if indicated in Allow, re-INVITE otherwise
++#
++# Default: UPDATE_FALLBACK_INVITE
++#
++# Note: Session Timers are only supported in some applications
++#
++#session_refresh_method=UPDATE
++
++# accept_501_reply - accept 501 reply as successful refresh? [yes|no]
++#
++# Default: yes
++#
++#accept_501_reply=no
+diff --git a/apps/xmlrpc2di/etc/xmlrpc2di.conf.cmake b/apps/xmlrpc2di/etc/xmlrpc2di.conf.cmake
+new file mode 100644
+index 0000000..5a49aba
+--- /dev/null
++++ b/apps/xmlrpc2di/etc/xmlrpc2di.conf.cmake
+@@ -0,0 +1,38 @@
++# port to bind XMLRPC server to 
++xmlrpc_port=8090
++
++
++# run multi-threaded server? 
++# Default: yes
++# 
++# multithreaded = yes
++
++# threads to run - this many requests can be processed in parallel
++# Default: 5
++#
++# threads=5
++
++# export all DI functions with the function call 'di'?
++# defaults to: yes
++# export_di=yes
++
++#
++# these DI interfaces are searched for functions to 
++# export under their proper function names
++# defaults to: none
++# direct_export=di_dial;registrar_client
++
++# run the XMLRPC server at all (default: yes)
++#
++# run_server=yes 
++
++# timeout for client requests, in milliseconds (0 to disable)
++#
++# server_timeout=500
++
++# print parameters of XMLRPC server calls into debug log [yes|no]
++#  debug_server_params=yes
++#
++# print result of XMLRPC server calls into debug log [yes|no]
++#  debug_server_result=yes
++#
+\ No newline at end of file
+diff --git a/core/plug-in/CMakeLists.txt b/core/plug-in/CMakeLists.txt
+index 7dc8230..aff103c 100644
+--- a/core/plug-in/CMakeLists.txt
++++ b/core/plug-in/CMakeLists.txt
+@@ -3,6 +3,7 @@ ADD_SUBDIRECTORY (echo)
+ IF(SEMS_USE_SPANDSP)
+ 	ADD_SUBDIRECTORY (g722)
+ ENDIF(SEMS_USE_SPANDSP)
++#ADD_SUBDIRECTORY (g729)
+ IF(GSM_FOUND)
+ 	ADD_SUBDIRECTORY (gsm)
+ ENDIF(GSM_FOUND)
+diff --git a/core/plug-in/echo/etc/echo.conf.cmake b/core/plug-in/echo/etc/echo.conf.cmake
+new file mode 100644
+index 0000000..718aebc
+--- /dev/null
++++ b/core/plug-in/echo/etc/echo.conf.cmake
+@@ -0,0 +1,35 @@
++# Echo plug-in configuration file
++#
++
++# RFC4028 Session Timer
++#
++
++# - enables the session timer ([yes,no]; default: no)
++# 
++# enable_session_timer=yes
++
++# - set the "Session-Expires" parameter for the session timer.
++#
++# session_expires=240
++
++# - set the "Min-SE" parameter for the session timer.
++#
++# minimum_timer=90
++
++# session refresh (Session Timer, RFC4028) method
++#
++# INVITE                 - use re-INVITE
++# UPDATE                 - use UPDATE
++# UPDATE_FALLBACK_INVITE - use UPDATE if indicated in Allow, re-INVITE otherwise
++#
++# Default: UPDATE_FALLBACK_INVITE
++#
++# Note: Session Timers are only supported in some applications
++#
++#session_refresh_method=UPDATE
++
++# accept_501_reply - accept 501 reply as successful refresh? [yes|no]
++#
++# Default: yes
++#
++#accept_501_reply=no
+diff --git a/core/plug-in/g729/CMakeLists.txt b/core/plug-in/g729/CMakeLists.txt
+new file mode 100644
+index 0000000..76a552e
+--- /dev/null
++++ b/core/plug-in/g729/CMakeLists.txt
+@@ -0,0 +1,9 @@
++set (g729_SRCS
++g729.c
++)
++
++SET(sems_module_name g729)
++SET(sems_module_libs speech core)
++SET(doc_files Readme.g729codec)
++INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt)
++INCLUDE(${CMAKE_SOURCE_DIR}/cmake/doc.rules.txt)
+diff --git a/core/plug-in/stats/etc/stats.conf.cmake b/core/plug-in/stats/etc/stats.conf.cmake
+new file mode 100644
+index 0000000..88f8d89
+--- /dev/null
++++ b/core/plug-in/stats/etc/stats.conf.cmake
+@@ -0,0 +1,2 @@
++monit_udp_ip=127.0.0.1
++monit_udp_port=5040
+diff --git a/sems.h.cmake b/sems.h.cmake
+index 3be8875..a570bc5 100644
+--- a/sems.h.cmake
++++ b/sems.h.cmake
+@@ -44,6 +44,8 @@
+ #define RTP_HIGHPORT        0xffff
+ #define MAX_FORWARDS        70
+ 
++#define DEFAULT_MAX_SHUTDOWN_TIME 10 // 10 seconds max for shutting down
++
+ #ifndef DISABLE_DAEMON_MODE
+ # define DEFAULT_DAEMON_MODE        true
+ # define DEFAULT_DAEMON_PID_FILE    "/var/local/run/sems.pid"
+-- 
+1.7.2.3
+
diff --git a/sems-0007-Enable-py_sems-building-with-CMake.patch b/sems-0007-Enable-py_sems-building-with-CMake.patch
new file mode 100644
index 0000000..ffb901a
--- /dev/null
+++ b/sems-0007-Enable-py_sems-building-with-CMake.patch
@@ -0,0 +1,34 @@
+From d85e44d59f5d4cfc250d4298f33eefc5338cedf9 Mon Sep 17 00:00:00 2001
+From: Peter Lemenkov <lemenkov at gmail.com>
+Date: Mon, 27 Sep 2010 16:41:18 +0400
+Subject: [PATCH 7/8] Enable py_sems building with CMake
+
+Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
+---
+ apps/CMakeLists.txt |   10 +++++-----
+ 1 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
+index 8c0e6f3..ba652c7 100644
+--- a/apps/CMakeLists.txt
++++ b/apps/CMakeLists.txt
+@@ -34,11 +34,11 @@ IF(PYTHONLIBS_FOUND)
+ 	ADD_SUBDIRECTORY(pin_collect)
+ ENDIF(PYTHONLIBS_FOUND)
+ ADD_SUBDIRECTORY(precoded_announce)
+-#IF(PYTHONLIBS_FOUND)
+-#IF(SIP_FOUND)
+-#	ADD_SUBDIRECTORY(py_sems)
+-#ENDIF(SIP_FOUND)
+-#ENDIF(PYTHONLIBS_FOUND)
++IF(PYTHONLIBS_FOUND)
++IF(SIP_FOUND)
++	ADD_SUBDIRECTORY(py_sems)
++ENDIF(SIP_FOUND)
++ENDIF(PYTHONLIBS_FOUND)
+ ADD_SUBDIRECTORY(reg_agent)
+ ADD_SUBDIRECTORY(registrar_client)
+ ADD_SUBDIRECTORY(sw_prepaid_sip)
+-- 
+1.7.2.3
+
diff --git a/sems-0008-Enable-sst_b2b-building-with-sems.patch b/sems-0008-Enable-sst_b2b-building-with-sems.patch
new file mode 100644
index 0000000..c6d42c8
--- /dev/null
+++ b/sems-0008-Enable-sst_b2b-building-with-sems.patch
@@ -0,0 +1,25 @@
+From cd759bad822ee3d3680875714a118883bd033364 Mon Sep 17 00:00:00 2001
+From: Peter Lemenkov <lemenkov at gmail.com>
+Date: Mon, 27 Sep 2010 16:41:59 +0400
+Subject: [PATCH 8/8] Enable sst_b2b building with sems
+
+Signed-off-by: Peter Lemenkov <lemenkov at gmail.com>
+---
+ apps/CMakeLists.txt |    1 +
+ 1 files changed, 1 insertions(+), 0 deletions(-)
+
+diff --git a/apps/CMakeLists.txt b/apps/CMakeLists.txt
+index ba652c7..b70882c 100644
+--- a/apps/CMakeLists.txt
++++ b/apps/CMakeLists.txt
+@@ -41,6 +41,7 @@ ENDIF(SIP_FOUND)
+ ENDIF(PYTHONLIBS_FOUND)
+ ADD_SUBDIRECTORY(reg_agent)
+ ADD_SUBDIRECTORY(registrar_client)
++ADD_SUBDIRECTORY(sst_b2b)
+ ADD_SUBDIRECTORY(sw_prepaid_sip)
+ #IF(PYTHONLIBS_FOUND)
+ #	ADD_SUBDIRECTORY(twit)
+-- 
+1.7.2.3
+
diff --git a/sems.spec b/sems.spec
index ad9a39e..1421981 100644
--- a/sems.spec
+++ b/sems.spec
@@ -1,11 +1,11 @@
 Summary:	SIP Express Media Server, an extensible SIP media server
 Name:		sems
-Version:	1.2.1
-Release:	7%{?dist}
+Version:	1.3.0
+Release:	1%{?dist}
 URL:		http://www.iptel.org/sems
-## wget http://ftp.iptel.org/pub/sems/1.2/1.2.1/src/sems-1.2.1.tar.gz
-## tar zx --exclude iLBC_rfc3951 -f sems-1.2.1.tar.gz
-## tar czf sems-1.2.1.w_o_ilbc_sources.tar.gz sems-1.2.1
+## wget http://ftp.iptel.org/pub/sems/sems-1.3.0.tar.gz
+## tar zx --exclude iLBC_rfc3951 -f sems-1.3.0..tar.gz
+## tar czf sems-1.3.0.w_o_ilbc_sources.tar.gz sems-1.3.0
 Source0:	%{name}-%{version}.w_o_ilbc_sources.tar.gz
 License:	GPLv2+
 Group:		Applications/Communications
@@ -15,25 +15,17 @@ Patch1:		sems-0001-Force-to-use-system-wide-GSM-includes.patch
 Patch2:		sems-0002-Allow-rewrite-of-custom-makefiles-by-CMake.patch
 # Fedora-specific
 Patch3:		sems-0003-Set-CFG_PREFIX-to-empty-string-by-default.patch
-# RHEL-specific
-Patch4:		sems-0004-Fix-for-old-python-2.4.patch
-# RHEL-specific, partially applied upstream
-Patch5:		sems-0005-More-compatibility-with-older-CMake-2.4.patch
-# Upstreamed
-Patch6:		sems-0006-Typo-paramater-parameter.patch
-# Upstreamed
-Patch7:		sems-0007-Copy-paste-typo-this-conf-file-actually-is-a-early_a.patch
-# Upstreamed
-Patch8:		sems-0008-Fix-MOD_NAME-passing-to-gcc.patch
-# Upstreamed
-Patch9:		sems-0009-More-CMake-templates-for-config-files.patch
-# Upstreamed, see also %%patch8
-Patch10:	sems-0010-Fix-newest-variables-escaping-strategy-on-new-CMake.patch
 # Disable MySQL++ in conference and early_announce until good docs and failover to
 # existing file-based configuration will be provided
-Patch11:	sems-0011-Disable-mysql-in-conference-and-early_announce-modul.patch
-# Backported from upstream
-Patch12:	sems-0012-create-RTP-stream-AmSession-rtp_str-only-if-really-n.patch
+Patch4:		sems-0004-Disable-mysql-in-conference-and-early_announce-modul.patch
+# Fedora-specific
+Patch5:		sems-0005-Add-sw_prepaid_sip-plugin-to-default-exclude-list-du.patch
+# Applied upstream
+Patch6:		sems-0006-More-cmake-templates.patch
+# Will be proposed for inclusion in upstream
+Patch7:		sems-0007-Enable-py_sems-building-with-CMake.patch
+# Will be proposed for inclusion in upstream
+Patch8:		sems-0008-Enable-sst_b2b-building-with-sems.patch
 
 BuildRoot:	%{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
 BuildRequires:	python >= 2.3
@@ -202,19 +194,11 @@ rm -rf core/plug-in/gsm/gsm-1.0-pl10/
 %patch1 -p1 -b .use_system_wide_gsm
 %patch2 -p1 -b .allow_rewrite_of_makefiles
 %patch3 -p1 -b .cfg_prefix_to_empty_string
-%if 0%{?el4}%{?el5}
-%patch4 -p1 -b .support_for_python_2_4
-%endif
-%patch5 -p1 -b .support_for_cmake_2_4
-%patch6 -p1 -b .typo
-%patch7 -p1 -b .another_typo
-%patch8 -p1 -b .fix_mod_name
-%patch9 -p1 -b .more_cmake_templates
-%if 0%{?el6}%{?fedora}
-%patch10 -p1 -b .fix_escaping_in_cmake
-%endif
-%patch11 -p1 -b .disable_mysqlpp_in_conf_and_ea
-%patch12 -p1 -b .fix_segfault
+%patch4 -p1 -b .disable_mysqlpp_in_conf_and_ea
+%patch5 -p1 -b .exclude_sw_prepaid_sip
+%patch6 -p1 -b .more_cmake
+%patch7 -p1 -b .enable_py_sems
+%patch8 -p1 -b .enable_sst_b2b
 
 
 iconv -f iso8859-1 -t UTF-8 doc/Readme.diameter_client.txt > doc/Readme.diameter_client.utf8 && mv doc/Readme.diameter_client.{utf8,txt}
@@ -305,7 +289,6 @@ fi
 %config(noreplace) %{_sysconfdir}/%{name}/etc/annrecorder.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/app_mapping.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/auth_b2b.conf
-%config(noreplace) %{_sysconfdir}/%{name}/etc/binrpcctrl.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/call_timer.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/callback.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/click2dial.conf
@@ -314,7 +297,7 @@ fi
 %config(noreplace) %{_sysconfdir}/%{name}/etc/msg_storage.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/precoded_announce.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/reg_agent.conf
-%config(noreplace) %{_sysconfdir}/%{name}/etc/sipctrl.conf
+%config(noreplace) %{_sysconfdir}/%{name}/etc/sst_b2b.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/stats.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/sw_prepaid_sip.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/voicebox.conf
@@ -351,8 +334,9 @@ fi
 %doc doc/Readme.py_sems.txt
 %doc doc/Readme.reg_agent.txt
 %doc doc/Readme.registrar_client.txt
+%doc doc/Readme.sst_b2b.txt
 %doc doc/Readme.sw_prepaid_sip.txt
-%doc doc/Readme.twit.txt
+#%doc doc/Readme.twit.txt
 %doc doc/Readme.uac_auth.txt
 %doc doc/Readme.voicebox.txt
 %doc doc/Readme.voicemail.txt
@@ -454,7 +438,6 @@ fi
 %{_libdir}/%{name}/plug-in/announcement.so
 %{_libdir}/%{name}/plug-in/annrecorder.so
 %{_libdir}/%{name}/plug-in/auth_b2b.so
-%{_libdir}/%{name}/plug-in/binrpcctrl.so
 %{_libdir}/%{name}/plug-in/call_timer.so
 %{_libdir}/%{name}/plug-in/callback.so
 %{_libdir}/%{name}/plug-in/click2dial.so
@@ -468,8 +451,8 @@ fi
 %{_libdir}/%{name}/plug-in/precoded_announce.so
 %{_libdir}/%{name}/plug-in/reg_agent.so
 %{_libdir}/%{name}/plug-in/registrar_client.so
-%{_libdir}/%{name}/plug-in/sipctrl.so
 %{_libdir}/%{name}/plug-in/session_timer.so
+%{_libdir}/%{name}/plug-in/sst_b2b.so
 %{_libdir}/%{name}/plug-in/stats.so
 %{_libdir}/%{name}/plug-in/sw_prepaid_sip.so
 %{_libdir}/%{name}/plug-in/uac_auth.so
@@ -506,16 +489,6 @@ fi
 %config(noreplace) %{_sysconfdir}/%{name}/etc/dsm.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/dsm_in_prompts.conf
 %config(noreplace) %{_sysconfdir}/%{name}/etc/dsm_out_prompts.conf
-%doc apps/dsm/mods/mod_aws/Readme.mod_aws.txt
-%doc apps/dsm/mods/mod_conference/Readme.mod_conference.txt
-%doc apps/dsm/mods/mod_dlg/Readme.mod_dlg.txt
-%doc apps/dsm/mods/mod_monitoring/Readme.mod_monitoring.txt
-%doc apps/dsm/mods/mod_mysql/Readme.mod_mysqlpp.txt
-%doc apps/dsm/mods/mod_py/Readme.mod_py.txt
-%doc apps/dsm/mods/mod_sys/Readme.mod_sys.txt
-%doc apps/dsm/mods/mod_uri/Readme.mod_uri.txt
-%doc apps/dsm/mods/mod_utils/Readme.mod_utils.txt
-%doc apps/dsm/fsmc/Readme.fsmc.txt
 %doc doc/dsm
 %dir %{_libdir}/%{name}/dsm
 %{_libdir}/%{name}/dsm/mod_dlg.so
@@ -628,6 +601,12 @@ fi
 %{_libdir}/%{name}/plug-in/xmlrpc2di.so
 
 %changelog
+* Mon Sep 27 2010 Peter Lemenkov <lemenkov at gmail.com> 1.3.0-1
+- Ver. 1.3.0
+- Dropped half of all patches
+- Dropped binrpcctrl plugin
+- Merged into core sipctrl plugin
+
 * Thu Sep 09 2010 Rex Dieter <rdieter at fedoraproject.org> 1.2.1-7
 - rebuild (sip)
 
diff --git a/sources b/sources
index 7924f31..f31c836 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-846c02bac1f9077b213f378ffe42bc9f  sems-1.2.1.w_o_ilbc_sources.tar.gz
+acfdca3d8b7e892b67513011fd5f0a0b  sems-1.3.0.w_o_ilbc_sources.tar.gz


More information about the scm-commits mailing list