add support for cache directory

make configs use specific directory variables instead of just base_dir
so that one configuration can be used for fhs and legacy installations
This commit is contained in:
Russell Treleaven 2014-08-31 20:22:08 -04:00
parent acb439ca03
commit ce96d95c5e
23 changed files with 101 additions and 40 deletions

View File

@ -5,7 +5,7 @@
NOTE: make sure the file exists and is readable by FreeSWITCH. NOTE: make sure the file exists and is readable by FreeSWITCH.
<list name="example" filename="/usr/local/freeswitch/conf/blacklists/example.list"/> <list name="example" filename="$${conf_dir}/blacklists/example.list"/>
--> -->
</lists> </lists>
</configuration> </configuration>

View File

@ -9,7 +9,7 @@
<queue name="support@default"> <queue name="support@default">
<param name="strategy" value="longest-idle-agent"/> <param name="strategy" value="longest-idle-agent"/>
<param name="moh-sound" value="$${hold_music}"/> <param name="moh-sound" value="$${hold_music}"/>
<!--<param name="record-template" value="$${base_dir}/recordings/${strftime(%Y-%m-%d-%H-%M-%S)}.${destination_number}.${caller_id_number}.${uuid}.wav"/>--> <!--<param name="record-template" value="$${recordings_dir}/${strftime(%Y-%m-%d-%H-%M-%S)}.${destination_number}.${caller_id_number}.${uuid}.wav"/>-->
<param name="time-base-score" value="system"/> <param name="time-base-score" value="system"/>
<param name="max-wait-time" value="0"/> <param name="max-wait-time" value="0"/>
<param name="max-wait-time-with-no-agent" value="0"/> <param name="max-wait-time-with-no-agent" value="0"/>

View File

@ -9,7 +9,7 @@
<param name="legs" value="a"/> <param name="legs" value="a"/>
<!-- Directory in which to spool failed SQL inserts --> <!-- Directory in which to spool failed SQL inserts -->
<!-- <param name="spool-dir" value="$${base_dir}/log/cdr-pg-csv"/> --> <!-- <param name="spool-dir" value="$${log_dir}/cdr-pg-csv"/> -->
<!-- Disk spool format if DB connection/insert fails - csv (default) or sql --> <!-- Disk spool format if DB connection/insert fails - csv (default) or sql -->
<param name="spool-format" value="csv"/> <param name="spool-format" value="csv"/>
<param name="rotate-on-hup" value="true"/> <param name="rotate-on-hup" value="true"/>

View File

@ -11,7 +11,7 @@
<!-- Specify this OR 'cookie-file' or $HOME/.erlang.cookie will be read --> <!-- Specify this OR 'cookie-file' or $HOME/.erlang.cookie will be read -->
<param name="cookie" value="ClueCon"/> <param name="cookie" value="ClueCon"/>
<!-- Read a cookie from an arbitary erlang cookie file instead --> <!-- Read a cookie from an arbitary erlang cookie file instead -->
<!--<param name="cookie-file" value="/tmp/erlang.cookie"/>--> <!--<param name="cookie-file" value="/$${temp_dir}/erlang.cookie"/>-->
<param name="shortname" value="true"/> <param name="shortname" value="true"/>
<!-- in additon to cookie, optionally restrict by ACL --> <!-- in additon to cookie, optionally restrict by ACL -->
<!--<param name="apply-inbound-acl" value="lan"/>--> <!--<param name="apply-inbound-acl" value="lan"/>-->

View File

@ -6,7 +6,7 @@
<param name="ident" value="SpanDSP Fax Ident"/> <param name="ident" value="SpanDSP Fax Ident"/>
<param name="header" value="SpanDSP Fax Header"/> <param name="header" value="SpanDSP Fax Header"/>
<param name="spool-dir" value="/tmp"/> <param name="spool-dir" value="$${temp_dir}"/>
<param name="file-prefix" value="faxrx"/> <param name="file-prefix" value="faxrx"/>
</settings> </settings>
</configuration> </configuration>

View File

@ -46,7 +46,7 @@
<!-- optional: full path to the error log dir for failed web posts if not specified its the same as log-dir --> <!-- optional: full path to the error log dir for failed web posts if not specified its the same as log-dir -->
<!-- either an absolute path, a relative path assuming ${prefix}/logs or a blank or omitted value will default to ${prefix}/logs/format_cdr --> <!-- either an absolute path, a relative path assuming ${prefix}/logs or a blank or omitted value will default to ${prefix}/logs/format_cdr -->
<!-- <param name="err-log-dir" value="/tmp"/> --> <!-- <param name="err-log-dir" value="$${temp_dir}"/> -->
<!-- which auhtentification scheme to use. Supported values are: basic, digest, NTLM, GSS-NEGOTIATE or "any" for automatic detection --> <!-- which auhtentification scheme to use. Supported values are: basic, digest, NTLM, GSS-NEGOTIATE or "any" for automatic detection -->
<!--<param name="auth-scheme" value="basic"/>--> <!--<param name="auth-scheme" value="basic"/>-->
@ -63,21 +63,21 @@
Specify your public key with 'ssl-cert-path' and the private key with Specify your public key with 'ssl-cert-path' and the private key with
'ssl-key-path'. If your private key has a password, specify it with 'ssl-key-path'. If your private key has a password, specify it with
'ssl-key-password'. --> 'ssl-key-password'. -->
<!-- <param name="ssl-cert-path" value="$${base_dir}/conf/certs/public_key.pem"/> --> <!-- <param name="ssl-cert-path" value="$${certs_dir}/public_key.pem"/> -->
<!-- <param name="ssl-key-path" value="$${base_dir}/conf/certs/private_key.pem"/> --> <!-- <param name="ssl-key-path" value="$${certs_dir}/private_key.pem"/> -->
<!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> --> <!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> -->
<!-- optional: use a custom CA certificate in PEM format to verify the peer <!-- optional: use a custom CA certificate in PEM format to verify the peer
with. This is useful if you are acting as your own certificate authority. with. This is useful if you are acting as your own certificate authority.
note: only makes sense if used in combination with "enable-cacert-check." --> note: only makes sense if used in combination with "enable-cacert-check." -->
<!-- <param name="ssl-cacert-file" value="$${base_dir}/conf/certs/cacert.pem"/> --> <!-- <param name="ssl-cacert-file" value="$${certs_dir}/cacert.pem"/> -->
<!-- optional: specify the SSL version to force HTTPS to use. Valid options are <!-- optional: specify the SSL version to force HTTPS to use. Valid options are
"SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. --> "SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. -->
<!-- <param name="ssl-version" value="TLSv1"/> --> <!-- <param name="ssl-version" value="TLSv1"/> -->
<!-- optional: enables cookies and stores them in the specified file. --> <!-- optional: enables cookies and stores them in the specified file. -->
<!-- <param name="cookie-file" value="/tmp/cookie-mod_format_cdr_curl.txt"/> --> <!-- <param name="cookie-file" value="/$${temp_dir}/cookie-mod_format_cdr_curl.txt"/> -->
<!-- Whether to URL encode the individual JSON values. Defaults to true, set to false for standard JSON. --> <!-- Whether to URL encode the individual JSON values. Defaults to true, set to false for standard JSON. -->
<param name="encode-values" value="true"/> <param name="encode-values" value="true"/>

View File

@ -100,8 +100,8 @@
Specify your public key with 'ssl-cert-path' and the private key with Specify your public key with 'ssl-cert-path' and the private key with
'ssl-key-path'. If your private key has a password, specify it with 'ssl-key-path'. If your private key has a password, specify it with
'ssl-key-password'. --> 'ssl-key-password'. -->
<!-- <param name="ssl-cert-path" value="$${base_dir}/conf/certs/public_key.pem"/> --> <!-- <param name="ssl-cert-path" value="$${certs_dir}/public_key.pem"/> -->
<!-- <param name="ssl-key-path" value="$${base_dir}/conf/certs/private_key.pem"/> --> <!-- <param name="ssl-key-path" value="$${certs_dir}/private_key.pem"/> -->
<!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> --> <!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> -->
<!-- optional timeout --> <!-- optional timeout -->
<!-- <param name="timeout" value="10"/> --> <!-- <param name="timeout" value="10"/> -->
@ -109,14 +109,14 @@
<!-- optional: use a custom CA certificate in PEM format to verify the peer <!-- optional: use a custom CA certificate in PEM format to verify the peer
with. This is useful if you are acting as your own certificate authority. with. This is useful if you are acting as your own certificate authority.
note: only makes sense if used in combination with "enable-cacert-check." --> note: only makes sense if used in combination with "enable-cacert-check." -->
<!-- <param name="ssl-cacert-file" value="$${base_dir}/conf/certs/cacert.pem"/> --> <!-- <param name="ssl-cacert-file" value="$${certs_dir}/cacert.pem"/> -->
<!-- optional: specify the SSL version to force HTTPS to use. Valid options are <!-- optional: specify the SSL version to force HTTPS to use. Valid options are
"SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. --> "SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. -->
<!-- <param name="ssl-version" value="TLSv1"/> --> <!-- <param name="ssl-version" value="TLSv1"/> -->
<!-- optional: enables cookies and stores them in the specified file. --> <!-- optional: enables cookies and stores them in the specified file. -->
<!-- <param name="cookie-file" value="/tmp/cookie-mod_xml_curl.txt"/> --> <!-- <param name="cookie-file" value="/$${temp_dir}/cookie-mod_xml_curl.txt"/> -->
<!-- one or more of these imply you want to pick the exact variables that are transmitted --> <!-- one or more of these imply you want to pick the exact variables that are transmitted -->
<!--<param name="enable-post-var" value="Caller-Unique-ID"/>--> <!--<param name="enable-post-var" value="Caller-Unique-ID"/>-->

View File

@ -3,12 +3,12 @@
<!-- set to true if you want to enable http:// and https:// formats. Do not use if mod_httapi is also loaded --> <!-- set to true if you want to enable http:// and https:// formats. Do not use if mod_httapi is also loaded -->
<param name="enable-file-formats" value="false"/> <param name="enable-file-formats" value="false"/>
<param name="max-urls" value="10000"/> <param name="max-urls" value="10000"/>
<param name="location" value="$${base_dir}/http_cache"/> <param name="location" value="$${cache_dir}"/>
<param name="default-max-age" value="86400"/> <param name="default-max-age" value="86400"/>
<param name="prefetch-thread-count" value="8"/> <param name="prefetch-thread-count" value="8"/>
<param name="prefetch-queue-size" value="100"/> <param name="prefetch-queue-size" value="100"/>
<!-- absolute path to CA bundle file --> <!-- absolute path to CA bundle file -->
<param name="ssl-cacert" value="$${base_dir}/conf/cacert.pem"/> <param name="ssl-cacert" value="$${certs_dir}/cacert.pem"/>
<!-- verify certificates --> <!-- verify certificates -->
<param name="ssl-verifypeer" value="true"/> <param name="ssl-verifypeer" value="true"/>
<!-- verify host name matches certificate --> <!-- verify host name matches certificate -->

View File

@ -1,7 +1,7 @@
<configuration name="java.conf" description="Java Plug-Ins"> <configuration name="java.conf" description="Java Plug-Ins">
<javavm path="/opt/jdk1.6.0_04/jre/lib/amd64/server/libjvm.so"/> <javavm path="/opt/jdk1.6.0_04/jre/lib/amd64/server/libjvm.so"/>
<options> <options>
<option value="-Djava.class.path=$${base_dir}/scripts/freeswitch.jar:$${base_dir}/scripts/example.jar"/> <option value="-Djava.class.path=$${script_dir}freeswitch.jar:$${script_dir}/example.jar"/>
<option value="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=0.0.0.0:8000"/> <option value="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=0.0.0.0:8000"/>
</options> </options>
<startup class="org/freeswitch/example/ApplicationLauncher" method="startup"/> <startup class="org/freeswitch/example/ApplicationLauncher" method="startup"/>

View File

@ -13,7 +13,7 @@
These entries will be pre-pended to the LUA_PATH environment variable These entries will be pre-pended to the LUA_PATH environment variable
--> -->
<!-- <param name="script-directory" value="/usr/local/lua/?.lua"/> --> <!-- <param name="script-directory" value="/usr/local/lua/?.lua"/> -->
<!-- <param name="script-directory" value="$${base_dir}/scripts/?.lua"/> --> <!-- <param name="script-directory" value="$${script_dir}/?.lua"/> -->
<!--<param name="xml-handler-script" value="/dp.lua"/>--> <!--<param name="xml-handler-script" value="/dp.lua"/>-->
<!--<param name="xml-handler-bindings" value="dialplan"/>--> <!--<param name="xml-handler-bindings" value="dialplan"/>-->

View File

@ -1,6 +1,6 @@
<configuration name="perl.conf" description="PERL Configuration"> <configuration name="perl.conf" description="PERL Configuration">
<settings> <settings>
<!--<param name="xml-handler-script" value="/tmp/xml.pl"/>--> <!--<param name="xml-handler-script" value="$${temp_dir}/xml.pl"/>-->
<!--<param name="xml-handler-bindings" value="dialplan"/>--> <!--<param name="xml-handler-bindings" value="dialplan"/>-->
<!-- <!--

View File

@ -32,7 +32,7 @@
<param name="ident" value="SpanDSP Fax Ident"/> <param name="ident" value="SpanDSP Fax Ident"/>
<param name="header" value="SpanDSP Fax Header"/> <param name="header" value="SpanDSP Fax Header"/>
<param name="spool-dir" value="/tmp"/> <param name="spool-dir" value="$${temp_dir}"/>
<param name="file-prefix" value="faxrx"/> <param name="file-prefix" value="faxrx"/>
</fax-settings> </fax-settings>

View File

@ -8,8 +8,8 @@
<profile name="mine"> <profile name="mine">
<param name="bind-local" value="0.0.0.0:8081"/> <param name="bind-local" value="0.0.0.0:8081"/>
<param name="bind-local" value="0.0.0.0:8082" secure="true"/> <param name="bind-local" value="0.0.0.0:8082" secure="true"/>
<param name="secure-combined" value="$${base_dir}/certs/wss.pem"/> <param name="secure-combined" value="$${certs_dir}/wss.pem"/>
<param name="secure-chain" value="$${base_dir}/certs/wss.pem"/> <param name="secure-chain" value="$${certs_dir}/wss.pem"/>
<param name="userauth" value="true"/> <param name="userauth" value="true"/>
<!-- setting this to true will allow anyone to register even with no account so use with care --> <!-- setting this to true will allow anyone to register even with no account so use with care -->
<param name="blind-reg" value="false"/> <param name="blind-reg" value="false"/>

View File

@ -64,7 +64,7 @@
<param name="date-fmt" value="%A, %B %d %Y, %I %M %p"/> <param name="date-fmt" value="%A, %B %d %Y, %I %M %p"/>
<param name="email-from" value="${voicemail_account}@${voicemail_domain}"/> <param name="email-from" value="${voicemail_account}@${voicemail_domain}"/>
</email> </email>
<!--<param name="storage-dir" value="/tmp"/>--> <!--<param name="storage-dir" value="$${storage}"/>-->
<!--<param name="odbc-dsn" value="dsn:user:pass"/>--> <!--<param name="odbc-dsn" value="dsn:user:pass"/>-->
<!--<param name="record-comment" value="Your Comment"/>--> <!--<param name="record-comment" value="Your Comment"/>-->
<!--<param name="record-title" value="Your Title"/>--> <!--<param name="record-title" value="Your Title"/>-->

View File

@ -35,7 +35,7 @@
<!-- optional: full path to the error log dir for failed web posts if not specified its the same as log-dir --> <!-- optional: full path to the error log dir for failed web posts if not specified its the same as log-dir -->
<!-- either an absolute path, a relative path assuming ${prefix}/logs or a blank or omitted value will default to ${prefix}/logs/xml_cdr --> <!-- either an absolute path, a relative path assuming ${prefix}/logs or a blank or omitted value will default to ${prefix}/logs/xml_cdr -->
<!-- <param name="err-log-dir" value="/tmp"/> --> <!-- <param name="err-log-dir" value="$${temp_dir}"/> -->
<!-- which auhtentification scheme to use. Supported values are: basic, digest, NTLM, GSS-NEGOTIATE or "any" for automatic detection --> <!-- which auhtentification scheme to use. Supported values are: basic, digest, NTLM, GSS-NEGOTIATE or "any" for automatic detection -->
<!--<param name="auth-scheme" value="basic"/>--> <!--<param name="auth-scheme" value="basic"/>-->
@ -52,20 +52,20 @@
Specify your public key with 'ssl-cert-path' and the private key with Specify your public key with 'ssl-cert-path' and the private key with
'ssl-key-path'. If your private key has a password, specify it with 'ssl-key-path'. If your private key has a password, specify it with
'ssl-key-password'. --> 'ssl-key-password'. -->
<!-- <param name="ssl-cert-path" value="$${base_dir}/conf/certs/public_key.pem"/> --> <!-- <param name="ssl-cert-path" value="$${certs_dir}/public_key.pem"/> -->
<!-- <param name="ssl-key-path" value="$${base_dir}/conf/certs/private_key.pem"/> --> <!-- <param name="ssl-key-path" value="$${certs_dir}/private_key.pem"/> -->
<!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> --> <!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> -->
<!-- optional: use a custom CA certificate in PEM format to verify the peer <!-- optional: use a custom CA certificate in PEM format to verify the peer
with. This is useful if you are acting as your own certificate authority. with. This is useful if you are acting as your own certificate authority.
note: only makes sense if used in combination with "enable-cacert-check." --> note: only makes sense if used in combination with "enable-cacert-check." -->
<!-- <param name="ssl-cacert-file" value="$${base_dir}/conf/certs/cacert.pem"/> --> <!-- <param name="ssl-cacert-file" value="$${certs_dir}/cacert.pem"/> -->
<!-- optional: specify the SSL version to force HTTPS to use. Valid options are <!-- optional: specify the SSL version to force HTTPS to use. Valid options are
"SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. --> "SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. -->
<!-- <param name="ssl-version" value="TLSv1"/> --> <!-- <param name="ssl-version" value="TLSv1"/> -->
<!-- optional: enables cookies and stores them in the specified file. --> <!-- optional: enables cookies and stores them in the specified file. -->
<!-- <param name="cookie-file" value="/tmp/cookie-mod_xml_curl.txt"/> --> <!-- <param name="cookie-file" value="/$${temp_dir}/cookie-mod_xml_curl.txt"/> -->
</settings> </settings>
</configuration> </configuration>

View File

@ -24,8 +24,8 @@
Specify your public key with 'ssl-cert-path' and the private key with Specify your public key with 'ssl-cert-path' and the private key with
'ssl-key-path'. If your private key has a password, specify it with 'ssl-key-path'. If your private key has a password, specify it with
'ssl-key-password'. --> 'ssl-key-password'. -->
<!-- <param name="ssl-cert-path" value="$${base_dir}/conf/certs/public_key.pem"/> --> <!-- <param name="ssl-cert-path" value="$${certs_dir}/public_key.pem"/> -->
<!-- <param name="ssl-key-path" value="$${base_dir}/conf/certs/private_key.pem"/> --> <!-- <param name="ssl-key-path" value="$${certs_dir}/private_key.pem"/> -->
<!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> --> <!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> -->
<!-- optional timeout --> <!-- optional timeout -->
<!-- <param name="timeout" value="10"/> --> <!-- <param name="timeout" value="10"/> -->
@ -33,14 +33,14 @@
<!-- optional: use a custom CA certificate in PEM format to verify the peer <!-- optional: use a custom CA certificate in PEM format to verify the peer
with. This is useful if you are acting as your own certificate authority. with. This is useful if you are acting as your own certificate authority.
note: only makes sense if used in combination with "enable-cacert-check." --> note: only makes sense if used in combination with "enable-cacert-check." -->
<!-- <param name="ssl-cacert-file" value="$${base_dir}/conf/certs/cacert.pem"/> --> <!-- <param name="ssl-cacert-file" value="$${certs_dir}/cacert.pem"/> -->
<!-- optional: specify the SSL version to force HTTPS to use. Valid options are <!-- optional: specify the SSL version to force HTTPS to use. Valid options are
"SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. --> "SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. -->
<!-- <param name="ssl-version" value="TLSv1"/> --> <!-- <param name="ssl-version" value="TLSv1"/> -->
<!-- optional: enables cookies and stores them in the specified file. --> <!-- optional: enables cookies and stores them in the specified file. -->
<!-- <param name="cookie-file" value="/tmp/cookie-mod_xml_curl.txt"/> --> <!-- <param name="cookie-file" value="/$${temp_dir}/cookie-mod_xml_curl.txt"/> -->
<!-- one or more of these imply you want to pick the exact variables that are transmitted --> <!-- one or more of these imply you want to pick the exact variables that are transmitted -->
<!--<param name="enable-post-var" value="Unique-ID"/>--> <!--<param name="enable-post-var" value="Unique-ID"/>-->

View File

@ -129,7 +129,7 @@
<condition field="${default_password}" expression="^1234$" break="never"> <condition field="${default_password}" expression="^1234$" break="never">
<action application="log" data="CRIT WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING "/> <action application="log" data="CRIT WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING "/>
<action application="log" data="CRIT Open ${base_dir}/conf/vars.xml and change the default_password."/> <action application="log" data="CRIT Open $${conf_dir}/vars.xml and change the default_password."/>
<action application="log" data="CRIT Once changed type 'reloadxml' at the console."/> <action application="log" data="CRIT Once changed type 'reloadxml' at the console."/>
<action application="log" data="CRIT WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING "/> <action application="log" data="CRIT WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING "/>
<action application="sleep" data="10000"/> <action application="sleep" data="10000"/>
@ -598,14 +598,14 @@
<condition field="destination_number" expression="^9178$"> <condition field="destination_number" expression="^9178$">
<action application="answer" /> <action application="answer" />
<action application="playback" data="silence_stream://2000"/> <action application="playback" data="silence_stream://2000"/>
<action application="rxfax" data="/tmp/rxfax.tif"/> <action application="rxfax" data="$${temp_dir}/rxfax.tif"/>
<action application="hangup"/> <action application="hangup"/>
</condition> </condition>
</extension> </extension>
<extension name="fax_transmit"> <extension name="fax_transmit">
<condition field="destination_number" expression="^9179$"> <condition field="destination_number" expression="^9179$">
<action application="txfax" data="/tmp/txfax.tif"/> <action application="txfax" data="$${temp_dir}/txfax.tif"/>
<action application="hangup"/> <action application="hangup"/>
</condition> </condition>
</extension> </extension>
@ -675,14 +675,14 @@
<extension name="video_record"> <extension name="video_record">
<condition field="destination_number" expression="^9193$"> <condition field="destination_number" expression="^9193$">
<action application="answer"/> <action application="answer"/>
<action application="record_fsv" data="/tmp/testrecord.fsv"/> <action application="record_fsv" data="$${temp_dir}/testrecord.fsv"/>
</condition> </condition>
</extension> </extension>
<extension name="video_playback"> <extension name="video_playback">
<condition field="destination_number" expression="^9194$"> <condition field="destination_number" expression="^9194$">
<action application="answer"/> <action application="answer"/>
<action application="play_fsv" data="/tmp/testrecord.fsv"/> <action application="play_fsv" data="$${temp_dir}/testrecord.fsv"/>
</condition> </condition>
</extension> </extension>
@ -710,7 +710,7 @@
<extension name="tone_stream"> <extension name="tone_stream">
<condition field="destination_number" expression="^9198$"> <condition field="destination_number" expression="^9198$">
<action application="answer"/> <action application="answer"/>
<action application="playback" data="{loops=10}tone_stream://path=${base_dir}/conf/tetris.ttml"/> <action application="playback" data="{loops=10}tone_stream://path=${conf_dir}/tetris.ttml"/>
</condition> </condition>
</extension> </extension>

View File

@ -307,7 +307,7 @@
<!--<param name="ws-binding" value=":5066"/>--> <!--<param name="ws-binding" value=":5066"/>-->
<!-- uncomment for sip over secure websocket support --> <!-- uncomment for sip over secure websocket support -->
<!-- You need wss.pem in /usr/local/freeswitch/certs for wss --> <!-- You need wss.pem in $${certs_dir} for wss -->
<!--<param name="wss-binding" value=":7443"/>--> <!--<param name="wss-binding" value=":7443"/>-->

View File

@ -28,6 +28,18 @@
recordings_dir recordings_dir
sound_prefix sound_prefix
sounds_dir sounds_dir
conf_dir
log_dir
run_dir
db_dir
mod_dir
htdocs_dir
script_dir
temp_dir
grammar_dir
certs_dir
storage
cache_dir
core_uuid core_uuid
zrtp_enabled zrtp_enabled
nat_public_addr nat_public_addr
@ -117,7 +129,7 @@
false - implies forbidden false - implies forbidden
true - implies mandatory true - implies mandatory
default if not set is accept SAVP inbound if offered. default if not set is accept SAVP inbound if offered.
rtp_secure_media_inbound | rtp_secure_media_outbound rtp_secure_media_inbound | rtp_secure_media_outbound

View File

@ -84,6 +84,7 @@ default_runtimedir="$rundir"
default_scriptdir="$prefix/scripts" default_scriptdir="$prefix/scripts"
default_soundsdir="$prefix/sounds" default_soundsdir="$prefix/sounds"
default_storagedir="$prefix/storage" default_storagedir="$prefix/storage"
default_cachedir="$prefix/cache"
if test "$enable_fhs" = yes; then if test "$enable_fhs" = yes; then
prefix="/usr" exec_prefix="$prefix" prefix="/usr" exec_prefix="$prefix"
@ -102,6 +103,7 @@ if test "$enable_fhs" = yes; then
default_scriptdir="/usr/share/freeswitch/scripts" default_scriptdir="/usr/share/freeswitch/scripts"
default_soundsdir="/usr/share/freeswitch/sounds" default_soundsdir="/usr/share/freeswitch/sounds"
default_storagedir="/var/lib/freeswitch/storage" default_storagedir="/var/lib/freeswitch/storage"
default_cachedir="/var/cache/freeswitch"
fi fi
# Where to install the modules # Where to install the modules
@ -161,6 +163,11 @@ AC_ARG_WITH([storagedir],
AC_SUBST(storagedir) AC_SUBST(storagedir)
AC_DEFINE_UNQUOTED([SWITCH_STORAGE_DIR],"${storagedir}",[where to put storage files]) AC_DEFINE_UNQUOTED([SWITCH_STORAGE_DIR],"${storagedir}",[where to put storage files])
AC_ARG_WITH([cachedir],
[AS_HELP_STRING([--with-cachedir=DIR], [Put cache files into this location (default: $prefix/cache)])], [cachedir="$withval"], [cachedir="${default_cachedir}"])
AC_SUBST(cachedir)
AC_DEFINE_UNQUOTED([SWITCH_CACHE_DIR],"${cachedir}",[where to put cache files])
if test "$sysconfdir" = "\${prefix}/etc" ; then if test "$sysconfdir" = "\${prefix}/etc" ; then
confdir="$prefix/conf" confdir="$prefix/conf"
else else
@ -1748,5 +1755,6 @@ echo " runtimedir: ${runtimedir}"
echo " scriptdir: ${scriptdir}" echo " scriptdir: ${scriptdir}"
echo " soundsdir: ${soundsdir}" echo " soundsdir: ${soundsdir}"
echo " storagedir: ${storagedir}" echo " storagedir: ${storagedir}"
echo " cachedir: ${cachedir}"
echo "" echo ""
echo "------------------------------------------------------------------------------" echo "------------------------------------------------------------------------------"

View File

@ -510,6 +510,7 @@ struct switch_directories {
char *htdocs_dir; char *htdocs_dir;
char *grammar_dir; char *grammar_dir;
char *storage_dir; char *storage_dir;
char *cache_dir;
char *recordings_dir; char *recordings_dir;
char *sounds_dir; char *sounds_dir;
char *lib_dir; char *lib_dir;

View File

@ -478,6 +478,7 @@ static const char usage[] =
"\t-certs [directory] -- alternate directory for certificates\n" "\t-certs [directory] -- alternate directory for certificates\n"
"\t-recordings [directory] -- alternate directory for recordings\n" "\t-recordings [directory] -- alternate directory for recordings\n"
"\t-storage [directory] -- alternate directory for voicemail storage\n" "\t-storage [directory] -- alternate directory for voicemail storage\n"
"\t-cache [directory] -- alternate directory for cache files\n"
"\t-sounds [directory] -- alternate directory for sound files\n"; "\t-sounds [directory] -- alternate directory for sound files\n";
@ -929,6 +930,21 @@ int main(int argc, char *argv[])
strcpy(SWITCH_GLOBAL_dirs.storage_dir, local_argv[x]); strcpy(SWITCH_GLOBAL_dirs.storage_dir, local_argv[x]);
} }
else if (!strcmp(local_argv[x], "-cache")) {
x++;
if (switch_strlen_zero(local_argv[x]) || is_option(local_argv[x])) {
fprintf(stderr, "When using -cache you must specify a cache directory\n");
return 255;
}
SWITCH_GLOBAL_dirs.cache_dir = (char *) malloc(strlen(local_argv[x]) + 1);
if (!SWITCH_GLOBAL_dirs.cache_dir) {
fprintf(stderr, "Allocation error\n");
return 255;
}
strcpy(SWITCH_GLOBAL_dirs.cache_dir, local_argv[x]);
}
else if (!strcmp(local_argv[x], "-recordings")) { else if (!strcmp(local_argv[x], "-recordings")) {
x++; x++;
if (switch_strlen_zero(local_argv[x]) || is_option(local_argv[x])) { if (switch_strlen_zero(local_argv[x]) || is_option(local_argv[x])) {

View File

@ -726,6 +726,17 @@ SWITCH_DECLARE(void) switch_core_set_globals(void)
#endif #endif
} }
if (!SWITCH_GLOBAL_dirs.cache_dir && (SWITCH_GLOBAL_dirs.cache_dir = (char *) malloc(BUFSIZE))) {
if (SWITCH_GLOBAL_dirs.base_dir)
switch_snprintf(SWITCH_GLOBAL_dirs.cache_dir, BUFSIZE, "%s%scache", SWITCH_GLOBAL_dirs.base_dir, SWITCH_PATH_SEPARATOR);
else
#ifdef SWITCH_CACHE_DIR
switch_snprintf(SWITCH_GLOBAL_dirs.cache_dir, BUFSIZE, "%s", SWITCH_CACHE_DIR);
#else
switch_snprintf(SWITCH_GLOBAL_dirs.cache_dir, BUFSIZE, "%s%scache", base_dir, SWITCH_PATH_SEPARATOR);
#endif
}
if (!SWITCH_GLOBAL_dirs.db_dir && (SWITCH_GLOBAL_dirs.db_dir = (char *) malloc(BUFSIZE))) { if (!SWITCH_GLOBAL_dirs.db_dir && (SWITCH_GLOBAL_dirs.db_dir = (char *) malloc(BUFSIZE))) {
if (SWITCH_GLOBAL_dirs.base_dir) if (SWITCH_GLOBAL_dirs.base_dir)
switch_snprintf(SWITCH_GLOBAL_dirs.db_dir, BUFSIZE, "%s%sdb", SWITCH_GLOBAL_dirs.base_dir, SWITCH_PATH_SEPARATOR); switch_snprintf(SWITCH_GLOBAL_dirs.db_dir, BUFSIZE, "%s%sdb", SWITCH_GLOBAL_dirs.base_dir, SWITCH_PATH_SEPARATOR);
@ -1717,6 +1728,18 @@ SWITCH_DECLARE(switch_status_t) switch_core_init(switch_core_flag_t flags, switc
switch_core_set_variable("recordings_dir", SWITCH_GLOBAL_dirs.recordings_dir); switch_core_set_variable("recordings_dir", SWITCH_GLOBAL_dirs.recordings_dir);
switch_core_set_variable("sound_prefix", SWITCH_GLOBAL_dirs.sounds_dir); switch_core_set_variable("sound_prefix", SWITCH_GLOBAL_dirs.sounds_dir);
switch_core_set_variable("sounds_dir", SWITCH_GLOBAL_dirs.sounds_dir); switch_core_set_variable("sounds_dir", SWITCH_GLOBAL_dirs.sounds_dir);
switch_core_set_variable("conf_dir", SWITCH_GLOBAL_dirs.conf_dir);
switch_core_set_variable("log_dir", SWITCH_GLOBAL_dirs.log_dir);
switch_core_set_variable("run_dir", SWITCH_GLOBAL_dirs.run_dir);
switch_core_set_variable("db_dir", SWITCH_GLOBAL_dirs.db_dir);
switch_core_set_variable("mod_dir", SWITCH_GLOBAL_dirs.mod_dir);
switch_core_set_variable("htdocs_dir", SWITCH_GLOBAL_dirs.htdocs_dir);
switch_core_set_variable("script_dir", SWITCH_GLOBAL_dirs.script_dir);
switch_core_set_variable("temp_dir", SWITCH_GLOBAL_dirs.temp_dir);
switch_core_set_variable("grammar_dir", SWITCH_GLOBAL_dirs.grammar_dir);
switch_core_set_variable("certs_dir", SWITCH_GLOBAL_dirs.certs_dir);
switch_core_set_variable("storage", SWITCH_GLOBAL_dirs.storage_dir);
switch_core_set_variable("cache_dir", SWITCH_GLOBAL_dirs.cache_dir);
switch_core_set_serial(); switch_core_set_serial();
switch_console_init(runtime.memory_pool); switch_console_init(runtime.memory_pool);
@ -2702,6 +2725,7 @@ SWITCH_DECLARE(switch_status_t) switch_core_destroy(void)
switch_safe_free(SWITCH_GLOBAL_dirs.htdocs_dir); switch_safe_free(SWITCH_GLOBAL_dirs.htdocs_dir);
switch_safe_free(SWITCH_GLOBAL_dirs.grammar_dir); switch_safe_free(SWITCH_GLOBAL_dirs.grammar_dir);
switch_safe_free(SWITCH_GLOBAL_dirs.storage_dir); switch_safe_free(SWITCH_GLOBAL_dirs.storage_dir);
switch_safe_free(SWITCH_GLOBAL_dirs.cache_dir);
switch_safe_free(SWITCH_GLOBAL_dirs.recordings_dir); switch_safe_free(SWITCH_GLOBAL_dirs.recordings_dir);
switch_safe_free(SWITCH_GLOBAL_dirs.sounds_dir); switch_safe_free(SWITCH_GLOBAL_dirs.sounds_dir);
switch_safe_free(SWITCH_GLOBAL_dirs.run_dir); switch_safe_free(SWITCH_GLOBAL_dirs.run_dir);