diff --git a/apps/ann_b2b/CMakeLists.txt b/apps/ann_b2b/CMakeLists.txt index f077d1d0..0fae5a07 100644 --- a/apps/ann_b2b/CMakeLists.txt +++ b/apps/ann_b2b/CMakeLists.txt @@ -4,3 +4,4 @@ AnnounceB2B.cpp SET(sems_module_name ann_b2b) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/ann_b2b/etc/ann_b2b.conf.cmake b/apps/ann_b2b/etc/ann_b2b.conf.cmake new file mode 100644 index 00000000..14a3e6e3 --- /dev/null +++ b/apps/ann_b2b/etc/ann_b2b.conf.cmake @@ -0,0 +1,8 @@ +announce_path=${SEMS_AUDIO_PREFIX}/sems/audio/ +default_announce=default_en.wav + +# if you add custom announcement for +# ann_b2b module change path to +# announce_path=${SEMS_AUDIO_PREFIX}/sems/audio/ann_b2b +# + diff --git a/apps/announce_transfer/CMakeLists.txt b/apps/announce_transfer/CMakeLists.txt index 09cbaec5..1bfe4130 100644 --- a/apps/announce_transfer/CMakeLists.txt +++ b/apps/announce_transfer/CMakeLists.txt @@ -4,4 +4,4 @@ AnnounceTransfer.cpp SET(sems_module_name announce_transfer) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/announce_transfer/etc/announce_transfer.conf.cmake b/apps/announce_transfer/etc/announce_transfer.conf.cmake new file mode 100644 index 00000000..c74f4270 --- /dev/null +++ b/apps/announce_transfer/etc/announce_transfer.conf.cmake @@ -0,0 +1,7 @@ +#CFGOPTION_SEMS_ANNOUNCEPATH +announce_path=${SEMS_AUDIO_PREFIX}/sems/audio/ +#ENDCFGOPTION + +#CFGOPTION_SEMS_ANNOUNCEMENT +default_announce=default_en.wav +#ENDCFGOPTION diff --git a/apps/announcement/CMakeLists.txt b/apps/announcement/CMakeLists.txt index d76eb26b..bbb5e9b5 100644 --- a/apps/announcement/CMakeLists.txt +++ b/apps/announcement/CMakeLists.txt @@ -4,4 +4,4 @@ Announcement.cpp SET(sems_module_name announcement) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/announcement/etc/announcement.conf.cmake b/apps/announcement/etc/announcement.conf.cmake new file mode 100644 index 00000000..c74f4270 --- /dev/null +++ b/apps/announcement/etc/announcement.conf.cmake @@ -0,0 +1,7 @@ +#CFGOPTION_SEMS_ANNOUNCEPATH +announce_path=${SEMS_AUDIO_PREFIX}/sems/audio/ +#ENDCFGOPTION + +#CFGOPTION_SEMS_ANNOUNCEMENT +default_announce=default_en.wav +#ENDCFGOPTION diff --git a/apps/annrecorder/CMakeLists.txt b/apps/annrecorder/CMakeLists.txt index c47321c0..3560e8a7 100644 --- a/apps/annrecorder/CMakeLists.txt +++ b/apps/annrecorder/CMakeLists.txt @@ -15,4 +15,4 @@ your_prompt.wav SET(sems_module_name annrecorder) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/audio.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/annrecorder/etc/annrecorder.conf.cmake b/apps/annrecorder/etc/annrecorder.conf.cmake new file mode 100644 index 00000000..e6dd4db0 --- /dev/null +++ b/apps/annrecorder/etc/annrecorder.conf.cmake @@ -0,0 +1,25 @@ +announce_path=${SEMS_AUDIO_PREFIX}/sems/audio/ +default_announce=default_en.wav +beep=${SEMS_AUDIO_PREFIX}/sems/audio/beep.wav + +# prompts + +#"Welcome to iptel dot org voip service." +welcome=${SEMS_AUDIO_PREFIX}/sems/audio/annrecorder/welcome.wav + +# "Your auto attendant greeting sounds like this: -" +your_prompt=${SEMS_AUDIO_PREFIX}/sems/audio/annrecorder/your_prompt.wav + +# "To record a new auto attendant greeting, press any key. +# End recording with any key. -" +to_record=${SEMS_AUDIO_PREFIX}/sems/audio/annrecorder/to_record.wav + +# "Press one to keep the new greeting, or two to record a new one. -" +confirm=${SEMS_AUDIO_PREFIX}/sems/audio/annrecorder/confirm.wav + +# "Your new auto attendant greeting has been set." +greeting_set=${SEMS_AUDIO_PREFIX}/sems/audio/annrecorder/greeting_set.wav + +# "Thank you for using the iptel dot org service. Good Bye. - " +bye=${SEMS_AUDIO_PREFIX}/sems/audio/annrecorder/bye.wav + diff --git a/apps/auth_b2b/CMakeLists.txt b/apps/auth_b2b/CMakeLists.txt index 8bb96a31..a707906b 100644 --- a/apps/auth_b2b/CMakeLists.txt +++ b/apps/auth_b2b/CMakeLists.txt @@ -4,4 +4,4 @@ AuthB2B.cpp SET(sems_module_name auth_b2b) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/call_timer/CMakeLists.txt b/apps/call_timer/CMakeLists.txt index 8e0cb634..c822e2c2 100644 --- a/apps/call_timer/CMakeLists.txt +++ b/apps/call_timer/CMakeLists.txt @@ -4,4 +4,4 @@ CallTimer.cpp SET(sems_module_name call_timer) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/callback/CMakeLists.txt b/apps/callback/CMakeLists.txt index 9ba175a1..0ae2d71e 100644 --- a/apps/callback/CMakeLists.txt +++ b/apps/callback/CMakeLists.txt @@ -4,4 +4,4 @@ CallBack.cpp SET(sems_module_name callback) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/callback/etc/callback.conf.cmake b/apps/callback/etc/callback.conf.cmake new file mode 100644 index 00000000..ce23046d --- /dev/null +++ b/apps/callback/etc/callback.conf.cmake @@ -0,0 +1,18 @@ +# "please type in the number you want to call, followed by the pund key" +welcome_prompt=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/pin_prompt.wav + +digits_dir=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/ + +playout_type=adaptive_playout + +# regexp of allowed cb numbers +accept_caller_re=016213* + +# n sec wait before calling back +cb_wait=10 + +# GW used to call back +gw_user=somegwuser +gw_domain=sparvoip.de +auth_pwd=somesecret +#auth_user=neededifdifferentfromgw_user diff --git a/apps/click2dial/CMakeLists.txt b/apps/click2dial/CMakeLists.txt index 11094c16..779cc5ee 100644 --- a/apps/click2dial/CMakeLists.txt +++ b/apps/click2dial/CMakeLists.txt @@ -4,4 +4,4 @@ Click2Dial.cpp SET(sems_module_name click2dial) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/click2dial/etc/click2dial.conf.cmake b/apps/click2dial/etc/click2dial.conf.cmake new file mode 100644 index 00000000..67fe9c21 --- /dev/null +++ b/apps/click2dial/etc/click2dial.conf.cmake @@ -0,0 +1,7 @@ +announce_path=${SEMS_AUDIO_PREFIX}/sems/audio/ +default_announce=default_en.wav + +# relay_early_media=[yes|no] +# sends early media from callee leg into caller leg +# default: yes +relay_early_media=yes diff --git a/apps/conference/CMakeLists.txt b/apps/conference/CMakeLists.txt index 8e4bc046..40c70638 100644 --- a/apps/conference/CMakeLists.txt +++ b/apps/conference/CMakeLists.txt @@ -23,3 +23,4 @@ ENDIF(MYSQLPP_FOUND) SET(sems_module_name conference) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/audio.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/conference/etc/conference.conf.cmake b/apps/conference/etc/conference.conf.cmake new file mode 100644 index 00000000..d1cb13d5 --- /dev/null +++ b/apps/conference/etc/conference.conf.cmake @@ -0,0 +1,35 @@ +# These are needed if you keep audio files in file system +audio_path=${SEMS_AUDIO_PREFIX}/sems/audio/conference +default_announce=first_participant.wav +join_sound=beep.wav +drop_sound=beep.wav + +# These are needed if you keep audio files in MySQL +#mysql_host=localhost +#mysql_user=sems +#mysql_passwd=sems +#mysql_db=sems + +dialout_suffix=@iptel.org + +# playout_type : select playout mechanism +# adaptive_playout : Adaptive Playout buffer (default, recommended) +# adaptive_jb : Adaptive Jitter buffer +# simple : simple (fifo) playout buffer +# +playout_type=adaptive_playout + +# Maximum number of participants in a conference +# default = 0 (unlimited) +#max_participants=10 + +# use_rfc4240_rooms=[yes|no] +# +# RFC4240 specifies for Conference service that the conference +# room is specified in the user part of the Request URI as: +# sip:conf=uniqueIdentifier@mediaserver.example.net +# If the conference-id is empty, a 404 is returned. +# +#default: +# use_rfc4240_rooms=no +# diff --git a/apps/dsm/CMakeLists.txt b/apps/dsm/CMakeLists.txt index 6633d2d0..fffcc158 100644 --- a/apps/dsm/CMakeLists.txt +++ b/apps/dsm/CMakeLists.txt @@ -14,4 +14,6 @@ ADD_SUBDIRECTORY (lib) ADD_SUBDIRECTORY (mods) SET(sems_module_name dsm) +SET(sems_config_files dsm_in_prompts dsm_out_prompts) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/dsm/etc/dsm.conf.cmake b/apps/dsm/etc/dsm.conf.cmake new file mode 100644 index 00000000..619c2ca6 --- /dev/null +++ b/apps/dsm/etc/dsm.conf.cmake @@ -0,0 +1,75 @@ + +# diagrams (DSM descriptions) +diag_path=${SEMS_EXEC_PREFIX}/${SEMS_LIBDIR}/sems/dsm/ +load_diags=inbound_call,outbound_call + +# register these diagrams as 'application' in SEMS +# so it can be used in application= in sems.conf +#register_apps=inbound_call,outbound_call + +# for import(mod_name) +mod_path=${SEMS_EXEC_PREFIX}/${SEMS_LIBDIR}/sems/dsm/ + +# preload modules which have a preload (init) function +#preload_mods=uri + + +# 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) +# +# use $(mon_select) to search for call info from monitoring +# e.g. inbound_start_diag=$(mon_select) and see +# below monitor_select options +# +inbound_start_diag=inbound_call +outbound_start_diag=outbound_call + +# prompts files (for prompt collection +load_prompts=${SEMS_CFG_PREFIX}/etc/sems/etc/dsm_in_prompts.conf,${SEMS_CFG_PREFIX}/etc/sems/etc/dsm_out_prompts.conf + +# prompts which must be loaded (or else...) +#required_prompts=welcome,error + +#load prompt sets config from this path +#prompts_sets_path=${SEMS_CFG_PREFIX}/etc/sems/etc/ + +# load files with this name (+.conf), e.g. mydomain.conf +#load_prompts_sets=mydomain + +# if run_invite_event is set to "yes", an "invite" event is run +# before the session is started. can be used e.g. for early media +# of delaying final reply +# +#run_invite_event=yes + +# set_param_variables controls whether application parameters +# from the P-App-Param header are set as variables in the DSM +# dialog. Default: no +# +#set_param_variables=yes + +# monitor_select_use_caller=[no|from|pai] +# +# for $(mon_select) application selection from monitoring: +# select application by caller? +# from: caller==remote_uri.user (From URI user part) +# pai: caller==P-Asserted-Identity user part +# no: caller not regarded +# +# Default: from +# +#monitor_select_use_caller=no + +# monitor_select_use_callee=[no|ruri|to] +# +# for $(mon_select) application selection from monitoring: +# select application by callee? +# ruri: callee==r_uri.user (request URI user part) +# to: callee==local_uri.user (To URI user part) +# no: callee not regarded +# +# Default: ruri +# +#monitor_select_use_callee=no + diff --git a/apps/dsm/etc/dsm_in_prompts.conf.cmake b/apps/dsm/etc/dsm_in_prompts.conf.cmake new file mode 100644 index 00000000..40d219b0 --- /dev/null +++ b/apps/dsm/etc/dsm_in_prompts.conf.cmake @@ -0,0 +1,6 @@ +1=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/1.wav +2=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/2.wav +3=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/3.wav +4=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/4.wav +5=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/5.wav +6=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/6.wav diff --git a/apps/dsm/etc/dsm_out_prompts.conf.cmake b/apps/dsm/etc/dsm_out_prompts.conf.cmake new file mode 100644 index 00000000..cfb6907c --- /dev/null +++ b/apps/dsm/etc/dsm_out_prompts.conf.cmake @@ -0,0 +1,3 @@ +1=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/1.wav +2=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/2.wav +3=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/3.wav diff --git a/apps/early_announce/CMakeLists.txt b/apps/early_announce/CMakeLists.txt index 43c374e2..184d2825 100644 --- a/apps/early_announce/CMakeLists.txt +++ b/apps/early_announce/CMakeLists.txt @@ -11,3 +11,4 @@ ENDIF(MYSQLPP_FOUND) SET(sems_module_name early_announce) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/early_announce/etc/early_announce.conf.cmake b/apps/early_announce/etc/early_announce.conf.cmake new file mode 100644 index 00000000..84c37891 --- /dev/null +++ b/apps/early_announce/etc/early_announce.conf.cmake @@ -0,0 +1,15 @@ +#CFGOPTION_SEMS_ANNOUNCEPATH +announce_path=${SEMS_AUDIO_PREFIX}/sems/audio/ +#ENDCFGOPTION + +#CFGOPTION_SEMS_ANNOUNCEMENT +default_announce=default_en.wav +#ENDCFGOPTION + +# +# continue the call in B2BUA mode ? [yes | no | app-param] +# if continue_b2b=app-param, continuation is controlled by +# 'B2B' app param, e.g. P-App-Param: B2B=yes +# +# default: +# continue_b2b=no diff --git a/apps/gateway/CMakeLists.txt b/apps/gateway/CMakeLists.txt index 2d6f36d2..e18389ad 100644 --- a/apps/gateway/CMakeLists.txt +++ b/apps/gateway/CMakeLists.txt @@ -12,3 +12,4 @@ INCLUDE_DIRECTORIES(${MISDN_INCLUDE_DIR}/mISDNuser) SET(sems_module_name gateway) SET(sems_module_libs mISDN isdnnet) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/ivr/CMakeLists.txt b/apps/ivr/CMakeLists.txt index f0109e8a..ad47b938 100644 --- a/apps/ivr/CMakeLists.txt +++ b/apps/ivr/CMakeLists.txt @@ -19,3 +19,4 @@ ENDIF(FLITE_FOUND) SET(sems_module_name ivr) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/ivr/etc/ivr.conf.cmake b/apps/ivr/etc/ivr.conf.cmake new file mode 100644 index 00000000..b80cdabf --- /dev/null +++ b/apps/ivr/etc/ivr.conf.cmake @@ -0,0 +1 @@ +script_path=${SEMS_EXEC_PREFIX}/${SEMS_LIBDIR}/sems/ivr/ diff --git a/apps/monitoring/CMakeLists.txt b/apps/monitoring/CMakeLists.txt index 79ffc7f5..4494a5cc 100644 --- a/apps/monitoring/CMakeLists.txt +++ b/apps/monitoring/CMakeLists.txt @@ -4,4 +4,4 @@ Monitoring.cpp SET(sems_module_name monitoring) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/msg_storage/CMakeLists.txt b/apps/msg_storage/CMakeLists.txt index 35110c28..88711272 100644 --- a/apps/msg_storage/CMakeLists.txt +++ b/apps/msg_storage/CMakeLists.txt @@ -8,4 +8,4 @@ MsgStorage.cpp SET(sems_module_name msg_storage) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/precoded_announce/CMakeLists.txt b/apps/precoded_announce/CMakeLists.txt index 245f2406..ab79f6f1 100644 --- a/apps/precoded_announce/CMakeLists.txt +++ b/apps/precoded_announce/CMakeLists.txt @@ -2,5 +2,11 @@ set (precoded_announce_SRCS PrecodedAnnounce.cpp ) +set (audio_files +test.predef +) + SET(sems_module_name precoded_announce) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/audio.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/precoded_announce/etc/precoded_announce.conf.cmake b/apps/precoded_announce/etc/precoded_announce.conf.cmake new file mode 100644 index 00000000..f01fb0fd --- /dev/null +++ b/apps/precoded_announce/etc/precoded_announce.conf.cmake @@ -0,0 +1,4 @@ +# file played (predef definition file only, which references +# the actual audio files for the payloads) +# +announcement_file=${SEMS_AUDIO_PREFIX}/sems/audio/precoded_announce/test.predef diff --git a/apps/reg_agent/CMakeLists.txt b/apps/reg_agent/CMakeLists.txt index 6e1c1a9d..385295a5 100644 --- a/apps/reg_agent/CMakeLists.txt +++ b/apps/reg_agent/CMakeLists.txt @@ -4,4 +4,4 @@ RegistrationAgent.cpp SET(sems_module_name reg_agent) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/sw_prepaid_sip/CMakeLists.txt b/apps/sw_prepaid_sip/CMakeLists.txt index 7698e390..433c7001 100644 --- a/apps/sw_prepaid_sip/CMakeLists.txt +++ b/apps/sw_prepaid_sip/CMakeLists.txt @@ -4,3 +4,4 @@ SWPrepaidSIP.cpp SET(sems_module_name sw_prepaid_sip) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/voicebox/CMakeLists.txt b/apps/voicebox/CMakeLists.txt index 5dc9e749..662bc6a5 100644 --- a/apps/voicebox/CMakeLists.txt +++ b/apps/voicebox/CMakeLists.txt @@ -65,4 +65,4 @@ you_have.wav SET(sems_module_name voicebox) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/audio.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/voicebox/etc/voicebox.conf.cmake b/apps/voicebox/etc/voicebox.conf.cmake new file mode 100644 index 00000000..2488694e --- /dev/null +++ b/apps/voicebox/etc/voicebox.conf.cmake @@ -0,0 +1,41 @@ +# +# +# Prompt sets are searched under this directory: +# +prompt_base_path=${SEMS_AUDIO_PREFIX}/sems/audio/voicebox/ + +# +# under the prompt_base_path, all domain/language combinations +# are searched, e.g. +# ${SEMS_AUDIO_PREFIX}/sems/audio/voicebox/iptel.org/english +# ${SEMS_AUDIO_PREFIX}/sems/audio/voicebox/iptel.org/german +# ${SEMS_AUDIO_PREFIX}/sems/audio/voicebox/iptel.org/ +# ${SEMS_AUDIO_PREFIX}/sems/audio/voicebox/otherdomain.org/english +# ... +# +# specific prompts for these domains will be supported: +# +domains=iptel.org + +# +# a language may have single digits to follow the tens if spoken +# (digits=right), or the single digits come first (digits=left). +# Examples: English is digits=right. German is digits=left. +# +# specific prompts for these languages will be supported: +# +languages=english(digits=right); + + +# +# default language (if not set in App-Params) +# +default_language=english + +# +# keys config (optional) +# +# repeat_key=1 +# save_key=2 +# delete_key=3 +# startover_key=4 diff --git a/apps/voicemail/CMakeLists.txt b/apps/voicemail/CMakeLists.txt index e8696059..b82736fd 100644 --- a/apps/voicemail/CMakeLists.txt +++ b/apps/voicemail/CMakeLists.txt @@ -24,3 +24,4 @@ default_en.wav SET(sems_module_name voicemail) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/audio.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/voicemail/etc/voicemail.conf.cmake b/apps/voicemail/etc/voicemail.conf.cmake new file mode 100644 index 00000000..e857ea71 --- /dev/null +++ b/apps/voicemail/etc/voicemail.conf.cmake @@ -0,0 +1,83 @@ +# +# optional parameter: smtp_server= +# +# - sets address of smtp server +# +# Default: localhost +#smtp_server=mail + +# optional parameter: smtp_port= +# +# - sets port of smtp server +# +# Default: 25 +#smtp_port=25 + +# if set, this overrides the email address, meaning that +# the voicemail will always be sent to that address. +# email_address = blub@mail.domain.net +# + +# These are needed if you keep audio and template files in file system: +# +# path from which announcements are played: +announce_path=${SEMS_AUDIO_PREFIX}/sems/audio/voicemail/ +# +# announcement played if no user/domain specific prompt found +default_announce=default_en.wav +# +# path for email templates: +email_template_path=${SEMS_CFG_PREFIX}/etc/sems/ + +# These are needed if you keep audio and template files in MySQL database: +#mysql_host=localhost +#mysql_user=sems +#mysql_passwd=sems +#mysql_db=sems + +# These are independent on where audio and template files are kept: + +# +# maximum voicemail message length, in seconds. +# After the maximum time, the call is ended by SEMS. +# +max_record_time=30 + +# +# optional: minimum voicemail message length, in milliseconds +# no voicemail is sent if the recorded message is shorter than +# or equal to the value set here. +# example - do not send voicemail shorter than 1.5s: +# min_record_time=1500 +# default: 0 +#min_record_time=0 + +# rec_file_ext : extension to recorded file, determines file +# format (wav, mp3; need mp3 plugin loaded for mp3) +# default is 'wav' +# +# example: +# rec_file_ext=mp3 +# + +# try_personal_greeting=[yes|no] +# optional: try to get a personal greeting from msg_storage mod? +# these can be recorded with annrecorder app +# +# Default: +# try_personal_greeting=no + +# mail_header_vars=var1;var2;var3;... +# +# Variables that are substituted in the email template with +# values from App-Param header (comma-separated list). +# +# Example: +# mail_header_vars=msg_count;sender_count +# +# P-App-Param: user=...;eml=...;msg_count=10;sender_count=2 +# +# email.template: In your voicebox are %msg_count% messages, +# %sender_count% from this sender. +# +# Default: none diff --git a/apps/webconference/CMakeLists.txt b/apps/webconference/CMakeLists.txt index 0e9462da..21942a5c 100644 --- a/apps/webconference/CMakeLists.txt +++ b/apps/webconference/CMakeLists.txt @@ -26,3 +26,4 @@ wrong_pin.wav SET(sems_module_name webconference) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/audio.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/apps/webconference/etc/webconference.conf.cmake b/apps/webconference/etc/webconference.conf.cmake new file mode 100644 index 00000000..cf048133 --- /dev/null +++ b/apps/webconference/etc/webconference.conf.cmake @@ -0,0 +1,108 @@ + +# configure the various announcements here +first_participant=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/first_participant.wav +join_sound=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/beep.wav +drop_sound=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/beep.wav +enter_pin=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/pin_prompt.wav +wrong_pin=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/wrong_pin.wav +entering_conference=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/entering_conference.wav + +# +# Say the PIN after entry? +# Possible values: 'yes'/'no' +# +tell_pin=yes + +# digits to play the room number +# must contain the files 0.wav, 1.wav, ..., 9.wav +digits_dir=${SEMS_AUDIO_PREFIX}/sems/audio/webconference/ + +# +# Use * key instead of # to finish PIN entry? +# +star_finishes_pin=yes + +# +# direct_room_re specifies a regexp which, if matched on +# the user of an incoming call, connects the caller directly to +# the conference room, without asking for the PIN. +# +direct_room_re=000777.* +# +# direct_room_strip specifies the number of digits to strip +# from the user part of the request uri to get the conference +# room number on direct room dial in. +# e.g. direct_room_strip=5, called 000777123 => room 123 +direct_room_strip=6 + +# +# master_password sets optionally a master password which can be used to +# retreive a room's password with the getRoomPassword function +# +# master_password=verysecret + +# ignore_pin sets whether room admin PINs are checked when +# accessing rooms. If you are for example trust anyone who +# can access the interface, this could be set to "yes" to allow +# all to look into all conference rooms. +# +# default: no +# +# ignore_pin=yes + +# +# +# feedback and statistics +feedback_file=/var/log/sems-webconference-feedback.txt + +stats_dir=/var/log/sems-webconference/ + +# +# if set, this URL will be added to SDP (u line), so clever user agents +# can display the conference control page right away. +# +# (room number and admin pin is embedded into the URL) +# +#webconference_urlbase=https://webconference.iptel.org/openRoom.py?action=openRoom + + +# +# participants_expire = [yes | no] +# +# if set to no, participants do not expire from conference rooms +# +# default: +# participants_expire=yes + +# delay after which a participant whose call has ended is removed from the +# conference room view. Only active if participants_expire=yes +# +# default: +# participants_expire_delay = 10 +# + +# +# rooms_expire = [yes | no] +# +# if set to no, empty rooms do not expire +# +# default: +# rooms_expire=yes + +# delay after which an empty room vanishes, in seconds. +# Only active if rooms_expire=yes +# +# default: +# rooms_expire_delay=7200 +# + +# Only active if rooms_expire=yes +# +# default: +# rooms_expire_delay=7200 +# + +# look for expired conference rooms every n times, createRoom +# or dialout is called +# +# room_sweep_interval=10 diff --git a/apps/xmlrpc2di/CMakeLists.txt b/apps/xmlrpc2di/CMakeLists.txt index 6493bd11..d4ef3042 100644 --- a/apps/xmlrpc2di/CMakeLists.txt +++ b/apps/xmlrpc2di/CMakeLists.txt @@ -19,3 +19,4 @@ IF(OPENSSL_FOUND) ENDIF(OPENSSL_FOUND) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/cmake/config.rules.txt b/cmake/config.rules.txt new file mode 100644 index 00000000..bc67d8f9 --- /dev/null +++ b/cmake/config.rules.txt @@ -0,0 +1,14 @@ +FOREACH (config_file ${sems_module_name} ${sems_config_files}) + # Check whether we providing a template for this config + FIND_PATH(SEMS_${sems_module_name}_CONFIG_${config_file}_TEMPLATE ${config_file}.conf.cmake PATHS ./etc) + + IF (SEMS_${sems_module_name}_CONFIG_${config_file}_TEMPLATE) + # If we do provide a template, then process it and create real + # config + CONFIGURE_FILE (./etc/${config_file}.conf.cmake ./etc/${config_file}.conf) + ENDIF (SEMS_${sems_module_name}_CONFIG_${config_file}_TEMPLATE) + + INSTALL( + FILES ./etc/${config_file}.conf DESTINATION ${SEMS_CFG_PREFIX}/etc/sems/etc/ + ) +ENDFOREACH() diff --git a/core/plug-in/binrpcctrl/CMakeLists.txt b/core/plug-in/binrpcctrl/CMakeLists.txt index 64c301e7..27ced925 100644 --- a/core/plug-in/binrpcctrl/CMakeLists.txt +++ b/core/plug-in/binrpcctrl/CMakeLists.txt @@ -13,5 +13,4 @@ SET_PROPERTY(TARGET libbinrpc PROPERTY IMPORTED_LOCATION ./libbinrpc/src/binrpcc SET(sems_module_name binrpcctrl) SET(sems_module_libs libbinrpc) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/core/plug-in/echo/CMakeLists.txt b/core/plug-in/echo/CMakeLists.txt index a340f55e..6c12f57d 100644 --- a/core/plug-in/echo/CMakeLists.txt +++ b/core/plug-in/echo/CMakeLists.txt @@ -5,4 +5,4 @@ Echo.cpp SET(sems_module_name echo) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/core/plug-in/sipctrl/CMakeLists.txt b/core/plug-in/sipctrl/CMakeLists.txt index 1f5408ee..e48e8a80 100644 --- a/core/plug-in/sipctrl/CMakeLists.txt +++ b/core/plug-in/sipctrl/CMakeLists.txt @@ -26,3 +26,4 @@ ENDIF(SEMS_USE_IPV6) SET(sems_module_name sipctrl) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/core/plug-in/stats/CMakeLists.txt b/core/plug-in/stats/CMakeLists.txt index 04961ef2..61785d91 100644 --- a/core/plug-in/stats/CMakeLists.txt +++ b/core/plug-in/stats/CMakeLists.txt @@ -19,4 +19,4 @@ StatsUDPServer.cpp SET(sems_module_name stats) INCLUDE(${CMAKE_SOURCE_DIR}/cmake/module.rules.txt) - +INCLUDE(${CMAKE_SOURCE_DIR}/cmake/config.rules.txt) diff --git a/core/sems.h b/core/sems.h index ba3856f3..6b87e2fb 100644 --- a/core/sems.h +++ b/core/sems.h @@ -28,9 +28,9 @@ #ifndef _ans_machine_h_ #define _ans_machine_h_ -#ifndef SEMS_VERSION -#include "config.h" -#endif +#define SEMS_VERSION "1.1.0-dev" +#define OS "Linux" +#define ARCH "i686" #define CONFIG_FILE "/usr/local/etc/sems/sems.conf" #define MOD_CFG_PATH "/usr/local/etc/sems/etc/" @@ -54,6 +54,11 @@ // session considered dead after 5 minutes no RTP #define DEAD_RTP_TIME 5*60 +/* Session Timer defaul configuration: */ +#define DEFAULT_ENABLE_SESSION_TIMER 1 +#define SESSION_EXPIRES 60 // seconds +#define MINIMUM_TIMER 5 //seconds + #define NUM_MEDIA_PROCESSORS 1 #define MAX_NET_DEVICES 32