updated to FS git HEAD 5e3a6fc5e6f40be5d68c8b3cfbbfa3227fe06c2f
git-svn-id: svn://svn.openwrt.org/openwrt/packages@35036 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
6f2abb509e
commit
fb2956f426
@ -1,5 +1,5 @@
|
||||
#
|
||||
# Copyright (C) 2009-2012 OpenWrt.org
|
||||
# Copyright (C) 2009-2013 OpenWrt.org
|
||||
#
|
||||
# This is free software, licensed under the GNU General Public License v2.
|
||||
# See /LICENSE for more information.
|
||||
@ -10,19 +10,19 @@ include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=freeswitch
|
||||
PKG_DISTNAME:=$(PKG_NAME)_git
|
||||
PKG_VERSION:=1.0.7
|
||||
PKG_RELEASE:=2
|
||||
PKG_VERSION:=1.3.13b
|
||||
PKG_RELEASE:=1
|
||||
|
||||
|
||||
#
|
||||
# The latest FS git hash in PKG_REV can be obtained from http://fisheye.freeswitch.org
|
||||
#
|
||||
PKG_REV:=54b4b088d911d4c80f224ed561d8e278229a75ff
|
||||
PKG_REV:=5e3a6fc5e6f40be5d68c8b3cfbbfa3227fe06c2f
|
||||
PKG_SOURCE_VERSION:=$(PKG_REV)
|
||||
PKG_SOURCE_PROTO:=git
|
||||
PKG_SOURCE_URL:=git://git.$(PKG_NAME).org/$(PKG_NAME).git
|
||||
PKG_SOURCE_SUBDIR:=$(PKG_DISTNAME)
|
||||
PKG_SOURCE:=$(PKG_SOURCE_SUBDIR)-$(shell echo $(PKG_REV)|cut -b -9).tar.bz2
|
||||
PKG_SOURCE:=$(PKG_SOURCE_SUBDIR)-$(shell echo $(PKG_REV)|cut -b -7).tar.xz
|
||||
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
|
||||
|
||||
|
||||
@ -31,6 +31,7 @@ PKG_BUILD_PARALLEL:=1
|
||||
|
||||
|
||||
FS_MOD_AVAILABLE:= \
|
||||
abstraction \
|
||||
alsa \
|
||||
amr \
|
||||
amrwb \
|
||||
@ -78,8 +79,11 @@ FS_MOD_AVAILABLE:= \
|
||||
h26x \
|
||||
h323 \
|
||||
hash \
|
||||
html5 \
|
||||
httapi \
|
||||
http-cache \
|
||||
ilbc \
|
||||
isac \
|
||||
java \
|
||||
json-cdr \
|
||||
lcr \
|
||||
@ -89,18 +93,24 @@ FS_MOD_AVAILABLE:= \
|
||||
lua \
|
||||
managed \
|
||||
mp4 \
|
||||
mp4v \
|
||||
native-file \
|
||||
nibblebill \
|
||||
openzap \
|
||||
opus \
|
||||
oreka \
|
||||
portaudio \
|
||||
portaudio-stream \
|
||||
posix-timer \
|
||||
radius-cdr \
|
||||
redis \
|
||||
rss \
|
||||
rtmp \
|
||||
sangoma-codec \
|
||||
say-de \
|
||||
say-en \
|
||||
say-es \
|
||||
say-fa \
|
||||
say-fr \
|
||||
say-hu \
|
||||
say-it \
|
||||
@ -112,6 +122,7 @@ FS_MOD_AVAILABLE:= \
|
||||
shell-stream \
|
||||
silk \
|
||||
siren \
|
||||
skel \
|
||||
skinny \
|
||||
skypopen \
|
||||
sms \
|
||||
@ -121,6 +132,7 @@ FS_MOD_AVAILABLE:= \
|
||||
snmp \
|
||||
snom \
|
||||
sofia \
|
||||
sonar \
|
||||
spandsp \
|
||||
speex \
|
||||
spidermonkey \
|
||||
@ -138,9 +150,11 @@ FS_MOD_AVAILABLE:= \
|
||||
valet-parking \
|
||||
vmd \
|
||||
voicemail \
|
||||
voicemail-ivr \
|
||||
xml-cdr \
|
||||
xml-curl \
|
||||
xml-rpc \
|
||||
xml-scgi \
|
||||
yaml \
|
||||
|
||||
|
||||
@ -173,7 +187,7 @@ endef
|
||||
define Package/$(PKG_NAME)
|
||||
$(call Package/$(PKG_NAME)/Default)
|
||||
TITLE:=FreeSWITCH open source telephony platform
|
||||
DEPENDS:= +libreadline +libncurses +libpthread +libstdcpp +libopenssl +libpq +librt +zlib
|
||||
DEPENDS:=+libcurl +libjpeg +libncurses +libpq +libpthread +librt +libstdcpp
|
||||
MENU:=1
|
||||
endef
|
||||
|
||||
@ -394,17 +408,17 @@ endif
|
||||
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-flite),)
|
||||
$(eval $(call Download/files,flite,flite-1.5.1-current.tar.bz2,36e5d1c1307161211c8ffe9a75a623ae,,downloads/libs/,libs/))
|
||||
$(eval $(call Download/files,flite,flite-1.5.4-current.tar.bz2,f3a2d88b1059f6f4ff3c20a8169bc0f4,,downloads/libs/,libs/))
|
||||
endif
|
||||
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-mod-opus),)
|
||||
$(eval $(call Download/files,opus,opus-0.9.0.tar.gz,8a729db587430392e64280a499e9d061,,downloads/libs/,libs/))
|
||||
$(eval $(call Download/files,opus,opus-1.0.2.tar.gz,ic503ad05a59ddb44deab96204401be03,,downloads/libs/,libs/))
|
||||
endif
|
||||
|
||||
|
||||
ifneq ($(CONFIG_PACKAGE_$(PKG_NAME)-sounds-en),)
|
||||
$(eval $(call Download/files,sounds-en,$(PKG_NAME)-sounds-en-us-callie-8000-1.0.16.tar.gz,bde0883eb75fe06f39bde11f50a1f858,,,))
|
||||
$(eval $(call Download/files,sounds-en,$(PKG_NAME)-sounds-en-us-callie-8000-1.0.22.tar.gz,cff509d878708ce5e6e7fedac7f683ef,,,))
|
||||
MAKE_INSTALL_TARGETS+= sounds-install
|
||||
endif
|
||||
|
||||
@ -460,21 +474,23 @@ CONFIGURE_ARGS+= \
|
||||
|
||||
|
||||
CONFIGURE_VARS+= \
|
||||
config_TARGET_CC="${TARGET_CC}" \
|
||||
config_TARGET_CC="$(TOOLCHAIN_DIR)/bin/${TARGET_CC}" \
|
||||
config_TARGET_CFLAGS="${FS_TARGET_CPPFLAGS} ${FS_TARGET_CFLAGS}" \
|
||||
config_TARGET_CXX="${TARGET_CXX}" \
|
||||
config_TARGET_CXX="$(TOOLCHAIN_DIR)/bin/${TARGET_CXX}" \
|
||||
config_TARGET_CXXFLAGS="${FS_TARGET_CPPFLAGS} ${FS_TARGET_CXXFLAGS}" \
|
||||
config_TARGET_CPPFLAGS="${FS_TARGET_CPPFLAGS}" \
|
||||
config_TARGET_READLINE_INC="${FS_TARGET_CPPFLAGS}" \
|
||||
config_TARGET_READLINE_LIBS="${TARGET_LDFLAGS} -lreadline -lncurses" \
|
||||
config_TARGET_LIBS="${TARGET_LDFLAGS} -lpthread" \
|
||||
config_TARGET_LIBS="${TARGET_LDFLAGS} -lpthread -ldl" \
|
||||
config_BUILD_CC="${HOSTCC}" \
|
||||
config_BUILD_CFLAGS="${HOST_CFLAGS}" \
|
||||
CC_FOR_BUILD="${HOSTCC}" \
|
||||
BUILDTOOL_CC="${HOSTCC}" \
|
||||
BUILDTOOL_CCLD="${HOSTCC}" \
|
||||
LDFLAGS="$$$$LDFLAGS" \
|
||||
LDFLAGS_FOR_BUILD="${HOST_LDFLAGS}" \
|
||||
CC="${TARGET_CC}" \
|
||||
CXX="${TARGET_CXX}" \
|
||||
CC="$(TOOLCHAIN_DIR)/bin/${TARGET_CC}" \
|
||||
CXX="$(TOOLCHAIN_DIR)/bin/${TARGET_CXX}" \
|
||||
CFLAGS="${FS_TARGET_CPPFLAGS} ${FS_TARGET_CFLAGS}" \
|
||||
CXXFLAGS="${FS_TARGET_CPPFLAGS} ${FS_TARGET_CXXFLAGS}" \
|
||||
CPPFLAGS="${FS_TARGET_CPPFLAGS}" \
|
||||
@ -515,6 +531,9 @@ endef
|
||||
|
||||
|
||||
define Build/Configure
|
||||
if [ -d $(PKG_BUILD_DIR)/libs/libcodec2/src ]; then \
|
||||
(cd $(PKG_BUILD_DIR)/libs/libcodec2/src; $(HOSTCC) -c generate_codebook.c; $(HOSTCC) -o generate_codebook generate_codebook.o -lm) \
|
||||
fi
|
||||
(cd $(PKG_BUILD_DIR); $(AM_TOOL_PATHS) ./bootstrap.sh)
|
||||
$(call Build/Configure/Default,)
|
||||
$(foreach m,$(FS_MOD_AVAILABLE),
|
||||
@ -529,10 +548,10 @@ endef
|
||||
|
||||
define Build/Compile
|
||||
$(MAKE) -C $(PKG_BUILD_DIR) \
|
||||
AR="$(TARGET_CROSS)ar" \
|
||||
RANLIB="$(TARGET_CROSS)ranlib" \
|
||||
CC="$(TARGET_CC)" \
|
||||
CXX="$(TARGET_CXX)" \
|
||||
AR="$(TOOLCHAIN_DIR)/bin/$(TARGET_CROSS)ar" \
|
||||
RANLIB="$(TOOLCHAIN_DIR)/bin/$(TARGET_CROSS)ranlib" \
|
||||
CC="$(TOOLCHAIN_DIR)/bin/$(TARGET_CC)" \
|
||||
CXX="$(TOOLCHAIN_DIR)/bin/$(TARGET_CXX)" \
|
||||
DESTDIR="$(PKG_INSTALL_DIR)" \
|
||||
LDFLAGS_FOR_BUILD="$(HOST_LDFLAGS)" \
|
||||
all $(MAKE_INSTALL_TARGETS)
|
||||
@ -684,6 +703,7 @@ $(eval $(call BuildPackage,libopenzap))
|
||||
#
|
||||
# $(eval $(call BuildPlugin,Name,Title,Files,Inter Depends,Extra Depends))
|
||||
#
|
||||
$(eval $(call BuildPlugin,abstraction,Abstraction epplication,mod_abstraction,,))
|
||||
$(eval $(call BuildPlugin,alsa,Alsa endpoint,mod_alsa,,+alsa-lib))
|
||||
$(eval $(call BuildPlugin,amr,GSM-AMR codec,mod_amr,,))
|
||||
$(eval $(call BuildPlugin,amrwb,GSM-AMRWB,mod_amrwb,,))
|
||||
@ -731,8 +751,11 @@ $(eval $(call BuildPlugin,gsmopen,Short Message Service (SMS),mod_gsmopen,spands
|
||||
$(eval $(call BuildPlugin,h26x,H26X linear codec,mod_h26x,,))
|
||||
$(eval $(call BuildPlugin,h323,h323 endpoint,mod_h323,,@BROKEN)) # missing header files (other packages needed)
|
||||
$(eval $(call BuildPlugin,hash,API for manipulating a hash table,mod_hash,,))
|
||||
$(eval $(call BuildPlugin,html5,HTML5 Endpoint Module,mod_html5,,))
|
||||
$(eval $(call BuildPlugin,httapi,HT Telephony API and HTTP caching,mod_httapi,,))
|
||||
$(eval $(call BuildPlugin,http-cache,HTTP GET with caching,mod_http_cache,,+libcurl))
|
||||
$(eval $(call BuildPlugin,ilbc,ILBC codec,mod_ilbc,,))
|
||||
$(eval $(call BuildPlugin,isac,isac Codec,mod_isac,,))
|
||||
$(eval $(call BuildPlugin,java,Java language interface,mod_java,,@BROKEN)) # needs java
|
||||
$(eval $(call BuildPlugin,json-cdr,JSon-CDR interface,mod_json_cdr,,+libcurl))
|
||||
$(eval $(call BuildPlugin,lcr,Least Cost Routing,mod_lcr,,))
|
||||
@ -742,18 +765,23 @@ $(eval $(call BuildPlugin,loopback,Loopback endpoint,mod_loopback,,))
|
||||
$(eval $(call BuildPlugin,lua,Lua language interface,mod_lua,,+libstdcpp))
|
||||
$(eval $(call BuildPlugin,managed,language mod_managed,mod_managed,,+glib2 @BROKEN)) # needs Mono
|
||||
$(eval $(call BuildPlugin,mp4,MP4 File Format support for video apps.,mod_mp4,,@BROKEN)) # needs libmp4v2
|
||||
$(eval $(call BuildPlugin,mp4v,MP4 CoDec support for video apps.,mod_mp4v,,))
|
||||
$(eval $(call BuildPlugin,native-file,Native files,mod_native_file,,))
|
||||
$(eval $(call BuildPlugin,nibblebill,Billing,mod_nibblebill,,))
|
||||
$(eval $(call BuildPlugin,oreka,Media Recording with Oreka,mod_oreka,,))
|
||||
$(eval $(call BuildPlugin,openzap,Zaptel hardware interface,mod_openzap ozmod_analog ozmod_analog_em ozmod_isdn ozmod_skel ozmod_zt,,+libpcap +libopenzap))
|
||||
$(eval $(call BuildPlugin,opus,Opus CoDec,mod_opus,,))
|
||||
$(eval $(call BuildPlugin,portaudio,Local audio endpoint,mod_portaudio,,+alsa-lib))
|
||||
$(eval $(call BuildPlugin,portaudio-stream,portaudio stream format,mod_portaudio_stream,,+alsa-lib))
|
||||
$(eval $(call BuildPlugin,posix-timer,POSIX compliance soft timer,mod_posix_timer,,))
|
||||
$(eval $(call BuildPlugin,radius-cdr,Radius-CDR interface,mod_radius_cdr,,+freeradius2 @BROKEN)) # fails in freeradius-client
|
||||
$(eval $(call BuildPlugin,redis,redis,mod_redis,,))
|
||||
$(eval $(call BuildPlugin,rss,RRS feeds via TTS,mod_rss,,))
|
||||
$(eval $(call BuildPlugin,rtmp,RTMP Protocol Handler,mod_rtmp,,))
|
||||
$(eval $(call BuildPlugin,say-de,German say,mod_say_de,,))
|
||||
$(eval $(call BuildPlugin,say-en,English say,mod_say_en,,))
|
||||
$(eval $(call BuildPlugin,say-es,Spanish say,mod_say_es,,))
|
||||
$(eval $(call BuildPlugin,say-fa,Persian say,mod_say_fa,,))
|
||||
$(eval $(call BuildPlugin,say-fr,French say,mod_say_fr,,))
|
||||
$(eval $(call BuildPlugin,say-hu,Hungarian say,mod_say_hu,,))
|
||||
$(eval $(call BuildPlugin,say-it,Italian say,mod_say_it,,))
|
||||
@ -765,6 +793,7 @@ $(eval $(call BuildPlugin,say-zh,Chineese say,mod_say_zh,,))
|
||||
$(eval $(call BuildPlugin,shell-stream,Shell stream,mod_shell_stream,,))
|
||||
$(eval $(call BuildPlugin,silk,codec mod_silk,mod_silk,,))
|
||||
$(eval $(call BuildPlugin,siren,G.722.1 codec,mod_siren,,))
|
||||
$(eval $(call BuildPlugin,skel,Application Framework Demo Module,mod_skel,,))
|
||||
$(eval $(call BuildPlugin,skinny,endpoint mod_skinny,mod_skinny,,))
|
||||
$(eval $(call BuildPlugin,skypopen,Skype compatible endpoint,mod_skypopen,,@FEATURE_drawing-backend_libX11))
|
||||
$(eval $(call BuildPlugin,sms,SMS application,mod_sms,,))
|
||||
@ -791,8 +820,10 @@ $(eval $(call BuildPlugin,unimrcp,MRCP interface,mod_unimrcp,,@BROKEN))
|
||||
$(eval $(call BuildPlugin,valet-parking,application mod_valet_parking,mod_valet_parking,,))
|
||||
$(eval $(call BuildPlugin,vmd,VoiceMail beep detection,mod_vmd,,))
|
||||
$(eval $(call BuildPlugin,voicemail,VoiceMail,mod_voicemail,,))
|
||||
$(eval $(call BuildPlugin,voicemail-ivr,VoiceMail IVR,mod_voicemail_ivr,,))
|
||||
$(eval $(call BuildPlugin,xml-cdr,XML-CDR handler,mod_xml_cdr,,+libcurl))
|
||||
$(eval $(call BuildPlugin,xml-curl,XML-Curl gateway,mod_xml_curl,,+libcurl))
|
||||
$(eval $(call BuildPlugin,xml-rpc,XML-RPC interface,mod_xml_rpc,,))
|
||||
$(eval $(call BuildPlugin,xml-scgi,SCGI XML Gateway,mod_xml_scgi,,))
|
||||
$(eval $(call BuildPlugin,yaml,YAML dialplans,mod_yaml,,))
|
||||
|
||||
|
@ -0,0 +1,5 @@
|
||||
<configuration name="ivr.conf" description="IVR menus">
|
||||
<menus>
|
||||
<X-PRE-PROCESS cmd="include" data="../ivr_menus/*.xml"/>
|
||||
</menus>
|
||||
</configuration>
|
@ -144,6 +144,15 @@
|
||||
</condition>
|
||||
</extension>
|
||||
|
||||
<extension name="laugh break">
|
||||
<condition field="destination_number" expression="^9386$">
|
||||
<action application="answer"/>
|
||||
<action application="sleep" data="1500"/>
|
||||
<action application="playback" data="phrase:funny_prompts"/>
|
||||
<action application="hangup"/>
|
||||
</condition>
|
||||
</extension>
|
||||
|
||||
<!--
|
||||
You can place files in the default directory to get included.
|
||||
-->
|
||||
|
@ -116,7 +116,7 @@
|
||||
127 - BV32
|
||||
|
||||
-->
|
||||
<X-PRE-PROCESS cmd="set" data="global_codec_prefs=G7221@32000h,G7221@16000h,G722,PCMU,PCMA,GSM"/>
|
||||
<X-PRE-PROCESS cmd="set" data="global_codec_prefs=G722,PCMU,PCMA,GSM"/>
|
||||
<X-PRE-PROCESS cmd="set" data="outbound_codec_prefs=PCMU,PCMA,GSM"/>
|
||||
|
||||
<X-PRE-PROCESS cmd="set" data="bind_server_ip=auto"/>
|
||||
|
@ -0,0 +1,12 @@
|
||||
<configuration name="alsa.conf" description="Soundcard Endpoint">
|
||||
<settings>
|
||||
<!--Default dialplan and caller-id info -->
|
||||
<param name="dialplan" value="XML"/>
|
||||
<param name="cid-name" value="N800 Alsa"/>
|
||||
<param name="cid-num" value="5555551212"/>
|
||||
|
||||
<!--audio sample rate and interval -->
|
||||
<param name="sample-rate" value="8000"/>
|
||||
<param name="codec-ms" value="20"/>
|
||||
</settings>
|
||||
</configuration>
|
@ -17,6 +17,7 @@
|
||||
<template name="snom">"${caller_id_name}","${caller_id_number}","${destination_number}","${context}","${start_stamp}","${answer_stamp}","${end_stamp}","${duration}","${billsec}","${hangup_cause}","${uuid}","${bleg_uuid}", "${accountcode}","${read_codec}","${write_codec}","${sip_user_agent}","${call_clientcode}","${sip_rtp_rxstat}","${sip_rtp_txstat}","${sofia_record_file}"</template>
|
||||
<template name="linksys">"${caller_id_name}","${caller_id_number}","${destination_number}","${context}","${start_stamp}","${answer_stamp}","${end_stamp}","${duration}","${billsec}","${hangup_cause}","${uuid}","${bleg_uuid}","${accountcode}","${read_codec}","${write_codec}","${sip_user_agent}","${sip_p_rtp_stat}"</template>
|
||||
<template name="asterisk">"${accountcode}","${caller_id_number}","${destination_number}","${context}","${caller_id}","${channel_name}","${bridge_channel}","${last_app}","${last_arg}","${start_stamp}","${answer_stamp}","${end_stamp}","${duration}","${billsec}","${hangup_cause}","${amaflags}","${uuid}","${userfield}"</template>
|
||||
<template name="opencdrrate">"${uuid}","${signal_bond}","${direction}","${ani}","${destination_number}","${answer_stamp}","${end_stamp}","${billsec}","${accountcode}","${userfield}","${network_addr}","${regex('${original_caller_id_name}'|^.)}","${sip_gateway_name}"</template>
|
||||
</templates>
|
||||
</configuration>
|
||||
|
@ -0,0 +1,13 @@
|
||||
<configuration name="cdr_mongodb.conf" description="MongoDB CDR logger">
|
||||
<settings>
|
||||
<!-- Hostnames and IPv6 addrs not supported (yet) -->
|
||||
<param name="host" value="127.0.0.1"/>
|
||||
<param name="port" value="27017"/>
|
||||
|
||||
<!-- Namespace format is database.collection -->
|
||||
<param name="namespace" value="test.cdr"/>
|
||||
|
||||
<!-- If true, create CDR for B-leg of call (default: true) -->
|
||||
<param name="log-b-leg" value="false"/>
|
||||
</settings>
|
||||
</configuration>
|
@ -1,6 +1,7 @@
|
||||
<configuration name="dingaling.conf" description="XMPP Jingle Endpoint">
|
||||
<settings>
|
||||
<param name="debug" value="0"/>
|
||||
<!-- <param name="codec-prefs" value="H264,PCMU"/> --> <!-- Video isn't working, yet -->
|
||||
<param name="codec-prefs" value="PCMU"/>
|
||||
</settings>
|
||||
|
@ -0,0 +1,127 @@
|
||||
<configuration name="httapi.conf" description="HT-TAPI Hypertext Telephony API">
|
||||
<settings>
|
||||
<!-- print xml on the consol -->
|
||||
<param name="debug" value="true"/>
|
||||
<!-- time to keep audio files when discoverd they were deleted from the http server -->
|
||||
<param name="file-not-found-expires" value="300"/>
|
||||
<!-- how often to re-check the server to make sure the remote file has not changed -->
|
||||
<param name="file-cache-ttl" value="300"/>
|
||||
</settings>
|
||||
<profiles>
|
||||
<profile name="default">
|
||||
|
||||
<!-- default params for conference action tags -->
|
||||
<conference>
|
||||
<param name="default-profile" value="default"/>
|
||||
</conference>
|
||||
|
||||
<!-- default params for dial action tags -->
|
||||
<dial>
|
||||
<param name="context" value="default"/>
|
||||
<param name="dialplan" value="XML"/>
|
||||
</dial>
|
||||
|
||||
<!-- permissions -->
|
||||
<permissions>
|
||||
<!-- <permission name="all" value="true"/> -->
|
||||
<!--<permission name="none" value="true"/> -->
|
||||
<permission name="set-params" value="true"/>
|
||||
<permission name="set-vars" value="false">
|
||||
<!-- default to "deny" or "allow" -->
|
||||
<!-- type attr can be "deny" or "allow" nothing defaults to opposite of the list default so allow in this case -->
|
||||
<!--
|
||||
<variable-list default="deny">
|
||||
<variable name="caller_id_name"/>
|
||||
<variable name="hangup"/>
|
||||
</variable-list>
|
||||
-->
|
||||
</permission>
|
||||
<permission name="get-vars" value="false">
|
||||
<!-- default to "deny" or "allow" -->
|
||||
<!-- type attr can be "deny" or "allow" nothing defaults to opposite of the list default so allow in this case -->
|
||||
<!--
|
||||
<variable-list default="deny">
|
||||
<variable name="caller_id_name"/>
|
||||
<variable name="hangup"/>
|
||||
</variable-list>
|
||||
-->
|
||||
</permission>
|
||||
<permission name="extended-data" value="false"/>
|
||||
<permission name="execute-apps" value="true">
|
||||
<!-- default to "deny" or "allow" -->
|
||||
<application-list default="deny">
|
||||
<!-- type attr can be "deny" or "allow" nothing defaults to opposite of the list default so allow in this case -->
|
||||
<application name="info"/>
|
||||
<application name="hangup"/>
|
||||
</application-list>
|
||||
</permission>
|
||||
<permission name="expand-vars" value="false">
|
||||
<!-- default to "deny" or "allow" -->
|
||||
<!-- type attr can be "deny" or "allow" nothing defaults to opposite of the list default so allow in this case -->
|
||||
<!--
|
||||
<variable-list default="deny">
|
||||
<variable name="caller_id_name"/>
|
||||
<variable name="hangup"/>
|
||||
</variable-list>
|
||||
|
||||
<api-list default="deny">
|
||||
<api name="expr"/>
|
||||
<api name="lua"/>
|
||||
</api-list>
|
||||
-->
|
||||
</permission>
|
||||
<permission name="dial" value="true"/>
|
||||
<permission name="dial-set-context" value="false"/>
|
||||
<permission name="dial-set-dialplan" value="false"/>
|
||||
<permission name="dial-set-cid-name" value="false"/>
|
||||
<permission name="dial-set-cid-number" value="false"/>
|
||||
<permission name="dial-full-originate" value="false"/>
|
||||
<permission name="conference" value="true"/>
|
||||
<permission name="conference-set-profile" value="false"/>
|
||||
</permissions>
|
||||
|
||||
<params>
|
||||
<!-- default url can be overridden by app data -->
|
||||
<param name="gateway-url" value="http://www.freeswitch.org/api/index.cgi" />
|
||||
|
||||
<!-- set this to provide authentication credentials to the server -->
|
||||
<!--<param name="gateway-credentials" value="muser:mypass"/>-->
|
||||
<!--<param name="auth-scheme" value="basic"/>-->
|
||||
|
||||
<!-- optional: this will enable the CA root certificate check by libcurl to
|
||||
verify that the certificate was issued by a major Certificate Authority.
|
||||
note: default value is disabled. only enable if you want this! -->
|
||||
<!--<param name="enable-cacert-check" value="true"/>-->
|
||||
<!-- optional: verify that the server is actually the one listed in the cert -->
|
||||
<!-- <param name="enable-ssl-verifyhost" value="true"/> -->
|
||||
|
||||
<!-- optional: these options can be used to specify custom SSL certificates
|
||||
to use for HTTPS communications. Either use both options or neither.
|
||||
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-password'. -->
|
||||
<!-- <param name="ssl-cert-path" value="$${base_dir}/conf/certs/public_key.pem"/> -->
|
||||
<!-- <param name="ssl-key-path" value="$${base_dir}/conf/certs/private_key.pem"/> -->
|
||||
<!-- <param name="ssl-key-password" value="MyPrivateKeyPassword"/> -->
|
||||
<!-- optional timeout -->
|
||||
<!-- <param name="timeout" value="10"/> -->
|
||||
|
||||
<!-- 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.
|
||||
note: only makes sense if used in combination with "enable-cacert-check." -->
|
||||
<!-- <param name="ssl-cacert-file" value="$${base_dir}/conf/certs/cacert.pem"/> -->
|
||||
|
||||
<!-- optional: specify the SSL version to force HTTPS to use. Valid options are
|
||||
"SSLv3" and "TLSv1". Otherwise libcurl will auto-negotiate the version. -->
|
||||
<!-- <param name="ssl-version" value="TLSv1"/> -->
|
||||
|
||||
<!-- optional: enables cookies and stores them in the specified file. -->
|
||||
<!-- <param name="cookie-file" value="/tmp/cookie-mod_xml_curl.txt"/> -->
|
||||
|
||||
<!-- one or more of these imply you want to pick the exact variables that are transmitted -->
|
||||
<!--<param name="enable-post-var" value="Unique-ID"/>-->
|
||||
</params>
|
||||
|
||||
</profile>
|
||||
</profiles>
|
||||
</configuration>
|
@ -3,6 +3,8 @@
|
||||
<param name="max-urls" value="10000"/>
|
||||
<param name="location" value="$${base_dir}/http_cache"/>
|
||||
<param name="default-max-age" value="86400"/>
|
||||
<param name="prefetch-thread-count" value="8"/>
|
||||
<param name="prefetch-queue-size" value="100"/>
|
||||
</settings>
|
||||
</configuration>
|
||||
|
@ -10,6 +10,9 @@
|
||||
<!--<param name="logfile" value="/var/log/freeswitch.log"/>-->
|
||||
<!-- At this length in bytes rotate the log file (0 for never) -->
|
||||
<param name="rollover" value="10485760"/>
|
||||
<!-- Maximum number of log files to keep before wrapping -->
|
||||
<!-- If this parameter is enabled, the log filenames will not include a date stamp -->
|
||||
<!-- <param name="maximum-rotate" value="32"/> -->
|
||||
<!-- Uncomment to prefix all log lines by the session's uuid -->
|
||||
<!-- <param name="uuid" value="true" /> -->
|
||||
</settings>
|
||||
|
@ -9,3 +9,14 @@
|
||||
</phrases>
|
||||
</language>
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,71 +1,82 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="msgcount">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="execute" data="sleep(1000)"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<!-- or -->
|
||||
<!--<action function="speak-text" data="Sie haben $1 Nachrichten"/>-->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="saydate">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timespec">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="time_measurement"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="ip-addr">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="iterated" type="ip_address"/>
|
||||
<action function="say" data="$1" method="pronounced" type="ip_address"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell-phonetic">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="tts-timeleft">
|
||||
<!-- The parser will visit each <input> tag and execute the actions in <match> or <nomatch> depending on the pattern param -->
|
||||
<!-- If the function "break" is encountered all parsing will cease -->
|
||||
<input pattern="(\d+):(\d+)">
|
||||
<match>
|
||||
<action function="speak-text" data="Sie haben $1 Minuten, $2 Sekunden übrig $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Die Eingabe war ungültig."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sek">
|
||||
<match>
|
||||
<action function="speak-text" data="Sie haben $1 Minuten, $2 Sekunden übrig $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Die Eingabe war ungültig."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
<macro name="msgcount">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="execute" data="sleep(1000)"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<!-- or -->
|
||||
<!--<action function="speak-text" data="Sie haben $1 Nachrichten"/>-->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="saydate">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timespec">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="time_measurement"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="ip-addr">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="iterated" type="ip_address"/>
|
||||
<action function="say" data="$1" method="pronounced" type="ip_address"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell-phonetic">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="tts-timeleft">
|
||||
<!-- The parser will visit each <input> tag and execute the actions in <match> or <nomatch> depending on the pattern param -->
|
||||
<!-- If the function "break" is encountered all parsing will cease -->
|
||||
<input pattern="(\d+):(\d+)">
|
||||
<match>
|
||||
<action function="speak-text" data="Sie haben $1 Minuten, $2 Sekunden übrig $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Die Eingabe war ungültig."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sek">
|
||||
<match>
|
||||
<action function="speak-text" data="Sie haben $1 Minuten, $2 Sekunden übrig $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Die Eingabe war ungültig."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
413
net/freeswitch/files/etc.packages/say-de/lang/de/vm/sounds.xml
Normal file
413
net/freeswitch/files/etc.packages/say-de/lang/de/vm/sounds.xml
Normal file
@ -0,0 +1,413 @@
|
||||
<include>
|
||||
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-enter_id.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-enter_pass.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-fail_auth.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!--<action function="play-file" data="voicemail/vm-hello.wav"/> -->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-goodbye.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-abort.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^(1):(.*)$" break_on_match="true">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action application="log" data="INFO $1 $2"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items" gender="feminine"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+):(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items" gender="feminine"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<!-- To listen to new messages -->
|
||||
<action function="play-file" data="voicemail/vm-listen_new.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To listen to saved messages -->
|
||||
<action function="play-file" data="voicemail/vm-listen_saved.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- For advanced options -->
|
||||
<action function="play-file" data="voicemail/vm-advanced.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To exit -->
|
||||
<action function="play-file" data="voicemail/vm-to_exit.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_config_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<!-- To record a greeting -->
|
||||
<action function="play-file" data="voicemail/vm-to_record_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To choose greeting -->
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To record your name -->
|
||||
<action function="play-file" data="voicemail/vm-record_name2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To change password -->
|
||||
<action function="play-file" data="voicemail/vm-change_password.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To return to main menu -->
|
||||
<action function="play-file" data="voicemail/vm-main_menu.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_name1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-rerecord.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-mark-urgent.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-continue.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_forward_prepend">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-forward_add_intro.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-send_message_now.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_forward_message_enter_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-forward_enter_ext.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-followed_by.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_invalid_extension">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-that_was_an_invalid_ext.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_listen_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-delete_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_to_email.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-return_call.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_forward.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$6" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-delete_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-return_call.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_forward.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$6" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_choose.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_fail.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_greeting.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_message.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-greeting.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-selected.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-person.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-not_available.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message_number.wav"/>
|
||||
<action application="log" data="INFO $1 $2"/>
|
||||
<action function="say" data="$2" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<!-- Note: Update this to marked-urgent,emailed and saved once new sound files are recorded -->
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(too-small)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-too-small.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(deleted)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(saved)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(emailed)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(marked-urgent)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action application="log" data="INFO $1"/>
|
||||
<action function="say" data="$1" method="counted" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_disk_quota_exceeded">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-mailbox_full.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="valet_announce_ext">
|
||||
<input pattern="^([^\:]+):(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="valet_lot_full">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="tone_stream://%(275,10,600);%(275,100,300)"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="valet_lot_empty">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="tone_stream://%(275,10,600);%(275,100,300)"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
@ -1,8 +1,9 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Bitte geben Sie Ihren Benutzernamen ein, gefolgt von $1."/>
|
||||
<action function="speak-text" data="Bitte geben Sie Ihren Benutzernamen ein, gefolgt von $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -10,7 +11,7 @@
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Bitte geben Sie Ihr Passwort ein, gefolgt von $1."/>
|
||||
<action function="speak-text" data="Bitte geben Sie Ihr Passwort ein, gefolgt von $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -18,7 +19,7 @@
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Falsche Benutzerdaten."/>
|
||||
<action function="speak-text" data="Falsche Benutzerdaten."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -26,7 +27,7 @@
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Willkommen in Ihrem Postfach."/>
|
||||
<action function="speak-text" data="Willkommen in Ihrem Postfach."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -34,7 +35,7 @@
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Auf Wiedersehen."/>
|
||||
<action function="speak-text" data="Auf Wiedersehen."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -42,7 +43,7 @@
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Zu viele Fehlversuche."/>
|
||||
<action function="speak-text" data="Zu viele Fehlversuche."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -50,12 +51,12 @@
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^1:(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Sie haben 1 $2 Nachricht im Ordner ${voicemail_current_folder}."/>
|
||||
<action function="speak-text" data="Sie haben 1 $2 Nachricht im Ordner ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^([0,2-9]+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Sie haben $1 $2 Nachrichten im Ordner ${voicemail_current_folder}."/>
|
||||
<action function="speak-text" data="Sie haben $1 $2 Nachrichten im Ordner ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -63,27 +64,25 @@
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Um neue Nachrichten zu hören, drücken Sie $1. Um gespeicherte Nachrichten zu hören, drücken Sie $2, Für erweiterte Optionen, drücken Sie $3. Zum beenden drücken Sie $4."/>
|
||||
<action function="speak-text"
|
||||
data="Um neue Nachrichten zu hören, drücken Sie $1. Um gespeicherte Nachrichten zu hören, drücken Sie $2, Für erweiterte Optionen, drücken Sie $3. Zum beenden drücken Sie $4."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_config_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Um eine Ansage aufzunehmen, drücken Sie $1. Um eine Ansage auszuwählen, drücken Sie $2. Um ihren Namen aufzunehmen, drücken Sie $3. Um zum Hauptmenü zurückzukehren, drücken Sie $4."/>
|
||||
<action function="speak-text"
|
||||
data="Um eine Ansage aufzunehmen, drücken Sie $1. Um eine Ansage auszuwählen, drücken Sie $2. Um ihren Namen aufzunehmen, drücken Sie $3. Um zum Hauptmenü zurückzukehren, drücken Sie $4."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Sprechen Sie Ihren Namen nach dem Ton, drücken Sie eine beliebige Taste oder hören Sie auf zu sprechen um die Aufnahme zu beenden."/>
|
||||
<action function="speak-text" data="Sprechen Sie Ihren Namen nach dem Ton, drücken Sie eine beliebige Taste oder hören Sie auf zu sprechen um die Aufnahme zu beenden."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -91,8 +90,8 @@
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Um die Aufzeichnung anzuhören, drücken Sie $1. Um die Aufzeichnung zu speichern, drücken Sie $2. Für eine erneute Aufnahme drücken Sie $3."/>
|
||||
<action function="speak-text"
|
||||
data="Um die Aufzeichnung anzuhören, drücken Sie $1. Um die Aufzeichnung zu speichern, drücken Sie $2. Für eine erneute Aufnahme drücken Sie $3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -100,8 +99,8 @@
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Drücken Sie $1 um diese Nachricht als wichtig zu markieren. Um fortzufahren drücken Sie $2."/>
|
||||
<action function="speak-text"
|
||||
data="Drücken Sie $1 um diese Nachricht als wichtig zu markieren. Um fortzufahren drücken Sie $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -109,8 +108,8 @@
|
||||
<macro name="voicemail_listen_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Drücken Sie $1 um die Nachricht erneut zu hören. Um die Nachricht zu speichern, drücken Sie $2. Zum löschen der Nachricht drücken Sie $3. Für die Weiterleitung als Email, drücken Sie $4."/>
|
||||
<action function="speak-text"
|
||||
data="Drücken Sie $1 um die Nachricht erneut zu hören. Um die Nachricht zu speichern, drücken Sie $2. Zum löschen der Nachricht drücken Sie $3. Für die Weiterleitung als Email, drücken Sie $4."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -118,7 +117,7 @@
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Wählen Sie eine Ansage zwischen 1 und 3."/>
|
||||
<action function="speak-text" data="Wählen Sie eine Ansage zwischen 1 und 3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -126,7 +125,7 @@
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Ungültige Eingabe."/>
|
||||
<action function="speak-text" data="Ungültige Eingabe."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -134,7 +133,7 @@
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Zeichnen Sie Ihre Ansage nach dem Ton auf. Drücken Sie eine beliebige Taste oder hören Sie auf zu sprechen um die Aufnahme zu beenden."/>
|
||||
<action function="speak-text" data="Zeichnen Sie Ihre Ansage nach dem Ton auf. Drücken Sie eine beliebige Taste oder hören Sie auf zu sprechen um die Aufnahme zu beenden."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -142,7 +141,7 @@
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Sprechen Sie nach dem Ton. Drücken Sie eine beliebige Taste oder hören Sie auf zu sprechen um die Aufnahme zu beenden."/>
|
||||
<action function="speak-text" data="Sprechen Sie nach dem Ton. Drücken Sie eine beliebige Taste oder hören Sie auf zu sprechen um die Aufnahme zu beenden."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -150,7 +149,7 @@
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Ansage $1 ausgewählt."/>
|
||||
<action function="speak-text" data="Ansage $1 ausgewählt."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -158,7 +157,7 @@
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 ist nicht verfügbar."/>
|
||||
<action function="speak-text" data="$1 ist nicht verfügbar."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -166,7 +165,7 @@
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -174,7 +173,7 @@
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 Nachricht Nummer $2."/>
|
||||
<action function="speak-text" data="$1 Nachricht Nummer $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -182,7 +181,7 @@
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -190,7 +189,7 @@
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -198,7 +197,7 @@
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Nachricht $1"/>
|
||||
<action function="speak-text" data="Nachricht $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -206,9 +205,20 @@
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$strftime($1|%A, %B %d %Y, %I %M %p)"/>
|
||||
<action function="speak-text" data="$strftime($1|%A, %B %d %Y, %I %M %p)"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,6 +1,4 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
<include>
|
||||
|
||||
<macro name="demo_ivr_count">
|
||||
<input pattern="^(\d+)$">
|
||||
@ -69,7 +67,7 @@
|
||||
|
||||
<!-- The following macro is the same as demo_ivr_main_menu except it is the "short" version -->
|
||||
<!-- The short version has all the options but not the initial greeting -->
|
||||
<macro name="demo_ivr_main_menu_short" pause="100">
|
||||
<macro name="demo_ivr_main_menu_short" pause="100">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
@ -132,7 +130,7 @@
|
||||
|
||||
<!-- The following macro is the same as demo_ivr_sub_menu except it is the "short" version -->
|
||||
<!-- The short version has all the options but not the initial greeting -->
|
||||
<macro name="demo_ivr_sub_menu_short">
|
||||
<macro name="demo_ivr_sub_menu_short">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
@ -140,9 +138,19 @@
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/star.wav"/>
|
||||
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,71 +1,82 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="msgcount">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="execute" data="sleep(1000)"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<!-- or -->
|
||||
<!--<action function="speak-text" data="you have $1 messages"/>-->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="saydate">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timespec">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="time_measurement"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="ip-addr">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="iterated" type="ip_address"/>
|
||||
<action function="say" data="$1" method="pronounced" type="ip_address"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell-phonetic">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="tts-timeleft">
|
||||
<!-- The parser will visit each <input> tag and execute the actions in <match> or <nomatch> depending on the pattern param -->
|
||||
<!-- If the function "break" is encountered all parsing will cease -->
|
||||
<input pattern="(\d+):(\d+)">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sec">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
<macro name="msgcount">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="execute" data="sleep(1000)"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<!-- or -->
|
||||
<!--<action function="speak-text" data="you have $1 messages"/>-->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="saydate">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timespec">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="time_measurement"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="ip-addr">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="iterated" type="ip_address"/>
|
||||
<action function="say" data="$1" method="pronounced" type="ip_address"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell-phonetic">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="tts-timeleft">
|
||||
<!-- The parser will visit each <input> tag and execute the actions in <match> or <nomatch> depending on the pattern param -->
|
||||
<!-- If the function "break" is encountered all parsing will cease -->
|
||||
<input pattern="(\d+):(\d+)">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sec">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -0,0 +1,35 @@
|
||||
<include>
|
||||
<macro name="funny_prompts" pause="750">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="ivr/ivr-wakey_wakey_sunshine.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-no_no_no.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-did_you_mean_to_press_key.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-seriously_mean_to_press_key.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-oh_whatever.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-one_more_mistake.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-congratulations_you_pressed_star.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-engineers_busy_assisting_other_sales.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-message_self_destruct.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-all_your_call_are_belong_to_us.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-love_those_touch_tones.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-yes_we_have_no_bananas.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-dude_you_suck.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-on_hold_indefinitely.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-youre_doing_it_wrong.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-were_asterisk_free.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-douche_telecom.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-asterisk_like_syphilis.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-freeguipy.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-terribly_wrong_awkward.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-it_was_that_bug.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-concentrate.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-founder_of_freesource.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-cold_foolish.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-trollover_minutes.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-yuno_silent_drill.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-beacuase.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
</include>
|
@ -117,3 +117,14 @@
|
||||
</macro>
|
||||
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -93,3 +93,14 @@
|
||||
</macro>
|
||||
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -3,11 +3,23 @@
|
||||
<phrases>
|
||||
<macros>
|
||||
<X-PRE-PROCESS cmd="include" data="demo/*.xml"/> <!-- Note: this now grabs whole subdir, previously grabbed only demo.xml -->
|
||||
<!--voicemail_en_tts is purely implemented with tts, we have the files based one that is the default. -->
|
||||
<X-PRE-PROCESS cmd="include" data="vm/sounds.xml"/> <!-- vm/tts.xml if you want to use tts and have cepstral -->
|
||||
<X-PRE-PROCESS cmd="include" data="dir/sounds.xml"/> <!-- dir/tts.xml if you want to use tts and have cepstral -->
|
||||
<X-PRE-PROCESS cmd="include" data="ivr/*.xml"/> <!-- IVR and custom phrases go here -->
|
||||
<!-- voicemail_en_tts is purely implemented with tts, we have the files based one that is the default. -->
|
||||
<X-PRE-PROCESS cmd="include" data="vm/sounds.xml"/> <!-- vm/tts.xml if you want to use tts and have cepstral -->
|
||||
<X-PRE-PROCESS cmd="include" data="dir/sounds.xml"/> <!-- dir/tts.xml if you want to use tts and have cepstral -->
|
||||
<X-PRE-PROCESS cmd="include" data="ivr/*.xml"/> <!-- IVR and custom phrases go here -->
|
||||
</macros>
|
||||
<X-PRE-PROCESS cmd="include" data="vm/voicemail_ivr.xml"/>
|
||||
</phrases>
|
||||
</language>
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,65 +1,145 @@
|
||||
<include> <!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="queue_position">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="ivr/ivr-you_are_number.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="ivr/ivr-in_line.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<include>
|
||||
<macro name="queue_position">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="ivr/ivr-you_are_number.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="ivr/ivr-in_line.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="enter_dest_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-enter_destination_telephone_number.wav"/>
|
||||
<action function="sleep" data="1000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="has_called_conf">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="$1"/>
|
||||
<action function="sleep" data="100"/>
|
||||
<action function="play-file" data="conference/conf-has_joined.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="enter_src_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-enter_source_telephone_number.wav"/>
|
||||
<action function="sleep" data="1000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="has_left_conf">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="$1"/>
|
||||
<action function="sleep" data="100"/>
|
||||
<action function="play-file" data="conference/conf-has_left.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="call_forward_set">
|
||||
<input pattern="^(\d+):(\d+)$">
|
||||
<match>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-extension_number.wav"/>
|
||||
<action function="sleep" data="400"/>
|
||||
<action function="say" data="$1" method="iterated" type="number"/>
|
||||
<action function="sleep" data="400"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-extension_number.wav"/>
|
||||
<action function="sleep" data="400"/>
|
||||
<action function="say" data="$2" method="iterated" type="number"/>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-call_forwarding_has_been_set.wav"/>
|
||||
<action function="sleep" data="1500"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="callers_in_conf">
|
||||
<input pattern="^1$" break_on_match="true">
|
||||
<match>
|
||||
<action function="sleep" data="500"/>
|
||||
<!--<action function="play-file" data="ivr/ivr-there_is.wav"/>-->
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
<action function="sleep" data="100"/>
|
||||
<action function="play-file" data="conference/conf-listener_in_conference.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="sleep" data="500"/>
|
||||
<action function="play-file" data="ivr/ivr-there_are.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="sleep" data="100"/>
|
||||
<action function="play-file" data="conference/conf-members_in_conference.wav"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="sleep" data="500"/>
|
||||
<action function="play-file" data="ivr/ivr-there_are.wav"/>
|
||||
<action function="play-file" data="digits/0.wav"/>
|
||||
<action function="sleep" data="100"/>
|
||||
<action function="play-file" data="conference/conf-members_in_conference.wav"/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="call_forward_cancel">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-extension_number.wav"/>
|
||||
<action function="sleep" data="400"/>
|
||||
<action function="say" data="$1" method="iterated" type="number"/>
|
||||
<action function="play-file" data="ivr/ivr-call_forwarding_has_been_cancelled.wav"/>
|
||||
<action function="sleep" data="1500"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="enter_dest_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-enter_destination_telephone_number.wav"/>
|
||||
<action function="sleep" data="1000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="enter_src_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-enter_source_telephone_number.wav"/>
|
||||
<action function="sleep" data="1000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="call_forward_set">
|
||||
<input pattern="^(\d+):(\d+)$">
|
||||
<match>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-extension_number.wav"/>
|
||||
<action function="sleep" data="400"/>
|
||||
<action function="say" data="$1" method="iterated" type="number"/>
|
||||
<action function="sleep" data="400"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-extension_number.wav"/>
|
||||
<action function="sleep" data="400"/>
|
||||
<action function="say" data="$2" method="iterated" type="number"/>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-call_forwarding_has_been_set.wav"/>
|
||||
<action function="sleep" data="1500"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="call_forward_cancel">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="sleep" data="1000"/>
|
||||
<action function="play-file" data="ivr/ivr-extension_number.wav"/>
|
||||
<action function="sleep" data="400"/>
|
||||
<action function="say" data="$1" method="iterated" type="number"/>
|
||||
<action function="play-file" data="ivr/ivr-call_forwarding_has_been_cancelled.wav"/>
|
||||
<action function="sleep" data="1500"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="screen_confirm">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="sleep" data="500"/>
|
||||
<action function="play-file" data="ivr/ivr-call_from.wav"/>
|
||||
<action function="sleep" data="250"/>
|
||||
<!-- Note, be sure to pass in the full path to the file or else!! -->
|
||||
<action function="play-file" data="$1"/>
|
||||
<action function="sleep" data="500"/>
|
||||
<action function="play-file" data="ivr/ivr-accept_reject_voicemail.wav"/>
|
||||
<action function="sleep" data="1500"/>
|
||||
<action function="play-file" data="ivr/ivr-call_from.wav"/>
|
||||
<action function="sleep" data="250"/>
|
||||
<action function="play-file" data="$1"/>
|
||||
<action function="sleep" data="500"/>
|
||||
<action function="play-file" data="ivr/ivr-accept_reject_voicemail.wav"/>
|
||||
<action function="sleep" data="1500"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,9 +1,10 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-enter_id.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-enter_id.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -11,8 +12,8 @@
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-enter_pass.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-enter_pass.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -20,7 +21,23 @@
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-fail_auth.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-fail_auth.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_change_pass_success">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-password_has_been_changed.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_change_pass_fail">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-password_not_valid.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -28,7 +45,7 @@
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!--<action function="play-file" data="voicemail/vm-hello.wav"/> -->
|
||||
<!--<action function="play-file" data="voicemail/vm-hello.wav"/> -->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -36,7 +53,7 @@
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-goodbye.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-goodbye.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -44,7 +61,7 @@
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-abort.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-abort.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -52,18 +69,18 @@
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^(1):(.*)$" break_on_match="true">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+):(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -71,28 +88,28 @@
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<!-- To listen to new messages -->
|
||||
<action function="play-file" data="voicemail/vm-listen_new.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To listen to new messages -->
|
||||
<action function="play-file" data="voicemail/vm-listen_new.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To listen to saved messages -->
|
||||
<action function="play-file" data="voicemail/vm-listen_saved.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To listen to saved messages -->
|
||||
<action function="play-file" data="voicemail/vm-listen_saved.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- For advanced options -->
|
||||
<action function="play-file" data="voicemail/vm-advanced.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- For advanced options -->
|
||||
<action function="play-file" data="voicemail/vm-advanced.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To exit -->
|
||||
<action function="play-file" data="voicemail/vm-to_exit.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_phonetic"/>
|
||||
<!-- To exit -->
|
||||
<action function="play-file" data="voicemail/vm-to_exit.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -100,34 +117,34 @@
|
||||
<macro name="voicemail_config_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<!-- To record a greeting -->
|
||||
<action function="play-file" data="voicemail/vm-to_record_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To record a greeting -->
|
||||
<action function="play-file" data="voicemail/vm-to_record_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To choose greeting -->
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To choose greeting -->
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To record your name -->
|
||||
<action function="play-file" data="voicemail/vm-record_name2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To record your name -->
|
||||
<action function="play-file" data="voicemail/vm-record_name2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To change password -->
|
||||
<action function="play-file" data="voicemail/vm-change_password.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To change password -->
|
||||
<action function="play-file" data="voicemail/vm-change_password.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To return to main menu -->
|
||||
<action function="play-file" data="voicemail/vm-main_menu.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<!-- To return to main menu -->
|
||||
<action function="play-file" data="voicemail/vm-main_menu.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -135,7 +152,7 @@
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_name1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-record_name1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -143,15 +160,15 @@
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-rerecord.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-rerecord.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -159,12 +176,12 @@
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-mark-urgent.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-continue.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-mark-urgent.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-continue.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -172,12 +189,12 @@
|
||||
<macro name="voicemail_forward_prepend">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-forward_add_intro.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-send_message_now.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_add_intro.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-send_message_now.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -185,9 +202,9 @@
|
||||
<macro name="voicemail_forward_message_enter_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-forward_enter_ext.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-followed_by.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_enter_ext.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-followed_by.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -195,7 +212,7 @@
|
||||
<macro name="voicemail_invalid_extension">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-that_was_an_invalid_ext.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-that_was_an_invalid_ext.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -203,43 +220,43 @@
|
||||
<macro name="voicemail_listen_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-delete_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_to_email.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-return_call.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_forward.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$6" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-delete_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_to_email.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-return_call.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_forward.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$6" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-delete_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-return_call.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_forward.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$6" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-delete_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-return_call.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_forward.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$6" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -247,7 +264,7 @@
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_choose.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_choose.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -255,7 +272,7 @@
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_fail.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_fail.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -263,7 +280,7 @@
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-record_greeting.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -271,7 +288,7 @@
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-record_message.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -279,9 +296,9 @@
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-greeting.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-selected.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-greeting.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-selected.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -289,9 +306,9 @@
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-person.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-not_available.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-person.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-not_available.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -299,7 +316,7 @@
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -307,17 +324,25 @@
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message_number.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message_number.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^000|^$|^[Aa]non|^[Pp]rivate" break_on_match="true">
|
||||
<match>
|
||||
<!-- add 'anonymous caller' sound here -->
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="ivr/ivr-this_is_a_call_from.wav"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(500)"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -325,39 +350,39 @@
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<!-- Note: Update this to marked-urgent,emailed and saved once new sound files are recorded -->
|
||||
<macro name="voicemail_ack">
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(too-small)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-too-small.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-too-small.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(deleted)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(saved)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(emailed)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(marked-urgent)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -365,16 +390,16 @@
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
<action function="say" data="$1" method="pronounced" type="short_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_disk_quota_exceeded">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-mailbox_full.wav"/>
|
||||
</match>
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-mailbox_full.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
@ -401,4 +426,16 @@
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,8 +1,9 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="please enter your i d, followed by $1."/>
|
||||
<action function="speak-text" data="please enter your i d, followed by $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -10,7 +11,7 @@
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="please enter your password, followed by $1."/>
|
||||
<action function="speak-text" data="please enter your password, followed by $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -18,7 +19,7 @@
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="login incorrect."/>
|
||||
<action function="speak-text" data="login incorrect."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -26,7 +27,7 @@
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="welcome to your voicemail."/>
|
||||
<action function="speak-text" data="welcome to your voicemail."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -34,7 +35,7 @@
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="goodbye."/>
|
||||
<action function="speak-text" data="goodbye."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -42,7 +43,7 @@
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="too many failed attempts."/>
|
||||
<action function="speak-text" data="too many failed attempts."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -50,12 +51,12 @@
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^1:(.*)$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="you have 1 $1 message in folder ${voicemail_current_folder}."/>
|
||||
<action function="speak-text" data="you have 1 $1 message in folder ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="you have $1 $2 messages in folder ${voicemail_current_folder}."/>
|
||||
<action function="speak-text" data="you have $1 $2 messages in folder ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -63,27 +64,25 @@
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="To listen to new messages, press $1, To listen to saved messages, press $2, For advanced options, press $3, to exit, press $4."/>
|
||||
<action function="speak-text"
|
||||
data="To listen to new messages, press $1, To listen to saved messages, press $2, For advanced options, press $3, to exit, press $4."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_config_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="To record a greeting, press $1, To choose a greeting, press $2, To record your name, press $3, to change your password, press $5, to return to the main menu, press $5."/>
|
||||
<action function="speak-text"
|
||||
data="To record a greeting, press $1, To choose a greeting, press $2, To record your name, press $3, to change your password, press $5, to return to the main menu, press $5."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="at the tone, please record your name, press any key or stop talking to end the recording."/>
|
||||
<action function="speak-text" data="at the tone, please record your name, press any key or stop talking to end the recording."/>
|
||||
|
||||
</match>
|
||||
</input>
|
||||
@ -92,8 +91,8 @@
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="To listen to the recording, press $1, To save the recording, press $2, To re record, press $3."/>
|
||||
<action function="speak-text"
|
||||
data="To listen to the recording, press $1, To save the recording, press $2, To re record, press $3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -101,8 +100,8 @@
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="To mark this message urgent, press $1, To continue, press $2."/>
|
||||
<action function="speak-text"
|
||||
data="To mark this message urgent, press $1, To continue, press $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -110,7 +109,7 @@
|
||||
<macro name="voicemail_invalid_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 is not a valid extension."/>
|
||||
<action function="speak-text" data="$1 is not a valid extension."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -118,7 +117,7 @@
|
||||
<macro name="voicemail_forward_message_enter_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="enter the extension you wish to forward to, then press $1"/>
|
||||
<action function="speak-text" data="enter the extension you wish to forward to, then press $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -126,7 +125,7 @@
|
||||
<macro name="voicemail_forward_prepend">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="To record an announcement, press $1."/>
|
||||
<action function="speak-text" data="To record an announcement, press $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -134,8 +133,8 @@
|
||||
<macro name="voicemail_listen_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="To listen to the recording again, press $1, To save the recording, press $2, To delete the recording, press $3, to forward the recording to your email, press $4, to call the caller now, press $5, To forward this message to another extension, press $6."/>
|
||||
<action function="speak-text"
|
||||
data="To listen to the recording again, press $1, To save the recording, press $2, To delete the recording, press $3, to forward the recording to your email, press $4, to call the caller now, press $5, To forward this message to another extension, press $6."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -143,7 +142,7 @@
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="choose a greeting between 1 and 3."/>
|
||||
<action function="speak-text" data="choose a greeting between 1 and 3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -151,7 +150,7 @@
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="invalid value."/>
|
||||
<action function="speak-text" data="invalid value."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -159,7 +158,7 @@
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="record your greeting at the tone, press any key or stop talking to end the recording."/>
|
||||
<action function="speak-text" data="record your greeting at the tone, press any key or stop talking to end the recording."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -167,7 +166,7 @@
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="record your message at the tone, press any key or stop talking to end the recording."/>
|
||||
<action function="speak-text" data="record your message at the tone, press any key or stop talking to end the recording."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -175,7 +174,7 @@
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="greeting $1 selected."/>
|
||||
<action function="speak-text" data="greeting $1 selected."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -183,7 +182,7 @@
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 is not available."/>
|
||||
<action function="speak-text" data="$1 is not available."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -191,7 +190,7 @@
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -199,7 +198,7 @@
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 message number $2."/>
|
||||
<action function="speak-text" data="$1 message number $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -207,7 +206,7 @@
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -215,7 +214,7 @@
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -223,7 +222,7 @@
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="message $1"/>
|
||||
<action function="speak-text" data="message $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -231,9 +230,20 @@
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="${strftime($1|%A, %B %d %Y, %I:%M %p)}"/>
|
||||
<action function="speak-text" data="${strftime($1|%A, %B %d %Y, %I:%M %p)}"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,18 +1,29 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="msgcount">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="tuas.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="messages.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timeleft">
|
||||
<input pattern="(\d+):(\d+)">
|
||||
<match>
|
||||
<action function="speak-text" data="il reste $1 minutes et $2 secondes"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
<macro name="msgcount">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="tuas.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="messages.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timeleft">
|
||||
<input pattern="(\d+):(\d+)">
|
||||
<match>
|
||||
<action function="speak-text" data="il reste $1 minutes et $2 secondes"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,121 +1,130 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="directory_intro">
|
||||
<input pattern="^(last_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter-person.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter-person.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<include>
|
||||
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-specify_mininum_first.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-letters_of_person_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_intro">
|
||||
<input pattern="^(last_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter-person.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter-person.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_match_entry.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-result_match.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-specify_mininum_first.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-letters_of_person_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_many_result.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_match_entry.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-result_match.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</macro>
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_many_result.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_more_result.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_more_result.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</macro>
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-result_number.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-result_number.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-at_extension.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-at_extension.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_menu">
|
||||
<input pattern="^([0-9#*]),([0-9#*]),([0-9#*]),([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_select_entry.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_next.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_prev.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-to_make_new_search.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_menu">
|
||||
<input pattern="^([0-9#*]),([0-9#*]),([0-9#*]),([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_select_entry.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_next.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_prev.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-to_make_new_search.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<macro name="directory_result_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,101 +1,110 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
|
||||
<macro name="directory_intro">
|
||||
<input pattern="^(last_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Veuillez entrer les premières lettres du nom de famille"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Veuillez entrer les premières lettres du prénom"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="pour chercher par prénom, tapez $2"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="pour chercher par nom de famille, tapez $2"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_intro">
|
||||
<input pattern="^(last_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Veuillez entrer les premières lettres du nom de famille"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Veuillez entrer les premières lettres du prénom"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="pour chercher par prénom, tapez $2"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="pour chercher par nom de famille, tapez $2"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(1)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Vous devez entrer au minimum une lettre du nom de la personne, essayez encore"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Vous devez entrer au minimum $1 lettres du nom de la personne, essayer encore"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(1)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Vous devez entrer au minimum une lettre du nom de la personne, essayez encore"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Vous devez entrer au minimum $1 lettres du nom de la personne, essayer encore"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="Votre recherche n'a retournée aucun résultat, essayez encore"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 résultats correspondent à votre recherche"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="Votre recherche n'a retournée aucun résultat, essayez encore"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 résultats correspondent à votre recherche"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Votre recherche retourne trop de résultats, essayer encore"/>
|
||||
</match>
|
||||
</input>
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Votre recherche retourne trop de résultats, essayer encore"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</macro>
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Fin des résultats."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Fin des résultats."/>
|
||||
</match>
|
||||
</input>
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Résultat numéro $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</macro>
|
||||
<macro name="directory_result_menu">
|
||||
<input pattern="^([0-9#*]),([0-9#*]),([0-9#*]),([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="Pour sélectionner ce nom, tapez $1, pour le nom suivant tapez $2, pour le nom précédent, tapez $3, pour faire une nouvelle recherche, tapez $4"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Résultat numéro $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="au poste $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_menu">
|
||||
<input pattern="^([0-9#*]),([0-9#*]),([0-9#*]),([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="Pour sélectionner ce nom, tapez $1, pour le nom suivant tapez $2, pour le nom précédent, tapez $3, pour faire une nouvelle recherche, tapez $4"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="au poste $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,9 +1,9 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Entrez votre Identification, suivi par $1."/>
|
||||
<action function="speak-text" data="Entrez votre Identification, suivi par $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -11,7 +11,7 @@
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Entrez votre code, suivi par $1."/>
|
||||
<action function="speak-text" data="Entrez votre code, suivi par $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -19,7 +19,7 @@
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Identification incorrecte."/>
|
||||
<action function="speak-text" data="Identification incorrecte."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -27,7 +27,7 @@
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Bienvenue sur votre répondeur."/>
|
||||
<action function="speak-text" data="Bienvenue sur votre répondeur."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -35,7 +35,7 @@
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Au revoir."/>
|
||||
<action function="speak-text" data="Au revoir."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -43,7 +43,7 @@
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Trop de tentatives ont échouées."/>
|
||||
<action function="speak-text" data="Trop de tentatives ont échouées."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -51,17 +51,17 @@
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^([^:]+):urgent-new">
|
||||
<match>
|
||||
<action function="speak-text" data="Vous avez $1 nouveaux messages urgents dans le répertoire ${voicemail_current_folder}."/>
|
||||
<action function="speak-text" data="Vous avez $1 nouveaux messages urgents dans le répertoire ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^([^:]+):new">
|
||||
<match>
|
||||
<action function="speak-text" data="Vous avez $1 nouveaux messages dans le répertoire ${voicemail_current_folder}."/>
|
||||
<action function="speak-text" data="Vous avez $1 nouveaux messages dans le répertoire ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^([^:]+):saved">
|
||||
<match>
|
||||
<action function="speak-text" data="Vous avez $1 messages sauvegardés dans le répertoire ${voicemail_current_folder}."/>
|
||||
<action function="speak-text" data="Vous avez $1 messages sauvegardés dans le répertoire ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -69,27 +69,25 @@
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Pour écouter les nouveaux messages, tapez $1, Pour écouter les messages enregistrés, tapez $2, Pour les options avancées, tapez $3, pour sortir, tapez $4."/>
|
||||
<action function="speak-text"
|
||||
data="Pour écouter les nouveaux messages, tapez $1, Pour écouter les messages enregistrés, tapez $2, Pour les options avancées, tapez $3, pour sortir, tapez $4."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_config_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="pour enregistrer un message d'accueil, tapez $1, Pour choisir votre message d'accueil, tapez $2, Pour enregistrer votre nom, tapez $3, Pour changer votre mot de passe, tapez $4, Pour retourner au menu principal, tapez $5."/>
|
||||
<action function="speak-text"
|
||||
data="pour enregistrer un message d'accueil, tapez $1, Pour choisir votre message d'accueil, tapez $2, Pour enregistrer votre nom, tapez $3, Pour changer votre mot de passe, tapez $4, Pour retourner au menu principal, tapez $5."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="enregistrez votre nom après le bip, puis tapez une touche, ou arrêtez de parler pour arrêter l'enregistrement."/>
|
||||
<action function="speak-text" data="enregistrez votre nom après le bip, puis tapez une touche, ou arrêtez de parler pour arrêter l'enregistrement."/>
|
||||
|
||||
</match>
|
||||
</input>
|
||||
@ -98,8 +96,8 @@
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Pour écouter l'enregistrement, tapez $1, pour sauvegarder l'enregistrement, tapez $2, Pour réenregistrer, tapez $3."/>
|
||||
<action function="speak-text"
|
||||
data="Pour écouter l'enregistrement, tapez $1, pour sauvegarder l'enregistrement, tapez $2, Pour réenregistrer, tapez $3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -107,8 +105,8 @@
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Pour indiquer que ce message est urgent, tapez $1, Pour continuer, tapez $2."/>
|
||||
<action function="speak-text"
|
||||
data="Pour indiquer que ce message est urgent, tapez $1, Pour continuer, tapez $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -116,8 +114,8 @@
|
||||
<macro name="voicemail_listen_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])(:(.*))?$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Pour réécouter l'enregistrement à nouveau, tapez $1, Pour sauvegarder l'enregistrement, tapez $2, Pour supprimer l'enregistrement, tapez $3, pour transférer l'enregistrement à votre email $8, tapez $4, Pour appeler l'auteur du message, tapez $5, Pour transférer ce message à un autre numéro, tapez $6."/>
|
||||
<action function="speak-text"
|
||||
data="Pour réécouter l'enregistrement à nouveau, tapez $1, Pour sauvegarder l'enregistrement, tapez $2, Pour supprimer l'enregistrement, tapez $3, pour transférer l'enregistrement à votre email $8, tapez $4, Pour appeler l'auteur du message, tapez $5, Pour transférer ce message à un autre numéro, tapez $6."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -125,7 +123,7 @@
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="choisissez un message d'accueil entre 1 et 3."/>
|
||||
<action function="speak-text" data="choisissez un message d'accueil entre 1 et 3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -133,7 +131,7 @@
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="valeur incorrecte."/>
|
||||
<action function="speak-text" data="valeur incorrecte."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -141,7 +139,7 @@
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="enregistrez votre message d'accueil après le bip, puis tapez une touche ou arrêtez de parler pour arrêter l'enregistrement."/>
|
||||
<action function="speak-text" data="enregistrez votre message d'accueil après le bip, puis tapez une touche ou arrêtez de parler pour arrêter l'enregistrement."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -149,7 +147,7 @@
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="enregistrez votre message après le bip, puis tapez une touche ou arrêtez de parler pour arrêter l'enregistrement."/>
|
||||
<action function="speak-text" data="enregistrez votre message après le bip, puis tapez une touche ou arrêtez de parler pour arrêter l'enregistrement."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -157,7 +155,7 @@
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="message d'accueil numéro $1 sélectionné."/>
|
||||
<action function="speak-text" data="message d'accueil numéro $1 sélectionné."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -165,7 +163,7 @@
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 n'est pas disponible."/>
|
||||
<action function="speak-text" data="$1 n'est pas disponible."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -173,7 +171,7 @@
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -181,12 +179,12 @@
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^new:(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="nouveau message numéro $1."/>
|
||||
<action function="speak-text" data="nouveau message numéro $1."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^saved:(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="message sauvegardé numéro $1."/>
|
||||
<action function="speak-text" data="message sauvegardé numéro $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -194,7 +192,7 @@
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -202,7 +200,7 @@
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -210,27 +208,27 @@
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(too-small)$">
|
||||
<match>
|
||||
<action function="speak-text" data="message trop court"/>
|
||||
<action function="speak-text" data="message trop court"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(deleted)$">
|
||||
<match>
|
||||
<action function="speak-text" data="message supprimé"/>
|
||||
<action function="speak-text" data="message supprimé"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(saved)$">
|
||||
<match>
|
||||
<action function="speak-text" data="message sauvegardé"/>
|
||||
<action function="speak-text" data="message sauvegardé"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(emailed)$">
|
||||
<match>
|
||||
<action function="speak-text" data="message envoyé"/>
|
||||
<action function="speak-text" data="message envoyé"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(marked-urgent)$">
|
||||
<match>
|
||||
<action function="speak-text" data="message marqué urgent"/>
|
||||
<action function="speak-text" data="message marqué urgent"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -238,9 +236,20 @@
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="${strftime($1|%e/%m/%Y, %H heures %M)}"/>
|
||||
<action function="speak-text" data="${strftime($1|%e/%m/%Y, %H heures %M)}"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,6 +1,4 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
<include>
|
||||
|
||||
<macro name="demo_ivr_count">
|
||||
<input pattern="^(\d+)$">
|
||||
@ -69,7 +67,7 @@
|
||||
|
||||
<!-- The following macro is the same as demo_ivr_main_menu except it is the "short" version -->
|
||||
<!-- The short version has all the options but not the initial greeting -->
|
||||
<macro name="demo_ivr_main_menu_short" pause="100">
|
||||
<macro name="demo_ivr_main_menu_short" pause="100">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
@ -132,7 +130,7 @@
|
||||
|
||||
<!-- The following macro is the same as demo_ivr_sub_menu except it is the "short" version -->
|
||||
<!-- The short version has all the options but not the initial greeting -->
|
||||
<macro name="demo_ivr_sub_menu_short">
|
||||
<macro name="demo_ivr_sub_menu_short">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
@ -145,4 +143,15 @@
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,71 +1,82 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="msgcount">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="execute" data="sleep(1000)"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<!-- or -->
|
||||
<!--<action function="speak-text" data="you have $1 messages"/>-->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="saydate">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timespec">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="time_measurement"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="ip-addr">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="iterated" type="ip_address"/>
|
||||
<action function="say" data="$1" method="pronounced" type="ip_address"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell-phonetic">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="tts-timeleft">
|
||||
<!-- The parser will visit each <input> tag and execute the actions in <match> or <nomatch> depending on the pattern param -->
|
||||
<!-- If the function "break" is encountered all parsing will cease -->
|
||||
<input pattern="(\d+):(\d+)">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sec">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
<macro name="msgcount">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="execute" data="sleep(1000)"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<!-- or -->
|
||||
<!--<action function="speak-text" data="you have $1 messages"/>-->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="saydate">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timespec">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="time_measurement"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="ip-addr">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="iterated" type="ip_address"/>
|
||||
<action function="say" data="$1" method="pronounced" type="ip_address"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell-phonetic">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="tts-timeleft">
|
||||
<!-- The parser will visit each <input> tag and execute the actions in <match> or <nomatch> depending on the pattern param -->
|
||||
<!-- If the function "break" is encountered all parsing will cease -->
|
||||
<input pattern="(\d+):(\d+)">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sec">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,121 +1,130 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="directory_intro">
|
||||
<input pattern="^(last_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter_person.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter_person.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<include>
|
||||
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-specify_mininum.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-letters_of_person_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_intro">
|
||||
<input pattern="^(last_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter_person.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter_person.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_matching_results.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-result_match.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-specify_mininum.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-letters_of_person_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-too_many_result.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_matching_results.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-result_match.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</macro>
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-too_many_result.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_more_results.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_more_results.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</macro>
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-result_number.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-result_number.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-at_extension.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-at_extension.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_menu">
|
||||
<input pattern="^([0-9#*]),([0-9#*]),([0-9#*]),([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_select_entry.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_next.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_prev.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-start_new_search.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_menu">
|
||||
<input pattern="^([0-9#*]),([0-9#*]),([0-9#*]),([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_select_entry.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_next.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_prev.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-start_new_search.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<macro name="directory_result_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -9,3 +9,14 @@
|
||||
</phrases>
|
||||
</language>
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,9 +1,10 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-enter_id.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-enter_id.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -11,8 +12,8 @@
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-enter_pass.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-enter_pass.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -20,7 +21,7 @@
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-fail_auth.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-fail_auth.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -28,7 +29,7 @@
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!--<action function="play-file" data="voicemail/vm-hello.wav"/> -->
|
||||
<!--<action function="play-file" data="voicemail/vm-hello.wav"/> -->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -36,7 +37,7 @@
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-goodbye.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-goodbye.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -44,7 +45,7 @@
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-abort.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-abort.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -52,18 +53,18 @@
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^(1):(.*)$" break_on_match="true">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+):(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -71,28 +72,28 @@
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<!-- To listen to new messages -->
|
||||
<action function="play-file" data="voicemail/vm-listen_new.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To listen to new messages -->
|
||||
<action function="play-file" data="voicemail/vm-listen_new.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To listen to saved messages -->
|
||||
<action function="play-file" data="voicemail/vm-listen_saved.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To listen to saved messages -->
|
||||
<action function="play-file" data="voicemail/vm-listen_saved.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- For advanced options -->
|
||||
<action function="play-file" data="voicemail/vm-advanced.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- For advanced options -->
|
||||
<action function="play-file" data="voicemail/vm-advanced.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To exit -->
|
||||
<action function="play-file" data="voicemail/vm-to_exit.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_phonetic"/>
|
||||
<!-- To exit -->
|
||||
<action function="play-file" data="voicemail/vm-to_exit.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -100,34 +101,34 @@
|
||||
<macro name="voicemail_config_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<!-- To record a greeting -->
|
||||
<action function="play-file" data="voicemail/vm-to_record_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To record a greeting -->
|
||||
<action function="play-file" data="voicemail/vm-to_record_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To choose greeting -->
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To choose greeting -->
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To record your name -->
|
||||
<action function="play-file" data="voicemail/vm-record_name2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To record your name -->
|
||||
<action function="play-file" data="voicemail/vm-record_name2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To change password -->
|
||||
<action function="play-file" data="voicemail/vm-change_password.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
<!-- To change password -->
|
||||
<action function="play-file" data="voicemail/vm-change_password.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="execute" data="sleep(100)"/>
|
||||
|
||||
<!-- To return to main menu -->
|
||||
<action function="play-file" data="voicemail/vm-main_menu.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<!-- To return to main menu -->
|
||||
<action function="play-file" data="voicemail/vm-main_menu.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -135,7 +136,7 @@
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_name1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-record_name1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -143,15 +144,15 @@
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-rerecord.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-rerecord.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -159,12 +160,12 @@
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-mark-urgent.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-continue.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-mark-urgent.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-continue.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -172,12 +173,12 @@
|
||||
<macro name="voicemail_forward_prepend">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-forward_add_intro.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-send_message_now.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_add_intro.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-send_message_now.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -185,9 +186,9 @@
|
||||
<macro name="voicemail_forward_message_enter_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-forward_enter_ext.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-followed_by.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_enter_ext.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-followed_by.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -195,7 +196,7 @@
|
||||
<macro name="voicemail_invalid_extension">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-that_was_an_invalid_ext.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-that_was_an_invalid_ext.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -203,43 +204,43 @@
|
||||
<macro name="voicemail_listen_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-delete_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_to_email.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-return_call.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_forward.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$6" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-delete_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_to_email.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-return_call.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_forward.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$6" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-delete_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-return_call.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_forward.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$6" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-delete_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-return_call.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_forward.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$6" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -247,7 +248,7 @@
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_choose.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_choose.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -255,7 +256,7 @@
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_fail.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_fail.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -263,7 +264,7 @@
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-record_greeting.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -271,7 +272,7 @@
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-record_message.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -279,9 +280,9 @@
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-greeting.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-selected.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-greeting.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-selected.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -289,9 +290,9 @@
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-person.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-not_available.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-person.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-not_available.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -299,7 +300,7 @@
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -307,9 +308,9 @@
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message_number.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message_number.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -317,7 +318,7 @@
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -325,39 +326,39 @@
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<!-- Note: Update this to marked-urgent,emailed and saved once new sound files are recorded -->
|
||||
<macro name="voicemail_ack">
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(too-small)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-too-small.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-too-small.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(deleted)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(saved)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(emailed)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(marked-urgent)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -365,16 +366,16 @@
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_disk_quota_exceeded">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-mailbox_full.wav"/>
|
||||
</match>
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-mailbox_full.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
@ -401,4 +402,16 @@
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,6 +1,4 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
<include>
|
||||
|
||||
<macro name="demo_ivr_count">
|
||||
<input pattern="^(\d+)$">
|
||||
@ -66,7 +64,7 @@
|
||||
|
||||
<!-- The following macro is the same as demo_ivr_main_menu except it is the "short" version -->
|
||||
<!-- The short version has all the options but not the initial greeting -->
|
||||
<macro name="demo_ivr_main_menu_short" pause="250">
|
||||
<macro name="demo_ivr_main_menu_short" pause="250">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
@ -129,7 +127,7 @@
|
||||
|
||||
<!-- The following macro is the same as demo_ivr_sub_menu except it is the "short" version -->
|
||||
<!-- The short version has all the options but not the initial greeting -->
|
||||
<macro name="demo_ivr_sub_menu_short">
|
||||
<macro name="demo_ivr_sub_menu_short">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
@ -142,4 +140,15 @@
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,100 +1,109 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
<macro name="saymoney">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="currency"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="msgcount">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="execute" data="sleep(1000)"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<!-- or -->
|
||||
<!--<action function="speak-text" data="you have $1 messages"/>-->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="saydate">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="saydatetime">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timespec">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="time_measurement"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timespec2">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="CURRENT_DATE_TIME"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="ip-addr-interated">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="iterated" type="ip_address"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="ip-addr">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="ip_address"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell-phonetic">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="tts-timeleft">
|
||||
<!-- The parser will visit each <input> tag and execute the actions in <match> or <nomatch> depending on the pattern param -->
|
||||
<!-- If the function "break" is encountered all parsing will cease -->
|
||||
<input pattern="(\d+):(\d+)">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sec">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
<macro name="saymoney">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="currency"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="msgcount">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="execute" data="sleep(1000)"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<!-- or -->
|
||||
<!--<action function="speak-text" data="you have $1 messages"/>-->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="saydate">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="saydatetime">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timespec">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="time_measurement"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="timespec2">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="CURRENT_DATE_TIME"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="ip-addr-interated">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="iterated" type="ip_address"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="ip-addr">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="ip_address"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="spell-phonetic">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_phonetic"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="tts-timeleft">
|
||||
<!-- The parser will visit each <input> tag and execute the actions in <match> or <nomatch> depending on the pattern param -->
|
||||
<!-- If the function "break" is encountered all parsing will cease -->
|
||||
<input pattern="(\d+):(\d+)">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sec">
|
||||
<match>
|
||||
<action function="speak-text" data="You have $1 minutes, $2 seconds remaining $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="That input was invalid."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,121 +1,130 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="directory_intro">
|
||||
<input pattern="^(last_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter-person.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter-person.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<include>
|
||||
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-specify_mininum_first.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-letters_of_person_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_intro">
|
||||
<input pattern="^(last_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter-person.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-enter-person.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-first_name.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_search_by.wav"/>
|
||||
<action function="play-file" data="directory/dir-last_name.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_match_entry.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-result_match.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-specify_mininum_first.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-letters_of_person_name.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_many_result.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_match_entry.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="directory/dir-result_match.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</macro>
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_many_result.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_more_result.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-no_more_result.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</macro>
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-result_number.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-result_number.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-at_extension.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-at_extension.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_menu">
|
||||
<input pattern="^([0-9#*]),([0-9#*]),([0-9#*]),([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_select_entry.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_next.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_prev.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-to_make_new_search.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_menu">
|
||||
<input pattern="^([0-9#*]),([0-9#*]),([0-9#*]),([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="directory/dir-to_select_entry.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_next.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-for_prev.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="directory/dir-to_make_new_search.wav"/>
|
||||
<action function="play-file" data="directory/dir-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<macro name="directory_result_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,96 +1,105 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
|
||||
<macro name="directory_intro">
|
||||
<input pattern="^(last_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Please enter the first few digit of the person last name"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Please enter the first few digit of the person first name"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="to search by first name, press $2"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="to search by last name, press $2"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_intro">
|
||||
<input pattern="^(last_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Please enter the first few digit of the person last name"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Please enter the first few digit of the person first name"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="to search by first name, press $2"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="to search by last name, press $2"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="You need to specify a minimum the first $1 letters of the person name, try again."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="You need to specify a minimum the first $1 letters of the person name, try again."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="Your search match no user on this system, try again."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 result match your search"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="Your search match no user on this system, try again."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 result match your search"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Your search returned too many result, please try again"/>
|
||||
</match>
|
||||
</input>
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Your search returned too many result, please try again"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</macro>
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="No more result"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="No more result"/>
|
||||
</match>
|
||||
</input>
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Result number $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</macro>
|
||||
<macro name="directory_result_menu">
|
||||
<input pattern="^([0-9#*]),([0-9#*]),([0-9#*]),([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="To select this entry press $1, for the next entry press $2, for the previous entry press $3, to make a new search press $4"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Result number $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="at extension $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_menu">
|
||||
<input pattern="^([0-9#*]),([0-9#*]),([0-9#*]),([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="To select this entry press $1, for the next entry press $2, for the previous entry press $3, to make a new search press $4"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="at extension $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<macro name="directory_result_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,4 +1,3 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!--тестовые файлы Вы звуковые файлы можно взять тут svn co http://svn.freeswitch.ru/bbv/mod_say_ru/ru/ -->
|
||||
<include>
|
||||
<language name="ru" sound-prefix="$${sounds_dir}/ru/RU/elena" tts-engine="cepstral" tts-voice="elena">
|
||||
@ -11,3 +10,14 @@
|
||||
</phrases>
|
||||
</language>
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,10 +1,10 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-enter_id.wav"/>
|
||||
<!-- <action function="say" data="$1" method="pronounced" type="name_spelled"/>-->
|
||||
<action function="play-file" data="voicemail/vm-enter_id.wav"/>
|
||||
<!--<action function="say" data="$1" method="pronounced" type="name_spelled"/>-->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -12,8 +12,8 @@
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-enter_pass.wav"/>
|
||||
<!-- лишнее и так долго <action function="say" data="$1" method="pronounced" type="name_spelled"/>-->
|
||||
<action function="play-file" data="voicemail/vm-enter_pass.wav"/>
|
||||
<!-- лишнее и так долго <action function="say" data="$1" method="pronounced" type="name_spelled"/>-->
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -21,7 +21,7 @@
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-fail_auth.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-fail_auth.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -29,7 +29,7 @@
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-hello.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-hello.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -37,7 +37,7 @@
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-goodbye.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-goodbye.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -45,7 +45,7 @@
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-abort.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-abort.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -53,30 +53,30 @@
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^(\d+[0,2-9]1|[2-9]1|1):(.*)$"> <!--1, и всё что больше 20-ти 21,31,41 .. -->
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="MESSAGES"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<!-- <action function="play-file" data="voicemail/vm-in_folder.wav"/>-->
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="MESSAGES"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<!--<action function="play-file" data="voicemail/vm-in_folder.wav"/>-->
|
||||
</match>
|
||||
</input>
|
||||
<!-- от 10 до 19 и ноль --> <!-- от 5до 9 и больше 20-ти 25-29 -->
|
||||
<!-- от 10 до 19 и ноль --> <!-- от 5до 9 и больше 20-ти 25-29 -->
|
||||
<input pattern="^(\d+1[0-9]|1[0-9]|0|\d+[0-9][0,5-9]|[2-9][0,5-9]|[0,5-9]):(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="MESSAGES"/>
|
||||
<action function="play-file" data="voicemail/vm-$2x.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-messagex.wav"/>
|
||||
<!-- <action function="play-file" data="voicemail/vm-in_folder.wav"/>-->
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="MESSAGES"/>
|
||||
<action function="play-file" data="voicemail/vm-$2x.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-messagex.wav"/>
|
||||
<!--<action function="play-file" data="voicemail/vm-in_folder.wav"/>-->
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+[0,2-9][2-4]|[2-9][2-4]|[2-4]):(.*)$">
|
||||
<input pattern="^(\d+[0,2-9][2-4]|[2-9][2-4]|[2-4]):(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="MESSAGES"/>
|
||||
<action function="play-file" data="voicemail/vm-$2x.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-in_folder.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="MESSAGES"/>
|
||||
<action function="play-file" data="voicemail/vm-$2x.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-in_folder.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -84,50 +84,48 @@
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_new.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_saved.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-advanced.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_phonetic"/>
|
||||
<action function="play-file" data="voicemail/vm-to_exit.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_new.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_saved.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-advanced.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_phonetic"/>
|
||||
<action function="play-file" data="voicemail/vm-to_exit.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_config_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_record_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-record_name2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-change_password.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-main_menu.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-to_record_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-record_name2.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$4" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-change_password.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$5" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-main_menu.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_name1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-record_name1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -135,15 +133,15 @@
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-rerecord.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-listen_to_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-save_recording.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$3" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-rerecord.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -151,12 +149,12 @@
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-mark-urgent.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-continue.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-mark-urgent.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-continue.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -164,12 +162,12 @@
|
||||
<macro name="voicemail_forward_prepend">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-forward_add_intro.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-send_message_now.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_add_intro.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-send_message_now.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -177,9 +175,9 @@
|
||||
<macro name="voicemail_forward_message_enter_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-forward_enter_ext.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-followed_by.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-forward_enter_ext.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-followed_by.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -187,7 +185,7 @@
|
||||
<macro name="voicemail_invalid_extension">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-that_was_an_invalid_ext.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-that_was_an_invalid_ext.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -239,7 +237,7 @@
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_choose.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_choose.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -247,7 +245,7 @@
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_fail.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-choose_greeting_fail.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -255,7 +253,7 @@
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_greeting.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-record_greeting.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -263,7 +261,7 @@
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-record_message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-record_message.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -271,9 +269,9 @@
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-greeting.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-selected.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-greeting.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-selected.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -281,9 +279,9 @@
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-person.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-not_available.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-person.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-not_available.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -291,7 +289,7 @@
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
<action function="say" data="$1" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -299,9 +297,9 @@
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message_number.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="items"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message_number.wav"/>
|
||||
<action function="say" data="$2" method="pronounced" type="items"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -309,7 +307,7 @@
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -317,39 +315,39 @@
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
<!-- Note: Update this to marked-urgent,emailed and saved once new sound files are recorded -->
|
||||
<macro name="voicemail_ack">
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(too-small)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-too-small.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-too-small.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(deleted)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(saved)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(emailed)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(marked-urgent)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$1.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -357,9 +355,20 @@
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
<action function="say" data="$1" method="pronounced" type="current_date_time"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -1,8 +1,9 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<include>
|
||||
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="please enter your i d, followed by $1."/>
|
||||
<action function="speak-text" data="please enter your i d, followed by $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -10,7 +11,7 @@
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="please enter your password, followed by $1."/>
|
||||
<action function="speak-text" data="please enter your password, followed by $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -18,7 +19,7 @@
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="login incorrect."/>
|
||||
<action function="speak-text" data="login incorrect."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -26,7 +27,7 @@
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="welcome to your voicemail."/>
|
||||
<action function="speak-text" data="welcome to your voicemail."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -34,7 +35,7 @@
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="goodbye."/>
|
||||
<action function="speak-text" data="goodbye."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -42,7 +43,7 @@
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="too many failed attempts."/>
|
||||
<action function="speak-text" data="too many failed attempts."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -50,12 +51,12 @@
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^1:(.*)$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="you have 1 $1 message in folder ${voicemail_current_folder}."/>
|
||||
<action function="speak-text" data="you have 1 $1 message in folder ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="you have $1 $2 messages in folder ${voicemail_current_folder}."/>
|
||||
<action function="speak-text" data="you have $1 $2 messages in folder ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -63,27 +64,25 @@
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="To listen to new messages, press $1, To listen to saved messages, press $2, For advanced options, press $3, to exit, press $4."/>
|
||||
<action function="speak-text"
|
||||
data="To listen to new messages, press $1, To listen to saved messages, press $2, For advanced options, press $3, to exit, press $4."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_config_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="To record a greeting, press $1, To choose a greeting, press $2, To record your name, press $3, to change your password, press $5, to return to the main menu, press $5."/>
|
||||
<action function="speak-text"
|
||||
data="To record a greeting, press $1, To choose a greeting, press $2, To record your name, press $3, to change your password, press $5, to return to the main menu, press $5."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="at the tone, please record your name, press any key or stop talking to end the recording."/>
|
||||
<action function="speak-text" data="at the tone, please record your name, press any key or stop talking to end the recording."/>
|
||||
|
||||
</match>
|
||||
</input>
|
||||
@ -92,8 +91,8 @@
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="To listen to the recording, press $1, To save the recording, press $2, To re record, press $3."/>
|
||||
<action function="speak-text"
|
||||
data="To listen to the recording, press $1, To save the recording, press $2, To re record, press $3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -101,8 +100,8 @@
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="To mark this message urgent, press $1, To continue, press $2."/>
|
||||
<action function="speak-text"
|
||||
data="To mark this message urgent, press $1, To continue, press $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -110,7 +109,7 @@
|
||||
<macro name="voicemail_invalid_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 is not a valid extension."/>
|
||||
<action function="speak-text" data="$1 is not a valid extension."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -118,7 +117,7 @@
|
||||
<macro name="voicemail_forward_message_enter_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="enter the extension you wish to forward to, then press $1"/>
|
||||
<action function="speak-text" data="enter the extension you wish to forward to, then press $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -126,7 +125,7 @@
|
||||
<macro name="voicemail_forward_prepend">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="To record an announcement, press $1."/>
|
||||
<action function="speak-text" data="To record an announcement, press $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -134,8 +133,8 @@
|
||||
<macro name="voicemail_listen_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="To listen to the recording again, press $1, To save the recording, press $2, To delete the recording, press $3, to forward the recording to your email, press $4, to call the caller now, press $5, To forward this message to another extension, press $6."/>
|
||||
<action function="speak-text"
|
||||
data="To listen to the recording again, press $1, To save the recording, press $2, To delete the recording, press $3, to forward the recording to your email, press $4, to call the caller now, press $5, To forward this message to another extension, press $6."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -143,7 +142,7 @@
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="choose a greeting between 1 and 3."/>
|
||||
<action function="speak-text" data="choose a greeting between 1 and 3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -151,7 +150,7 @@
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="invalid value."/>
|
||||
<action function="speak-text" data="invalid value."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -159,7 +158,7 @@
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="record your greeting at the tone, press any key or stop talking to end the recording."/>
|
||||
<action function="speak-text" data="record your greeting at the tone, press any key or stop talking to end the recording."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -167,7 +166,7 @@
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="record your message at the tone, press any key or stop talking to end the recording."/>
|
||||
<action function="speak-text" data="record your message at the tone, press any key or stop talking to end the recording."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -175,7 +174,7 @@
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="greeting $1 selected."/>
|
||||
<action function="speak-text" data="greeting $1 selected."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -183,7 +182,7 @@
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 is not available."/>
|
||||
<action function="speak-text" data="$1 is not available."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -191,7 +190,7 @@
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -199,7 +198,7 @@
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 message number $2."/>
|
||||
<action function="speak-text" data="$1 message number $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -207,7 +206,7 @@
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -215,7 +214,7 @@
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -223,7 +222,7 @@
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="message $1"/>
|
||||
<action function="speak-text" data="message $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -231,9 +230,20 @@
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="${strftime($1|%A, %B %d %Y, %I:%M %p)}"/>
|
||||
<action function="speak-text" data="${strftime($1|%A, %B %d %Y, %I:%M %p)}"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
</include>
|
||||
<!--
|
||||
For Emacs:
|
||||
Local Variables:
|
||||
mode:xml
|
||||
indent-tabs-mode:nil
|
||||
tab-width:2
|
||||
c-basic-offset:2
|
||||
End:
|
||||
For VIM:
|
||||
vim:set softtabstop=2 shiftwidth=2 tabstop=2 expandtab:
|
||||
-->
|
||||
|
@ -4,6 +4,7 @@
|
||||
<param name="log-level" value="0"/>
|
||||
<!-- <param name="auto-restart" value="false"/> -->
|
||||
<param name="debug-presence" value="0"/>
|
||||
<!-- <param name="capture-server" value="udp:homer.domain.com:5060"/> -->
|
||||
</global_settings>
|
||||
|
||||
<!--
|
@ -0,0 +1,12 @@
|
||||
<configuration name="fax.conf" description="FAX application configuration">
|
||||
<settings>
|
||||
<param name="use-ecm" value="true"/>
|
||||
<param name="verbose" value="false"/>
|
||||
<param name="disable-v17" value="false"/>
|
||||
<param name="ident" value="SpanDSP Fax Ident"/>
|
||||
<param name="header" value="SpanDSP Fax Header"/>
|
||||
|
||||
<param name="spool-dir" value="/tmp"/>
|
||||
<param name="file-prefix" value="faxrx"/>
|
||||
</settings>
|
||||
</configuration>
|
@ -1,5 +1,40 @@
|
||||
<configuration name="spandsp.conf" description="Tone detector descriptors">
|
||||
<descriptors>
|
||||
<configuration name="spandsp.conf" description="SpanDSP config">
|
||||
<modem-settings>
|
||||
<!--
|
||||
total-modems set to N will create that many soft-modems.
|
||||
If you use them with Hylafax you need the following for each one numbered 0..N:
|
||||
|
||||
1) A line like this in /etc/inittab:
|
||||
|
||||
f0:2345:respawn:/usr/lib/fax/faxgetty /dev/FS0
|
||||
|
||||
2) copy conf/config.FS0 to /var/spool/hylafax/etc (or wherver the appropriate dir is on your system)
|
||||
|
||||
Subsequent modem configs would incrment the 0 to 1 and so on.
|
||||
|
||||
-->
|
||||
<param name="total-modems" value="0"/>
|
||||
|
||||
<!-- Default context and dialplan to use on inbound calls from the modems -->
|
||||
<param name="context" value="default"/>
|
||||
<param name="dialplan" value="XML"/>
|
||||
|
||||
<!-- Extra tracing for debugging -->
|
||||
<param name="verbose" value="false"/>
|
||||
</modem-settings>
|
||||
|
||||
<fax-settings>
|
||||
<param name="use-ecm" value="true"/>
|
||||
<param name="verbose" value="false"/>
|
||||
<param name="disable-v17" value="false"/>
|
||||
<param name="ident" value="SpanDSP Fax Ident"/>
|
||||
<param name="header" value="SpanDSP Fax Header"/>
|
||||
|
||||
<param name="spool-dir" value="/tmp"/>
|
||||
<param name="file-prefix" value="faxrx"/>
|
||||
</fax-settings>
|
||||
|
||||
<descriptors>
|
||||
|
||||
<!-- These tones are defined in Annex to ITU Operational Bulletin No. 781 - 1.II.2003 -->
|
||||
<!-- Various Tones Used in National Networks (According to ITU-T Recommendation E.180)(03/1998) -->
|
||||
@ -7,20 +42,25 @@
|
||||
<!-- North America -->
|
||||
<descriptor name="1">
|
||||
<tone name="CED_TONE">
|
||||
<element freq1="2100" freq2="0" min="500" max="0"/>
|
||||
<element freq1="2100" freq2="0" min="700" max="0"/>
|
||||
</tone>
|
||||
<tone name="SIT">
|
||||
<element freq1="950" freq2="0" min="256" max="400"/>
|
||||
<element freq1="1400" freq2="0" min="256" max="400"/>
|
||||
<element freq1="1800" freq2="0" min="256" max="400"/>
|
||||
</tone>
|
||||
<tone name="RING_TONE" description="North America ring">
|
||||
<element freq1="440" freq2="480" min="1200" max="0"/>
|
||||
</tone>
|
||||
<tone name="REORDER_TONE">
|
||||
<element freq1="480" freq2="620" min="224" max="272"/>
|
||||
<element freq1="0" freq2="0" min="224" max="272"/>
|
||||
<element freq1="480" freq2="620" min="224" max="316"/>
|
||||
<element freq1="0" freq2="0" min="168" max="352"/>
|
||||
<element freq1="480" freq2="620" min="224" max="316"/>
|
||||
</tone>
|
||||
<tone name="BUSY_TONE">
|
||||
<element freq1="480" freq2="620" min="464" max="516"/>
|
||||
<element freq1="0" freq2="0" min="464" max="516"/>
|
||||
<element freq1="480" freq2="620" min="464" max="536"/>
|
||||
<element freq1="0" freq2="0" min="464" max="572"/>
|
||||
<element freq1="480" freq2="620" min="464" max="536"/>
|
||||
</tone>
|
||||
</descriptor>
|
||||
|
@ -0,0 +1,208 @@
|
||||
<configuration name="voicemail_ivr.conf" description="Voicemail IVR">
|
||||
<profiles>
|
||||
<profile name="default">
|
||||
<settings>
|
||||
<param name="IVR-Maximum-Attempts" value="3" />
|
||||
<param name="IVR-Entry-Timeout" value="3000" />
|
||||
<param name="Record-Format" value="wav" />
|
||||
<!--<param name="Record-Sample-Rate" value="8000" />-->
|
||||
<param name="Record-Silence-Hits" value="4" />
|
||||
<param name="Record-Silence-Threshold" value="200" />
|
||||
<param name="Record-Maximum-Length" value="30" />
|
||||
<!--<param name="Record-Minimum-Length" value="3" />-->
|
||||
<param name="Exit-Purge" value="true" />
|
||||
<param name="Password-Mask" value="XXX." />
|
||||
<param name="User-Mask" value="X." />
|
||||
|
||||
</settings>
|
||||
<apis>
|
||||
<api name="auth_login" value="vm_fsdb_auth_login" />
|
||||
<api name="msg_list" value="vm_fsdb_msg_list" />
|
||||
<api name="msg_count" value="vm_fsdb_msg_count" />
|
||||
<api name="msg_delete" value="vm_fsdb_msg_delete" />
|
||||
<api name="msg_undelete" value="vm_fsdb_msg_undelete" />
|
||||
<api name="msg_save" value="vm_fsdb_msg_save" />
|
||||
<api name="msg_purge" value="vm_fsdb_msg_purge" />
|
||||
<api name="msg_get" value="vm_fsdb_msg_get" />
|
||||
<api name="msg_forward" value="vm_fsdb_msg_forward" />
|
||||
<api name="pref_greeting_set" value="vm_fsdb_pref_greeting_set" />
|
||||
<api name="pref_recname_set" value="vm_fsdb_pref_recname_set" />
|
||||
<api name="pref_password_set" value="vm_fsdb_pref_password_set" />
|
||||
</apis>
|
||||
<menus>
|
||||
<menu name="std_authenticate">
|
||||
<phrases>
|
||||
<phrase name="fail_auth" value="fail_auth@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_authenticate_ask_user">
|
||||
<phrases>
|
||||
<phrase name="instructions" value="enter_id@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="#" action="ivrengine:terminate_entry" variable="VM-Key-Terminator" />
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_authenticate_ask_password">
|
||||
<phrases>
|
||||
<phrase name="instructions" value="enter_pass@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="#" action="ivrengine:terminate_entry" variable="VM-Key-Terminator" />
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_main_menu">
|
||||
<phrases>
|
||||
<phrase name="msg_count" value="message_count@mtvoicemail" />
|
||||
<phrase name="say_date" value="say_date_event@mtvoicemail" />
|
||||
<phrase name="say_msg_number" value="say_message_number@mtvoicemail" />
|
||||
<phrase name="menu_options" value="menu@mtvoicemail" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="1" action="new_msg:std_navigator" variable="VM-Key-Play-New-Messages" />
|
||||
<key dtmf="2" action="saved_msg:std_navigator" variable="VM-Key-Play-Saved-Messages" />
|
||||
<key dtmf="5" action="menu:std_preference" variable="VM-Key-Config-Menu"/>
|
||||
<key dtmf="#" action="return" variable="VM-Key-Terminator" />
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_navigator">
|
||||
<settings>
|
||||
<!--<param name="Nav-Action-On-Delete" value="next_msg" />-->
|
||||
</settings>
|
||||
<phrases>
|
||||
<phrase name="msg_count" value="message_count@voicemail_ivr" />
|
||||
<phrase name="say_date" value="say_date_event@voicemail_ivr" />
|
||||
<phrase name="say_msg_number" value="say_message_number@voicemail_ivr" />
|
||||
<phrase name="menu_options" value="listen_file_check@voicemail_ivr" />
|
||||
<phrase name="ack" value="ack@voicemail_ivr" />
|
||||
<phrase name="play_message" value="play_message@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="1" action="skip_intro" variable="VM-Key-Main-Listen-File" />
|
||||
<key dtmf="6" action="next_msg" variable="VM-Key-Main-Next-Msg" />
|
||||
<key dtmf="4" action="prev_msg" />
|
||||
<key dtmf="7" action="delete_msg" variable="VM-Key-Main-Delete-File" /> <!-- Same key for undelete if it already deleted -->
|
||||
<key dtmf="8" action="menu:std_forward" variable="VM-Key-Main-Forward" />
|
||||
<key dtmf="3" action="save_msg" variable="VM-Key-Main-Save-File" />
|
||||
<key dtmf="2" action="callback" variable="VM-Key-Main-Callback" />
|
||||
<key dtmf="5" action="menu:std_preference" />
|
||||
<key dtmf="#" action="return" /> <!-- TODO Might Conflict with future fast-forward -->
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_preference">
|
||||
<phrases>
|
||||
<phrase name="menu_options" value="config_menu@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="1" action="menu:std_record_greeting_with_slot" variable="VM-Key-Record-Greeting" />
|
||||
<key dtmf="2" action="menu:std_select_greeting_slot" variable="VM-Key-Choose-Greeting" />
|
||||
<key dtmf="3" action="menu:std_record_name" variable="VM-Key-Record-Name" />
|
||||
<key dtmf="6" action="menu:std_set_password" variable="VM-Key-Change-Password" />
|
||||
<key dtmf="#" action="return" variable="VM-Key-Main-Menu" />
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_record_greeting">
|
||||
<phrases>
|
||||
<phrase name="instructions" value="record_greeting@voicemail_ivr" />
|
||||
<phrase name="play_recording" value="play_recording@voicemail_ivr" />
|
||||
<phrase name="menu_options" value="record_file_check@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="1" action="listen" variable="VM-Key-Listen-File" />
|
||||
<key dtmf="3" action="save" variable="VM-Key-Save-File" />
|
||||
<key dtmf="4" action="rerecord" variable="VM-Key-ReRecord-File" />
|
||||
<key dtmf="#" action="skip_instruction" />
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
|
||||
<menu name="std_record_name">
|
||||
<phrases>
|
||||
<phrase name="instructions" value="record_name@voicemail_ivr" />
|
||||
<phrase name="play_recording" value="play_recording@voicemail_ivr" />
|
||||
<phrase name="menu_options" value="record_file_check@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="1" action="listen" variable="VM-Key-Listen-File" />
|
||||
<key dtmf="3" action="save" variable="VM-Key-Save-File" />
|
||||
<key dtmf="4" action="rerecord" variable="VM-Key-ReRecord-File" />
|
||||
<key dtmf="#" action="skip_instruction" />
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_record_message">
|
||||
<phrases>
|
||||
<phrase name="instructions" value="record_message@voicemail_ivr" />
|
||||
<phrase name="play_recording" value="play_recording@voicemail_ivr" />
|
||||
<phrase name="menu_options" value="record_file_check@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="1" action="listen" variable="VM-Key-Listen-File" />
|
||||
<key dtmf="3" action="save" variable="VM-Key-Save-File" />
|
||||
<key dtmf="4" action="rerecord" variable="VM-Key-ReRecord-File" />
|
||||
<key dtmf="#" action="skip_instruction" />
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_forward_ask_prepend">
|
||||
<phrases>
|
||||
<phrase name="menu_options" value="forward_ask_prepend@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="1" action="prepend" variable="VM-Key-Prepend" />
|
||||
<key dtmf="8" action="forward" variable="VM-Key-Forward" />
|
||||
<key dtmf="#" action="return" variable="VM-Key-Return" />
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_forward_ask_extension">
|
||||
<phrases>
|
||||
<phrase name="instructions" value="forward_ask_extension@voicemail_ivr" />
|
||||
<phrase name="ack" value="ack@voicemail_ivr" />
|
||||
<phrase name="invalid_extension" value="invalid_extension@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="#" action="ivrengine:terminate_entry" variable="VM-Key-Terminator" />
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_select_greeting_slot">
|
||||
<phrases>
|
||||
<phrase name="instructions" value="choose_greeting@voicemail_ivr" />
|
||||
<phrase name="invalid_slot" value="choose_greeting_fail@voicemail_ivr" />
|
||||
<phrase name="selected_slot" value="greeting_selected@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_record_greeting_with_slot">
|
||||
<phrases>
|
||||
<phrase name="instructions" value="choose_greeting@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
</keys>
|
||||
</menu>
|
||||
|
||||
<menu name="std_set_password">
|
||||
<phrases>
|
||||
<phrase name="instructions" value="enter_pass@voicemail_ivr" />
|
||||
</phrases>
|
||||
<keys>
|
||||
<key dtmf="#" action="ivrengine:terminate_entry" variable="VM-Key-Terminator" />
|
||||
</keys>
|
||||
</menu>
|
||||
</menus>
|
||||
</profile>
|
||||
</profiles>
|
||||
</configuration>
|
||||
|
||||
|
@ -27,7 +27,7 @@
|
||||
<!-- true or false if a leg files are prefixed "a_" -->
|
||||
<param name="prefix-a-leg" value="true"/>
|
||||
|
||||
<!-- encode the post data may be 'true' for url encoding, 'false' for no encoding or 'base64' for base64 encoding -->
|
||||
<!-- encode the post data may be 'true' for url encoding, 'false' for no encoding, 'base64' for base64 encoding or 'textxml' for text/xml -->
|
||||
<param name="encode" value="true"/>
|
||||
|
||||
<!-- optional: set to true to disable Expect: 100-continue lighttpd requires this setting -->
|
||||
|
@ -1,33 +1,57 @@
|
||||
--- a/build/modules.conf.in
|
||||
+++ b/build/modules.conf.in
|
||||
@@ -41,10 +41,14 @@ applications/mod_valet_parking
|
||||
#applications/mod_ladspa
|
||||
#applications/mod_mongo
|
||||
applications/mod_sms
|
||||
+#applications/mod_http_cache
|
||||
@@ -3,6 +3,9 @@
|
||||
#applications/mod_blacklist
|
||||
#applications/mod_callcenter
|
||||
#applications/mod_cidlookup
|
||||
+#applications/mod_skel
|
||||
+#applications/mod_mp4
|
||||
+#applications/mod_protovm
|
||||
codecs/mod_g723_1
|
||||
codecs/mod_amr
|
||||
#codecs/mod_amrwb
|
||||
applications/mod_cluechoo
|
||||
applications/mod_commands
|
||||
applications/mod_conference
|
||||
@@ -27,6 +30,7 @@ applications/mod_httapi
|
||||
#applications/mod_memcache
|
||||
#applications/mod_mongo
|
||||
#applications/mod_nibblebill
|
||||
+#applications/mod_oreka
|
||||
#applications/mod_osp
|
||||
#applications/mod_redis
|
||||
#applications/mod_rss
|
||||
@@ -34,6 +38,7 @@ applications/mod_sms
|
||||
#applications/mod_snapshot
|
||||
#applications/mod_snipe_hunt
|
||||
#applications/mod_snom
|
||||
+#applications/mod_sonar
|
||||
#applications/mod_soundtouch
|
||||
applications/mod_spandsp
|
||||
#applications/mod_spy
|
||||
@@ -61,17 +66,20 @@ codecs/mod_h26x
|
||||
codecs/mod_vp8
|
||||
#codecs/mod_ilbc
|
||||
#codecs/mod_isac
|
||||
+#codecs/mod_mp4v
|
||||
#codecs/mod_opus
|
||||
#codecs/mod_sangoma_codec
|
||||
#codecs/mod_silk
|
||||
#codecs/mod_siren
|
||||
codecs/mod_speex
|
||||
+#codecs/mod_theora
|
||||
#codecs/mod_codec2
|
||||
codecs/mod_g729
|
||||
#codecs/mod_com_g729
|
||||
@@ -62,6 +66,7 @@ dialplans/mod_dialplan_xml
|
||||
dialplans/mod_dialplan_asterisk
|
||||
#dialplans/mod_dialplan_directory
|
||||
dialplans/mod_dialplan_xml
|
||||
#directories/mod_ldap
|
||||
#endpoints/mod_alsa
|
||||
#endpoints/mod_dingaling
|
||||
+#endpoints/mod_gsmopen
|
||||
#endpoints/mod_portaudio
|
||||
endpoints/mod_sofia
|
||||
endpoints/mod_loopback
|
||||
@@ -82,6 +87,7 @@ endpoints/mod_loopback
|
||||
#endpoints/mod_h323
|
||||
#endpoints/mod_html5
|
||||
#endpoints/mod_khomp
|
||||
@@ -88,6 +96,7 @@ event_handlers/mod_cdr_csv
|
||||
event_handlers/mod_cdr_sqlite
|
||||
#event_handlers/mod_erlang_event
|
||||
#event_handlers/mod_event_multicast
|
||||
+#event_handlers/mod_json_cdr
|
||||
event_handlers/mod_event_socket
|
||||
#event_handlers/mod_event_zmq
|
||||
+#event_handlers/mod_json_cdr
|
||||
event_handlers/mod_cdr_csv
|
||||
event_handlers/mod_cdr_sqlite
|
||||
#event_handlers/mod_cdr_mongodb
|
||||
#event_handlers/mod_radius_cdr
|
||||
|
@ -1,49 +0,0 @@
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -1,3 +1,7 @@
|
||||
+BASE=.
|
||||
+
|
||||
+include $(BASE)/build/openwrt_rules.mk
|
||||
+
|
||||
EXTRA_DIST =
|
||||
SUBDIRS = . src
|
||||
AUTOMAKE_OPTIONS = foreign
|
||||
@@ -61,7 +65,7 @@ cd-moh-install: uhd-moh-install sounds-m
|
||||
# (1) if the variable is set in `config.status', edit `config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run `make');
|
||||
# (2) otherwise, pass the desired values on the `make' command line.
|
||||
-all-recursive: libfreeswitch.la
|
||||
+all-recursive: spandsp-reconf libfreeswitch.la
|
||||
clean-recusive: clean_core
|
||||
install-recursive: install-libLTLIBRARIES install-binPROGRAMS
|
||||
$(RECURSIVE_TARGETS):
|
||||
@@ -586,10 +590,13 @@ speex-reconf:
|
||||
|
||||
tiff-reconf:
|
||||
cd libs/tiff-3.8.2 && autoreconf -fi
|
||||
- cd libs/tiff-3.8.2 && sh ./configure.gnu
|
||||
+ cd libs/tiff-3.8.2 && sh ./configure.gnu --host=$(GNU_TARGET_NAME)
|
||||
cd libs/spandsp && autoreconf -fi
|
||||
- cd libs/spandsp && sh ./configure.gnu
|
||||
- make mod_voipcodecs-clean
|
||||
+ cd libs/spandsp && sh ./configure.gnu --host=$(GNU_TARGET_NAME) --prefix=$(prefix)
|
||||
+ cd libs/tiff-3.8.2 && $(MAKE)
|
||||
+
|
||||
+spandsp-reconf: tiff-reconf
|
||||
+ cd libs/spandsp && $(MAKE)
|
||||
|
||||
python-reconf:
|
||||
rm -f src/mod/languages/mod_python/Makefile
|
||||
@@ -612,12 +619,6 @@ iks-reconf:
|
||||
cd libs/iksemel && sh ./configure.gnu --prefix=$(prefix)
|
||||
$(MAKE) mod_dingaling-clean
|
||||
|
||||
-spandsp-reconf:
|
||||
- cd libs/spandsp && $(MAKE) clean || echo
|
||||
- cd libs/spandsp && autoreconf -fi
|
||||
- cd libs/spandsp && sh ./configure.gnu --prefix=$(prefix)
|
||||
- cd libs/spandsp && $(MAKE)
|
||||
-
|
||||
sofia-reconf:
|
||||
cd libs/sofia-sip && sh ./autogen.sh
|
||||
cd libs/sofia-sip && $(MAKE) clean
|
11
net/freeswitch/patches/002-configure_in.patch
Normal file
11
net/freeswitch/patches/002-configure_in.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- a/configure.in
|
||||
+++ b/configure.in
|
||||
@@ -581,7 +581,7 @@ AC_CHECK_LIB(pthread, pthread_setschedpa
|
||||
|
||||
AC_CHECK_FUNC(socket, , AC_CHECK_LIB(socket, socket))
|
||||
|
||||
-AC_CHECK_FILE(/dev/ptmx, [AC_DEFINE(HAVE_DEV_PTMX, 1, [Define if you have /dev/ptmx])])
|
||||
+# AC_CHECK_FILE(/dev/ptmx, [AC_DEFINE(HAVE_DEV_PTMX, 1, [Define if you have /dev/ptmx])])
|
||||
AC_CHECK_LIB(util, openpty, [AC_DEFINE(HAVE_OPENPTY, 1, [Define if you have openpty()])])
|
||||
|
||||
AC_CHECK_MEMBERS([struct tm.tm_gmtoff],,,[
|
40
net/freeswitch/patches/003-Makefile.am.patch
Normal file
40
net/freeswitch/patches/003-Makefile.am.patch
Normal file
@ -0,0 +1,40 @@
|
||||
--- a/Makefile.am
|
||||
+++ b/Makefile.am
|
||||
@@ -1,3 +1,7 @@
|
||||
+BASE=.
|
||||
+
|
||||
+include $(BASE)/build/openwrt_rules.mk
|
||||
+
|
||||
EXTRA_DIST =
|
||||
SUBDIRS = . src
|
||||
AUTOMAKE_OPTIONS = foreign
|
||||
@@ -69,7 +73,7 @@ cd-moh-install: uhd-moh-install sounds-m
|
||||
# (1) if the variable is set in `config.status', edit `config.status'
|
||||
# (which will cause the Makefiles to be regenerated when you run `make');
|
||||
# (2) otherwise, pass the desired values on the `make' command line.
|
||||
-all-recursive: libfreeswitch.la
|
||||
+all-recursive: spandsp-reconf libfreeswitch.la
|
||||
clean-recusive: clean_core
|
||||
install-recursive: install-libLTLIBRARIES install-binPROGRAMS
|
||||
|
||||
@@ -612,7 +616,9 @@ sndfile-reconf:
|
||||
|
||||
tiff-reconf:
|
||||
cd libs/tiff-4.0.2 && autoreconf -fi
|
||||
- cd libs/tiff-4.0.2 && sh ./configure.gnu
|
||||
+ cd libs/tiff-4.0.2 && sh ./configure.gnu --host="$(GNU_TARGET_NAME)" --prefix="/usr"
|
||||
+ cd libs/spandsp && autoreconf -fi
|
||||
+ cd libs/spandsp && sh ./configure.gnu --host="$(GNU_TARGET_NAME)" --prefix="/usr"
|
||||
cd libs/tiff-4.0.2 && make
|
||||
|
||||
python-reconf:
|
||||
@@ -637,9 +643,6 @@ iks-reconf:
|
||||
$(MAKE) mod_dingaling-clean
|
||||
|
||||
spandsp-reconf: tiff-reconf
|
||||
- cd libs/spandsp && $(MAKE) clean || echo
|
||||
- cd libs/spandsp && autoreconf -fi
|
||||
- cd libs/spandsp && sh ./configure.gnu --prefix=$(prefix)
|
||||
cd libs/spandsp && $(MAKE)
|
||||
|
||||
sofia-reconf:
|
@ -1,26 +0,0 @@
|
||||
--- a/src/mod/endpoints/mod_gsmopen/Makefile
|
||||
+++ b/src/mod/endpoints/mod_gsmopen/Makefile
|
||||
@@ -1,9 +1,16 @@
|
||||
+BASE=../../../..
|
||||
MODNAME=mod_gsmopen
|
||||
SVNDEF := -D'GSMOPEN_SVN_VERSION="$(shell svnversion -n .)"'
|
||||
-#LOCAL_CFLAGS += $(SVNDEF) -I/usr/src/gsmlib-1.10
|
||||
-LOCAL_CFLAGS += $(SVNDEF) -I../../../../libs/spandsp/src -I../../../..//libs/tiff-3.8.2/libtiff
|
||||
-#LOCAL_LDFLAGS=-lasound -L/usr/src/gsmlib-1.10/gsmlib/.libs -lgsmme
|
||||
-LOCAL_LDFLAGS=-L../../../../libs/spandsp/src -lasound -lgsmme -lspandsp
|
||||
-LOCAL_OBJS=gsmopen_protocol.o
|
||||
-#OUR_OBJS += /usr/src/gsmlib-1.10/gsmlib/libgsmme.la
|
||||
-include ../../../../build/modmake.rules
|
||||
+LOCAL_CFLAGS += $(SVNDEF) -I$(BASE)/libs/spandsp/src -I$(BASE)/libs/tiff-3.8.2/libtiff -fpermissive
|
||||
+LOCAL_LDFLAGS=-L$(BASE)/libs/spandsp/src -lasound -lgsmme -lspandsp
|
||||
+LOCAL_OBJS=gsmopen_protocol.o
|
||||
+
|
||||
+include $(BASE)/build/modmake.rules
|
||||
+
|
||||
+TIFF_DIR=$(switch_srcdir)/libs/tiff-3.8.2
|
||||
+TIFF_BUILDDIR=$(switch_builddir)/libs/tiff-3.8.2
|
||||
+TIFF_LA=$(TIFF_BUILDDIR)/libtiff/libtiff.la
|
||||
+
|
||||
+SPANDSP_DIR=$(switch_srcdir)/libs/spandsp
|
||||
+SPANDSP_BUILDDIR=$(switch_builddir)/libs/spandsp
|
||||
+SPANDSP_LA=$(SPANDSP_BUILDDIR)/src/libspandsp.la
|
@ -1,13 +0,0 @@
|
||||
Index: freeswitch-1.0.7/libs/spandsp/src/spandsp/fast_convert.h
|
||||
===================================================================
|
||||
--- freeswitch-1.0.7.orig/libs/spandsp/src/spandsp/fast_convert.h 2012-08-14 19:52:20.000000000 +0200
|
||||
+++ freeswitch-1.0.7/libs/spandsp/src/spandsp/fast_convert.h 2012-08-14 19:53:01.000000000 +0200
|
||||
@@ -195,7 +195,7 @@
|
||||
{
|
||||
return (long int) (x);
|
||||
}
|
||||
-#elif defined(__ppc__) || defined(__powerpc__)
|
||||
+#elif 0 /* defined(__ppc__) || defined(__powerpc__) */
|
||||
static __inline__ long int lfastrint(register double x)
|
||||
{
|
||||
int res[2];
|
@ -0,0 +1,11 @@
|
||||
--- a/libs/spandsp/src/spandsp/fast_convert.h
|
||||
+++ b/libs/spandsp/src/spandsp/fast_convert.h
|
||||
@@ -195,7 +195,7 @@ extern "C"
|
||||
{
|
||||
return (long int) (x);
|
||||
}
|
||||
-#elif defined(__ppc__) || defined(__powerpc__)
|
||||
+#elif 0 /* defined(__ppc__) || defined(__powerpc__) */
|
||||
static __inline__ long int lfastrint(register double x)
|
||||
{
|
||||
int res[2];
|
11
net/freeswitch/patches/103-libs-spandsp-src-t4_rx_c.patch
Normal file
11
net/freeswitch/patches/103-libs-spandsp-src-t4_rx_c.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- a/libs/spandsp/src/t4_rx.c
|
||||
+++ b/libs/spandsp/src/t4_rx.c
|
||||
@@ -45,7 +45,7 @@
|
||||
#include <math.h>
|
||||
#endif
|
||||
#include "floating_fudge.h"
|
||||
-#include <tiffio.h>
|
||||
+#include <tiffiop.h>
|
||||
|
||||
#include "spandsp/telephony.h"
|
||||
#include "spandsp/logging.h"
|
11
net/freeswitch/patches/104-libs-spandsp-src-t4_tx_c.patch
Normal file
11
net/freeswitch/patches/104-libs-spandsp-src-t4_tx_c.patch
Normal file
@ -0,0 +1,11 @@
|
||||
--- a/libs/spandsp/src/t4_tx.c
|
||||
+++ b/libs/spandsp/src/t4_tx.c
|
||||
@@ -45,7 +45,7 @@
|
||||
#include <math.h>
|
||||
#endif
|
||||
#include "floating_fudge.h"
|
||||
-#include <tiffio.h>
|
||||
+#include <tiffiop.h>
|
||||
|
||||
#include "spandsp/telephony.h"
|
||||
#include "spandsp/logging.h"
|
13
net/freeswitch/patches/105-libs-xmlrpc-c-config_mk_in.patch
Normal file
13
net/freeswitch/patches/105-libs-xmlrpc-c-config_mk_in.patch
Normal file
@ -0,0 +1,13 @@
|
||||
--- a/libs/xmlrpc-c/config.mk.in
|
||||
+++ b/libs/xmlrpc-c/config.mk.in
|
||||
@@ -335,8 +335,8 @@ endif
|
||||
# The cross compiling user can update config.mk or override
|
||||
# BUILDTOOL_CC on a make command.
|
||||
|
||||
-BUILDTOOL_CC = $(CC)
|
||||
-BUILDTOOL_CCLD = $(CCLD)
|
||||
+BUILDTOOL_CC = $(HOSTCC)
|
||||
+BUILDTOOL_CCLD = $(HOSTCC)
|
||||
|
||||
# Here are the commands 'make install' uses to install various kinds of files:
|
||||
|
@ -0,0 +1,16 @@
|
||||
--- a/libs/xmlrpc-c/lib/expat/gennmtab/Makefile
|
||||
+++ b/libs/xmlrpc-c/lib/expat/gennmtab/Makefile
|
||||
@@ -1,3 +1,5 @@
|
||||
+TOPDIR=$(shell (cd $(SRCDIR)/../../../../..; pwd))
|
||||
+
|
||||
ifeq ($(SRCDIR),)
|
||||
updir = $(shell echo $(dir $(1)) | sed 's/.$$//')
|
||||
EXPATDIR := $(call updir,$(CURDIR))
|
||||
@@ -7,6 +9,7 @@ ifeq ($(SRCDIR),)
|
||||
endif
|
||||
SUBDIR := lib/expat/gennmtab
|
||||
|
||||
+include $(TOPDIR)/rules.mk
|
||||
include $(BLDDIR)/config.mk
|
||||
|
||||
LDFLAGS = $(LADD)
|
@ -1,7 +1,7 @@
|
||||
--- a/src/mod/codecs/mod_opus/Makefile
|
||||
+++ b/src/mod/codecs/mod_opus/Makefile
|
||||
@@ -13,13 +13,14 @@ SILK_LA=$(OPUS_BUILDDIR)/silk/libSKP_SIL
|
||||
LOCAL_LIBADD=$(IETF_LA) $(CELT_LA) $(SILK_LA) -lm -lz
|
||||
@@ -12,12 +12,13 @@ OPUS_LA=$(OPUS_BUILDDIR)/.libs/libopus.l
|
||||
LOCAL_LIBADD=$(OPUS_LA)
|
||||
|
||||
include $(BASE)/build/modmake.rules
|
||||
+include $(BASE)/build/openwrt_rules.mk
|
||||
@ -9,10 +9,9 @@
|
||||
$(OPUS_DIR):
|
||||
$(GETLIB) $(OPUS).tar.gz
|
||||
|
||||
$(OPUS_BUILDDIR)/Makefile: $(OPUS_DIR)
|
||||
mkdir -p $(OPUS_BUILDDIR)
|
||||
$(OPUS_DIR)/Makefile: $(OPUS_DIR)
|
||||
- cd $(OPUS_BUILDDIR) && $(DEFAULT_VARS) $(OPUS_DIR)/configure --disable-shared --with-pic --srcdir=$(OPUS_DIR)
|
||||
+ cd $(OPUS_BUILDDIR) && $(DEFAULT_VARS) $(OPUS_DIR)/configure --host=$(GNU_TARGET_NAME) --disable-shared --with-pic --srcdir=$(OPUS_DIR)
|
||||
$(TOUCH_TARGET)
|
||||
|
||||
$(IETF_LA): $(OPUS_BUILDDIR)/Makefile
|
||||
$(OPUS_LA): $(OPUS_DIR)/Makefile
|
@ -6,7 +6,7 @@
|
||||
SILK_DIR=$(switch_srcdir)/libs/silk
|
||||
SILK_BUILDDIR=$(switch_builddir)/libs/silk
|
||||
LOCAL_CFLAGS=-I$(SILK_DIR)/src -I$(SILK_DIR)/interface
|
||||
@@ -7,5 +8,5 @@ LOCAL_LIBADD=$(SILK_LA)
|
||||
@@ -8,5 +9,5 @@ LOCAL_OBJS=$(BASE)/libs/stfu/stfu.o
|
||||
include $(BASE)/build/modmake.rules
|
||||
|
||||
$(SILK_LA): $(SILK_DIR)/.update
|
@ -0,0 +1,11 @@
|
||||
--- a/src/mod/directories/mod_ldap/Makefile
|
||||
+++ b/src/mod/directories/mod_ldap/Makefile
|
||||
@@ -21,7 +21,7 @@ $(LDAP_DIR):
|
||||
|
||||
$(LDAP_BUILDDIR)/Makefile: $(LDAP_DIR)
|
||||
mkdir -p $(LDAP_BUILDDIR)
|
||||
- cd $(LDAP_BUILDDIR) && $(DEFAULT_VARS) $(LDAP_DIR)/configure $(DEFAULT_ARGS) --srcdir=$(LDAP_DIR)
|
||||
+ cd $(LDAP_BUILDDIR) && $(DEFAULT_VARS) $(LDAP_DIR)/configure $(DEFAULT_ARGS) --srcdir=$(LDAP_DIR) --with-yielding_select=yes
|
||||
$(TOUCH_TARGET)
|
||||
|
||||
$(LDAPLA) $(LIBLBERLA): $(LDAP_BUILDDIR)/Makefile
|
@ -0,0 +1,20 @@
|
||||
--- a/src/mod/endpoints/mod_gsmopen/Makefile
|
||||
+++ b/src/mod/endpoints/mod_gsmopen/Makefile
|
||||
@@ -1,5 +1,15 @@
|
||||
+BASE=../../../..
|
||||
MODNAME=mod_gsmopen
|
||||
-LOCAL_CFLAGS += -I../../../../libs/spandsp/src -I../../../..//libs/tiff-4.0.2/libtiff -DGSMOPEN_C_VER=\"`git log -1 --format="%h" gsmopen_protocol.cpp`\" -DMODGSMOPEN_C_VER=\"`git log -1 --format="%h" mod_gsmopen.cpp`\"
|
||||
-LOCAL_LDFLAGS=-L../../../../libs/spandsp/src -lspandsp -lctb-0.16 -lgsmme
|
||||
+SVNDEF := -D'GSMOPEN_SVN_VERSION="$(shell svnversion -n .)"'
|
||||
+
|
||||
+TIFF_DIR="$(shell ls -d $(switch_srcdir)/libs/tiff*)"
|
||||
+TIFF_BUILDDIR=$(TIFF_DIR)
|
||||
+TIFF_LA=$(TIFF_BUILDDIR)/libtiff/libtiff.la
|
||||
+
|
||||
+SPANDSP_DIR=$(switch_srcdir)/libs/spandsp
|
||||
+SPANDSP_BUILDDIR=$(switch_builddir)/libs/spandsp
|
||||
+SPANDSP_LA=$(SPANDSP_BUILDDIR)/src/libspandsp.la
|
||||
+LOCAL_CFLAGS += $(SVNDEF) -I$(BASE)/libs/spandsp/src -I$(TIFF_DIR)/libtiff -I$(BASE)/src/mod/endpoints/mod_gsmopen/libctb-0.16/include -fpermissive
|
||||
+LOCAL_LDFLAGS=-L$(BASE)/libs/spandsp/src -lspandsp -L$(BASE)/src/mod/endpoints/mod_gsmopen/libctb-0.16/lib -lctb-0.16
|
||||
LOCAL_OBJS=gsmopen_protocol.o
|
||||
include ../../../../build/modmake.rules
|
@ -0,0 +1,11 @@
|
||||
--- a/src/mod/xml_int/mod_xml_ldap/Makefile
|
||||
+++ b/src/mod/xml_int/mod_xml_ldap/Makefile
|
||||
@@ -14,7 +14,7 @@ LOCAL_LIBADD=$(LDAPLA) $(LIBLBERLA) $(LI
|
||||
|
||||
include $(BASE)/build/modmake.rules
|
||||
|
||||
-DEFAULT_ARGS+= --disable-slapd --disable-slurpd --disable-relay --disable-bdb --disable-hdb
|
||||
+DEFAULT_ARGS+= --disable-slapd --disable-slurpd --disable-relay --disable-bdb --disable-hdb --with-yielding_select=yes
|
||||
|
||||
$(LDAP_DIR):
|
||||
$(GETLIB) $(LDAP).tar.gz
|
@ -0,0 +1,10 @@
|
||||
--- a/src/mod/xml_int/mod_xml_rpc/Makefile
|
||||
+++ b/src/mod/xml_int/mod_xml_rpc/Makefile
|
||||
@@ -14,7 +14,6 @@ $(XMLRPC_DIR)/lib/abyss/src/date.o\
|
||||
$(XMLRPC_DIR)/src/double.o\
|
||||
$(XMLRPC_DIR)/lib/libutil/error.o\
|
||||
$(XMLRPC_DIR)/lib/abyss/src/file.o\
|
||||
-$(XMLRPC_DIR)/lib/expat/gennmtab/gennmtab.o\
|
||||
$(XMLRPC_DIR)/lib/util/getoptx.o\
|
||||
$(XMLRPC_DIR)/lib/abyss/src/handler.o\
|
||||
$(XMLRPC_DIR)/lib/abyss/src/http.o\
|
Loading…
x
Reference in New Issue
Block a user