]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
add recordings_dir
authorMichael Jerris <mike@jerris.com>
Mon, 11 Jan 2010 03:20:42 +0000 (03:20 +0000)
committerMichael Jerris <mike@jerris.com>
Mon, 11 Jan 2010 03:20:42 +0000 (03:20 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16233 d0543943-73ff-0310-b7d9-9358b9ac24b2

Makefile.am
conf/autoload_configs/conference.conf.xml
conf/dialplan/default.xml
conf/sip_profiles/internal-ipv6.xml
conf/sip_profiles/internal.xml
configure.in
src/mod/endpoints/mod_skypiax/configs/default.xml
src/mod/endpoints/mod_sofia/sofia.c
src/switch_core.c

index b91dc14a4fd9753b9d58e1be69211b4f40de3f4f..b190d93d79f74d1558d00b9ac9c0690c3d856d7f 100644 (file)
@@ -320,6 +320,7 @@ install-data-local:
        @for x in mod db log log/xml_cdr bin scripts grammar recordings ; do \
                $(mkinstalldirs) $(DESTDIR)$(prefix)/$$x ; \
         done
+       $(mkinstalldirs) $(DESTDIR)@recordingsdir@
        $(mkinstalldirs) $(DESTDIR)@modinstdir@
        test -d $(DESTDIR)@confdir@ || $(MAKE) samples-conf
        test -d $(DESTDIR)$(prefix)/htdocs || $(MAKE) samples-htdocs
index 68315e2b2e714bc762393c4cc98d1ec557ae8470..1f49e22696f79f46a840f39f66a5260791830d1c 100644 (file)
@@ -97,7 +97,7 @@
       <!-- Uncomment auto-record to toggle recording every conference call. -->
       <!-- Another valid value is   shout://user:pass@server.com/live.mp3   -->
       <!--
-      <param name="auto-record" value="$${base_dir}/recordings/${conference_name}_${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
+      <param name="auto-record" value="$${recordings_dir}/${conference_name}_${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
       -->
     </profile>
 
index e2eaba3458d5359c90def77de42860a018ba168d..57897ac2372d96ec09479d77e82afc70d3814032 100644 (file)
        <action application="export" data="dialed_extension=$1"/>
        <!-- bind_meta_app can have these args <key> [a|b|ab] [a|b|o|s] <app> -->
        <action application="bind_meta_app" data="1 b s execute_extension::dx XML features"/>
-       <action application="bind_meta_app" data="2 b s record_session::$${base_dir}/recordings/${caller_id_number}.${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
+       <action application="bind_meta_app" data="2 b s record_session::$${recordings_dir}/${caller_id_number}.${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
        <action application="bind_meta_app" data="3 b s execute_extension::cf XML features"/>
        <action application="set" data="ringback=${us-ring}"/>
        <action application="set" data="transfer_ringback=$${hold_music}"/>
index 519d1431927134d6e5be5c2cc0ba6fd3401f219f..755e172dbfc18422a9a5a9964c1f0a007447e1b6 100644 (file)
@@ -27,7 +27,7 @@
     <param name="apply-inbound-acl" value="domains"/>
     <!--<param name="apply-register-acl" value="domains"/>-->
     <!--<param name="dtmf-type" value="info"/>-->
-    <param name="record-template" value="$${base_dir}/recordings/${caller_id_number}.${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
+    <param name="record-template" value="$${recordings_dir}/${caller_id_number}.${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
     <!--enable to use presence and mwi -->
     <param name="manage-presence" value="true"/>
     <!-- This setting is for AAL2 bitpacking on G726 -->
index 6c435b04f990b17817adfe0b024c8b871d1d4abf..13cd3fd3eccb000f003a0932717fe542e3f9a41c 100644 (file)
@@ -79,7 +79,7 @@
     <param name="local-network-acl" value="localnet.auto"/>
     <!--<param name="apply-register-acl" value="domains"/>-->
     <!--<param name="dtmf-type" value="info"/>-->
-    <param name="record-path" value="$${base_dir}/recordings"/>
+    <param name="record-path" value="$${recordings_dir}"/>
     <param name="record-template" value="${caller_id_number}.${target_domain}.${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
     <!--enable to use presence -->
     <param name="manage-presence" value="true"/>
index 725b4a378e09908b168fe107881b01020780edef..e282429878f576773143b33b33d4b2243a305c60 100644 (file)
@@ -46,6 +46,10 @@ AC_ARG_WITH([rundir],
 AC_SUBST(rundir)
 AC_DEFINE_UNQUOTED([SWITCH_RUN_DIR],"${rundir}",[where to put pidfile to])
 
+recordingsdir="${prefix}/recordings"
+AC_SUBST(recordingsdir)
+AC_DEFINE_UNQUOTED([SWITCH_RECORDINGS_DIR],"${recordingsdir}",[where to put recording files])
+
 if test "$sysconfdir" = "\${prefix}/etc" ; then
     confdir="$prefix/conf"
 else
index 64b41650da08c6ddc812158480aa59c5b183baba..3a8ca4d01713701cd097d443a4c27b5f26c6b6dc 100644 (file)
        <action application="export" data="dialed_extension=$1"/>
        <!-- bind_meta_app can have these args <key> [a|b|ab] [a|b|o|s] <app> -->
        <action application="bind_meta_app" data="1 b s execute_extension::dx XML features"/>
-       <action application="bind_meta_app" data="2 b s record_session::$${base_dir}/recordings/${caller_id_number}.${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
+       <action application="bind_meta_app" data="2 b s record_session::$${recordings_dir}/${caller_id_number}.${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
        <action application="bind_meta_app" data="3 b s execute_extension::cf XML features"/>
        <action application="set" data="ringback=${us-ring}"/>
        <action application="set" data="transfer_ringback=$${hold_music}"/>
index 2d8bbca0ae48a60cacd620aac9ac1e15c2e4d663..ea58353e46c2b472c894c9e09ccb788de1f5e772 100644 (file)
@@ -5144,7 +5144,7 @@ void sofia_handle_sip_i_info(nua_t *nua, sofia_profile_t *profile, nua_handle_t
                                if (!strcasecmp(rec_header, "on")) {
                                        char *file = NULL, *tmp = NULL;
 
-                                       tmp = switch_mprintf("%s%s%s", profile->record_path ? profile->record_path : "${base_dir}/recordings",
+                                       tmp = switch_mprintf("%s%s%s", profile->record_path ? profile->record_path : "${recordings_dir}",
                                                                                 SWITCH_PATH_SEPARATOR, profile->record_template);
                                        file = switch_channel_expand_variables(channel, tmp);
                                        switch_ivr_record_session(session, file, 0, NULL);
index e1960a73556dd4a912539f497d748c2ed596d98b..288cc227e785cef19f6f3d8d1d5d2c8acabe8939 100644 (file)
@@ -458,6 +458,14 @@ SWITCH_DECLARE(void) switch_core_set_globals(void)
 #endif
        }
 
+       if (!SWITCH_GLOBAL_dirs.recordings_dir && (SWITCH_GLOBAL_dirs.recordings_dir = (char *) malloc(BUFSIZE))) {
+#ifdef SWITCH_RECORDINGS_DIR
+               switch_snprintf(SWITCH_GLOBAL_dirs.recordings_dir, BUFSIZE, "%s", SWITCH_RECORDINGS_DIR);
+#else
+               switch_snprintf(SWITCH_GLOBAL_dirs.recordings_dir, BUFSIZE, "%s%srecordings", base_dir, SWITCH_PATH_SEPARATOR);
+#endif
+       }
+
        if (!SWITCH_GLOBAL_dirs.storage_dir && (SWITCH_GLOBAL_dirs.storage_dir = (char *) malloc(BUFSIZE))) {
 #ifdef SWITCH_STORAGE_DIR
                switch_snprintf(SWITCH_GLOBAL_dirs.storage_dir, BUFSIZE, "%s", SWITCH_STORAGE_DIR);
@@ -520,6 +528,7 @@ SWITCH_DECLARE(void) switch_core_set_globals(void)
        switch_assert(SWITCH_GLOBAL_dirs.script_dir);
        switch_assert(SWITCH_GLOBAL_dirs.htdocs_dir);
        switch_assert(SWITCH_GLOBAL_dirs.grammar_dir);
+       switch_assert(SWITCH_GLOBAL_dirs.recordings_dir);
        switch_assert(SWITCH_GLOBAL_dirs.temp_dir);
 }
 
@@ -1219,6 +1228,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_init(switch_core_flag_t flags, switc
        switch_dir_make_recursive(SWITCH_GLOBAL_dirs.script_dir, SWITCH_DEFAULT_DIR_PERMS, runtime.memory_pool);
        switch_dir_make_recursive(SWITCH_GLOBAL_dirs.htdocs_dir, SWITCH_DEFAULT_DIR_PERMS, runtime.memory_pool);
        switch_dir_make_recursive(SWITCH_GLOBAL_dirs.grammar_dir, SWITCH_DEFAULT_DIR_PERMS, runtime.memory_pool);
+       switch_dir_make_recursive(SWITCH_GLOBAL_dirs.recordings_dir, SWITCH_DEFAULT_DIR_PERMS, runtime.memory_pool);
        switch_dir_make_recursive(SWITCH_GLOBAL_dirs.temp_dir, SWITCH_DEFAULT_DIR_PERMS, runtime.memory_pool);
 
        switch_mutex_init(&runtime.uuid_mutex, SWITCH_MUTEX_NESTED, runtime.memory_pool);
@@ -1253,6 +1263,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_init(switch_core_flag_t flags, switc
        switch_find_local_ip(guess_ip, sizeof(guess_ip), NULL, AF_INET6);
        switch_core_set_variable("local_ip_v6", guess_ip);
        switch_core_set_variable("base_dir", SWITCH_GLOBAL_dirs.base_dir);
+       switch_core_set_variable("recordings_dir", SWITCH_GLOBAL_dirs.recordings_dir);
        switch_core_set_serial();
 
        switch_console_init(runtime.memory_pool);
@@ -1791,6 +1802,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_destroy(void)
        switch_safe_free(SWITCH_GLOBAL_dirs.script_dir);
        switch_safe_free(SWITCH_GLOBAL_dirs.htdocs_dir);
        switch_safe_free(SWITCH_GLOBAL_dirs.grammar_dir);
+       switch_safe_free(SWITCH_GLOBAL_dirs.recordings_dir);
        switch_safe_free(SWITCH_GLOBAL_dirs.temp_dir);
 
        switch_core_hash_destroy(&runtime.global_vars);