From 6505a5eaed0e40810fbf1d44fc5f5df3ed0f6cb8 Mon Sep 17 00:00:00 2001 From: Sukru Senli Date: Fri, 22 May 2015 15:56:36 +0200 Subject: [PATCH] update voice_client --- .../extensions_provider.TEMPLATE | 2 +- voice-client/files/etc/init.d/voice_client | 20 ++++++++++++++++--- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/voice-client/files/etc/asterisk_templates/extensions_provider.TEMPLATE b/voice-client/files/etc/asterisk_templates/extensions_provider.TEMPLATE index a702d5f59..e2a15da8b 100644 --- a/voice-client/files/etc/asterisk_templates/extensions_provider.TEMPLATE +++ b/voice-client/files/etc/asterisk_templates/extensions_provider.TEMPLATE @@ -19,7 +19,7 @@ exten => _X.,1, Transfer(SIP/${EXTEN}@|PROVIDER|,,) [|PROVIDER|-outgoing] ; Context used for normal outgoing calls -exten => _[*#0-9].,1, Set(DIAL_EXTEN=${EXTEN}) +|SPEED_DIAL|exten => _[*#0-9].,1, Set(DIAL_EXTEN=${EXTEN}) exten => _[*#0-9].,n, |CUSTOM_OUTGOING| exten => _[*#0-9].,n, |CALL_FILTER| exten => _[*#0-9].,n, Set(result=${SHELL(/usr/lib/asterisk/log_call.sh Outgoing |USERNAME| ${DIAL_EXTEN})}) diff --git a/voice-client/files/etc/init.d/voice_client b/voice-client/files/etc/init.d/voice_client index 7a504aaf3..6ff1350ee 100755 --- a/voice-client/files/etc/init.d/voice_client +++ b/voice-client/files/etc/init.d/voice_client @@ -1203,7 +1203,7 @@ get_call_filter() local call_filter enabled config_get call_filter $provider call_filter - if ! [ -z "$call_filter" ] ; then + if ! [ -z "$call_filter" -o "$call_filter" == "-" ] ; then macro="Macro($call_filter-$direction)" fi echo $macro @@ -1353,7 +1353,7 @@ configure_extensions_provider() local callforward_enabled local cbbs_enabled local callreturn_enabled - local redial_enabled + local redial_enabled local mailbox # load general settings @@ -1378,6 +1378,20 @@ configure_extensions_provider() echo "Configuring dialplan for SIP Provider $1" + # add speed dial options + speed_dial="" + [ -z "$CONFIG_SECTIONS" ] && return 0 + for section in ${CONFIG_SECTIONS}; do + config_get cfgtype "$section" TYPE + [ "x$cfgtype" != "xspeed_dial" ] && continue + local tone + local number + config_get tone $section tone + config_get number $section number + speed_dial="${speed_dial}exten => ${tone},1,Goto($number, 1)\n" + speed_dial="${speed_dial}exten => ${tone}#,1,Goto($number, 1)\n" + done + config_get displayname $1 displayname [ -z "$displayname" ] && displayname=$user config_get custom_outgoing custom_dialplan custom_outgoing_enabled @@ -1433,6 +1447,7 @@ configure_extensions_provider() sed -i "s/|PROVIDER|/$1/g" $WORKDIR/extensions_provider.tmp sed -i "s/|USERNAME|/$user_without_suffix/g" $WORKDIR/extensions_provider.tmp sed -i "s/|CUSTOM_OUTGOING|/$custom_outgoing/" $WORKDIR/extensions_provider.tmp + sed -i "s/|SPEED_DIAL|/$speed_dial/" $WORKDIR/extensions_provider.tmp sed -i "s/|CALL_FILTER|/$call_filter_macro/" $WORKDIR/extensions_provider.tmp sed -i "s/|DISPLAYNAME|/$(escape_sed_substitution $displayname)/" $WORKDIR/extensions_provider.tmp @@ -2090,4 +2105,3 @@ start_service() { service_triggers() { procd_add_reload_trigger voice_client } -