diff options
Diffstat (limited to 'contrib/package/asterisk-xip/files/uci/voicemailconf')
-rwxr-xr-x | contrib/package/asterisk-xip/files/uci/voicemailconf | 243 |
1 files changed, 0 insertions, 243 deletions
diff --git a/contrib/package/asterisk-xip/files/uci/voicemailconf b/contrib/package/asterisk-xip/files/uci/voicemailconf deleted file mode 100755 index fbdfd7b87..000000000 --- a/contrib/package/asterisk-xip/files/uci/voicemailconf +++ /dev/null @@ -1,243 +0,0 @@ -#!/bin/sh - -# Voicemail.conf - -ast_add_conf voicemail - -init_voicemailconf() { - ast_add_reload voicemail - - ast_enable_type voicegeneral - ast_enable_type voicemail - ast_enable_type voicezone - ast_enable_type dialplanvoice - - voice_format= - voice_serveremail= - voice_attach=no - voice_skipms=3000 - voice_maxsilence=10 - voice_silencethreshold=128 - voice_maxlogins=3 - voice_emaildateformat="%A, %B %d, %Y at %r" - voice_sendvoicemail=no - voice_maxmsg=100 - voice_maxmessage=180 - voice_minmessage=3 - voice_maxgreet=60 - return 0 -} - -voicegeneral_list="format emailformat serveremail attach skipms maxsilence silencethreshold maxlogins emaildateformat sendvoicemail maxmsg maxmessage minmessage maxgreet" -voicegeneral_ext_list="" - -valid_voicemail(){ - is_in_list $1 ${voicegeneral_list} ${voicegeneral_ext_list} - return $? -} - -voicebox_list="context number password name email pager" - -voicebox_listopt="tz attach serveremail saycid dialout callback review operator envelope sayduration saydurationm" - -valid_voicebox() { - is_in_list $1 ${voicebox_list} ${voicebox_listopt} - return $? -} - -check_add_voicebox() { - if [ ! -z "${voicebox_number}" ] ; then - [ -z "${voicebox_context}" ] && voicebox_context=default - logdebug 1 "Adding Voicebox ${voicebox_number} in ${voicebox_context}" - # Construct the voicebox line - local line="$voicebox_number => " - [ -z "${voicebox_tz}" ] && voicebox_tz=homeloc - [ -z "${voicebox_name}" ] && voicebox_name=OpenWRT - - logdebug 1 "Adding in order options" - for i in password name email pager ; do - eval "local value=\"\${voicebox_$i}\"" - line="${line}${value}," - done - - # Then add named options. - logdebug 2 "Adding in named options" - for i in ${voicebox_listopt} ; do - eval val=\${voicebox_$i} - [ -z "${val}" ] || append line "$i=$val" \| - done - - logdebug 2 "Check for empty" - # Check if the current voicebox context has anything - eval local cur="\${voicebox_section_$voicebox_context}" - # if not add it to the list of contexts used - [ -z "$cur" ] && append voice_contextlist "${voicebox_context}" " " - - # Then add the voicebox line to the context - logdebug 4 "Add Voicebox $line to ${voicebox_context}" - append voicebox_section_${voicebox_context} "$line" "$N" - fi - - # Then clear the settings for the next one. - for i in ${voicebox_list} ${voicebox_listopt} ; do - eval unset voicebox_$i - done -} - -create_voicemailconf() { - # Construct the file - file=${DEST_DIR}/voicemail.conf - get_checksum voicemail_conf $file - - local isempty=1 - if [ -z "${voice_contextlist}" ] ; then - local isempty=2 - rm -f $file - else - - [ -z "${voice_format}" ] && voice_format="wav49|gsm|wav" - # Make emailformat first in the list - if [ ! -z "${voice_emailformat}" ] ; then - local newfmt=${voice_emailformat} - for i in ${voice_format//|/ } ; do - [ "$i" == "${voice_emailformat}" ] || newfmt="${newfmt}|${i}" - done - voice_format="${newfmt}" - fi - echo "${asteriskuci_gen}[general]" > $file - for i in ${voicegeneral_list} ; do - eval value=\${voice_$i} - if [ ! -z "$value" ] ; then - echo "$i=$value" >> $file - fi - done - echo "${N}[zonemessages]" >> $file - echo "homeloc=${asterisk_zone}| Q IMp" >> $file - echo "${voicezone_list}" >> $file - for i in ${voice_contextlist} ; do - echo "${N}[$i]" >> $file - eval "local cursection=\"\${voicebox_section_${i}}\"" - echo "$cursection" >> $file - eval unset voicebox_section_${i} - done - unset voice_contexts - fi - check_checksum "$voicemail_conf" "$file" || ast_voicemail_restart=$isempty -} - -handle_voicegeneral() { - option_cb() { - case "$1" in - format|format_ITEM*) append voice_format "$2" "|" ;; - format_LENGTH) ;; - *) - if valid_voicemail $1 $2 ; then - eval voice_$1="$2" - else - logerror "Invalid general voice option: $1" - fi - esac - } -} - -handle_voicemail() { - check_add voicebox - voicebox_context="${1%[-_]*}" - if [ "${voicebox_context}" == "$1" ] ; then - voicebox_context=default - fi - voicebox_number=${1#*[-_]} - option_cb() { - case $1 in - zone) voicebox_tz="$2" ;; - *) - if valid_voicebox $1 $2 ; then - eval "voicebox_$1=\"$2\"" - else - logerror "Invalid voicebox option: $1" - fi - esac - } -} - -# Locality options for voicemail - -check_add_voicezone() { - if [ ! -z "${voicezone_name}" ] ; then - [ -z "${voicezone_zone}" ] && voicezone_zone=${asterisk_zone} - if [ -z "${voicezone_message}" ] ; then - voicezone_message="Q IMp" - else - voicezone_message=`echo "$voicezone_message"|tr \" \'` - fi - append voicezone_list "${voicezone_name}=${voicezone_zone}|${voicezone_message}" "${N}" - fi - unset voicezone_name - unset voicezone_zone - unset voicezone_message -} - -handle_voicezone() { - voicezone_name=$1 - option_cb() { - case $1 in - name) voicezone_name="$2" ;; - zone) voicezone_zone="$2" ;; - message) voicezone_message="$2" ;; - *) logerror "Invalid voicezone option: $1" - esac - } -} - -handle_dialplanvoice() { - check_add dialplanvoice - option_cb() { - case $1 in - dialplan|extension|voicecontext|voicebox) - eval "dial_voice_$1=\"$2\"" ;; - *) logerror "Invalid option: $1 for dialplanvoice" - esac - } -} - -check_add_dialplanvoice() { - if [ ! -z "${dial_voice_dialplan}" -a ! -z "${dial_voice_extension}" ] ; then - local ext="exten => ${dial_voice_extension}," - [ -z "${dial_voice_voicebox}" ] && dial_voice_voicebox=default - if [ -z "${dial_voice_voicebox}" ] ; then - logerror "Expecting voicebox for ${dial_voice_dialplan}/${dial_voice_extension}" - else - check_add_context ${dial_voice_dialplan} - local voiceext="${dial_voice_voicebox}@${dial_voice_voicecontext}" - enable_voicemail - append dialplan_context_${dial_voice_dialplan} "${ext}1,VoiceMailMain(${voiceext})" "${N}" - fi - fi - for i in dialplan extension voicecontext voicebox ; do - eval "unset dial_voice_$i" - done -} - -enable_voicemail() { - enable_module res_adsi - enable_module app_voicemail - enable_format gsm -} - - -add_dialplan_voice() { - local context=$1 - logdebug 1 "Adding Dialplan voice $1 $2" - check_add_context "$context" - local ext="exten => $2," - enable_voicemail - append dialplan_context_${context} "${ext}1,VoiceMailMain($3)" "${N}" -} - - - -reload_voicemail() astcmd "module reload app_voicemail.so" -unload_voicemail() astcmd "module unload app_voicemail.so" - - -# vim: ts=2 sw=2 noet foldmethod=indent |