mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-13 15:50:59 +00:00
Merge remote branch 'fsorig/master' into nfas
Conflicts: libs/freetdm/src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_stack_cntrl.c libs/freetdm/src/ftmod/ftmod_sangoma_isdn/ftmod_sangoma_isdn_stack_hndl.c
This commit is contained in:
commit
3a57b0bed6
15
.gitattributes
vendored
Normal file
15
.gitattributes
vendored
Normal file
@ -0,0 +1,15 @@
|
||||
# gitattributes
|
||||
*.exe -diff binary executable windows dfsg-nonfree debian-ignore
|
||||
*.wav -diff binary sound
|
||||
*.gif -diff binary image
|
||||
*.jpg -diff binary image
|
||||
*.jpeg -diff binary image
|
||||
*.pbm -diff binary image
|
||||
/clients/flex* dfsg-nonfree
|
||||
/debian* debian-ignore
|
||||
/freeswitch.xcodeproj debian-ignore
|
||||
/libs/ilbc* dfsg-nonfree
|
||||
/libs/libg722_1* dfsg-nonfree
|
||||
/libs/win32* windows debian-ignore
|
||||
/htdocs* dfsg-nonfree debian-ignore
|
||||
/w32* windows debian-ignore
|
26
.gitignore
vendored
26
.gitignore
vendored
@ -43,6 +43,7 @@ configure.lineno
|
||||
config.log
|
||||
config.status
|
||||
core.*
|
||||
TAGS
|
||||
*.2010.log
|
||||
*.Build.CppClean.log
|
||||
*.tlog
|
||||
@ -57,6 +58,7 @@ core.*
|
||||
!/w32/Setup/inno_setup/vcredist_x86.exe
|
||||
|
||||
/.version
|
||||
/.stamp-*
|
||||
/a.out.dSYM
|
||||
/AUTHORS
|
||||
/ChangeLog
|
||||
@ -71,6 +73,7 @@ core.*
|
||||
/Makefile.in
|
||||
/modules.conf
|
||||
/NEWS
|
||||
/noreg
|
||||
/Path
|
||||
/quiet_libtool
|
||||
/README
|
||||
@ -81,6 +84,8 @@ core.*
|
||||
/Debug/
|
||||
/bin/
|
||||
/Release/
|
||||
/ipch/
|
||||
/*.log
|
||||
|
||||
/build/config/compile
|
||||
/build/config/config.guess
|
||||
@ -96,6 +101,7 @@ core.*
|
||||
/build/Makefile
|
||||
/build/Makefile.in
|
||||
/build/modmake.rules
|
||||
/build/print_git_revision
|
||||
|
||||
/libs/curl/lib/ca-bundle.h
|
||||
/libs/esl/fs_cli
|
||||
@ -199,3 +205,23 @@ src/mod/formats/mod_shout/*/*/mod_shout.log
|
||||
/src/mod/languages/mod_managed/x64/Release_CLR/FREESWITCH.MANAGED.DLL.metagen
|
||||
/src/mod/languages/mod_managed/x64/Release_CLR/RSAENH.DLL.bi
|
||||
/src/mod/languages/mod_managed/x64/Release_CLR/TZRES.DLL.bi
|
||||
libs/apr-util/a.out.dSYM/Contents/Info.plist
|
||||
libs/apr-util/a.out.dSYM/Contents/Resources/DWARF/a.out
|
||||
libs/apr/a.out.dSYM/Contents/Info.plist
|
||||
libs/apr/a.out.dSYM/Contents/Resources/DWARF/a.out
|
||||
libs/iksemel/a.out.dSYM/Contents/Info.plist
|
||||
libs/iksemel/a.out.dSYM/Contents/Resources/DWARF/a.out
|
||||
libs/ilbc/a.out.dSYM/Contents/Info.plist
|
||||
libs/ilbc/a.out.dSYM/Contents/Resources/DWARF/a.out
|
||||
libs/libedit/a.out.dSYM/Contents/Info.plist
|
||||
libs/libedit/a.out.dSYM/Contents/Resources/DWARF/a.out
|
||||
libs/pcre/a.out.dSYM/Contents/Info.plist
|
||||
libs/pcre/a.out.dSYM/Contents/Resources/DWARF/a.out
|
||||
libs/sqlite/lemon.dSYM/Contents/Info.plist
|
||||
libs/sqlite/lemon.dSYM/Contents/Resources/DWARF/lemon
|
||||
libs/sqlite/mkkeywordhash.dSYM/Contents/Info.plist
|
||||
libs/sqlite/mkkeywordhash.dSYM/Contents/Resources/DWARF/mkkeywordhash
|
||||
libs/sqlite/sqlite3.dSYM/Contents/Info.plist
|
||||
libs/sqlite/sqlite3.dSYM/Contents/Resources/DWARF/sqlite3
|
||||
libs/srtp/a.out.dSYM/Contents/Info.plist
|
||||
libs/srtp/a.out.dSYM/Contents/Resources/DWARF/a.out
|
||||
|
@ -1 +0,0 @@
|
||||
@SWITCH_VERSION_REVISION@
|
@ -542,6 +542,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lcr", "src\mod\applicat
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspandsp", "libs\spandsp\src\libspandsp.2008.vcproj", "{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A} = {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}
|
||||
{329A6FA0-0FCC-4435-A950-E670AEFA9838} = {329A6FA0-0FCC-4435-A950-E670AEFA9838}
|
||||
{DEE932AB-5911-4700-9EEB-8C7090A0A330} = {DEE932AB-5911-4700-9EEB-8C7090A0A330}
|
||||
{401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}
|
||||
@ -667,6 +668,13 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_directory", "src\mod\ap
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ldns", "libs\win32\ldns\ldns-lib\ldns-lib.2008.vcproj", "{23B4D303-79FC-49E0-89E2-2280E7E28940}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download libjpeg", "libs\win32\Download libjpeg.2008.vcproj", "{21A7DA70-555E-49FA-942B-D84A38B61243}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjpeg", "libs\win32\libjpeg\libjpeg.2008.vcproj", "{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243} = {21A7DA70-555E-49FA-942B-D84A38B61243}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
All|Win32 = All|Win32
|
||||
@ -2138,6 +2146,24 @@ Global
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|Win32.Build.0 = Release|Win32
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.ActiveCfg = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.All|Win32.ActiveCfg = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.All|Win32.Build.0 = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.All|x64.ActiveCfg = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Release|Win32.Build.0 = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Release|x64.ActiveCfg = Release|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|Win32.ActiveCfg = Debug|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|Win32.Build.0 = Debug|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|x64.ActiveCfg = Debug|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|Win32.Build.0 = Release|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|x64.ActiveCfg = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
|
@ -718,6 +718,7 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libtiff", "libs\spandsp\src
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspandsp", "libs\spandsp\src\libspandsp.2008.vcproj", "{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A} = {FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}
|
||||
{329A6FA0-0FCC-4435-A950-E670AEFA9838} = {329A6FA0-0FCC-4435-A950-E670AEFA9838}
|
||||
{DEE932AB-5911-4700-9EEB-8C7090A0A330} = {DEE932AB-5911-4700-9EEB-8C7090A0A330}
|
||||
{401A40CD-5DB4-4E34-AC68-FA99E9FAC014} = {401A40CD-5DB4-4E34-AC68-FA99E9FAC014}
|
||||
@ -953,6 +954,20 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_abstraction", "src\mod\
|
||||
{202D7A4E-760D-4D0E-AFA1-D7459CED30FF} = {202D7A4E-760D-4D0E-AFA1-D7459CED30FF}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_gsmopen", "src\mod\endpoints\mod_gsmopen\mod_gsmopen.2008.vcproj", "{74B120FF-6935-4DFE-A142-CDB6BEA99C90}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gsmlib", "src\mod\endpoints\mod_gsmopen\gsmlib\gsmlib-1.10-patched-13ubuntu\win32\gsmlib.vcproj", "{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjpeg", "libs\win32\libjpeg\libjpeg.2008.vcproj", "{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243} = {21A7DA70-555E-49FA-942B-D84A38B61243}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download libjpeg", "libs\win32\Download libjpeg.2008.vcproj", "{21A7DA70-555E-49FA-942B-D84A38B61243}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
All|Win32 = All|Win32
|
||||
@ -2698,6 +2713,42 @@ Global
|
||||
{BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|Win32.Build.0 = Release|Win32
|
||||
{BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|x64.ActiveCfg = Release|x64
|
||||
{BDA173DB-F8EF-4270-9553-B453AF92E43A}.Release|x64.Build.0 = Release|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|Win32.ActiveCfg = Release|Win32
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|Win32.Build.0 = Release|Win32
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64.ActiveCfg = Release|Win32
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x64.ActiveCfg = Release|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|Win32.ActiveCfg = Debug|Win32
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|Win32.Build.0 = Debug|Win32
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64.ActiveCfg = Debug|Win32
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x64.ActiveCfg = Release|x64
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|Win32.ActiveCfg = Debug|x64
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|x64.ActiveCfg = Debug|x64
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.All|x64.Build.0 = Debug|x64
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Debug|x64.Build.0 = Debug|x64
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|Win32.Build.0 = Release|Win32
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|x64.ActiveCfg = Release|x64
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A}.Release|x64.Build.0 = Release|x64
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.All|Win32.ActiveCfg = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.All|Win32.Build.0 = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.All|x64.ActiveCfg = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Debug|x64.Build.0 = Debug|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Release|Win32.Build.0 = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Release|x64.ActiveCfg = Release|Win32
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243}.Release|x64.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@ -2723,6 +2774,7 @@ Global
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
|
||||
{48414740-C693-4968-9846-EE058020C64F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
|
||||
{30A5B29C-983E-4580-9FD0-D647CCDCC7EB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
|
||||
{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
|
||||
{C24FB505-05D7-4319-8485-7540B44C8603} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
|
||||
@ -2822,6 +2874,8 @@ Global
|
||||
{56B91D01-9150-4BBF-AFA1-5B68AB991B76} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{B376D494-D7DD-4B2A-99E2-52916D5A8CD8} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{FE02CD06-DD97-489C-8F61-B5E7F89BCC0A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{8B3B4C4C-13C2-446C-BEB0-F412CC2CFB9A} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
{4F92B672-DADB-4047-8D6A-4BB3796733FD} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
{2DEE4895-1134-439C-B688-52203E57D878} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
@ -2840,6 +2894,7 @@ Global
|
||||
{FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
{B808178B-82F0-4CF4-A2B1-921939FA24D0} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
{D578E676-7EC8-4548-BD8B-845C635F14AD} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
{21A7DA70-555E-49FA-942B-D84A38B61243} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
{988CACF7-3FCB-4992-BE69-77872AE67DC8} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
|
||||
{5BC072DB-3826-48EA-AF34-FE32AA01E83B} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
|
||||
{FA429E98-8B03-45E6-A096-A4BC5E821DE4} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
|
||||
|
@ -219,6 +219,9 @@ EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_lcr", "src\mod\applications\mod_lcr\mod_lcr.2010.vcxproj", "{1A3793D1-05D1-4B57-9B0F-5AF3E79DC439}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspandsp", "libs\spandsp\src\libspandsp.2010.vcxproj", "{1CBB0077-18C5-455F-801C-0A0CE7B0BBF5}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1} = {019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libspeex", "libs\speex\win32\VS2008\libspeex\libspeex.vcxproj", "{E972C52F-9E85-4D65-B19C-031E511E9DB4}"
|
||||
EndProject
|
||||
@ -320,6 +323,15 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ldns", "libs\win32\ldns\ldn
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpcre Generate pcre_chartables.c", "libs\win32\pcre\pcre_chartables.c.2010.vcxproj", "{1CED5987-A529-46DC-B30F-870D85FF9C94}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libzrtp", "libs\libzrtp\projects\win\libzrtp.2010.vcxproj", "{C13CC324-0032-4492-9A30-310A6BD64FF5}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download libjpeg", "libs\win32\Download libjpeg.2010.vcxproj", "{652AD5F7-8488-489F-AAD0-7FBE064703B6}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjpeg", "libs\win32\libjpeg\libjpeg.2010.vcxproj", "{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6} = {652AD5F7-8488-489F-AAD0-7FBE064703B6}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
All|Win32 = All|Win32
|
||||
@ -1989,6 +2001,35 @@ Global
|
||||
{1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|Win32.Build.0 = Release|Win32
|
||||
{1CED5987-A529-46DC-B30F-870D85FF9C94}.Release|x64.ActiveCfg = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.All|Win32.ActiveCfg = Release|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x64.ActiveCfg = Release|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x64.Build.0 = Release|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64.Build.0 = Debug|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|Win32.Build.0 = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64.ActiveCfg = Release|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64.Build.0 = Release|x64
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|Win32.ActiveCfg = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|Win32.Build.0 = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x64.ActiveCfg = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|Win32.Build.0 = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x64.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|Win32.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|Win32.Build.0 = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x64.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|Win32.Build.0 = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64.ActiveCfg = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@ -2089,6 +2130,7 @@ Global
|
||||
{ABB71A76-42B0-47A4-973A-42E3D920C6FD} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{9778F1C0-09BC-4698-8EBC-BD982247209A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{56B91D01-9150-4BBF-AFA1-5B68AB991B76} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{EC3E5C7F-EE09-47E2-80FE-546363D14A98} = {B8F5B47B-8568-46EB-B320-64C17D2A98BC}
|
||||
{1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {0C808854-54D1-4230-BFF5-77B5FD905000}
|
||||
{ACFFF684-4D19-4D48-AF12-88EA1D778BDF} = {0C808854-54D1-4230-BFF5-77B5FD905000}
|
||||
|
@ -235,6 +235,9 @@ EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsndfile", "libs\win32\libsndfile\libsndfile.2010.vcxproj", "{3D0370CA-BED2-4657-A475-32375CBCB6E4}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "curllib", "libs\win32\curl\curllib.2010.vcxproj", "{87EE9DA4-DE1E-4448-8324-183C98DCA588}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{25BD39B1-C8BF-4676-A738-9CABD9C6BC79} = {25BD39B1-C8BF-4676-A738-9CABD9C6BC79}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "xml", "libs\win32\apr-util\xml.2010.vcxproj", "{155844C3-EC5F-407F-97A4-A2DDADED9B2F}"
|
||||
EndProject
|
||||
@ -494,6 +497,9 @@ EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ssleay32", "libs\win32\openssl\ssleay32.2010.vcxproj", "{B4B62169-5AD4-4559-8707-3D933AC5DB39}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "openssl", "libs\win32\openssl\openssl.2010.vcxproj", "{25BD39B1-C8BF-4676-A738-9CABD9C6BC79}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{D578E676-7EC8-4548-BD8B-845C635F14AD} = {D578E676-7EC8-4548-BD8B-845C635F14AD}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download OPENSSL", "libs\win32\Download OPENSSL.2010.vcxproj", "{D578E676-7EC8-4548-BD8B-845C635F14AD}"
|
||||
EndProject
|
||||
@ -521,6 +527,21 @@ Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_abstraction", "src\mod\
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_sms", "src\mod\applications\mod_sms\mod_sms.2010.vcxproj", "{2469B306-B027-4FF2-8815-C9C1EA2CAE79}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "gsmlib", "src\mod\endpoints\mod_gsmopen\gsmlib\gsmlib-1.10-patched-13ubuntu\win32\gsmlib.2010.vcxproj", "{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_gsmopen", "src\mod\endpoints\mod_gsmopen\mod_gsmopen.2010.vcxproj", "{74B120FF-6935-4DFE-A142-CDB6BEA99C90}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libzrtp", "libs\libzrtp\projects\win\libzrtp.2010.vcxproj", "{C13CC324-0032-4492-9A30-310A6BD64FF5}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "mod_redis", "src\mod\applications\mod_redis\mod_redis.2010.vcxproj", "{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "Download libjpeg", "libs\win32\Download libjpeg.2010.vcxproj", "{652AD5F7-8488-489F-AAD0-7FBE064703B6}"
|
||||
EndProject
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libjpeg", "libs\win32\libjpeg\libjpeg.2010.vcxproj", "{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}"
|
||||
ProjectSection(ProjectDependencies) = postProject
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6} = {652AD5F7-8488-489F-AAD0-7FBE064703B6}
|
||||
EndProjectSection
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
All|Win32 = All|Win32
|
||||
@ -1238,11 +1259,15 @@ Global
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x64 Setup.Build.0 = Release|x64
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.All|x86 Setup.ActiveCfg = Release|x64
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64.Build.0 = Debug|x64
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Debug|x86 Setup.ActiveCfg = Debug|Win32
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|Win32.Build.0 = Release|Win32
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64.ActiveCfg = Release|x64
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64.Build.0 = Release|x64
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{7F1610F1-DD5A-4CF7-8610-30AB12C60ADD}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{9254C4B0-6F60-42B6-BB3A-36D63FC001C7}.All|Win32.ActiveCfg = Release|x64
|
||||
@ -2098,11 +2123,15 @@ Global
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x64 Setup.Build.0 = Release Static|x64
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.All|x86 Setup.ActiveCfg = Release Static|x64
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64.Build.0 = Debug|x64
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Debug|x86 Setup.ActiveCfg = Debug|Win32
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|Win32.Build.0 = Release|Win32
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64.ActiveCfg = Release|x64
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64.Build.0 = Release|x64
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{66444AEE-554C-11DD-A9F0-8C5D56D89593}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{D5D2BF72-29FE-4982-A9FA-82FDD086DB1B}.All|Win32.ActiveCfg = Release|Win32
|
||||
@ -2636,11 +2665,15 @@ Global
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x64 Setup.ActiveCfg = Release|Win32
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.All|x86 Setup.ActiveCfg = Release|Win32
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64.Build.0 = Debug|x64
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Debug|x86 Setup.ActiveCfg = Debug|Win32
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|Win32.Build.0 = Release|Win32
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64.ActiveCfg = Release|x64
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64.Build.0 = Release|x64
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{CC1DD008-9406-448D-A0AD-33C3186CFADB}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{48414740-C693-4968-9846-EE058020C64F}.All|Win32.ActiveCfg = Release|Win32
|
||||
@ -2648,11 +2681,15 @@ Global
|
||||
{48414740-C693-4968-9846-EE058020C64F}.All|x64 Setup.ActiveCfg = Release|Win32
|
||||
{48414740-C693-4968-9846-EE058020C64F}.All|x86 Setup.ActiveCfg = Release|Win32
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Debug|x64.Build.0 = Debug|x64
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Debug|x86 Setup.ActiveCfg = Debug|Win32
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Release|Win32.Build.0 = Release|Win32
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Release|x64.ActiveCfg = Release|x64
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Release|x64.Build.0 = Release|x64
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{48414740-C693-4968-9846-EE058020C64F}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{DEE932AB-5911-4700-9EEB-8C7090A0A330}.All|Win32.ActiveCfg = All|Win32
|
||||
@ -2712,11 +2749,15 @@ Global
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x86 Setup.ActiveCfg = Release|Win32
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.All|x86 Setup.Build.0 = Release|Win32
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64.Build.0 = Debug|x64
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x64 Setup.ActiveCfg = Debug|Win32
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Debug|x86 Setup.ActiveCfg = Debug|Win32
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|Win32.Build.0 = Release|Win32
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64.ActiveCfg = Release|x64
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64.Build.0 = Release|x64
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x64 Setup.ActiveCfg = Release|Win32
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{1F0A8A77-E661-418F-BB92-82172AE43803}.All|Win32.ActiveCfg = Release|Win32
|
||||
@ -3386,11 +3427,15 @@ Global
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x64 Setup.Build.0 = Release|x64
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.All|x86 Setup.ActiveCfg = Release|x64
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x64.Build.0 = Debug|x64
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Debug|x86 Setup.ActiveCfg = Debug|Win32
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|Win32.Build.0 = Release|Win32
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x64.ActiveCfg = Release|x64
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x64.Build.0 = Release|x64
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{B889A18E-70A7-44B5-B2C9-47798D4F43B3}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{05C9FB27-480E-4D53-B3B7-7338E2514666}.All|Win32.ActiveCfg = Release|Win32
|
||||
@ -3414,11 +3459,15 @@ Global
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x64 Setup.Build.0 = Release|x64
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.All|x86 Setup.ActiveCfg = Release|x64
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x64.Build.0 = Debug|x64
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Debug|x86 Setup.ActiveCfg = Debug|Win32
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|Win32.Build.0 = Release|Win32
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x64.ActiveCfg = Release|x64
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x64.Build.0 = Release|x64
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{5C2B4D88-3BEA-4FE0-90DF-FA9836099D5F}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{47213370-B933-487D-9F45-BCA26D7E2B6F}.All|Win32.ActiveCfg = Release|x86
|
||||
@ -3453,7 +3502,7 @@ Global
|
||||
{7C22BDFF-CC09-400C-8A09-660733980028}.Release|x64.ActiveCfg = Release|x64
|
||||
{7C22BDFF-CC09-400C-8A09-660733980028}.Release|x64.Build.0 = Release|x64
|
||||
{7C22BDFF-CC09-400C-8A09-660733980028}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{7C22BDFF-CC09-400C-8A09-660733980028}.Release|x86 Setup.ActiveCfg = Release|x64
|
||||
{7C22BDFF-CC09-400C-8A09-660733980028}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.All|Win32.ActiveCfg = Release|x64
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.ActiveCfg = Release|x64
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.All|x64.Build.0 = Release|x64
|
||||
@ -3470,33 +3519,41 @@ Global
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.ActiveCfg = Release|x64
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64.Build.0 = Release|x64
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x86 Setup.ActiveCfg = Release|x64
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|Win32.ActiveCfg = Release|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x64.ActiveCfg = Release|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x64.Build.0 = Release|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x64 Setup.ActiveCfg = Release|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.All|x86 Setup.ActiveCfg = Release|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x64.Build.0 = Debug|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Debug|x86 Setup.ActiveCfg = Debug|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|Win32.Build.0 = Release|Win32
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x64.ActiveCfg = Release|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x64.Build.0 = Release|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x86 Setup.ActiveCfg = Release|x64
|
||||
{47886A6C-CCA6-4F9F-A7D4-F97D06FB2B1A}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|Win32.ActiveCfg = Release|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x64.ActiveCfg = Release|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x64.Build.0 = Release|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x64 Setup.ActiveCfg = Release|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.All|x86 Setup.ActiveCfg = Release|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x64.Build.0 = Debug|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Debug|x86 Setup.ActiveCfg = Debug|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|Win32.Build.0 = Release|Win32
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x64.ActiveCfg = Release|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x64.Build.0 = Release|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x86 Setup.ActiveCfg = Release|x64
|
||||
{50AAC2CE-BFC9-4912-87CC-C6381850D735}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|Win32.ActiveCfg = Release|x64
|
||||
{4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|x64.ActiveCfg = Release|x64
|
||||
{4748FF56-CA85-4809-97D6-A94C0FAC1D77}.All|x64.Build.0 = Release|x64
|
||||
@ -3513,7 +3570,7 @@ Global
|
||||
{4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x64.ActiveCfg = Release|x64
|
||||
{4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x64.Build.0 = Release|x64
|
||||
{4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x86 Setup.ActiveCfg = Release|x64
|
||||
{4748FF56-CA85-4809-97D6-A94C0FAC1D77}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|Win32.ActiveCfg = Release|x64
|
||||
{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|x64.ActiveCfg = Release|x64
|
||||
{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.All|x64.Build.0 = Release|x64
|
||||
@ -3530,20 +3587,118 @@ Global
|
||||
{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x64.ActiveCfg = Release|x64
|
||||
{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x64.Build.0 = Release|x64
|
||||
{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x86 Setup.ActiveCfg = Release|x64
|
||||
{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|Win32.ActiveCfg = Release|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x64.ActiveCfg = Release|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x64.Build.0 = Release|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x64 Setup.ActiveCfg = Release|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.All|x86 Setup.ActiveCfg = Release|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x64.Build.0 = Debug|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Debug|x86 Setup.ActiveCfg = Debug|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|Win32.Build.0 = Release|Win32
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x64.ActiveCfg = Release|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x64.Build.0 = Release|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x86 Setup.ActiveCfg = Release|x64
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|Win32.ActiveCfg = Release|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64.ActiveCfg = Release|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64.Build.0 = Release|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x64 Setup.ActiveCfg = Release|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.All|x86 Setup.ActiveCfg = Release|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Debug|x86 Setup.ActiveCfg = Debug|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x64.ActiveCfg = Release|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53}.Release|x86 Setup.ActiveCfg = Release|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|Win32.ActiveCfg = Release|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64.ActiveCfg = Release|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64.Build.0 = Release|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x64 Setup.ActiveCfg = Release|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.All|x86 Setup.ActiveCfg = Release|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Debug|x86 Setup.ActiveCfg = Debug|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x64.ActiveCfg = Release|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90}.Release|x86 Setup.ActiveCfg = Release|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.All|Win32.ActiveCfg = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.All|Win32.Build.0 = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x64.ActiveCfg = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x64 Setup.ActiveCfg = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.All|x86 Setup.ActiveCfg = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64.Build.0 = Debug|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x64 Setup.ActiveCfg = Debug|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Debug|x86 Setup.ActiveCfg = Debug|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|Win32.Build.0 = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64.ActiveCfg = Release|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64.Build.0 = Release|x64
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x64 Setup.ActiveCfg = Release|Win32
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|Win32.ActiveCfg = Release|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x64.ActiveCfg = Release|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x64.Build.0 = Release|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x64 Setup.ActiveCfg = Release|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.All|x86 Setup.ActiveCfg = Release|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x64.Build.0 = Debug|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x64 Setup.ActiveCfg = Debug|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Debug|x86 Setup.ActiveCfg = Debug|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|Win32.Build.0 = Release|Win32
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x64.ActiveCfg = Release|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x64.Build.0 = Release|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x64 Setup.ActiveCfg = Release|x64
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6}.Release|x86 Setup.ActiveCfg = Release|x64
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|Win32.ActiveCfg = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|Win32.Build.0 = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x64.ActiveCfg = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x64 Setup.ActiveCfg = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.All|x86 Setup.ActiveCfg = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64.ActiveCfg = Debug|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64.Build.0 = Debug|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x64 Setup.ActiveCfg = Debug|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Debug|x86 Setup.ActiveCfg = Debug|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|Win32.Build.0 = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x64.ActiveCfg = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x64.Build.0 = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x64 Setup.ActiveCfg = Release|Win32
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|Win32.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|Win32.Build.0 = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x64.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x64 Setup.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.All|x86 Setup.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64.ActiveCfg = Debug|x64
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64.Build.0 = Debug|x64
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x64 Setup.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Debug|x86 Setup.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|Win32.Build.0 = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64.ActiveCfg = Release|x64
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64.Build.0 = Release|x64
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x64 Setup.ActiveCfg = Release|Win32
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1}.Release|x86 Setup.ActiveCfg = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
@ -3569,6 +3724,7 @@ Global
|
||||
{48414740-C693-4968-9846-EE058020C64F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
|
||||
{C6E78A4C-DB1E-47F4-9B63-4DC27D86343F} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
|
||||
{05C9FB27-480E-4D53-B3B7-7338E2514666} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
|
||||
{74B120FF-6935-4DFE-A142-CDB6BEA99C90} = {9460B5F1-0A95-41C4-BEB7-9C2C96459A7C}
|
||||
{30A5B29C-983E-4580-9FD0-D647CCDCC7EB} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
|
||||
{B69247FA-ECD6-40ED-8E44-5CA6C3BAF9A4} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
|
||||
{C24FB505-05D7-4319-8485-7540B44C8603} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
|
||||
@ -3598,6 +3754,7 @@ Global
|
||||
{4748FF56-CA85-4809-97D6-A94C0FAC1D77} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
|
||||
{60C542EE-6882-4EA2-8C21-5AB6DB1BA73F} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
|
||||
{2469B306-B027-4FF2-8815-C9C1EA2CAE79} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
|
||||
{886B5E9D-F2C2-4AF2-98C8-EF98C4C770E6} = {E72B5BCB-6462-4D23-B419-3AF1A4AC3D78}
|
||||
{07113B25-D3AF-4E04-BA77-4CD1171F022C} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
|
||||
{A27CCA23-1541-4337-81A4-F0A6413078A0} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
|
||||
{E7BC026C-7CC5-45A3-BC7C-3B88EEF01F24} = {C5F182F9-754A-4EC5-B50F-76ED02BE13F4}
|
||||
@ -3655,6 +3812,9 @@ Global
|
||||
{E4D29906-8B73-4F8A-B5F4-CA8BFA648F5A} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{70A49BC2-7500-41D0-B75D-EDCC5BE987A0} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{23B4D303-79FC-49E0-89E2-2280E7E28940} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{26C82FCE-E0CF-4D10-A00C-D8E582FFEB53} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{C13CC324-0032-4492-9A30-310A6BD64FF5} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{019DBD2A-273D-4BA4-BF86-B5EFE2ED76B1} = {EB910B0D-F27D-4B62-B67B-DE834C99AC5B}
|
||||
{EC3E5C7F-EE09-47E2-80FE-546363D14A98} = {B8F5B47B-8568-46EB-B320-64C17D2A98BC}
|
||||
{1AD3F51E-BBB6-4090-BA39-9DFAB1EF1F5F} = {0C808854-54D1-4230-BFF5-77B5FD905000}
|
||||
{ACFFF684-4D19-4D48-AF12-88EA1D778BDF} = {0C808854-54D1-4230-BFF5-77B5FD905000}
|
||||
@ -3693,6 +3853,7 @@ Global
|
||||
{FFF82F9B-6A2B-4BE3-95D8-DC5A4FC71E19} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
{B808178B-82F0-4CF4-A2B1-921939FA24D0} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
{D578E676-7EC8-4548-BD8B-845C635F14AD} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
{652AD5F7-8488-489F-AAD0-7FBE064703B6} = {C120A020-773F-4EA3-923F-B67AF28B750D}
|
||||
{988CACF7-3FCB-4992-BE69-77872AE67DC8} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
|
||||
{5BC072DB-3826-48EA-AF34-FE32AA01E83B} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
|
||||
{FA429E98-8B03-45E6-A096-A4BC5E821DE4} = {6CD61A1D-797C-470A-BE08-8C31B68BB336}
|
||||
|
61
Makefile.am
61
Makefile.am
@ -20,11 +20,18 @@ DEFAULT_SOUNDS=en-us-callie-8000
|
||||
sounds_version=`grep $$base_sound_dir $(switch_srcdir)/build/sounds_version.txt | cut -d ' ' -f2`;\
|
||||
soundfile=`echo freeswitch-sounds-$$full_sound_dir-$$moh_version.tar.gz`; \
|
||||
echo $$full_sound_dir | grep music >/dev/null || soundfile=`echo freeswitch-sounds-$$full_sound_dir-$$sounds_version.tar.gz`; \
|
||||
if test "$$target" = "install"; then $(MAKE) $(AM_MAKEFLAGS) core_install; else $(MAKE) $(AM_MAKEFLAGS) core ; fi; \
|
||||
if test "$$target_prefix" = "sounds"; then \
|
||||
if test "$$target" = "install"; then $(GETSOUNDS) $$soundfile $(DESTDIR)$(soundsdir)/; else $(GETSOUNDS) $$soundfile ; fi; \
|
||||
if test "$$target" = "install"; then \
|
||||
$(GETSOUNDS) $$soundfile $(DESTDIR)$(soundsdir)/;\
|
||||
else \
|
||||
$(GETSOUNDS) $$soundfile ; \
|
||||
fi; \
|
||||
else \
|
||||
cd src/mod && $(MAKE) $(AM_MAKEFLAGS) $@ ;\
|
||||
if test "$$target" = "install"; then \
|
||||
$(MAKE) $(AM_MAKEFLAGS) core_install && cd src/mod && $(MAKE) $(AM_MAKEFLAGS) $@ ; \
|
||||
else \
|
||||
$(MAKE) $(AM_MAKEFLAGS) core && cd src/mod && $(MAKE) $(AM_MAKEFLAGS) $@ ;\
|
||||
fi; \
|
||||
fi
|
||||
|
||||
sounds: sounds-en-us-callie-8000
|
||||
@ -102,7 +109,7 @@ CORE_CFLAGS += -I$(switch_srcdir)/libs/pcre
|
||||
CORE_CFLAGS += -I$(switch_srcdir)/libs/speex/include -Ilibs/speex/include
|
||||
CORE_CFLAGS += -I$(switch_srcdir)/libs/srtp/include
|
||||
CORE_CFLAGS += -I$(switch_srcdir)/libs/srtp/crypto/include -Ilibs/srtp/crypto/include
|
||||
CORE_CFLAGS += -I$(switch_srcdir)/libs/spandsp/src -I$(switch_srcdir)/libs/tiff-3.8.2/libtiff
|
||||
CORE_CFLAGS += -I$(switch_srcdir)/libs/spandsp/src -I$(switch_srcdir)/libs/tiff-4.0.2/libtiff
|
||||
|
||||
CORE_LIBS = libs/apr-util/libaprutil-1.la libs/apr/libapr-1.la
|
||||
CORE_LIBS += libs/sqlite/libsqlite3.la libs/pcre/libpcre.la libs/speex/libspeex/libspeexdsp.la
|
||||
@ -150,8 +157,8 @@ if ENABLE_ZRTP
|
||||
CORE_CFLAGS += -I$(switch_srcdir)/libs/libzrtp/third_party/bgaes
|
||||
CORE_CFLAGS += -I$(switch_srcdir)/libs/libzrtp/third_party/bnlib
|
||||
CORE_CFLAGS += -isystem $(switch_srcdir)/libs/libzrtp/include
|
||||
ZRTP_LDFLAGS = -Llibs/libzrtp/third_party/bnlib
|
||||
ZRTP_LDFLAGS += -Llibs/libzrtp/projects/gnu/build
|
||||
ZRTP_LDFLAGS = -L$(switch_srcdir)/libs/libzrtp/third_party/bnlib
|
||||
ZRTP_LDFLAGS += -L$(switch_srcdir)/libs/libzrtp/projects/gnu/build
|
||||
ZRTP_LIBS = -lbn -lzrtp
|
||||
libfreeswitch_la_LDFLAGS += $(ZRTP_LDFLAGS)
|
||||
libfreeswitch_la_LIBADD += $(ZRTP_LIBS)
|
||||
@ -408,29 +415,19 @@ $(OUR_MODULES): $(switch_builddir)/modules.conf libfreeswitch.la
|
||||
$(switch_builddir)/quiet_libtool: $(switch_builddir)/libtool
|
||||
@cat libtool | sed -e 's|$$show "$$command"|if test -z "$$suppress_output" ; then $$show "Compiling $$srcfile ..." ; fi|' > $(switch_builddir)/quiet_libtool
|
||||
|
||||
src/include/switch_version.h: src/include/switch_version.h.in .version $(libfreeswitch_la_SOURCES) $(library_include_HEADERS)
|
||||
@have_version=1 ; \
|
||||
force=0 ; \
|
||||
grep "@SWITCH_VERSION_REVISION@" src/include/switch_version.h.in > /dev/null && have_version=0 ; \
|
||||
test ! -f src/include/switch_version.h || grep "@SWITCH_VERSION_REVISION@" src/include/switch_version.h > /dev/null && force=1 ; \
|
||||
if test $$have_version = 1 ; then \
|
||||
cat src/include/switch_version.h.in > src/include/switch_version.h ; \
|
||||
touch .version ; \
|
||||
else \
|
||||
if [ -d .git ] ; then \
|
||||
version=`git log --pretty=format:"%h %ci" -1 HEAD | head -1 | sed -e 's|:|-|g' || echo hacked` ; \
|
||||
if [ "x$$version" = "xhacked" ] ; then \
|
||||
version="hacked-`date -u +%Y%m%dT%H%M%SZ`" ; \
|
||||
else \
|
||||
version="git-$$version" ; \
|
||||
fi ;\
|
||||
fi ; \
|
||||
oldversion=`cat .version 2>/dev/null || echo "0"` ; \
|
||||
if test "$$oldversion" != "$$version" || test $$force = 1 ; then \
|
||||
cat src/include/switch_version.h.in | sed "s/@SWITCH_VERSION_REVISION@/$$version/g" > src/include/switch_version.h ; \
|
||||
echo $$version > .version ; \
|
||||
fi ; \
|
||||
fi ;
|
||||
build/print_git_revision: build/print_git_revision.c
|
||||
$(CC) -o $@ $<
|
||||
|
||||
src/include/switch_version.h: src/include/switch_version.h.in Makefile build/print_git_revision $(libfreeswitch_la_SOURCES) $(library_include_HEADERS)
|
||||
@cat $< > $@; \
|
||||
if [ -d .git ] && [ -n "$$(which git)" ]; then \
|
||||
xver="$$(./build/print_git_revision)"; \
|
||||
xhver="$$(./build/print_git_revision -h)"; \
|
||||
sed \
|
||||
-e "/#define *SWITCH_VERSION_REVISION[^a-zA-Z0-9_]/{s/\"\([^\"]*\)\"/\"\1$$xver\"/;}" \
|
||||
-e "/#define *SWITCH_VERSION_REVISION_HUMAN[^a-zA-Z0-9_]/{s/\"\([^\"]*\)\"/\"\1$$xhver\"/;}" \
|
||||
$< > $@; \
|
||||
fi;
|
||||
|
||||
##
|
||||
## Dependency targets
|
||||
@ -537,7 +534,6 @@ is-scm:
|
||||
|
||||
update: is-scm
|
||||
@if test -d .git ; then \
|
||||
test ! -f .version || rm -f .version ; \
|
||||
echo "Pulling updates..." ; \
|
||||
git pull ; \
|
||||
else \
|
||||
@ -621,8 +617,8 @@ sndfile-reconf:
|
||||
cd libs/libsndfile && ./config.status
|
||||
|
||||
tiff-reconf:
|
||||
cd libs/tiff-3.8.2 && autoreconf -fi
|
||||
cd libs/tiff-3.8.2 && sh ./configure.gnu
|
||||
cd libs/tiff-4.0.2 && autoreconf -fi
|
||||
cd libs/tiff-4.0.2 && sh ./configure.gnu
|
||||
cd libs/spandsp && autoreconf -fi
|
||||
cd libs/spandsp && sh ./configure.gnu
|
||||
make mod_voipcodecs-clean
|
||||
@ -663,6 +659,7 @@ cluecon:
|
||||
@clear
|
||||
@echo Thank you for updating. This is going to take a while so relax.
|
||||
@echo Now would be a good time to register for ClueCon!
|
||||
@cat cluecon2.tmpl
|
||||
@echo
|
||||
@echo http://www.cluecon.com
|
||||
@sleep 5
|
||||
|
39
bootstrap.sh
39
bootstrap.sh
@ -9,8 +9,8 @@ VERBOSE=false
|
||||
BASEDIR=`pwd`;
|
||||
LIBDIR=${BASEDIR}/libs;
|
||||
SUBDIRS="apr \
|
||||
libzrtp ilbc curl iksemel js js/nsprpub ldns libdingaling libedit libsndfile pcre sofia-sip \
|
||||
speex sqlite srtp openzap freetdm spandsp libg722_1 portaudio unimrcp tiff-3.8.2 broadvoice silk libcodec2 \
|
||||
libzrtp ilbc curl iksemel js js/nsprpub ldns libdingaling libedit libsndfile pcre sofia-sip libwebsockets \
|
||||
speex sqlite srtp openzap freetdm spandsp libg722_1 portaudio unimrcp tiff-4.0.2 broadvoice silk libcodec2 \
|
||||
fs";
|
||||
|
||||
while getopts 'jhd:v' o; do
|
||||
@ -209,24 +209,11 @@ check_make() {
|
||||
|
||||
|
||||
check_awk() {
|
||||
#
|
||||
# Check to make sure we have GNU Make installed
|
||||
#
|
||||
|
||||
awk=`which awk`
|
||||
if [ -x "$awk" ]; then
|
||||
awk_version=`$awk --version | head -n 1 |grep GNU`
|
||||
if [ $? -ne 0 ]; then
|
||||
awk=`which gawk`
|
||||
if [ -x "$awk" ]; then
|
||||
awk_version=`$awk --version | head -n 1 |grep GNU`
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "GNU awk does not exist or is not executable"
|
||||
exit 1;
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
# TODO: Building with mawk on at least Debian squeeze is know to
|
||||
# work, but mawk is believed to fail on some systems. If we can
|
||||
# replicate this, we need a particular behavior that we can test
|
||||
# here to verify whether we have an acceptable awk.
|
||||
:
|
||||
}
|
||||
|
||||
|
||||
@ -356,11 +343,7 @@ bootstrap_apr() {
|
||||
|
||||
echo "Entering directory ${LIBDIR}/apr-util"
|
||||
cd ${LIBDIR}/apr-util
|
||||
if ! ${BGJOB}; then
|
||||
./buildconf
|
||||
else
|
||||
./buildconf &
|
||||
fi
|
||||
./buildconf
|
||||
}
|
||||
|
||||
bootstrap_libzrtp() {
|
||||
@ -447,7 +430,7 @@ bootstrap_libs_post() {
|
||||
ldns)
|
||||
cd $BASEDIR/libs/ldns
|
||||
if test ! -x install-sh; then
|
||||
ex automake --add-missing --copy
|
||||
ex ${AUTOMAKE:-automake} --add-missing --copy
|
||||
ex rm -rf autom4te*.cache
|
||||
fi
|
||||
;;
|
||||
@ -467,9 +450,10 @@ bootstrap_libs() {
|
||||
if ! ${BGJOB}; then
|
||||
libbootstrap ${i} ; bootstrap_libs_post ${i}
|
||||
else
|
||||
((libbootstrap ${i} ; bootstrap_libs_post ${i}) &)
|
||||
(libbootstrap ${i} ; bootstrap_libs_post ${i}) &
|
||||
fi
|
||||
done
|
||||
${BGJOB} && wait
|
||||
}
|
||||
|
||||
run() {
|
||||
@ -484,7 +468,6 @@ run() {
|
||||
check_libtoolize
|
||||
print_autotools_vers
|
||||
bootstrap_libs
|
||||
${BGJOB} && wait
|
||||
return 0
|
||||
}
|
||||
|
||||
|
@ -11,7 +11,7 @@ all:
|
||||
@echo " + http://www.cluecon.com +"
|
||||
@echo " + +"
|
||||
@echo " +-----------------------------------------------+"
|
||||
|
||||
@cat ../cluecon2.tmpl
|
||||
|
||||
install:
|
||||
@echo " +---------- FreeSWITCH install Complete ----------+"
|
||||
@ -69,7 +69,7 @@ install:
|
||||
@echo " + http://www.cluecon.com +"
|
||||
@echo " + +"
|
||||
@echo " +-------------------------------------------------+"
|
||||
|
||||
@cat ../cluecon2.tmpl
|
||||
|
||||
|
||||
.PHONY: check dvi html info install-data \
|
||||
|
@ -1,20 +1,61 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [ -z "$1" ]; then
|
||||
INSTALLDIR=/usr/local
|
||||
else
|
||||
INSTALLDIR="$1"
|
||||
fi
|
||||
|
||||
if [ -z `which svn` ]; then
|
||||
echo "Need SVN installed!"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
uname -a | grep -qi bsd && MAKE=gmake || MAKE=make
|
||||
|
||||
#Locate our script, then go up one directory to be in FreeSWITCH root
|
||||
cd `dirname $0`
|
||||
cd ..
|
||||
FS_DIR=`pwd`
|
||||
|
||||
cd /root
|
||||
svn co https://opalvoip.svn.sourceforge.net/svnroot/opalvoip/ptlib/trunk ptlib
|
||||
cd ptlib
|
||||
./configure --prefix=/usr
|
||||
${MAKE}
|
||||
${MAKE} install
|
||||
export PKG_CONFIG_PATH=$INSTALLDIR/lib/pkgconfig
|
||||
|
||||
cd ..
|
||||
svn co https://opalvoip.svn.sourceforge.net/svnroot/opalvoip/opal/branches/v3_6 opal
|
||||
cd opal
|
||||
export PKG_CONFIG_PATH=/usr/lib/pkgconfig
|
||||
./configure --prefix=/usr
|
||||
|
||||
# Version and patch for PTLib and OPAL. These are almost always in lock
|
||||
# step so shoud be the same unless you really know ehat you are doing!
|
||||
# The PATCH should be set to a specific"snapshot release" when things
|
||||
# are nice and stable.
|
||||
|
||||
VERSION=10
|
||||
#PATCH=6
|
||||
|
||||
if [ -z "$PATCH" ]; then
|
||||
PTLIB_VERSION=branches/v2_$VERSION
|
||||
OPAL_VERSION=branches/v3_$VERSION
|
||||
else
|
||||
PTLIB_VERSION=tags/v2_${VERSION}_$PATCH
|
||||
OPAL_VERSION=tags/v3_${VERSION}_$PATCH
|
||||
fi
|
||||
|
||||
|
||||
cd $FS_DIR/libs
|
||||
svn co https://opalvoip.svn.sourceforge.net/svnroot/opalvoip/ptlib/$PTLIB_VERSION ptlib
|
||||
cd $FS_DIR/libs/ptlib
|
||||
# LDAP disabled due to conflict wit libs in spidermonkey
|
||||
./configure --disable-plugins --disable-openldap --prefix=$INSTALLDIR
|
||||
${MAKE}
|
||||
${MAKE} install
|
||||
cd ${FS_DIR}
|
||||
${MAKE} mod_opal-install
|
||||
sudo ${MAKE} install
|
||||
|
||||
cd $FS_DIR/libs
|
||||
svn co https://opalvoip.svn.sourceforge.net/svnroot/opalvoip/opal/$OPAL_VERSION opal
|
||||
cd $FS_DIR/libs/opal
|
||||
./configure --disable-plugins --prefix=$INSTALLDIR
|
||||
$MAKE
|
||||
sudo $MAKE install
|
||||
|
||||
echo "======================================"
|
||||
echo "PTLib/OPAL build and install completed"
|
||||
echo "======================================"
|
||||
|
||||
cd $FS_DIR
|
||||
$MAKE mod_opal-install
|
||||
|
@ -46,12 +46,7 @@
|
||||
# Voice Platform
|
||||
### END INIT INFO
|
||||
#
|
||||
# Check for missing binaries (stale symlinks should not happen)
|
||||
# Note: Special treatment of stop for LSB conformance
|
||||
FREESWITCH_BIN=/opt/freeswitch/bin/freeswitch
|
||||
test -x $FREESWITCH_BIN || { echo "$FREESWITCH_BIN not installed";
|
||||
if [ "$1" = "stop" ]; then exit 0;
|
||||
else exit 5; fi; }
|
||||
|
||||
# Check for existence of needed config file and read it
|
||||
FREESWITCH_CONFIG=/etc/sysconfig/freeswitch
|
||||
@ -62,6 +57,12 @@ test -r $FREESWITCH_CONFIG || { echo "$FREESWITCH_CONFIG not existing";
|
||||
# Read config
|
||||
. $FREESWITCH_CONFIG
|
||||
|
||||
# Check for missing binaries (stale symlinks should not happen)
|
||||
# Note: Special treatment of stop for LSB conformance
|
||||
test -x $FREESWITCH_BIN || { echo "$FREESWITCH_BIN not installed";
|
||||
if [ "$1" = "stop" ]; then exit 0;
|
||||
else exit 5; fi; }
|
||||
|
||||
# Source LSB init functions
|
||||
# providing start_daemon, killproc, pidofproc,
|
||||
# log_success_msg, log_failure_msg and log_warning_msg.
|
||||
@ -202,7 +203,7 @@ case "$1" in
|
||||
## argument to this init script which is required for a reload.
|
||||
## Note: probe is not (yet) part of LSB (as of 1.9)
|
||||
|
||||
test /opt/freeswitch/conf/freeswitch.xml -nt /opt/freeswitch/run/freeswitch.pid && echo reload
|
||||
test ${FREESWITCH_HOME}/conf/freeswitch.xml -nt ${FREESWITCH_HOME}/run/freeswitch.pid && echo reload
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|status|try-restart|restart|force-reload|reload|probe}"
|
||||
|
@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
##### -*- mode:shell-script; indent-tabs-mode:nil; sh-basic-offset:2 -*-
|
||||
|
||||
TAR=@TAR@
|
||||
ZCAT=@ZCAT@
|
||||
@ -8,39 +9,39 @@ WGET=@WGET@
|
||||
CURL=@CURL@
|
||||
|
||||
if [ -f "$WGET" ]; then
|
||||
DOWNLOAD_CMD=$WGET
|
||||
DOWNLOAD_CMD=$WGET
|
||||
elif [ -f "$CURL" ]; then
|
||||
DOWNLOAD_CMD="$CURL -O"
|
||||
DOWNLOAD_CMD="$CURL -O"
|
||||
fi
|
||||
|
||||
if [ -n "`echo $1 | grep '://'`" ]; then
|
||||
base=$1/
|
||||
tarfile=$2
|
||||
base=$1/
|
||||
tarfile=$2
|
||||
else
|
||||
base=http://files.freeswitch.org/downloads/libs/
|
||||
tarfile=$1
|
||||
base=http://files.freeswitch.org/downloads/libs/
|
||||
tarfile=$1
|
||||
fi
|
||||
|
||||
uncompressed=`echo $tarfile | sed 's/\(\(\.tar\.gz\|\.tar\.bz2\|\.tar\.xz\)\|\(\.tgz\|\.tbz2\)\)$//'`
|
||||
|
||||
case `echo $tarfile | sed 's/^.*\.//'` in
|
||||
bz2|tbz2) UNZIPPER=$BZIP ;;
|
||||
xz) UNZIPPER=$XZ ;;
|
||||
gz|tgz|*) UNZIPPER=$ZCAT ;;
|
||||
bz2|tbz2) UNZIPPER=$BZIP ;;
|
||||
xz) UNZIPPER=$XZ ;;
|
||||
gz|tgz|*) UNZIPPER=$ZCAT ;;
|
||||
esac
|
||||
|
||||
if [ ! -d $tarfile ]; then
|
||||
if [ ! -f $tarfile ]; then
|
||||
rm -fr $uncompressed
|
||||
$DOWNLOAD_CMD $base$tarfile
|
||||
if [ ! -f $tarfile ]; then
|
||||
rm -fr $uncompressed
|
||||
$DOWNLOAD_CMD $base$tarfile
|
||||
if [ ! -f $tarfile ]; then
|
||||
echo cannot find $tarfile
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
if [ ! -d $uncompressed ]; then
|
||||
$UNZIPPER -c -d $tarfile | $TAR -xf -
|
||||
echo cannot find $tarfile
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
if [ ! -d $uncompressed ]; then
|
||||
$UNZIPPER -c -d $tarfile | $TAR -xf -
|
||||
fi
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
@ -1,4 +1,5 @@
|
||||
#!/bin/sh
|
||||
##### -*- mode:shell-script; indent-tabs-mode:nil; sh-basic-offset:2 -*-
|
||||
|
||||
TAR=@TAR@
|
||||
ZCAT=@ZCAT@
|
||||
@ -7,11 +8,11 @@ CURL=@CURL@
|
||||
|
||||
DIR=`pwd`
|
||||
|
||||
if [ -x "$WGET" ] ; then
|
||||
DOWNLOAD_CMD=$WGET
|
||||
if [ -x "$WGET" ]; then
|
||||
DOWNLOAD_CMD=$WGET
|
||||
fi
|
||||
if [ "x${DOWNLOAD_CMD}" = "x" -a -x "$CURL" ] ; then
|
||||
DOWNLOAD_CMD="$CURL -O"
|
||||
DOWNLOAD_CMD="$CURL -O"
|
||||
fi
|
||||
|
||||
base=http://files.freeswitch.org/
|
||||
@ -22,17 +23,22 @@ echo -n "#"
|
||||
pwd
|
||||
echo "# $0 $1 $2"
|
||||
|
||||
if [ ! -f $tarfile ] ; then
|
||||
$DOWNLOAD_CMD $base$tarfile
|
||||
if [ ! -f $tarfile ] ; then
|
||||
echo cannot find $tarfile
|
||||
exit 1
|
||||
fi
|
||||
if [ -n "$FS_SOUNDS_DIR" ]; then
|
||||
[ -d $FS_SOUNDS_DIR ] || mkdir -p $FS_SOUNDS_DIR
|
||||
DIR=$FS_SOUNDS_DIR
|
||||
fi
|
||||
|
||||
if [ ! -z $install ] ; then
|
||||
test -d $install || mkdir $install
|
||||
cd $install && $ZCAT -c -d $DIR/$tarfile | $TAR xf -
|
||||
if [ ! -f $DIR/$tarfile ]; then
|
||||
(cd $DIR && $DOWNLOAD_CMD $base$tarfile)
|
||||
if [ ! -f $DIR/$tarfile ]; then
|
||||
echo "cannot find $tarfile"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ ! -z "$install" ]; then
|
||||
test -d $install || mkdir $install
|
||||
(cd $install && $ZCAT -c -d $DIR/$tarfile | $TAR xf -)
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
@ -1,6 +1,6 @@
|
||||
################################################################################
|
||||
# ignore_helper.pl
|
||||
# Copyright (c) 2007-2009 Anthony Minessale II <anthm@freeswitch.org>
|
||||
# Copyright (c) 2007-2012 Anthony Minessale II <anthm@freeswitch.org>
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person
|
||||
# obtaining a copy of this software and associated documentation
|
||||
|
@ -42,6 +42,7 @@ applications/mod_valet_parking
|
||||
#applications/mod_vmd
|
||||
applications/mod_voicemail
|
||||
#applications/mod_voicemail_ivr
|
||||
#applications/mod_random
|
||||
#asr_tts/mod_cepstral
|
||||
#asr_tts/mod_flite
|
||||
#asr_tts/mod_pocketsphinx
|
||||
@ -57,12 +58,13 @@ codecs/mod_bv
|
||||
codecs/mod_g723_1
|
||||
codecs/mod_g729
|
||||
codecs/mod_h26x
|
||||
codecs/mod_ilbc
|
||||
codecs/mod_vp8
|
||||
#codecs/mod_ilbc
|
||||
#codecs/mod_isac
|
||||
#codecs/mod_opus
|
||||
#codecs/mod_sangoma_codec
|
||||
#codecs/mod_silk
|
||||
codecs/mod_siren
|
||||
#codecs/mod_siren
|
||||
codecs/mod_speex
|
||||
dialplans/mod_dialplan_asterisk
|
||||
#dialplans/mod_dialplan_directory
|
||||
@ -71,6 +73,7 @@ dialplans/mod_dialplan_xml
|
||||
#endpoints/mod_alsa
|
||||
#endpoints/mod_dingaling
|
||||
#endpoints/mod_h323
|
||||
#endpoints/mod_html5
|
||||
#endpoints/mod_khomp
|
||||
endpoints/mod_loopback
|
||||
#endpoints/mod_opal
|
||||
@ -96,6 +99,7 @@ formats/mod_native_file
|
||||
#formats/mod_shout
|
||||
formats/mod_sndfile
|
||||
formats/mod_tone_stream
|
||||
#formats/mod_vlc
|
||||
#languages/mod_java
|
||||
languages/mod_lua
|
||||
#languages/mod_managed
|
||||
@ -124,6 +128,7 @@ xml_int/mod_xml_cdr
|
||||
#xml_int/mod_xml_curl
|
||||
#xml_int/mod_xml_ldap
|
||||
xml_int/mod_xml_rpc
|
||||
xml_int/mod_xml_scgi
|
||||
|
||||
#../../libs/freetdm/mod_freetdm
|
||||
#../../libs/openzap/mod_openzap
|
||||
|
1
build/next-release.txt
Normal file
1
build/next-release.txt
Normal file
@ -0,0 +1 @@
|
||||
1.2-rc3
|
93
build/print_git_revision.c
Normal file
93
build/print_git_revision.c
Normal file
@ -0,0 +1,93 @@
|
||||
/* -*- mode:c; indent-tabs-mode:nil; c-basic-offset:2 -*-
|
||||
* Author: Travis Cross <tc@traviscross.com>
|
||||
*/
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
#include <unistd.h>
|
||||
#include <sys/wait.h>
|
||||
#include <time.h>
|
||||
|
||||
static int show_unclean = 0;
|
||||
|
||||
static int sys(char *buf, int buflen, char *cmd) {
|
||||
int i, p[2];
|
||||
if (pipe(p)) return 255;
|
||||
if (!(i=fork())) {
|
||||
close(p[0]);
|
||||
dup2(p[1],1);
|
||||
close(p[1]);
|
||||
execlp("sh","sh","-c",cmd,NULL);
|
||||
} else {
|
||||
int s, x=0;
|
||||
close(p[1]);
|
||||
waitpid(i,&s,0);
|
||||
if (!(WIFEXITED(s))) return 255;
|
||||
if (WEXITSTATUS(s)) return WEXITSTATUS(s);
|
||||
if (buf) {
|
||||
while (buflen>1 && (x=read(p[0],buf,buflen-1))>0) buf+=x,buflen-=x;
|
||||
close(p[0]);
|
||||
if (x<0) return 255;
|
||||
*buf=0;
|
||||
} else close(p[0]);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int sys1(char *buf, int buflen, char *cmd) {
|
||||
int r; char *c;
|
||||
if ((r=sys(buf,buflen,cmd))) return r;
|
||||
if ((c=strstr(buf,"\n"))) *c=0;
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int print_version(void) {
|
||||
char xver[256], xdate[256], xfdate[256], xcommit[256];
|
||||
time_t xdate_t; struct tm *xdate_tm;
|
||||
if ((sys1(xdate,sizeof(xdate),"git log -n1 --format='%ct' HEAD"))) return 1;
|
||||
xdate_t=(time_t)atoi(xdate);
|
||||
if (!(xdate_tm=gmtime(&xdate_t))) return 1;
|
||||
strftime(xfdate,sizeof(xfdate),"%Y%m%dT%H%M%SZ",xdate_tm);
|
||||
if ((sys1(xcommit,sizeof(xcommit),"git rev-list -n1 --abbrev=10 --abbrev-commit HEAD")))
|
||||
return 1;
|
||||
snprintf(xver,sizeof(xver),"+git~%s~%s",xfdate,xcommit);
|
||||
if (show_unclean && (sys(NULL,0,"git diff-index --quiet HEAD"))) {
|
||||
char buf[256], now[256]; time_t now_t=time(NULL); struct tm *now_tm;
|
||||
if (!(now_tm=gmtime(&now_t))) return 1;
|
||||
strftime(now,sizeof(now),"%Y%m%dT%H%M%SZ",now_tm);
|
||||
snprintf(buf,sizeof(buf),"%s+unclean~%s",xver,now);
|
||||
strncpy(xver,buf,sizeof(xver));
|
||||
}
|
||||
printf("%s\n",xver);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int print_human_version(void) {
|
||||
char xver[256], xdate[256], xfdate[256], xcommit[256];
|
||||
time_t xdate_t; struct tm *xdate_tm;
|
||||
if ((sys1(xdate,sizeof(xdate),"git log -n1 --format='%ct' HEAD"))) return 1;
|
||||
xdate_t=(time_t)atoi(xdate);
|
||||
if (!(xdate_tm=gmtime(&xdate_t))) return 1;
|
||||
strftime(xfdate,sizeof(xfdate),"%a, %d %b %Y %H:%M:%S Z",xdate_tm);
|
||||
if ((sys1(xcommit,sizeof(xcommit),"git rev-list -n1 --abbrev=10 --abbrev-commit HEAD")))
|
||||
return 1;
|
||||
snprintf(xver,sizeof(xver),"; git at commit %s on %s",xcommit,xfdate);
|
||||
if (show_unclean && (sys(NULL,0,"git diff-index --quiet HEAD"))) {
|
||||
char buf[256], now[256]; time_t now_t=time(NULL); struct tm *now_tm;
|
||||
if (!(now_tm=gmtime(&now_t))) return 1;
|
||||
strftime(now,sizeof(now),"%a, %d %b %Y %H:%M:%S Z",now_tm);
|
||||
snprintf(buf,sizeof(buf),"%s; unclean git build on %s",xver,now);
|
||||
strncpy(xver,buf,sizeof(xver));
|
||||
}
|
||||
printf("%s\n",xver);
|
||||
return 0;
|
||||
}
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
if (argc > 1 && !strcasecmp(argv[1],"-h"))
|
||||
return print_human_version();
|
||||
else
|
||||
return print_version();
|
||||
}
|
||||
|
16
build/set-fs-version.sh
Executable file
16
build/set-fs-version.sh
Executable file
@ -0,0 +1,16 @@
|
||||
#!/bin/sh
|
||||
##### -*- mode:shell-script; indent-tabs-mode:nil; sh-basic-offset:2 -*-
|
||||
|
||||
sdir="."
|
||||
[ -n "${0%/*}" ] && sdir="${0%/*}"
|
||||
. $sdir/../scripts/ci/common.sh
|
||||
|
||||
check_pwd
|
||||
check_input_ver_build $@
|
||||
in_ver="$1"
|
||||
if [ "$in_ver" = "auto" ]; then
|
||||
in_ver="$(cat build/next-release.txt)"
|
||||
fi
|
||||
eval $(parse_version "$in_ver")
|
||||
set_fs_ver "$gver" "$gmajor" "$gminor" "$gmicro" "$grev"
|
||||
|
8
cc.sh
Executable file
8
cc.sh
Executable file
@ -0,0 +1,8 @@
|
||||
cc=`cat cluecon.tmpl | sed 's/\\\\/\\\\\\\\/g' | awk '{printf "%s\\\\n", $0}' `
|
||||
|
||||
cat <<EOF > src/include/cc.h
|
||||
|
||||
const char *cc = "$cc";
|
||||
|
||||
EOF
|
||||
|
26
cluecon.tmpl
Normal file
26
cluecon.tmpl
Normal file
@ -0,0 +1,26 @@
|
||||
.========================================================================================================.
|
||||
| ____ _____ ____ _ ____ _ _ _____ |
|
||||
| / ___|___ _ __ ___ ___ |_ _|__ / ___| |_ _ ___ / ___|___ _ __ ( ) |___ / |
|
||||
| | | / _ \| '_ ` _ \ / _ \ | |/ _ \ | | | | | | |/ _ \ | / _ \| '_ \ |/| | |_ \ |
|
||||
| | |__| (_) | | | | | | __/ | | (_) | | |___| | |_| | __/ |__| (_) | | | | | |___) | |
|
||||
| \____\___/|_| |_| |_|\___| |_|\___/ \____|_|\__,_|\___|\____\___/|_| |_| |_|____/ |
|
||||
| |
|
||||
| ____ _ _ _ _ ____ _ |
|
||||
| / ___| |__ (_) ___ __ _ __ _ ___ | | | / ___| / \ |
|
||||
| | | | '_ \| |/ __/ _` |/ _` |/ _ \ | | | \___ \ / _ \ |
|
||||
| | |___| | | | | (_| (_| | (_| | (_) | | |_| |___) / ___ \ |
|
||||
| \____|_| |_|_|\___\__,_|\__, |\___( ) \___/|____/_/ \_\ |
|
||||
| |___/ |/ |
|
||||
| _ _ __ _ _ ___ _ _ ____ ___ _ _____ |
|
||||
| / \ _ _ __ _ _ _ ___| |_ / /_ | |_| |__ ( _ )| |_| |__ |___ \ / _ \/ |___ / |
|
||||
| / _ \| | | |/ _` | | | / __| __| | '_ \| __| '_ \ _____ / _ \| __| '_ \ __) | | | | | |_ \ |
|
||||
| / ___ \ |_| | (_| | |_| \__ \ |_ | (_) | |_| | | | |_____| | (_) | |_| | | | / __/| |_| | |___) | |
|
||||
| /_/ \_\__,_|\__, |\__,_|___/\__| \___/ \__|_| |_| \___/ \__|_| |_| |_____|\___/|_|____/ |
|
||||
| |___/ |
|
||||
| _ |
|
||||
| __ ____ ____ __ ___| |_ _ ___ ___ ___ _ __ ___ ___ _ __ ___ |
|
||||
| \ \ /\ / /\ \ /\ / /\ \ /\ / / / __| | | | |/ _ \/ __/ _ \| '_ \ / __/ _ \| '_ ` _ \ |
|
||||
| \ V V / \ V V / \ V V / _ | (__| | |_| | __/ (_| (_) | | | | _ | (_| (_) | | | | | | |
|
||||
| \_/\_/ \_/\_/ \_/\_/ (_) \___|_|\__,_|\___|\___\___/|_| |_| (_) \___\___/|_| |_| |_| |
|
||||
| |
|
||||
.========================================================================================================.
|
29
cluecon2.tmpl
Normal file
29
cluecon2.tmpl
Normal file
@ -0,0 +1,29 @@
|
||||
[01;44;33m
|
||||
.========================================================================================================.
|
||||
| ____ _____ ____ _ ____ _ _ _____ |
|
||||
| / ___|___ _ __ ___ ___ |_ _|__ / ___| |_ _ ___ / ___|___ _ __ ( ) |___ / |
|
||||
| | | / _ \| '_ ` _ \ / _ \ | |/ _ \ | | | | | | |/ _ \ | / _ \| '_ \ |/| | |_ \ |
|
||||
| | |__| (_) | | | | | | __/ | | (_) | | |___| | |_| | __/ |__| (_) | | | | | |___) | |
|
||||
| \____\___/|_| |_| |_|\___| |_|\___/ \____|_|\__,_|\___|\____\___/|_| |_| |_|____/ |
|
||||
| |
|
||||
| ____ _ _ _ _ ____ _ |
|
||||
| / ___| |__ (_) ___ __ _ __ _ ___ | | | / ___| / \ |
|
||||
| | | | '_ \| |/ __/ _` |/ _` |/ _ \ | | | \___ \ / _ \ |
|
||||
| | |___| | | | | (_| (_| | (_| | (_) | | |_| |___) / ___ \ |
|
||||
| \____|_| |_|_|\___\__,_|\__, |\___( ) \___/|____/_/ \_\ |
|
||||
| |___/ |/ |
|
||||
| _ _ __ _ _ ___ _ _ ____ ___ _ _____ |
|
||||
| / \ _ _ __ _ _ _ ___| |_ / /_ | |_| |__ ( _ )| |_| |__ |___ \ / _ \/ |___ / |
|
||||
| / _ \| | | |/ _` | | | / __| __| | '_ \| __| '_ \ _____ / _ \| __| '_ \ __) | | | | | |_ \ |
|
||||
| / ___ \ |_| | (_| | |_| \__ \ |_ | (_) | |_| | | | |_____| | (_) | |_| | | | / __/| |_| | |___) | |
|
||||
| /_/ \_\__,_|\__, |\__,_|___/\__| \___/ \__|_| |_| \___/ \__|_| |_| |_____|\___/|_|____/ |
|
||||
| |___/ |
|
||||
| _ |
|
||||
| __ ____ ____ __ ___| |_ _ ___ ___ ___ _ __ ___ ___ _ __ ___ |
|
||||
| \ \ /\ / /\ \ /\ / /\ \ /\ / / / __| | | | |/ _ \/ __/ _ \| '_ \ / __/ _ \| '_ ` _ \ |
|
||||
| \ V V / \ V V / \ V V / _ | (__| | |_| | __/ (_| (_) | | | | _ | (_| (_) | | | | | | |
|
||||
| \_/\_/ \_/\_/ \_/\_/ (_) \___|_|\__,_|\___|\___\___/|_| |_| (_) \___\___/|_| |_| |_| |
|
||||
| |
|
||||
.========================================================================================================.
|
||||
[0m
|
||||
|
@ -13,7 +13,7 @@
|
||||
<zone name="Africa/Blantyre" value="CAT-2" />
|
||||
<zone name="Africa/Brazzaville" value="WAT-1" />
|
||||
<zone name="Africa/Bujumbura" value="CAT-2" />
|
||||
<zone name="Africa/Cairo" value="EEST" />
|
||||
<zone name="Africa/Cairo" value="EET-2EEST,M4.5.5/1,M9.5.5/3" />
|
||||
<zone name="Africa/Casablanca" value="WET0" />
|
||||
<zone name="Africa/Ceuta" value="CET-1CEST,M3.5.0,M10.5.0/3" />
|
||||
<zone name="Africa/Conakry" value="GMT0" />
|
||||
|
@ -60,9 +60,10 @@
|
||||
<load module="mod_g723_1"/>
|
||||
<load module="mod_g729"/>
|
||||
<load module="mod_amr"/>
|
||||
<load module="mod_ilbc"/>
|
||||
<!--<load module="mod_ilbc"/>-->
|
||||
<load module="mod_speex"/>
|
||||
<load module="mod_h26x"/>
|
||||
<load module="mod_vp8"/>
|
||||
<!--<load module="mod_siren"/>-->
|
||||
|
||||
<!-- File Format Interfaces -->
|
||||
|
@ -13,7 +13,7 @@
|
||||
<zone name="Africa/Blantyre" value="CAT-2" />
|
||||
<zone name="Africa/Brazzaville" value="WAT-1" />
|
||||
<zone name="Africa/Bujumbura" value="CAT-2" />
|
||||
<zone name="Africa/Cairo" value="EEST" />
|
||||
<zone name="Africa/Cairo" value="EET-2EEST,M4.5.5/1,M9.5.5/3" />
|
||||
<zone name="Africa/Casablanca" value="WET0" />
|
||||
<zone name="Africa/Ceuta" value="CET-1CEST,M3.5.0,M10.5.0/3" />
|
||||
<zone name="Africa/Conakry" value="GMT0" />
|
||||
|
@ -1,4 +1,4 @@
|
||||
<!-- http://wiki.freeswitch.org/wiki/Sofia_Configuration_Files -->
|
||||
<!-- http://wiki.freeswitch.org/wiki/Sofia_Configuration_Files -->
|
||||
<profile name="external">
|
||||
<!-- This profile is only for outbound registrations to providers -->
|
||||
<gateways>
|
||||
@ -29,10 +29,10 @@
|
||||
<!-- This could be set to "passive" -->
|
||||
<param name="manage-presence" value="passive"/>
|
||||
|
||||
<!-- used to share presence info across sofia profiles
|
||||
manage-presence needs to be set to passive on this profile
|
||||
if you want it to behave as if it were the internal profile
|
||||
for presence.
|
||||
<!-- used to share presence info across sofia profiles
|
||||
manage-presence needs to be set to passive on this profile
|
||||
if you want it to behave as if it were the internal profile
|
||||
for presence.
|
||||
-->
|
||||
<!-- Name of the db to use for this profile -->
|
||||
<param name="dbname" value="$${domain}"/>
|
||||
@ -47,8 +47,10 @@
|
||||
<param name="nonce-ttl" value="60"/>
|
||||
<param name="auth-calls" value="false"/>
|
||||
<param name="rtp-timeout-sec" value="1800"/>
|
||||
<param name="inbound-late-negotiation" value="true"/>
|
||||
<param name="inbound-zrtp-passthru" value="true"/> <!-- (also enables late negotiation) -->
|
||||
<!--
|
||||
DO NOT USE HOSTNAMES, ONLY IP ADDRESSES IN THESE SETTINGS!
|
||||
DO NOT USE HOSTNAMES, ONLY IP ADDRESSES IN THESE SETTINGS!
|
||||
-->
|
||||
<param name="rtp-ip" value="$${local_ip_v4}"/>
|
||||
<param name="sip-ip" value="$${local_ip_v4}"/>
|
||||
|
@ -9,7 +9,7 @@
|
||||
<!--/// domain to use in from: *optional* same as realm, if blank ///-->
|
||||
<!--<param name="from-domain" value="asterlink.com"/>-->
|
||||
<!--/// account password *required* ///-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--/// extension for inbound calls: *optional* same as username, if blank ///-->
|
||||
<!--<param name="extension" value="cluecon"/>-->
|
||||
<!--/// proxy host: *optional* same as realm, if blank ///-->
|
||||
|
@ -53,36 +53,39 @@
|
||||
<param name="tls-cert-dir" value="$${internal_ssl_dir}"/>
|
||||
<!-- TLS version ("sslv23" (default), "tlsv1"). NOTE: Phones may not work with TLSv1 -->
|
||||
<param name="tls-version" value="$${sip_tls_version}"/>
|
||||
|
||||
|
||||
<!--If you don't want to pass through timestampes from 1 RTP call to another (on a per call basis with rtp_rewrite_timestamps chanvar)-->
|
||||
<!--<param name="rtp-rewrite-timestamps" value="true"/>-->
|
||||
<!--<param name="pass-rfc2833" value="true"/>-->
|
||||
<!--If you have ODBC support and a working dsn you can use it instead of SQLite-->
|
||||
<!--<param name="odbc-dsn" value="dsn:user:pass"/>-->
|
||||
|
||||
|
||||
<!--Uncomment to set all inbound calls to no media mode-->
|
||||
<!--<param name="inbound-bypass-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to set all inbound calls to proxy media mode-->
|
||||
<!--<param name="inbound-proxy-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to let calls hit the dialplan *before* you decide if the codec is ok-->
|
||||
<!--<param name="inbound-late-negotiation" value="true"/>-->
|
||||
|
||||
|
||||
<!-- Let calls hit the dialplan before selecting codec for the a-leg -->
|
||||
<param name="inbound-late-negotiation" value="true"/>
|
||||
|
||||
<!-- Allow ZRTP clients to negotiate end-to-end security associations (also enables late negotiation) -->
|
||||
<param name="inbound-zrtp-passthru" value="true"/>
|
||||
|
||||
<!-- this lets anything register -->
|
||||
<!-- comment the next line and uncomment one or both of the other 2 lines for call authentication -->
|
||||
<!-- <param name="accept-blind-reg" value="true"/> -->
|
||||
|
||||
<!-- accept any authentication without actually checking (not a good feature for most people) -->
|
||||
<!-- <param name="accept-blind-auth" value="true"/> -->
|
||||
|
||||
|
||||
<!-- suppress CNG on this profile or per call with the 'suppress_cng' variable -->
|
||||
<!-- <param name="suppress-cng" value="true"/> -->
|
||||
|
||||
|
||||
<!--TTL for nonce in sip auth-->
|
||||
<param name="nonce-ttl" value="60"/>
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--<param name="disable-transcoding" value="true"/>-->
|
||||
<!-- Used for when phones respond to a challenged ACK with method INVITE in the hash -->
|
||||
<!--<param name="NDLB-broken-auth-hash" value="true"/>-->
|
||||
@ -128,4 +131,3 @@
|
||||
|
||||
</settings>
|
||||
</profile>
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
This is a sofia sip profile/user agent. This will service exactly one ip and port.
|
||||
In FreeSWITCH you can run multiple sip user agents on their own ip and port.
|
||||
|
||||
|
||||
When you hear someone say "sofia profile" this is what they are talking about.
|
||||
-->
|
||||
|
||||
@ -16,24 +16,24 @@
|
||||
<gateways>
|
||||
<X-PRE-PROCESS cmd="include" data="internal/*.xml"/>
|
||||
</gateways>
|
||||
|
||||
|
||||
<domains>
|
||||
<!-- indicator to parse the directory for domains with parse="true" to get gateways-->
|
||||
<!--<domain name="$${domain}" parse="true"/>-->
|
||||
<!-- indicator to parse the directory for domains with parse="true" to get gateways and alias every domain to this profile -->
|
||||
<!--<domain name="all" alias="true" parse="true"/>-->
|
||||
<domain name="all" alias="true" parse="false"/>
|
||||
<domain name="all" alias="true" parse="false"/>
|
||||
</domains>
|
||||
|
||||
|
||||
<settings>
|
||||
<!--
|
||||
When calls are in no media this will bring them back to media
|
||||
when you press the hold button.
|
||||
When calls are in no media this will bring them back to media
|
||||
when you press the hold button.
|
||||
-->
|
||||
<!--<param name="media-option" value="resume-media-on-hold"/> -->
|
||||
<!--
|
||||
This will allow a call after an attended transfer go back to
|
||||
bypass media after an attended transfer.
|
||||
This will allow a call after an attended transfer go back to
|
||||
bypass media after an attended transfer.
|
||||
-->
|
||||
<!--<param name="media-option" value="bypass-media-after-att-xfer"/>-->
|
||||
<!-- <param name="user-agent-string" value="FreeSWITCH Rocks!"/> -->
|
||||
@ -63,7 +63,7 @@
|
||||
<!--<param name="dtmf-type" value="info"/>-->
|
||||
<param name="record-template" value="$${base_dir}/recordings/${caller_id_number}.${target_domain}.${strftime(%Y-%m-%d-%H-%M-%S)}.wav"/>
|
||||
|
||||
|
||||
|
||||
<!-- This setting is for AAL2 bitpacking on G726 -->
|
||||
<!-- <param name="bitpacking" value="aal2"/> -->
|
||||
<!--max number of open dialogs in proceeding -->
|
||||
@ -88,36 +88,39 @@
|
||||
<param name="tls-cert-dir" value="$${internal_ssl_dir}"/>
|
||||
<!-- TLS version ("sslv23" (default), "tlsv1"). NOTE: Phones may not work with TLSv1 -->
|
||||
<param name="tls-version" value="$${sip_tls_version}"/>
|
||||
|
||||
|
||||
<!--If you don't want to pass through timestamps from 1 RTP call to another (on a per call basis with rtp_rewrite_timestamps chanvar)-->
|
||||
<!--<param name="rtp-rewrite-timestamps" value="true"/>-->
|
||||
<!--<param name="pass-rfc2833" value="true"/>-->
|
||||
<!--If you have ODBC support and a working dsn you can use it instead of SQLite-->
|
||||
<!--<param name="odbc-dsn" value="dsn:user:pass"/>-->
|
||||
|
||||
|
||||
<!--Uncomment to set all inbound calls to no media mode-->
|
||||
<!--<param name="inbound-bypass-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to set all inbound calls to proxy media mode-->
|
||||
<!--<param name="inbound-proxy-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to let calls hit the dialplan *before* you decide if the codec is ok-->
|
||||
<!--<param name="inbound-late-negotiation" value="true"/>-->
|
||||
|
||||
|
||||
<!-- Let calls hit the dialplan before selecting codec for the a-leg -->
|
||||
<param name="inbound-late-negotiation" value="true"/>
|
||||
|
||||
<!-- Allow ZRTP clients to negotiate end-to-end security associations (also enables late negotiation) -->
|
||||
<param name="inbound-zrtp-passthru" value="true"/>
|
||||
|
||||
<!-- this lets anything register -->
|
||||
<!-- comment the next line and uncomment one or both of the other 2 lines for call authentication -->
|
||||
<!-- <param name="accept-blind-reg" value="true"/> -->
|
||||
|
||||
<!-- accept any authentication without actually checking (not a good feature for most people) -->
|
||||
<!-- <param name="accept-blind-auth" value="true"/> -->
|
||||
|
||||
|
||||
<!-- suppress CNG on this profile or per call with the 'suppress_cng' variable -->
|
||||
<!-- <param name="suppress-cng" value="true"/> -->
|
||||
|
||||
|
||||
<!--TTL for nonce in sip auth-->
|
||||
<param name="nonce-ttl" value="60"/>
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--<param name="disable-transcoding" value="true"/>-->
|
||||
<!-- Used for when phones respond to a challenged ACK with method INVITE in the hash -->
|
||||
<!--<param name="NDLB-broken-auth-hash" value="true"/>-->
|
||||
@ -138,7 +141,7 @@
|
||||
<!-- <param name="vad" value="out"/> -->
|
||||
<!-- <param name="vad" value="both"/> -->
|
||||
<!--<param name="alias" value="sip:10.0.1.251:5555"/>-->
|
||||
|
||||
|
||||
<!--all inbound reg will look in this domain for the users -->
|
||||
<param name="force-register-domain" value="$${domain}"/>
|
||||
<!--all inbound reg will stored in the db using this domain -->
|
||||
@ -158,24 +161,24 @@
|
||||
<!--<param name="disable-transfer" value="true"/>-->
|
||||
<!--<param name="disable-register" value="true"/>-->
|
||||
|
||||
<!-- enable-3pcc can be set to either 'true' or 'proxy', true accepts the call right away, proxy waits until the call has been answered then sends accepts -->
|
||||
<!-- enable-3pcc can be set to either 'true' or 'proxy', true accepts the call right away, proxy waits until the call has been answered then sends accepts -->
|
||||
<!--<param name="enable-3pcc" value="true"/>-->
|
||||
|
||||
|
||||
<!-- use at your own risk or if you know what this does.-->
|
||||
<!--<param name="NDLB-force-rport" value="true"/>-->
|
||||
<!--
|
||||
Choose the realm challenge key. Default is auto_to if not set.
|
||||
|
||||
auto_from - uses the from field as the value for the sip realm.
|
||||
auto_to - uses the to field as the value for the sip realm.
|
||||
<anyvalue> - you can input any value to use for the sip realm.
|
||||
Choose the realm challenge key. Default is auto_to if not set.
|
||||
|
||||
If you want URL dialing to work you'll want to set this to auto_from.
|
||||
|
||||
If you use any other value besides auto_to or auto_from you'll loose
|
||||
the ability to do multiple domains.
|
||||
|
||||
Note: comment out to restore the behavior before 2008-09-29
|
||||
auto_from - uses the from field as the value for the sip realm.
|
||||
auto_to - uses the to field as the value for the sip realm.
|
||||
<anyvalue> - you can input any value to use for the sip realm.
|
||||
|
||||
If you want URL dialing to work you'll want to set this to auto_from.
|
||||
|
||||
If you use any other value besides auto_to or auto_from you'll loose
|
||||
the ability to do multiple domains.
|
||||
|
||||
Note: comment out to restore the behavior before 2008-09-29
|
||||
|
||||
-->
|
||||
<param name="challenge-realm" value="auto_from"/>
|
||||
@ -186,4 +189,3 @@
|
||||
<!--<param name="outbound-use-uuid-as-callid" value="true"/>-->
|
||||
</settings>
|
||||
</profile>
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
<!--/// domain to use in from: *optional* same as realm, if blank ///-->
|
||||
<!--<param name="from-domain" value="asterlink.com"/>-->
|
||||
<!--/// account password *required* ///-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--/// extension for inbound calls: *optional* same as username, if blank ///-->
|
||||
<!--<param name="extension" value="cluecon"/>-->
|
||||
<!--/// proxy host: *optional* same as realm, if blank ///-->
|
||||
|
@ -39,9 +39,10 @@
|
||||
<load module="mod_g723_1"/>
|
||||
<load module="mod_g729"/>
|
||||
<load module="mod_amr"/>
|
||||
<load module="mod_ilbc"/>
|
||||
<!--<load module="mod_ilbc"/>-->
|
||||
<load module="mod_speex"/>
|
||||
<load module="mod_h26x"/>
|
||||
<load module="mod_vp8"/>
|
||||
<!--<load module="mod_siren"/>-->
|
||||
|
||||
<!-- Timers -->
|
||||
|
@ -13,7 +13,7 @@
|
||||
<zone name="Africa/Blantyre" value="CAT-2" />
|
||||
<zone name="Africa/Brazzaville" value="WAT-1" />
|
||||
<zone name="Africa/Bujumbura" value="CAT-2" />
|
||||
<zone name="Africa/Cairo" value="EEST" />
|
||||
<zone name="Africa/Cairo" value="EET-2EEST,M4.5.5/1,M9.5.5/3" />
|
||||
<zone name="Africa/Casablanca" value="WET0" />
|
||||
<zone name="Africa/Ceuta" value="CET-1CEST,M3.5.0,M10.5.0/3" />
|
||||
<zone name="Africa/Conakry" value="GMT0" />
|
||||
|
@ -1,4 +1,4 @@
|
||||
<!-- http://wiki.freeswitch.org/wiki/Sofia_Configuration_Files -->
|
||||
<!-- http://wiki.freeswitch.org/wiki/Sofia_Configuration_Files -->
|
||||
<profile name="external">
|
||||
<!-- This profile is only for outbound registrations to providers -->
|
||||
<gateways>
|
||||
@ -7,7 +7,7 @@
|
||||
|
||||
<aliases>
|
||||
<alias name="outbound"/>
|
||||
<alias name="nat"/> <!-- for backwards compatibility -->
|
||||
<alias name="nat"/> <!-- for backwards compatibility -->
|
||||
</aliases>
|
||||
|
||||
<domains>
|
||||
@ -30,10 +30,10 @@
|
||||
<!-- This could be set to "passive" -->
|
||||
<param name="manage-presence" value="false"/>
|
||||
|
||||
<!-- used to share presence info across sofia profiles
|
||||
manage-presence needs to be set to passive on this profile
|
||||
if you want it to behave as if it were the internal profile
|
||||
for presence.
|
||||
<!-- used to share presence info across sofia profiles
|
||||
manage-presence needs to be set to passive on this profile
|
||||
if you want it to behave as if it were the internal profile
|
||||
for presence.
|
||||
-->
|
||||
<!-- Name of the db to use for this profile -->
|
||||
<!--<param name="dbname" value="share_presence"/>-->
|
||||
@ -48,8 +48,10 @@
|
||||
<param name="nonce-ttl" value="60"/>
|
||||
<param name="auth-calls" value="false"/>
|
||||
<param name="rtp-timeout-sec" value="1800"/>
|
||||
<param name="inbound-late-negotiation" value="true"/>
|
||||
<param name="inbound-zrtp-passthru" value="true"/> <!-- (also enables late negotiation) -->
|
||||
<!--
|
||||
DO NOT USE HOSTNAMES, ONLY IP ADDRESSES IN THESE SETTINGS!
|
||||
DO NOT USE HOSTNAMES, ONLY IP ADDRESSES IN THESE SETTINGS!
|
||||
-->
|
||||
<param name="rtp-ip" value="$${local_ip_v4}"/>
|
||||
<param name="sip-ip" value="$${local_ip_v4}"/>
|
||||
|
2
conf/sbc/sbc_profiles/external/example.xml
vendored
2
conf/sbc/sbc_profiles/external/example.xml
vendored
@ -9,7 +9,7 @@
|
||||
<!--/// domain to use in from: *optional* same as realm, if blank ///-->
|
||||
<!--<param name="from-domain" value="asterlink.com"/>-->
|
||||
<!--/// account password *required* ///-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--/// extension for inbound calls: *optional* same as username, if blank ///-->
|
||||
<!--<param name="extension" value="cluecon"/>-->
|
||||
<!--/// proxy host: *optional* same as realm, if blank ///-->
|
||||
|
@ -53,36 +53,39 @@
|
||||
<param name="tls-cert-dir" value="$${internal_ssl_dir}"/>
|
||||
<!-- TLS version ("sslv23" (default), "tlsv1"). NOTE: Phones may not work with TLSv1 -->
|
||||
<param name="tls-version" value="$${sip_tls_version}"/>
|
||||
|
||||
|
||||
<!--If you don't want to pass through timestampes from 1 RTP call to another (on a per call basis with rtp_rewrite_timestamps chanvar)-->
|
||||
<!--<param name="rtp-rewrite-timestamps" value="true"/>-->
|
||||
<!--<param name="pass-rfc2833" value="true"/>-->
|
||||
<!--If you have ODBC support and a working dsn you can use it instead of SQLite-->
|
||||
<!--<param name="odbc-dsn" value="dsn:user:pass"/>-->
|
||||
|
||||
|
||||
<!--Uncomment to set all inbound calls to no media mode-->
|
||||
<!--<param name="inbound-bypass-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to set all inbound calls to proxy media mode-->
|
||||
<!--<param name="inbound-proxy-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to let calls hit the dialplan *before* you decide if the codec is ok-->
|
||||
<!--<param name="inbound-late-negotiation" value="true"/>-->
|
||||
|
||||
|
||||
<!-- Let calls hit the dialplan before selecting codec for the a-leg -->
|
||||
<param name="inbound-late-negotiation" value="true"/>
|
||||
|
||||
<!-- Allow ZRTP clients to negotiate end-to-end security associations (also enables late negotiation) -->
|
||||
<param name="inbound-zrtp-passthru" value="true"/>
|
||||
|
||||
<!-- this lets anything register -->
|
||||
<!-- comment the next line and uncomment one or both of the other 2 lines for call authentication -->
|
||||
<!-- <param name="accept-blind-reg" value="true"/> -->
|
||||
|
||||
<!-- accept any authentication without actually checking (not a good feature for most people) -->
|
||||
<!-- <param name="accept-blind-auth" value="true"/> -->
|
||||
|
||||
|
||||
<!-- suppress CNG on this profile or per call with the 'suppress_cng' variable -->
|
||||
<!-- <param name="suppress-cng" value="true"/> -->
|
||||
|
||||
|
||||
<!--TTL for nonce in sip auth-->
|
||||
<param name="nonce-ttl" value="60"/>
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--<param name="disable-transcoding" value="true"/>-->
|
||||
<!-- Used for when phones respond to a challenged ACK with method INVITE in the hash -->
|
||||
<!--<param name="NDLB-broken-auth-hash" value="true"/>-->
|
||||
@ -128,4 +131,3 @@
|
||||
|
||||
</settings>
|
||||
</profile>
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
<!--
|
||||
This is a sofia sip profile/user agent. This will service exactly one ip and port.
|
||||
In FreeSWITCH you can run multiple sip user agents on their own ip and port.
|
||||
|
||||
|
||||
When you hear someone say "sofia profile" this is what they are talking about.
|
||||
-->
|
||||
|
||||
@ -15,24 +15,24 @@
|
||||
<gateways>
|
||||
<X-PRE-PROCESS cmd="include" data="internal/*.xml"/>
|
||||
</gateways>
|
||||
|
||||
|
||||
<domains>
|
||||
<!-- indicator to parse the directory for domains with parse="true" to get gateways-->
|
||||
<!--<domain name="$${domain}" parse="true"/>-->
|
||||
<!-- indicator to parse the directory for domains with parse="true" to get gateways and alias every domain to this profile -->
|
||||
<!--<domain name="all" alias="true" parse="true"/>-->
|
||||
<domain name="all" alias="true" parse="false"/>
|
||||
<domain name="all" alias="true" parse="false"/>
|
||||
</domains>
|
||||
|
||||
|
||||
<settings>
|
||||
<!--
|
||||
When calls are in no media this will bring them back to media
|
||||
when you press the hold button.
|
||||
When calls are in no media this will bring them back to media
|
||||
when you press the hold button.
|
||||
-->
|
||||
<!--<param name="media-option" value="resume-media-on-hold"/> -->
|
||||
<!--
|
||||
This will allow a call after an attended transfer go back to
|
||||
bypass media after an attended transfer.
|
||||
This will allow a call after an attended transfer go back to
|
||||
bypass media after an attended transfer.
|
||||
-->
|
||||
<!--<param name="media-option" value="bypass-media-after-att-xfer"/>-->
|
||||
<!-- <param name="user-agent-string" value="FreeSWITCH Rocks!"/> -->
|
||||
@ -69,7 +69,7 @@
|
||||
<!--<param name="dbname" value="share_presence"/>-->
|
||||
<!--<param name="presence-hosts" value="$${domain}"/>-->
|
||||
<!-- ************************************************* -->
|
||||
|
||||
|
||||
<!-- This setting is for AAL2 bitpacking on G726 -->
|
||||
<!-- <param name="bitpacking" value="aal2"/> -->
|
||||
<!--max number of open dialogs in proceeding -->
|
||||
@ -94,36 +94,39 @@
|
||||
<param name="tls-cert-dir" value="$${internal_ssl_dir}"/>
|
||||
<!-- TLS version ("sslv23" (default), "tlsv1"). NOTE: Phones may not work with TLSv1 -->
|
||||
<param name="tls-version" value="$${sip_tls_version}"/>
|
||||
|
||||
|
||||
<!--If you don't want to pass through timestamps from 1 RTP call to another (on a per call basis with rtp_rewrite_timestamps chanvar)-->
|
||||
<!--<param name="rtp-rewrite-timestamps" value="true"/>-->
|
||||
<!--<param name="pass-rfc2833" value="true"/>-->
|
||||
<!--If you have ODBC support and a working dsn you can use it instead of SQLite-->
|
||||
<!--<param name="odbc-dsn" value="dsn:user:pass"/>-->
|
||||
|
||||
|
||||
<!--Uncomment to set all inbound calls to no media mode-->
|
||||
<!--<param name="inbound-bypass-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to set all inbound calls to proxy media mode-->
|
||||
<!--<param name="inbound-proxy-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to let calls hit the dialplan *before* you decide if the codec is ok-->
|
||||
<!--<param name="inbound-late-negotiation" value="true"/>-->
|
||||
|
||||
|
||||
<!-- Let calls hit the dialplan before selecting codec for the a-leg -->
|
||||
<param name="inbound-late-negotiation" value="true"/>
|
||||
|
||||
<!-- Allow ZRTP clients to negotiate end-to-end security associations (also enables late negotiation) -->
|
||||
<param name="inbound-zrtp-passthru" value="true"/>
|
||||
|
||||
<!-- this lets anything register -->
|
||||
<!-- comment the next line and uncomment one or both of the other 2 lines for call authentication -->
|
||||
<!-- <param name="accept-blind-reg" value="true"/> -->
|
||||
|
||||
<!-- accept any authentication without actually checking (not a good feature for most people) -->
|
||||
<!-- <param name="accept-blind-auth" value="true"/> -->
|
||||
|
||||
|
||||
<!-- suppress CNG on this profile or per call with the 'suppress_cng' variable -->
|
||||
<!-- <param name="suppress-cng" value="true"/> -->
|
||||
|
||||
|
||||
<!--TTL for nonce in sip auth-->
|
||||
<param name="nonce-ttl" value="60"/>
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--<param name="disable-transcoding" value="true"/>-->
|
||||
<!-- Used for when phones respond to a challenged ACK with method INVITE in the hash -->
|
||||
<!--<param name="NDLB-broken-auth-hash" value="true"/>-->
|
||||
@ -154,24 +157,24 @@
|
||||
<!--<param name="disable-transfer" value="true"/>-->
|
||||
<!--<param name="disable-register" value="true"/>-->
|
||||
|
||||
<!-- enable-3pcc can be set to either 'true' or 'proxy', true accepts the call right away, proxy waits until the call has been answered then sends accepts -->
|
||||
<!-- enable-3pcc can be set to either 'true' or 'proxy', true accepts the call right away, proxy waits until the call has been answered then sends accepts -->
|
||||
<!--<param name="enable-3pcc" value="true"/>-->
|
||||
|
||||
|
||||
<!-- use at your own risk or if you know what this does.-->
|
||||
<!--<param name="NDLB-force-rport" value="true"/>-->
|
||||
<!--
|
||||
Choose the realm challenge key. Default is auto_to if not set.
|
||||
|
||||
auto_from - uses the from field as the value for the sip realm.
|
||||
auto_to - uses the to field as the value for the sip realm.
|
||||
<anyvalue> - you can input any value to use for the sip realm.
|
||||
Choose the realm challenge key. Default is auto_to if not set.
|
||||
|
||||
If you want URL dialing to work you'll want to set this to auto_from.
|
||||
|
||||
If you use any other value besides auto_to or auto_from you'll loose
|
||||
the ability to do multiple domains.
|
||||
|
||||
Note: comment out to restore the behavior before 2008-09-29
|
||||
auto_from - uses the from field as the value for the sip realm.
|
||||
auto_to - uses the to field as the value for the sip realm.
|
||||
<anyvalue> - you can input any value to use for the sip realm.
|
||||
|
||||
If you want URL dialing to work you'll want to set this to auto_from.
|
||||
|
||||
If you use any other value besides auto_to or auto_from you'll loose
|
||||
the ability to do multiple domains.
|
||||
|
||||
Note: comment out to restore the behavior before 2008-09-29
|
||||
|
||||
-->
|
||||
<param name="challenge-realm" value="auto_from"/>
|
||||
@ -182,4 +185,3 @@
|
||||
<!--<param name="outbound-use-uuid-as-callid" value="true"/>-->
|
||||
</settings>
|
||||
</profile>
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
<!--/// domain to use in from: *optional* same as realm, if blank ///-->
|
||||
<!--<param name="from-domain" value="asterlink.com"/>-->
|
||||
<!--/// account password *required* ///-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--/// extension for inbound calls: *optional* same as username, if blank ///-->
|
||||
<!--<param name="extension" value="cluecon"/>-->
|
||||
<!--/// proxy host: *optional* same as realm, if blank ///-->
|
||||
|
@ -3,7 +3,7 @@
|
||||
<X-PRE-PROCESS cmd="set" data="auto_answer=false"/>
|
||||
<X-PRE-PROCESS cmd="set" data="domain=$${local_ip_v4}"/>
|
||||
<X-PRE-PROCESS cmd="set" data="hold_music=local_stream://moh"/>
|
||||
<X-PRE-PROCESS cmd="set" data="codec_prefs=CELT@48000h,G7221@32000h,G7221@16000h,G722,PCMU,PCMA,GSM"/>
|
||||
<X-PRE-PROCESS cmd="set" data="codec_prefs=CELT@48000h,G722,PCMU,PCMA,GSM"/>
|
||||
<X-PRE-PROCESS cmd="set" data="external_rtp_ip=stun:stun.freeswitch.org"/>
|
||||
<X-PRE-PROCESS cmd="set" data="external_sip_ip=stun:stun.freeswitch.org"/>
|
||||
<X-PRE-PROCESS cmd="set" data="outbound_caller_name=FreeSWITCH"/>
|
||||
@ -86,10 +86,8 @@
|
||||
<load module="mod_dptools"/>
|
||||
<load module="mod_dialplan_xml"/>
|
||||
<load module="mod_voipcodecs"/>
|
||||
<load module="mod_ilbc"/>
|
||||
<load module="mod_speex"/>
|
||||
<load module="mod_celt"/>
|
||||
<load module="mod_siren"/>
|
||||
<load module="mod_sndfile"/>
|
||||
<load module="mod_tone_stream"/>
|
||||
<load module="mod_local_stream"/>
|
||||
|
@ -1,7 +1,7 @@
|
||||
<configuration name="dingaling.conf" description="XMPP Jingle Endpoint">
|
||||
<settings>
|
||||
<param name="debug" value="0"/>
|
||||
<param name="codec-prefs" value="PCMU"/>
|
||||
<param name="codec-prefs" value="H264,PCMU"/>
|
||||
</settings>
|
||||
|
||||
<X-PRE-PROCESS cmd="include" data="../jingle_profiles/*.xml"/>
|
||||
|
@ -2,12 +2,20 @@
|
||||
<settings>
|
||||
<param name="default-root" value="e164.org"/>
|
||||
<param name="default-isn-root" value="freenum.org"/>
|
||||
<param name="query-timeout" value="10"/>
|
||||
<param name="auto-reload" value="true"/>
|
||||
|
||||
<param name="query-timeout-ms" value="200"/>
|
||||
<param name="query-timeout-retry" value="2"/>
|
||||
<param name="random-nameserver" value="false"/>
|
||||
|
||||
<!-- If you have specific (non-recursive) servers for your enum queries, specify them here ( up to 10 ) -->
|
||||
<!-- <param name="nameserver" value="x.x.x.x"/> -->
|
||||
<!-- <param name="nameserver" value="y.y.y.y"/> -->
|
||||
</settings>
|
||||
|
||||
<routes>
|
||||
<route service="E2U+SIP" regex="sip:(.*)" replace="sofia/${use_profile}/$1"/>
|
||||
<route service="E2U+SIP" regex="sip:(.*)" replace="sofia/${use_profile}/$1;transport=udp"/>
|
||||
<route service="E2T+SIP" regex="sip:(.*)" replace="sofia/${use_profile}/$1;transport=tcp"/>
|
||||
<!--<route service="E2U+XMPP" regex="XMPP:(.*)" replace="dingaling/$${xmpp_server_profile}/$1"/>-->
|
||||
</routes>
|
||||
</configuration>
|
||||
|
@ -16,6 +16,7 @@
|
||||
<!-- <load module="mod_xml_rpc"/> -->
|
||||
<!-- <load module="mod_xml_curl"/> -->
|
||||
<!-- <load module="mod_xml_cdr"/> -->
|
||||
<!-- <load module="mod_xml_scgi"/> -->
|
||||
|
||||
<!-- Event Handlers -->
|
||||
<load module="mod_cdr_csv"/>
|
||||
@ -62,6 +63,7 @@
|
||||
<load module="mod_valet_parking"/>
|
||||
<!--<load module="mod_fsk"/>-->
|
||||
<!--<load module="mod_spy"/>-->
|
||||
<!--<load module="mod_random"/>-->
|
||||
<load module="mod_httapi"/>
|
||||
|
||||
<!-- SNOM Module -->
|
||||
@ -80,10 +82,11 @@
|
||||
<load module="mod_g723_1"/>
|
||||
<load module="mod_g729"/>
|
||||
<load module="mod_amr"/>
|
||||
<load module="mod_ilbc"/>
|
||||
<!--<load module="mod_ilbc"/>-->
|
||||
<load module="mod_speex"/>
|
||||
<load module="mod_h26x"/>
|
||||
<load module="mod_siren"/>
|
||||
<load module="mod_vp8"/>
|
||||
<!--<load module="mod_siren"/>-->
|
||||
<!--<load module="mod_isac"/>-->
|
||||
<!--<load module="mod_celt"/>-->
|
||||
<!--<load module="mod_opus"/>-->
|
||||
|
@ -1,12 +1,14 @@
|
||||
<configuration name="opal.conf" description="Opal Endpoints">
|
||||
<settings>
|
||||
<param name="trace-level" value="4"/>
|
||||
<param name="trace-level" value="3"/>
|
||||
<param name="context" value="default"/>
|
||||
<param name="dialplan" value="XML"/>
|
||||
<param name="codec-prefs" value="PCMU"/>
|
||||
<param name="gk-address" value=""/> <!-- empty to disable, "*" to search LAN -->
|
||||
<param name="gk-identifer" value=""/> <!-- optional name of gk -->
|
||||
<param name="gk-interface" value=""/> <!-- optional listener interface name -->
|
||||
<param name="jitter-size" value="40,100"/> <!-- Jitter buffer min/max size, milliseconds -->
|
||||
<!-- <param name="codec-prefs" value="PCMU,PCMA"/> --> <!-- list, and preferecnce order, of codecs -->
|
||||
<!-- <param name="disable-transcoding" value="true"/> --> <!-- do not transcode, use source channel codec only -->
|
||||
<param name="gk-address" value=""/> <!-- empty to disable, "*" to search LAN -->
|
||||
<param name="gk-identifer" value=""/> <!-- optional name of gk -->
|
||||
<param name="gk-interface" value="$${local_ip_v4}"/> <!-- optional listener interface name -->
|
||||
</settings>
|
||||
<listeners>
|
||||
<listener name="default">
|
||||
|
@ -42,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>
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
<zone name="Africa/Blantyre" value="CAT-2" />
|
||||
<zone name="Africa/Brazzaville" value="WAT-1" />
|
||||
<zone name="Africa/Bujumbura" value="CAT-2" />
|
||||
<zone name="Africa/Cairo" value="EEST" />
|
||||
<zone name="Africa/Cairo" value="EET-2EEST,M4.5.5/1,M9.5.5/3" />
|
||||
<zone name="Africa/Casablanca" value="WET0" />
|
||||
<zone name="Africa/Ceuta" value="CET-1CEST,M3.5.0,M10.5.0/3" />
|
||||
<zone name="Africa/Conakry" value="GMT0" />
|
||||
|
12
conf/vanilla/autoload_configs/xml_scgi.conf.xml
Normal file
12
conf/vanilla/autoload_configs/xml_scgi.conf.xml
Normal file
@ -0,0 +1,12 @@
|
||||
<configuration name="xml_scgi.conf" description="SCGI XML Gateway">
|
||||
<bindings>
|
||||
<binding name="example">
|
||||
<!-- one or more |-delim of configuration|directory|dialplan -->
|
||||
<!-- <param name="host" value="127.0.0.1" bindings="dialplan"/> -->
|
||||
<!-- <param name="port" value="8080"/> -->
|
||||
<!-- <param name="timeout" value="10"/> -->
|
||||
<!-- one or more of these imply you want to pick the exact variables that are transmitted -->
|
||||
<!--<param name="enable-post-var" value="Unique-ID"/>-->
|
||||
</binding>
|
||||
</bindings>
|
||||
</configuration>
|
@ -720,6 +720,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.
|
||||
-->
|
||||
|
@ -63,5 +63,9 @@
|
||||
<X-PRE-PROCESS cmd="include" data="lang/fr/*.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="lang/ru/*.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="lang/he/*.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="lang/es/es_ES.xml"/>
|
||||
<X-NO-PRE-PROCESS cmd="include" data="lang/es/es_MX.xml"/>
|
||||
<X-PRE-PROCESS cmd="include" data="lang/pt/pt_BR.xml"/>
|
||||
<X-NO-PRE-PROCESS cmd="include" data="lang/pt/pt_PT.xml"/>
|
||||
</section>
|
||||
</document>
|
||||
|
69
conf/vanilla/ivr_menus/new_demo_ivr.xml
Normal file
69
conf/vanilla/ivr_menus/new_demo_ivr.xml
Normal file
@ -0,0 +1,69 @@
|
||||
<include>
|
||||
<!-- new demo IVR, Main Menu -->
|
||||
<menu name="new_demo_ivr"
|
||||
greet-long="phrase:new_demo_ivr_main_menu"
|
||||
greet-short="phrase:new_demo_ivr_main_menu_short"
|
||||
invalid-sound="ivr/ivr-that_was_an_invalid_entry.wav"
|
||||
exit-sound="voicemail/vm-goodbye.wav"
|
||||
confirm-macro=""
|
||||
confirm-key=""
|
||||
tts-engine="flite"
|
||||
tts-voice="rms"
|
||||
confirm-attempts="3"
|
||||
timeout="10000"
|
||||
inter-digit-timeout="2000"
|
||||
max-failures="3"
|
||||
max-timeouts="3"
|
||||
digit-len="4">
|
||||
|
||||
<entry action="menu-sub" digits="1" param="freeswitch_ivr_submenu"/> <!-- FreeSWITCH sub menu -->
|
||||
<entry action="menu-sub" digits="2" param="freeswitch_solutions_ivr_submenu"/> <!-- FreeSWITCH Solutions sub menu -->
|
||||
<entry action="menu-sub" digits="3" param="cluecon_ivr_submenu"/> <!-- ClueCon sub menu -->
|
||||
<entry action="menu-exec-app" digits="4" param="5000 XML default"/> <!-- original demo IVR -->
|
||||
<entry action="menu-top" digits="9"/> <!-- Repeat this menu -->
|
||||
</menu>
|
||||
|
||||
<!-- FreeSWITCH IVR Sub Menu -->
|
||||
<menu name="freeswitch_ivr_submenu"
|
||||
greet-long="phrase:learn_about_freeswitch_sub_menu"
|
||||
greet-short="phrase:learn_about_freeswitch_sub_menu"
|
||||
invalid-sound="ivr/ivr-that_was_an_invalid_entry.wav"
|
||||
exit-sound="voicemail/vm-goodbye.wav"
|
||||
timeout="15000"
|
||||
max-failures="3"
|
||||
max-timeouts="3">
|
||||
|
||||
<entry action="menu-sub" digits="9" param="freeswitch_ivr_submenu"/>
|
||||
<entry action="menu-top" digits="*"/>
|
||||
</menu>
|
||||
|
||||
<!-- FreeSWITCH Solutions IVR Sub Menu -->
|
||||
<menu name="freeswitch_solutions_ivr_submenu"
|
||||
greet-long="phrase:learn_about_freeswitch_solutions_sub_menu"
|
||||
greet-short="phrase:learn_about_freeswitch_solutions_sub_menu"
|
||||
invalid-sound="ivr/ivr-that_was_an_invalid_entry.wav"
|
||||
exit-sound="voicemail/vm-goodbye.wav"
|
||||
timeout="15000"
|
||||
max-failures="3"
|
||||
max-timeouts="3">
|
||||
|
||||
<entry action="menu-sub" digits="9" param="freeswitch_solutions_ivr_submenu"/>
|
||||
<entry action="menu-top" digits="*"/>
|
||||
</menu>
|
||||
|
||||
<!-- ClueCon IVR Sub Menu -->
|
||||
<menu name="cluecon_ivr_submenu"
|
||||
greet-long="phrase:learn_about_cluecon_sub_menu"
|
||||
greet-short="phrase:learn_about_cluecon_sub_menu"
|
||||
invalid-sound="ivr/ivr-that_was_an_invalid_entry.wav"
|
||||
exit-sound="voicemail/vm-goodbye.wav"
|
||||
timeout="15000"
|
||||
max-failures="3"
|
||||
max-timeouts="3">
|
||||
|
||||
<entry action="menu-sub" digits="9" param="cluecon_ivr_submenu"/>
|
||||
<entry action="menu-top" digits="*"/>
|
||||
</menu>
|
||||
|
||||
|
||||
</include>
|
@ -28,5 +28,9 @@
|
||||
<!--<param name="avatar" value="/path/to/tiny.jpg"/>-->
|
||||
<!--<param name="candidate-acl" value="wan.auto"/>-->
|
||||
<param name="local-network-acl" value="localnet.auto"/>
|
||||
|
||||
<!-- google voice does not work on this yet ....ikr... -->
|
||||
<!--<param name="use-jingle" value="true"/>-->
|
||||
|
||||
</x-profile>
|
||||
</include>
|
||||
|
35
conf/vanilla/lang/en/demo/funnies.xml
Normal file
35
conf/vanilla/lang/en/demo/funnies.xml
Normal file
@ -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>
|
171
conf/vanilla/lang/en/demo/new-demo-ivr.xml
Normal file
171
conf/vanilla/lang/en/demo/new-demo-ivr.xml
Normal file
@ -0,0 +1,171 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
<macro name="new_demo_ivr_main_menu" pause="100"> <!-- See conf/ivr_menus/ivr.conf.xml for an example on how to use this macro in an IVR -->
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
|
||||
<action function="play-file" data="silence_stream://500"/>
|
||||
|
||||
<!-- Menu option 1: For information about FreeSWITCH... -->
|
||||
<action function="play-file" data="misc/misc-information_about_freeswitch.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
|
||||
<!-- Menu option 2: To learn more about FreeSWITCH Solutions... -->
|
||||
<action function="play-file" data="misc/misc-learn_more_about_freeswitch_solutions.wav"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
|
||||
<!-- Menu option 3: To hear about ClueCon -->
|
||||
<action function="play-file" data="misc/misc-to_hear_about_cluecon.wav"/>
|
||||
<action function="play-file" data="digits/3.wav"/>
|
||||
|
||||
<!-- Menu option 4: For other options -->
|
||||
<action function="play-file" data="ivr/ivr-for_other_options.wav"/>
|
||||
<action function="play-file" data="digits/4.wav"/>
|
||||
|
||||
<!-- Menu option 9: Repeat these options -->
|
||||
<action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<!-- The following macro is the same as new_demo_ivr_main_menu except it is the "short" version -->
|
||||
<!-- The short version has all the options but not the initial greeting -->
|
||||
<macro name="new_demo_ivr_main_menu_short" pause="100">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option 1: For information about FreeSWITCH... -->
|
||||
<action function="play-file" data="misc/misc-information_about_freeswitch.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
|
||||
<!-- Menu option 2: To learn more about FreeSWITCH Solutions... -->
|
||||
<action function="play-file" data="misc/misc-learn_more_about_freeswitch_solutions.wav"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
|
||||
<!-- Menu option 3: To hear about ClueCon -->
|
||||
<action function="play-file" data="misc/misc-to_hear_about_cluecon.wav"/>
|
||||
<action function="play-file" data="digits/3.wav"/>
|
||||
|
||||
<!-- Menu option 4: For other options -->
|
||||
<action function="play-file" data="ivr/ivr-for_other_options.wav"/>
|
||||
<action function="play-file" data="digits/4.wav"/>
|
||||
|
||||
<!-- Menu option 9: Repeat these options -->
|
||||
<action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<!-- More information about FreeSWITCH... -->
|
||||
<macro name="learn_about_freeswitch_sub_menu">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Information about FreeSWITCH and OSTAG... -->
|
||||
<action function="play-file" data="misc-freeswitch_is_state_of_the_art.wav"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="misc-it_is_stable_scalable_extensible.wav"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="misc-free_to_download.wav"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="misc-freeswitch_sponsored_by_ostag.wav"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="misc-ostag_learn_more.wav"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
|
||||
<!-- Menu option 9: Repeat this information -->
|
||||
<action function="play-file" data="ivr/ivr-repeat_this_information.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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>
|
||||
|
||||
<!-- More information about FreeSWITCH Solutions... -->
|
||||
<macro name="learn_about_freeswitch_solutions_sub_menu">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Information about FreeSWITCH Solutions... -->
|
||||
<action function="play-file" data="[[sounds from tony/brian]]"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="[[sounds from tony/brian]]"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="[[sounds from tony/brian]]"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="[[sounds from tony/brian]]"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="[[sounds from tony/brian]]"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
|
||||
<!-- Menu option 9: Repeat this information -->
|
||||
<action function="play-file" data="ivr/ivr-repeat_this_information.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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>
|
||||
|
||||
<!-- More information about ClueCon -->
|
||||
<macro name="learn_about_cluecon_sub_menu">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Information about ClueCon... -->
|
||||
<action function="play-file" data="misc-cluecon_is_premier_conference.wav"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="misc-chicago_each_summer.wav"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="misc-wide_range_of_persons.wav"/>
|
||||
<action function="play-file" data="silence_stream://50"/>
|
||||
<action function="play-file" data="misc-support_open_source_by_attending.wav"/>
|
||||
<action function="play-file" data="silence_stream://500"/>
|
||||
<action function="play-file" data="ivr-register_for_cluecon.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
<action function="play-file" data="silence_stream://500"/>
|
||||
|
||||
<!-- Menu option 9: Repeat this information -->
|
||||
<action function="play-file" data="ivr/ivr-repeat_this_information.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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 -->
|
@ -29,7 +29,7 @@
|
||||
<macro name="voicemail_change_pass_success">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="ivr/ivr-Thank_you.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-password_has_been_changed.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
@ -37,7 +37,7 @@
|
||||
<macro name="voicemail_change_pass_fail">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-fail_auth.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-password_not_valid.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
71
conf/vanilla/lang/es/demo/demo-es-ES.xml
Normal file
71
conf/vanilla/lang/es/demo/demo-es-ES.xml
Normal file
@ -0,0 +1,71 @@
|
||||
<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="Usted tiene $1 mensajes"/>-->
|
||||
</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="Quedan $1 minutos y $2 segundos $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Esa fue una entrada inválida."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sec">
|
||||
<match>
|
||||
<action function="speak-text" data="Quedan $1 minutos y $2 segundos $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Esa fue una entrada inválida."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
71
conf/vanilla/lang/es/demo/demo-es-MX.xml
Normal file
71
conf/vanilla/lang/es/demo/demo-es-MX.xml
Normal file
@ -0,0 +1,71 @@
|
||||
<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="Usted tiene $1 mensajes"/>-->
|
||||
</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="Quedan $1 minutos y $2 segundos $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Esa fue una entrada inválida."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sec">
|
||||
<match>
|
||||
<action function="speak-text" data="Quedan $1 minutos y $2 segundos $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Esa fue una entrada inválida."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
148
conf/vanilla/lang/es/demo/demo-ivr-es-ES.xml
Normal file
148
conf/vanilla/lang/es/demo/demo-ivr-es-ES.xml
Normal file
@ -0,0 +1,148 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
|
||||
<macro name="demo_ivr_count">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="demo_ivr_main_menu" pause="100"> <!-- See conf/autoload_config/ivr.conf.xml for an example on how to use this macro in an IVR -->
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- string together several existing sound files to create one long greeting -->
|
||||
<action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-this_ivr_will_let_you_test_features.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-you_may_exit_by_hanging_up.wav"/>
|
||||
<!-- note that you can do more than just play files, e.g. have pauses and do TTS -->
|
||||
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
<action function="play-file" data="ivr/ivr-enter_ext_pound.wav"/>
|
||||
<action function="play-file" data="silence_stream://1500"/>
|
||||
<action function="play-file" data="ivr/ivr-to_call_the_freeswitch_conference.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
|
||||
<!-- Menu option 2: Do FreeSWITCH echo test -->
|
||||
<action function="play-file" data="ivr/ivr-to_do_a_freeswitch_echo_test.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
|
||||
<!-- Menu option 3: Listen to Music on Hold -->
|
||||
<action function="play-file" data="ivr/ivr-to_listen_to_moh.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/3.wav"/>
|
||||
|
||||
<!-- Menu option 4: Register for ClueCon -->
|
||||
<action function="play-file" data="ivr/ivr-register_for_cluecon.wav"/>
|
||||
<action function="play-file" data="digits/4.wav"/>
|
||||
|
||||
<!-- Menu option 5: Listen to screaming monkeys -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_screaming_monkeys.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/5.wav"/>
|
||||
|
||||
<!-- Menu option 6: Hear a sample submenu -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_sample_submenu.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/6.wav"/>
|
||||
|
||||
<!-- Menu option 9: Repeat these options -->
|
||||
<action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<!-- 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">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
<action function="play-file" data="silence_stream://1000"/>
|
||||
<action function="play-file" data="ivr/ivr-to_call_the_freeswitch_conference.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
|
||||
<!-- Menu option 2: Do FreeSWITCH echo test -->
|
||||
<action function="play-file" data="ivr/ivr-to_do_a_freeswitch_echo_test.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
|
||||
<!-- Menu option 3: Listen to Music on Hold -->
|
||||
<action function="play-file" data="ivr/ivr-to_listen_to_moh.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/3.wav"/>
|
||||
|
||||
<!-- Menu option 4: Hear a sample submenu -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_sample_submenu.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/4.wav"/>
|
||||
|
||||
<!-- Menu option 5: Listen to screaming monkeys -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_screaming_monkeys.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/5.wav"/>
|
||||
|
||||
<!-- Menu option 9: Repeat these options -->
|
||||
<action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<!-- The following macro is the "long" greeting for the demo_ivr_sub_menu -->
|
||||
<macro name="demo_ivr_sub_menu">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-sample_submenu.wav"/>
|
||||
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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>
|
||||
|
||||
<!-- 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">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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 -->
|
148
conf/vanilla/lang/es/demo/demo-ivr-es-MX.xml
Normal file
148
conf/vanilla/lang/es/demo/demo-ivr-es-MX.xml
Normal file
@ -0,0 +1,148 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
|
||||
<macro name="demo_ivr_count">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="demo_ivr_main_menu" pause="100"> <!-- See conf/autoload_config/ivr.conf.xml for an example on how to use this macro in an IVR -->
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- string together several existing sound files to create one long greeting -->
|
||||
<action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-this_ivr_will_let_you_test_features.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-you_may_exit_by_hanging_up.wav"/>
|
||||
<!-- note that you can do more than just play files, e.g. have pauses and do TTS -->
|
||||
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
<action function="play-file" data="ivr/ivr-enter_ext_pound.wav"/>
|
||||
<action function="play-file" data="silence_stream://1500"/>
|
||||
<action function="play-file" data="ivr/ivr-to_call_the_freeswitch_conference.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
|
||||
<!-- Menu option 2: Do FreeSWITCH echo test -->
|
||||
<action function="play-file" data="ivr/ivr-to_do_a_freeswitch_echo_test.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
|
||||
<!-- Menu option 3: Listen to Music on Hold -->
|
||||
<action function="play-file" data="ivr/ivr-to_listen_to_moh.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/3.wav"/>
|
||||
|
||||
<!-- Menu option 4: Register for ClueCon -->
|
||||
<action function="play-file" data="ivr/ivr-register_for_cluecon.wav"/>
|
||||
<action function="play-file" data="digits/4.wav"/>
|
||||
|
||||
<!-- Menu option 5: Listen to screaming monkeys -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_screaming_monkeys.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/5.wav"/>
|
||||
|
||||
<!-- Menu option 6: Hear a sample submenu -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_sample_submenu.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/6.wav"/>
|
||||
|
||||
<!-- Menu option 9: Repeat these options -->
|
||||
<action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<!-- 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">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
<action function="play-file" data="silence_stream://1000"/>
|
||||
<action function="play-file" data="ivr/ivr-to_call_the_freeswitch_conference.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
|
||||
<!-- Menu option 2: Do FreeSWITCH echo test -->
|
||||
<action function="play-file" data="ivr/ivr-to_do_a_freeswitch_echo_test.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
|
||||
<!-- Menu option 3: Listen to Music on Hold -->
|
||||
<action function="play-file" data="ivr/ivr-to_listen_to_moh.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/3.wav"/>
|
||||
|
||||
<!-- Menu option 4: Hear a sample submenu -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_sample_submenu.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/4.wav"/>
|
||||
|
||||
<!-- Menu option 5: Listen to screaming monkeys -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_screaming_monkeys.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/5.wav"/>
|
||||
|
||||
<!-- Menu option 9: Repeat these options -->
|
||||
<action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<!-- The following macro is the "long" greeting for the demo_ivr_sub_menu -->
|
||||
<macro name="demo_ivr_sub_menu">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-sample_submenu.wav"/>
|
||||
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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>
|
||||
|
||||
<!-- 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">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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 -->
|
121
conf/vanilla/lang/es/dir/sounds-es-ES.xml
Normal file
121
conf/vanilla/lang/es/dir/sounds-es-ES.xml
Normal file
@ -0,0 +1,121 @@
|
||||
<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>
|
||||
|
||||
<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">
|
||||
<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_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>
|
||||
|
||||
<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_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_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 -->
|
121
conf/vanilla/lang/es/dir/sounds-es-MX.xml
Normal file
121
conf/vanilla/lang/es/dir/sounds-es-MX.xml
Normal file
@ -0,0 +1,121 @@
|
||||
<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>
|
||||
|
||||
<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">
|
||||
<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_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>
|
||||
|
||||
<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_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_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 -->
|
96
conf/vanilla/lang/es/dir/tts-es-ES.xml
Normal file
96
conf/vanilla/lang/es/dir/tts-es-ES.xml
Normal file
@ -0,0 +1,96 @@
|
||||
<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="speak-text" data="Introduzca las primeras letras del apellido de la persona."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Introduzca las primeras letras del nombre de la persona."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Para buscar por apellido, pulse $2"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Para buscar por nombre, pulse $2"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Necesita especificar un mínimo de $1 letras del nombre buscado. Por favor intente de nuevo."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="No hay resultados que coincidan con su busqueda. Por favor intente de nuevo."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 resultados coinciden con su busqueda."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Su busqueda genera demasiados resultados. Por favor intente de nuevo."/>
|
||||
</match>
|
||||
</input>
|
||||
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="No hay más resultados."/>
|
||||
</match>
|
||||
</input>
|
||||
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Resultado número $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="Para seleccionar este resultado pulse $1, para el resultado siguiente pulse $2, para el resultado previo pulse $3, para empezar una nueva busqueda pulse $4"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="en la extensión $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 -->
|
96
conf/vanilla/lang/es/dir/tts-es-MX.xml
Normal file
96
conf/vanilla/lang/es/dir/tts-es-MX.xml
Normal file
@ -0,0 +1,96 @@
|
||||
<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="speak-text" data="Ingrese las primeras letras del apellido de la persona."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Ingrese las primeras letras del nombre de la persona."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Para buscar por apellido, pulse $2"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Para buscar por nombre, pulse $2"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Necesita especificar un mínimo de $1 letras del nombre buscado. Por favor intente de nuevo."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="No hay resultados que coincidan con su busqueda. Por favor intente de nuevo."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 resultados coinciden con su busqueda."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Su busqueda genera demasiados resultados. Por favor intente de nuevo."/>
|
||||
</match>
|
||||
</input>
|
||||
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="No hay más resultados."/>
|
||||
</match>
|
||||
</input>
|
||||
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Resultado número $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="Para seleccionar este resultado pulse $1, para el resultado siguiente pulse $2, para el resultado previo pulse $3, para empezar una nueva busqueda pulse $4"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="en la extensión $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 -->
|
8
conf/vanilla/lang/es/es_ES.xml
Normal file
8
conf/vanilla/lang/es/es_ES.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<include>
|
||||
<language name="es" sound-path="$${sounds_dir}/es/ES/cristina" tts-engine="cepstral" tts-voice="marta">
|
||||
<X-PRE-PROCESS cmd="include" data="demo/*-es-ES.xml"/> <!-- Note: this now grabs whole subdir, previously grabbed only demo.xml -->
|
||||
<!--voicemail_es_ES_tts is purely implemented with tts, we have the files based one that is the default. -->
|
||||
<X-PRE-PROCESS cmd="include" data="vm/sounds-es-ES.xml"/> <!-- vm/tts.xml if you want to use tts and have cepstral -->
|
||||
<X-PRE-PROCESS cmd="include" data="dir/sounds-es-ES.xml"/> <!-- dir/tts.xml if you want to use tts and have cepstral -->
|
||||
</language>
|
||||
</include>
|
8
conf/vanilla/lang/es/es_MX.xml
Normal file
8
conf/vanilla/lang/es/es_MX.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<include>
|
||||
<language name="es" sound-path="$${sounds_dir}/es/mx/maria" tts-engine="cepstral" tts-voice="marta">
|
||||
<X-PRE-PROCESS cmd="include" data="demo/*-es-MX.xml"/> <!-- Note: this now grabs whole subdir, previously grabbed only demo.xml -->
|
||||
<!--voicemail_es_MX_tts is purely implemented with tts, we have the files based one that is the default. -->
|
||||
<X-PRE-PROCESS cmd="include" data="vm/sounds-es-MX.xml"/> <!-- vm/tts.xml if you want to use tts and have cepstral -->
|
||||
<X-PRE-PROCESS cmd="include" data="dir/sounds-es-MX.xml"/> <!-- dir/tts.xml if you want to use tts and have cepstral -->
|
||||
</language>
|
||||
</include>
|
404
conf/vanilla/lang/es/vm/sounds-es-ES.xml
Normal file
404
conf/vanilla/lang/es/vm/sounds-es-ES.xml
Normal file
@ -0,0 +1,404 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<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 function="play-file" data="digits/un.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.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-messages.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$2_s.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 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 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>
|
||||
</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><!--This line will be ignored it's here to validate the xml and is optional -->
|
404
conf/vanilla/lang/es/vm/sounds-es-MX.xml
Normal file
404
conf/vanilla/lang/es/vm/sounds-es-MX.xml
Normal file
@ -0,0 +1,404 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<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 function="play-file" data="digits/un.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.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-messages.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.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 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 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>
|
||||
</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><!--This line will be ignored it's here to validate the xml and is optional -->
|
238
conf/vanilla/lang/es/vm/tts-es-ES.xml
Normal file
238
conf/vanilla/lang/es/vm/tts-es-ES.xml
Normal file
@ -0,0 +1,238 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor introduzca su número de usuario, seguido por $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor introduzca su contraseña, seguido por $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Inicio de sesión incorrecto."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Bienvenido a su buzón de voz."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Adiós."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Demasiados intentos fallidos."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^1:(.*)$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="Usted tiene 1 $1 mensaje en la bandeja de entrada ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Usted tiene $1 $2 mensajes en la bandeja de entrada ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para escuchar mensajes nuevos, pulse $1. Para escuchar mensajes guardados, pulse $2. Para opciones avanzadas, pulse $3. Para salir, pulse $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="Para grabar un saludo, pulse $1. Para elegir un saludo, pulse $2. Para grabar su nombre, pulse $3. Para cambiar su contraseña, pulse $5. Para el menú principal, pulse $5."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor grabe su nombre después de la señal, pulse cualquier tecla o deje de hablar para poner fin a la grabación."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para escuchar la grabación, pulse $1. Para guardar la grabación, pulse $2. Para regrabar, pulse $3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para marcar este mensaje como urgente, pulse $1. Para continuar, pulse $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_invalid_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 no es una extensión válida."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_forward_message_enter_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="Introduzca la extensión a la cual quiere enviar este mensaje, seguido de $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_forward_prepend">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="Para grabar un saludo, pulse $1."/>
|
||||
</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="speak-text"
|
||||
data="Para escuchar la grabación, pulse $1. Para guardar la grabación, pulse $2. Para eliminar la grabación, pulse $3. Para enviar la grabación a su e-mail, pulse $4. Para devolver la llamada, pulse $5. Para enviar este mensaje a otra extensión, pulse $6."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Elija un saludo entre 1 y 9."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Valor inválido."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Grabe su saludo después de la señal, pulse cualquier tecla o deje de hablar para poner fin a la grabación."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Grabe su mensaje después de la señal, pulse cualquier tecla o deje de hablar para poner fin a la grabación."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Saludo $1 seleccionado."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 no está disponible."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 mensaje número $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="mensaje $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<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 -->
|
238
conf/vanilla/lang/es/vm/tts-es-MX.xml
Normal file
238
conf/vanilla/lang/es/vm/tts-es-MX.xml
Normal file
@ -0,0 +1,238 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor ingrese su número de usuario, seguido por $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor ingrese su contraseña, seguido por $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Inicio de sesión incorrecto."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Bienvenido a su buzón de voz."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Adiós."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Demasiados intentos fallidos."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^1:(.*)$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="Usted tiene 1 $1 mensaje en la bandeja de entrada ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Usted tiene $1 $2 mensajes en la bandeja de entrada ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para escuchar mensajes nuevos, pulse $1. Para escuchar mensajes guardados, pulse $2. Para opciones avanzadas, pulse $3. Para salir, pulse $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="Para grabar un saludo, pulse $1. Para elegir un saludo, pulse $2. Para grabar su nombre, pulse $3. Para cambiar su contraseña, pulse $5. Para el menú principal, pulse $5."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Después del tono, por favor anote su nombre, pulse cualquier tecla o deje de hablar para poner fin a la grabación."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para escuchar la grabación, pulse $1. Para guardar la grabación, pulse $2. Para regrabar, pulse $3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para marcar este mensaje como urgente, pulse $1. Para continuar, pulse $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_invalid_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 no es una extensión válida."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_forward_message_enter_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="Introduzca la extensión a la cual quiere enviar este mensaje, seguido de $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_forward_prepend">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="Para grabar un saludo, pulse $1."/>
|
||||
</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="speak-text"
|
||||
data="Para escuchar la grabación, pulse $1. Para guardar la grabación, pulse $2. Para eliminar la grabación, pulse $3. Para enviar la grabación a su e-mail, pulse $4. Para devolver la llamada, pulse $5. Para enviar este mensaje a otra extensión, pulse $6."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Elija un saludo entre 1 y 9."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Valor inválido."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Grabe su saludo después del tono, pulse cualquier tecla o deje de hablar para poner fin a la grabación."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Grabe su mensaje después del tono, pulse cualquier tecla o deje de hablar para poner fin a la grabación."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Saludo $1 seleccionado."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 no está disponible."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 mensaje número $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="mensaje $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<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 -->
|
148
conf/vanilla/lang/pt/demo/demo-ivr-pt-BR.xml
Normal file
148
conf/vanilla/lang/pt/demo/demo-ivr-pt-BR.xml
Normal file
@ -0,0 +1,148 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
|
||||
<macro name="demo_ivr_count">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="demo_ivr_main_menu" pause="100"> <!-- See conf/autoload_config/ivr.conf.xml for an example on how to use this macro in an IVR -->
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- string together several existing sound files to create one long greeting -->
|
||||
<action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-this_ivr_will_let_you_test_features.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-you_may_exit_by_hanging_up.wav"/>
|
||||
<!-- note that you can do more than just play files, e.g. have pauses and do TTS -->
|
||||
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
<action function="play-file" data="ivr/ivr-enter_ext_pound.wav"/>
|
||||
<action function="play-file" data="silence_stream://1500"/>
|
||||
<action function="play-file" data="ivr/ivr-to_call_the_freeswitch_conference.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
|
||||
<!-- Menu option 2: Do FreeSWITCH echo test -->
|
||||
<action function="play-file" data="ivr/ivr-to_do_a_freeswitch_echo_test.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
|
||||
<!-- Menu option 3: Listen to Music on Hold -->
|
||||
<action function="play-file" data="ivr/ivr-to_listen_to_moh.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/3.wav"/>
|
||||
|
||||
<!-- Menu option 4: Register for ClueCon -->
|
||||
<action function="play-file" data="ivr/ivr-register_for_cluecon.wav"/>
|
||||
<action function="play-file" data="digits/4.wav"/>
|
||||
|
||||
<!-- Menu option 5: Listen to screaming monkeys -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_screaming_monkeys.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/5.wav"/>
|
||||
|
||||
<!-- Menu option 6: Hear a sample submenu -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_sample_submenu.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/6.wav"/>
|
||||
|
||||
<!-- Menu option 9: Repeat these options -->
|
||||
<action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<!-- 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">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
<action function="play-file" data="silence_stream://1000"/>
|
||||
<action function="play-file" data="ivr/ivr-to_call_the_freeswitch_conference.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
|
||||
<!-- Menu option 2: Do FreeSWITCH echo test -->
|
||||
<action function="play-file" data="ivr/ivr-to_do_a_freeswitch_echo_test.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
|
||||
<!-- Menu option 3: Listen to Music on Hold -->
|
||||
<action function="play-file" data="ivr/ivr-to_listen_to_moh.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/3.wav"/>
|
||||
|
||||
<!-- Menu option 4: Hear a sample submenu -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_sample_submenu.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/4.wav"/>
|
||||
|
||||
<!-- Menu option 5: Listen to screaming monkeys -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_screaming_monkeys.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/5.wav"/>
|
||||
|
||||
<!-- Menu option 9: Repeat these options -->
|
||||
<action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<!-- The following macro is the "long" greeting for the demo_ivr_sub_menu -->
|
||||
<macro name="demo_ivr_sub_menu">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-sample_submenu.wav"/>
|
||||
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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>
|
||||
|
||||
<!-- 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">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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 -->
|
148
conf/vanilla/lang/pt/demo/demo-ivr-pt-PT.xml
Normal file
148
conf/vanilla/lang/pt/demo/demo-ivr-pt-PT.xml
Normal file
@ -0,0 +1,148 @@
|
||||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
|
||||
|
||||
<macro name="demo_ivr_count">
|
||||
<input pattern="^(\d+)$">
|
||||
<match>
|
||||
<action function="play-file" data="voicemail/vm-you_have.wav"/>
|
||||
<action function="say" data="$1" method="pronounced" type="name_spelled"/>
|
||||
<action function="play-file" data="voicemail/vm-messages.wav"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="demo_ivr_main_menu" pause="100"> <!-- See conf/autoload_config/ivr.conf.xml for an example on how to use this macro in an IVR -->
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- string together several existing sound files to create one long greeting -->
|
||||
<action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-this_ivr_will_let_you_test_features.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-you_may_exit_by_hanging_up.wav"/>
|
||||
<!-- note that you can do more than just play files, e.g. have pauses and do TTS -->
|
||||
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
<action function="play-file" data="ivr/ivr-enter_ext_pound.wav"/>
|
||||
<action function="play-file" data="silence_stream://1500"/>
|
||||
<action function="play-file" data="ivr/ivr-to_call_the_freeswitch_conference.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
|
||||
<!-- Menu option 2: Do FreeSWITCH echo test -->
|
||||
<action function="play-file" data="ivr/ivr-to_do_a_freeswitch_echo_test.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
|
||||
<!-- Menu option 3: Listen to Music on Hold -->
|
||||
<action function="play-file" data="ivr/ivr-to_listen_to_moh.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/3.wav"/>
|
||||
|
||||
<!-- Menu option 4: Register for ClueCon -->
|
||||
<action function="play-file" data="ivr/ivr-register_for_cluecon.wav"/>
|
||||
<action function="play-file" data="digits/4.wav"/>
|
||||
|
||||
<!-- Menu option 5: Listen to screaming monkeys -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_screaming_monkeys.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/5.wav"/>
|
||||
|
||||
<!-- Menu option 6: Hear a sample submenu -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_sample_submenu.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/6.wav"/>
|
||||
|
||||
<!-- Menu option 9: Repeat these options -->
|
||||
<action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<!-- 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">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option 1: Call FreeSWITCH conference-->
|
||||
<action function="play-file" data="silence_stream://1000"/>
|
||||
<action function="play-file" data="ivr/ivr-to_call_the_freeswitch_conference.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/1.wav"/>
|
||||
|
||||
<!-- Menu option 2: Do FreeSWITCH echo test -->
|
||||
<action function="play-file" data="ivr/ivr-to_do_a_freeswitch_echo_test.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/2.wav"/>
|
||||
|
||||
<!-- Menu option 3: Listen to Music on Hold -->
|
||||
<action function="play-file" data="ivr/ivr-to_listen_to_moh.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/3.wav"/>
|
||||
|
||||
<!-- Menu option 4: Hear a sample submenu -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_sample_submenu.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/4.wav"/>
|
||||
|
||||
<!-- Menu option 5: Listen to screaming monkeys -->
|
||||
<action function="play-file" data="ivr/ivr-to_hear_screaming_monkeys.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/5.wav"/>
|
||||
|
||||
<!-- Menu option 9: Repeat these options -->
|
||||
<action function="play-file" data="ivr/ivr-to_repeat_these_options.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-please.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-press.wav"/>
|
||||
<action function="play-file" data="digits/9.wav"/>
|
||||
<action function="play-file" data="silence_stream://2000"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<!-- The following macro is the "long" greeting for the demo_ivr_sub_menu -->
|
||||
<macro name="demo_ivr_sub_menu">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="play-file" data="ivr/ivr-welcome_to_freeswitch.wav"/>
|
||||
<action function="play-file" data="ivr/ivr-sample_submenu.wav"/>
|
||||
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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>
|
||||
|
||||
<!-- 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">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<!-- Menu option *: Return to top menu -->
|
||||
<action function="play-file" data="ivr/ivr-to_return_to_previous_menu.wav"/>
|
||||
<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 -->
|
71
conf/vanilla/lang/pt/demo/demo-pt-BR.xml
Normal file
71
conf/vanilla/lang/pt/demo/demo-pt-BR.xml
Normal file
@ -0,0 +1,71 @@
|
||||
<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="Faltam $1 minutos, $2 segundos $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Essa opção não é valida."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sec">
|
||||
<match>
|
||||
<action function="speak-text" data="Faltam $1 minutos, $2 segundos $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Essa opção não é valida."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
71
conf/vanilla/lang/pt/demo/demo-pt-PT.xml
Normal file
71
conf/vanilla/lang/pt/demo/demo-pt-PT.xml
Normal file
@ -0,0 +1,71 @@
|
||||
<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="Você tem $1 mensagens"/>-->
|
||||
</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="Faltam $1 minutos, $2 segundos $strftime(%Y-%m-%d)"/>
|
||||
<action function="break"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Essa era uma entrada inválida."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
<input pattern="(\d+) min (\d+) sec">
|
||||
<match>
|
||||
<action function="speak-text" data="Faltam $1 minutos, $2 segundos $strftime(%Y-%m-%d)"/>
|
||||
</match>
|
||||
<nomatch>
|
||||
<action function="speak-text" data="Essa era uma entrada inválida."/>
|
||||
</nomatch>
|
||||
</input>
|
||||
</macro>
|
||||
</include><!--This line will be ignored it's here to validate the xml and is optional -->
|
121
conf/vanilla/lang/pt/dir/sounds-pt-BR.xml
Normal file
121
conf/vanilla/lang/pt/dir/sounds-pt-BR.xml
Normal file
@ -0,0 +1,121 @@
|
||||
<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>
|
||||
|
||||
<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">
|
||||
<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_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>
|
||||
|
||||
<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_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_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 -->
|
121
conf/vanilla/lang/pt/dir/sounds-pt-PT.xml
Normal file
121
conf/vanilla/lang/pt/dir/sounds-pt-PT.xml
Normal file
@ -0,0 +1,121 @@
|
||||
<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>
|
||||
|
||||
<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">
|
||||
<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_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>
|
||||
|
||||
<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_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_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 -->
|
96
conf/vanilla/lang/pt/dir/tts-pt-BR.xml
Normal file
96
conf/vanilla/lang/pt/dir/tts-pt-BR.xml
Normal file
@ -0,0 +1,96 @@
|
||||
<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="speak-text" data="Por favor marque as primeiras letras do apelido da pessoa"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor marque as primeiras letras do nome da pessoa"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Para buscar por primeiro nome, digite $2"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Para buscar por apelido, digite $2"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Você precisa dizer um mínimo de $1 letras do nome da pessoa, tente novamente."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="Não foram encontrados resultados, tente novamente."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 resultados encontrados para a sua busca."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="A sua busca devolveu muitos resultados, por favor tente novamente."/>
|
||||
</match>
|
||||
</input>
|
||||
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Não há mais resultados."/>
|
||||
</match>
|
||||
</input>
|
||||
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Resultado número $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="Para escolher este resultado digite $1, Para o resultado seguinte digite $2, Para o resultado anterior digite $3, Para uma nova busca digite $4"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="No ramal $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 -->
|
96
conf/vanilla/lang/pt/dir/tts-pt-PT.xml
Normal file
96
conf/vanilla/lang/pt/dir/tts-pt-PT.xml
Normal file
@ -0,0 +1,96 @@
|
||||
<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="speak-text" data="Por favor introduza os primeiras letras do apelido da pessoa"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name)" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor introduza os primeiros dígitos do primeiro nome da pessoa"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(last_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Para pesquisar por primeiro nome, marque $2"/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(first_name):([0-9#*])$" break_on_match="false">
|
||||
<match>
|
||||
<action function="speak-text" data="Para pesquisar por apelido, marque $2"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_min_search_digits">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Você necessita de especificar um mínimo de $1 letras do nome da pessoa, tente novamente."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count">
|
||||
<input pattern="^0$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="Não foram encontrados resultados, tente novamente."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 resultados encontrados para a sua pesquisa."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_count_too_large">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="A sua pesquisa devolveu demasiados resultados, por favor tente novamente."/>
|
||||
</match>
|
||||
</input>
|
||||
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_last">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Não há mais resultados"/>
|
||||
</match>
|
||||
</input>
|
||||
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_item">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Resultado número $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="Para seleccionar este resultado marque $1, Para o resultado seguinte marque $2, Para o resultado anterior marque $3, Para iniciar uma nova pesquisa marque $4"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="directory_result_at">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Na extensão $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 -->
|
8
conf/vanilla/lang/pt/pt_BR.xml
Normal file
8
conf/vanilla/lang/pt/pt_BR.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<include>
|
||||
<language name="pt" sound-path="$${sounds_dir}/pt/BR/karina" tts-engine="cepstral" tts-voice="marta">
|
||||
<X-PRE-PROCESS cmd="include" data="demo/*-pt-BR.xml"/> <!-- Note: this now grabs whole subdir, previously grabbed only demo.xml -->
|
||||
<!--voicemail_pt_BR_tts is purely implemented with tts, we have the files based one that is the default. -->
|
||||
<X-PRE-PROCESS cmd="include" data="vm/sounds-pt-BR.xml"/> <!-- vm/tts.xml if you want to use tts and have cepstral -->
|
||||
<X-PRE-PROCESS cmd="include" data="dir/sounds-pt-BR.xml"/> <!-- dir/tts.xml if you want to use tts and have cepstral -->
|
||||
</language>
|
||||
</include>
|
8
conf/vanilla/lang/pt/pt_PT.xml
Normal file
8
conf/vanilla/lang/pt/pt_PT.xml
Normal file
@ -0,0 +1,8 @@
|
||||
<include>
|
||||
<language name="pt" sound-path="$${sounds_dir}/pt/PT/karina" tts-engine="cepstral" tts-voice="marta">
|
||||
<X-PRE-PROCESS cmd="include" data="demo/*-pt-PT.xml"/> <!-- Note: this now grabs whole subdir, previously grabbed only demo.xml -->
|
||||
<!--voicemail_pt_PT_tts is purely implemented with tts, we have the files based one that is the default. -->
|
||||
<X-PRE-PROCESS cmd="include" data="vm/sounds-pt-PT.xml"/> <!-- vm/tts.xml if you want to use tts and have cepstral -->
|
||||
<X-PRE-PROCESS cmd="include" data="dir/sounds-pt-PT.xml"/> <!-- dir/tts.xml if you want to use tts and have cepstral -->
|
||||
</language>
|
||||
</include>
|
404
conf/vanilla/lang/pt/vm/sounds-pt-BR.xml
Normal file
404
conf/vanilla/lang/pt/vm/sounds-pt-BR.xml
Normal file
@ -0,0 +1,404 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<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 function="play-file" data="digits/uma.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.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-messages.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$2_s.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 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 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>
|
||||
</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><!--This line will be ignored it's here to validate the xml and is optional -->
|
404
conf/vanilla/lang/pt/vm/sounds-pt-PT.xml
Normal file
404
conf/vanilla/lang/pt/vm/sounds-pt-PT.xml
Normal file
@ -0,0 +1,404 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<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 function="play-file" data="digits/uma.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-message.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$2.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-messages.wav"/>
|
||||
<action function="play-file" data="voicemail/vm-$2_s.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 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 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>
|
||||
</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><!--This line will be ignored it's here to validate the xml and is optional -->
|
239
conf/vanilla/lang/pt/vm/tts-pt-BR.xml
Normal file
239
conf/vanilla/lang/pt/vm/tts-pt-BR.xml
Normal file
@ -0,0 +1,239 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor digite o seu número de usuario, e depois $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor digite a sua contrasenha, e depois $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Inicio incorreto da sessão."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Bem-vindo ao seu correio de voz."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Até logo."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Muitas tentativas fracassadas."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^1:(.*)$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="Você tem 1 $1 mensagem no directório ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Você tem $1 $2 mensagens no directório ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para ouvir as mensagens novas, digite $1, Para ouvir as mensagens armazenadas, digite $2, Para opções avançadas, digite $3, Para sair, digite $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="Para gravar a sua saudação, digite $1, Para escolher a sua saudação, digite $2, Para gravar o seu nome, digite $3, Para mudar a sua senha, digite $5, Para o menu principal, digite $5."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Após o sinal grave o seu nome, digite qualquer tecla ou deixe de falar para finalizar a gravação."/>
|
||||
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para ouvir a gravação, digite $1, Para guardar a gravação, digite $2, Para gravar novamente, digite $3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para marcar esta mensagem como urgente, digite $1, Para continuar, digite $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_invalid_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 não é um ramal válido."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_forward_message_enter_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="Marque o ramal para o qual pretende encaminhar esta mensagem, e depois $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_forward_prepend">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="Para gravar um anúncio, digite $1."/>
|
||||
</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="speak-text"
|
||||
data="Para ouvir a gravação novamente, press $1, Para guardar a gravação, press $2, Para borrar a gravação, press $3, Para enviar a gravação para o seu email, press $4, Para devolver a ligação agora, press $5, Para encaminhar esta mensagem para outro ramal, press $6."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Escolha uma saudação entre as opções 1 e 3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Valor inválido."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Após o sinal grave a sua saudação, digite qualquer tecla ou deixe de falar para finalizar a gravação."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Após o sinal grave a sua mensagem, digite qualquer tecla ou deixe de falar para finalizar a gravação."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Saudação $1 selecionada."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 não está disponível."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 mensagem número $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Mensagem $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<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 -->
|
238
conf/vanilla/lang/pt/vm/tts-pt-PT.xml
Normal file
238
conf/vanilla/lang/pt/vm/tts-pt-PT.xml
Normal file
@ -0,0 +1,238 @@
|
||||
<include><!--This line will be ignored it's here to validate the xml and is optional -->
|
||||
<macro name="voicemail_enter_id">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor introduza o seu número de utilizador, seguido de $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_enter_pass">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Por favor introduza a sua palavra passe, seguida de $1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_fail_auth">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Falha na autenticação."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_hello">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Bem-vindo ao seu correio de voz."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_goodbye">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Até breve."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_abort">
|
||||
<input pattern="(.*)">
|
||||
<match>
|
||||
<action function="speak-text" data="Demasiadas tentativas falhadas."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_message_count">
|
||||
<input pattern="^1:(.*)$" break_on_match="true">
|
||||
<match>
|
||||
<action function="speak-text" data="Você tem 1 $1 mensagen no directório ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
<input pattern="^(\d+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Você tem $1 $2 mensagens no directório ${voicemail_current_folder}."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_menu">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para ouvir as mensagens novas, marque $1, Para ouvir as mensagens guardadas, marque $2, Para opções avançadas, marque $3, Para sair, marque $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="Para gravar a sua saudação, marque $1, Para escolher a sua saudação, marque $2, Para gravar o seu nome, marque $3, Para alterar a sua palavra passe, marque $5, Para o menu principal, marque $5."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
|
||||
<macro name="voicemail_record_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Após o sinal grave o seu nome, pressione qualquer tecla ou deixe de falar para parar a gravação."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_file_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para ouvir a gravação, marque $1, Para guardar a gravação, marque $2, Para gravar novamente, marque $3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_urgent_check">
|
||||
<input pattern="^([0-9#*]):([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text"
|
||||
data="Para marcar esta mensagem como urgente, marque $1, Para continuar, marque $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_invalid_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 não é uma extensão válida."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_forward_message_enter_extension">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="Introduza a extensão para a qual pretende encaminhar esta mensagem, seguido de $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_forward_prepend">
|
||||
<input pattern="^([0-9#*])$">
|
||||
<match>
|
||||
<action function="speak-text" data="Para gravar um anúncio, marque $1."/>
|
||||
</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="speak-text"
|
||||
data="Para ouvir a gravação novamente, marque $1, Para guardar a gravação, marque $2, Para apagar a gravação, marque $3, Para encaminhar a gravação para o seu email, marque $4, Para devolver a chamada agora, marque $5, Para encaminhar esta mensagem para outra extensão, marque $6."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_choose_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Seleccione uma saudação entre 1 e 3."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_choose_greeting_fail">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="valor inválido."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Após o sinal grave a sua saudação, pressione qualquer tecla ou deixe de falar para parar a gravação."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_record_message">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Após o sinal grave a sua mensagem, pressione qualquer tecla ou deixe de falar para parar a gravação."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_greeting_selected">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Saudação $1 seleccionada."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_play_greeting">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 não está disponível."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_message_number">
|
||||
<input pattern="^([a-z]+):(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1 mensagem número $2."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_phone_number">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_name">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="$1."/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_ack">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<action function="speak-text" data="Mensagem $1"/>
|
||||
</match>
|
||||
</input>
|
||||
</macro>
|
||||
|
||||
<macro name="voicemail_say_date">
|
||||
<input pattern="^(.*)$">
|
||||
<match>
|
||||
<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 -->
|
@ -1,14 +1,14 @@
|
||||
<profile name="external">
|
||||
<!-- http://wiki.freeswitch.org/wiki/Sofia_Configuration_Files -->
|
||||
<!-- http://wiki.freeswitch.org/wiki/Sofia_Configuration_Files -->
|
||||
<!-- This profile is only for outbound registrations to providers -->
|
||||
<gateways>
|
||||
<X-PRE-PROCESS cmd="include" data="external/*.xml"/>
|
||||
</gateways>
|
||||
|
||||
<aliases>
|
||||
<!--
|
||||
<alias name="outbound"/>
|
||||
<alias name="nat"/>
|
||||
<!--
|
||||
<alias name="outbound"/>
|
||||
<alias name="nat"/>
|
||||
-->
|
||||
</aliases>
|
||||
|
||||
@ -18,10 +18,10 @@
|
||||
|
||||
<settings>
|
||||
<param name="debug" value="0"/>
|
||||
<!-- If you want FreeSWITCH to shutdown if this profile fails to load, uncomment the next line. -->
|
||||
<!-- <param name="shutdown-on-fail" value="true"/> -->
|
||||
<!-- If you want FreeSWITCH to shutdown if this profile fails to load, uncomment the next line. -->
|
||||
<!-- <param name="shutdown-on-fail" value="true"/> -->
|
||||
<param name="sip-trace" value="no"/>
|
||||
<param name="sip-capture" value="no"/>
|
||||
<param name="sip-capture" value="no"/>
|
||||
<param name="rfc2833-pt" value="101"/>
|
||||
<!-- RFC 5626 : Send reg-id and sip.instance -->
|
||||
<!--<param name="enable-rfc-5626" value="true"/> -->
|
||||
@ -34,15 +34,15 @@
|
||||
<param name="hold-music" value="$${hold_music}"/>
|
||||
<param name="rtp-timer-name" value="soft"/>
|
||||
<!--<param name="enable-100rel" value="true"/>-->
|
||||
<!--<param name="disable-srv503" value="true"/>-->
|
||||
<!--<param name="disable-srv503" value="true"/>-->
|
||||
<!-- This could be set to "passive" -->
|
||||
<param name="local-network-acl" value="localnet.auto"/>
|
||||
<param name="manage-presence" value="false"/>
|
||||
|
||||
<!-- used to share presence info across sofia profiles
|
||||
manage-presence needs to be set to passive on this profile
|
||||
if you want it to behave as if it were the internal profile
|
||||
for presence.
|
||||
<!-- used to share presence info across sofia profiles
|
||||
manage-presence needs to be set to passive on this profile
|
||||
if you want it to behave as if it were the internal profile
|
||||
for presence.
|
||||
-->
|
||||
<!-- Name of the db to use for this profile -->
|
||||
<!--<param name="dbname" value="share_presence"/>-->
|
||||
@ -56,8 +56,10 @@
|
||||
<param name="inbound-codec-negotiation" value="generous"/>
|
||||
<param name="nonce-ttl" value="60"/>
|
||||
<param name="auth-calls" value="false"/>
|
||||
<param name="inbound-late-negotiation" value="true"/>
|
||||
<param name="inbound-zrtp-passthru" value="true"/> <!-- (also enables late negotiation) -->
|
||||
<!--
|
||||
DO NOT USE HOSTNAMES, ONLY IP ADDRESSES IN THESE SETTINGS!
|
||||
DO NOT USE HOSTNAMES, ONLY IP ADDRESSES IN THESE SETTINGS!
|
||||
-->
|
||||
<param name="rtp-ip" value="$${local_ip_v4}"/>
|
||||
<param name="sip-ip" value="$${local_ip_v4}"/>
|
||||
@ -90,6 +92,5 @@
|
||||
<param name="tls-verify-in-subjects" value=""/>
|
||||
<!-- TLS version ("sslv23" (default), "tlsv1"). NOTE: Phones may not work with TLSv1 -->
|
||||
<param name="tls-version" value="$${sip_tls_version}"/>
|
||||
|
||||
</settings>
|
||||
</profile>
|
||||
|
@ -9,7 +9,7 @@
|
||||
<!--/// domain to use in from: *optional* same as realm, if blank ///-->
|
||||
<!--<param name="from-domain" value="asterlink.com"/>-->
|
||||
<!--/// account password *required* ///-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--/// extension for inbound calls: *optional* same as username, if blank ///-->
|
||||
<!--<param name="extension" value="cluecon"/>-->
|
||||
<!--/// proxy host: *optional* same as realm, if blank ///-->
|
||||
|
@ -54,36 +54,39 @@
|
||||
<param name="tls-cert-dir" value="$${internal_ssl_dir}"/>
|
||||
<!-- TLS version ("sslv23" (default), "tlsv1"). NOTE: Phones may not work with TLSv1 -->
|
||||
<param name="tls-version" value="$${sip_tls_version}"/>
|
||||
|
||||
|
||||
<!--If you don't want to pass through timestampes from 1 RTP call to another (on a per call basis with rtp_rewrite_timestamps chanvar)-->
|
||||
<!--<param name="rtp-rewrite-timestamps" value="true"/>-->
|
||||
<!--<param name="pass-rfc2833" value="true"/>-->
|
||||
<!--If you have ODBC support and a working dsn you can use it instead of SQLite-->
|
||||
<!--<param name="odbc-dsn" value="dsn:user:pass"/>-->
|
||||
|
||||
|
||||
<!--Uncomment to set all inbound calls to no media mode-->
|
||||
<!--<param name="inbound-bypass-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to set all inbound calls to proxy media mode-->
|
||||
<!--<param name="inbound-proxy-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to let calls hit the dialplan *before* you decide if the codec is ok-->
|
||||
<!--<param name="inbound-late-negotiation" value="true"/>-->
|
||||
|
||||
|
||||
<!-- Let calls hit the dialplan before selecting codec for the a-leg -->
|
||||
<param name="inbound-late-negotiation" value="true"/>
|
||||
|
||||
<!-- Allow ZRTP clients to negotiate end-to-end security associations (also enables late negotiation) -->
|
||||
<param name="inbound-zrtp-passthru" value="true"/>
|
||||
|
||||
<!-- this lets anything register -->
|
||||
<!-- comment the next line and uncomment one or both of the other 2 lines for call authentication -->
|
||||
<!-- <param name="accept-blind-reg" value="true"/> -->
|
||||
|
||||
<!-- accept any authentication without actually checking (not a good feature for most people) -->
|
||||
<!-- <param name="accept-blind-auth" value="true"/> -->
|
||||
|
||||
|
||||
<!-- suppress CNG on this profile or per call with the 'suppress_cng' variable -->
|
||||
<!-- <param name="suppress-cng" value="true"/> -->
|
||||
|
||||
|
||||
<!--TTL for nonce in sip auth-->
|
||||
<param name="nonce-ttl" value="60"/>
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--<param name="disable-transcoding" value="true"/>-->
|
||||
<!-- Used for when phones respond to a challenged ACK with method INVITE in the hash -->
|
||||
<!--<param name="NDLB-broken-auth-hash" value="true"/>-->
|
||||
@ -103,8 +106,8 @@
|
||||
<!-- <param name="vad" value="both"/> -->
|
||||
<!--<param name="alias" value="sip:10.0.1.251:5555"/>-->
|
||||
<!--
|
||||
These are enabled to make the default config work better out of the box.
|
||||
If you need more than ONE domain you'll need to not use these options.
|
||||
These are enabled to make the default config work better out of the box.
|
||||
If you need more than ONE domain you'll need to not use these options.
|
||||
|
||||
-->
|
||||
<!--all inbound reg will look in this domain for the users -->
|
||||
@ -121,10 +124,9 @@
|
||||
<!-- set to true to have the profile determine stun is not useful and turn it off globally-->
|
||||
<!--<param name="stun-auto-disable" value="true"/>-->
|
||||
|
||||
<!-- the following can be used as workaround with bogus SRV/NAPTR records -->
|
||||
<!--<param name="disable-srv" value="false" />-->
|
||||
<!--<param name="disable-naptr" value="false" />-->
|
||||
<!-- the following can be used as workaround with bogus SRV/NAPTR records -->
|
||||
<!--<param name="disable-srv" value="false" />-->
|
||||
<!--<param name="disable-naptr" value="false" />-->
|
||||
|
||||
</settings>
|
||||
</profile>
|
||||
|
||||
|
@ -2,30 +2,30 @@
|
||||
<!--
|
||||
This is a sofia sip profile/user agent. This will service exactly one ip and port.
|
||||
In FreeSWITCH you can run multiple sip user agents on their own ip and port.
|
||||
|
||||
|
||||
When you hear someone say "sofia profile" this is what they are talking about.
|
||||
-->
|
||||
|
||||
|
||||
<!-- http://wiki.freeswitch.org/wiki/Sofia_Configuration_Files -->
|
||||
<!--aliases are other names that will work as a valid profile name for this profile-->
|
||||
<aliases>
|
||||
<!--
|
||||
<alias name="default"/>
|
||||
<alias name="default"/>
|
||||
-->
|
||||
</aliases>
|
||||
<!-- Outbound Registrations -->
|
||||
<gateways>
|
||||
<X-PRE-PROCESS cmd="include" data="internal/*.xml"/>
|
||||
</gateways>
|
||||
|
||||
|
||||
<domains>
|
||||
<!-- indicator to parse the directory for domains with parse="true" to get gateways-->
|
||||
<!--<domain name="$${domain}" parse="true"/>-->
|
||||
<!-- indicator to parse the directory for domains with parse="true" to get gateways and alias every domain to this profile -->
|
||||
<!--<domain name="all" alias="true" parse="true"/>-->
|
||||
<domain name="all" alias="true" parse="false"/>
|
||||
<domain name="all" alias="true" parse="false"/>
|
||||
</domains>
|
||||
|
||||
|
||||
<settings>
|
||||
|
||||
|
||||
@ -33,31 +33,31 @@
|
||||
<!-- <param name="rtp-digit-delay" value="40"/>-->
|
||||
|
||||
<!--
|
||||
When calls are in no media this will bring them back to media
|
||||
when you press the hold button.
|
||||
When calls are in no media this will bring them back to media
|
||||
when you press the hold button.
|
||||
-->
|
||||
<!--<param name="media-option" value="resume-media-on-hold"/> -->
|
||||
<!--
|
||||
This will allow a call after an attended transfer go back to
|
||||
bypass media after an attended transfer.
|
||||
This will allow a call after an attended transfer go back to
|
||||
bypass media after an attended transfer.
|
||||
-->
|
||||
<!--<param name="media-option" value="bypass-media-after-att-xfer"/>-->
|
||||
<!-- <param name="user-agent-string" value="FreeSWITCH Rocks!"/> -->
|
||||
<param name="debug" value="0"/>
|
||||
<!-- If you want FreeSWITCH to shutdown if this profile fails to load, uncomment the next line. -->
|
||||
<!-- <param name="shutdown-on-fail" value="true"/> -->
|
||||
<!-- If you want FreeSWITCH to shutdown if this profile fails to load, uncomment the next line. -->
|
||||
<!-- <param name="shutdown-on-fail" value="true"/> -->
|
||||
<param name="sip-trace" value="no"/>
|
||||
<param name="sip-capture" value="no"/>
|
||||
|
||||
<!-- Use presence_map.conf.xml to convert extension regex to presence protos for routing -->
|
||||
<!-- <param name="presence-proto-lookup" value="true"/> -->
|
||||
|
||||
|
||||
|
||||
<!-- Don't be picky about negotiated DTMF just always offer 2833 and accept both 2833 and INFO -->
|
||||
<!--<param name="liberal-dtmf" value="true"/>-->
|
||||
|
||||
|
||||
<!--
|
||||
<!--
|
||||
Sometimes, in extremely rare edge cases, the Sofia SIP stack may stop
|
||||
responding. These options allow you to enable and control a watchdog
|
||||
on the Sofia SIP stack so that if it stops responding for the
|
||||
@ -70,7 +70,7 @@
|
||||
through the FreeSWITCH CLI either on an individual profile basis or
|
||||
globally for all profiles. So, if you run in an HA environment with a
|
||||
master and slave, you should use the CLI to make sure the watchdog is
|
||||
only enabled on the master.
|
||||
only enabled on the master.
|
||||
If such crash occurs, FreeSWITCH will dump core if allowed. The
|
||||
stacktrace will include function watchdog_triggered_abort().
|
||||
-->
|
||||
@ -106,26 +106,26 @@
|
||||
|
||||
<!--<param name="aggressive-nat-detection" value="true"/>-->
|
||||
<!--
|
||||
There are known issues (asserts and segfaults) when 100rel is enabled.
|
||||
It is not recommended to enable 100rel at this time.
|
||||
There are known issues (asserts and segfaults) when 100rel is enabled.
|
||||
It is not recommended to enable 100rel at this time.
|
||||
-->
|
||||
<!--<param name="enable-100rel" value="true"/>-->
|
||||
|
||||
<!-- uncomment if you don't wish to try a next SRV destination on 503 response -->
|
||||
<!-- RFC3263 Section 4.3 -->
|
||||
<!--<param name="disable-srv503" value="true"/>-->
|
||||
|
||||
<!-- RFC3263 Section 4.3 -->
|
||||
<!--<param name="disable-srv503" value="true"/>-->
|
||||
|
||||
<!-- Enable Compact SIP headers. -->
|
||||
<!--<param name="enable-compact-headers" value="true"/>-->
|
||||
<!--
|
||||
enable/disable session timers
|
||||
enable/disable session timers
|
||||
-->
|
||||
<!--<param name="enable-timer" value="false"/>-->
|
||||
<!--<param name="minimum-session-expires" value="120"/>-->
|
||||
<param name="apply-inbound-acl" value="domains"/>
|
||||
<!--
|
||||
This defines your local network, by default we detect your local network
|
||||
and create this localnet.auto ACL for this.
|
||||
This defines your local network, by default we detect your local network
|
||||
and create this localnet.auto ACL for this.
|
||||
-->
|
||||
<param name="local-network-acl" value="localnet.auto"/>
|
||||
<!--<param name="apply-register-acl" value="domains"/>-->
|
||||
@ -134,10 +134,10 @@
|
||||
|
||||
<!-- 'true' means every time 'first-only' means on the first register -->
|
||||
<!--<param name="send-message-query-on-register" value="true"/>-->
|
||||
|
||||
|
||||
<!-- 'true' means every time 'first-only' means on the first register -->
|
||||
<!--<param name="send-presence-on-register" value="first-only"/> -->
|
||||
|
||||
|
||||
|
||||
<!-- Caller-ID type (choose one, can be overridden by inbound call type and/or sip_cid_type channel variable -->
|
||||
<!-- Remote-Party-ID header -->
|
||||
@ -164,7 +164,7 @@
|
||||
<param name="presence-hosts" value="$${domain},$${local_ip_v4}"/>
|
||||
<param name="presence-privacy" value="$${presence_privacy}"/>
|
||||
<!-- ************************************************* -->
|
||||
|
||||
|
||||
<!-- This setting is for AAL2 bitpacking on G726 -->
|
||||
<!-- <param name="bitpacking" value="aal2"/> -->
|
||||
<!--max number of open dialogs in proceeding -->
|
||||
@ -203,39 +203,42 @@
|
||||
<!-- TLS version ("sslv23" (default), "tlsv1"). NOTE: Phones may not work with TLSv1 -->
|
||||
<param name="tls-version" value="$${sip_tls_version}"/>
|
||||
|
||||
<!-- turn on auto-flush during bridge (skip timer sleep when the socket already has data)
|
||||
(reduces delay on latent connections default true, must be disabled explicitly)-->
|
||||
<!-- turn on auto-flush during bridge (skip timer sleep when the socket already has data)
|
||||
(reduces delay on latent connections default true, must be disabled explicitly)-->
|
||||
<!--<param name="rtp-autoflush-during-bridge" value="false"/>-->
|
||||
|
||||
|
||||
<!--If you don't want to pass through timestamps from 1 RTP call to another (on a per call basis with rtp_rewrite_timestamps chanvar)-->
|
||||
<!--<param name="rtp-rewrite-timestamps" value="true"/>-->
|
||||
<!--<param name="pass-rfc2833" value="true"/>-->
|
||||
<!--If you have ODBC support and a working dsn you can use it instead of SQLite-->
|
||||
<!--<param name="odbc-dsn" value="dsn:user:pass"/>-->
|
||||
|
||||
|
||||
<!--Uncomment to set all inbound calls to no media mode-->
|
||||
<!--<param name="inbound-bypass-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to set all inbound calls to proxy media mode-->
|
||||
<!--<param name="inbound-proxy-media" value="true"/>-->
|
||||
|
||||
<!--Uncomment to let calls hit the dialplan *before* you decide if the codec is ok-->
|
||||
<!--<param name="inbound-late-negotiation" value="true"/>-->
|
||||
|
||||
|
||||
<!-- Let calls hit the dialplan before selecting codec for the a-leg -->
|
||||
<param name="inbound-late-negotiation" value="true"/>
|
||||
|
||||
<!-- Allow ZRTP clients to negotiate end-to-end security associations (also enables late negotiation) -->
|
||||
<param name="inbound-zrtp-passthru" value="true"/>
|
||||
|
||||
<!-- this lets anything register -->
|
||||
<!-- comment the next line and uncomment one or both of the other 2 lines for call authentication -->
|
||||
<!-- <param name="accept-blind-reg" value="true"/> -->
|
||||
|
||||
<!-- accept any authentication without actually checking (not a good feature for most people) -->
|
||||
<!-- <param name="accept-blind-auth" value="true"/> -->
|
||||
|
||||
|
||||
<!-- suppress CNG on this profile or per call with the 'suppress_cng' variable -->
|
||||
<!-- <param name="suppress-cng" value="true"/> -->
|
||||
|
||||
|
||||
<!--TTL for nonce in sip auth-->
|
||||
<param name="nonce-ttl" value="60"/>
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--Uncomment if you want to force the outbound leg of a bridge to only offer the codec
|
||||
that the originator is using-->
|
||||
<!--<param name="disable-transcoding" value="true"/>-->
|
||||
<!-- Handle 302 Redirect in the dialplan -->
|
||||
<!--<param name="manual-redirect" value="true"/> -->
|
||||
@ -252,16 +255,16 @@
|
||||
<param name="inbound-reg-force-matching-username" value="true"/>
|
||||
<!-- on authed calls, authenticate *all* the packets not just invite -->
|
||||
<param name="auth-all-packets" value="false"/>
|
||||
|
||||
|
||||
<!-- external_sip_ip
|
||||
Used as the public IP address for SDP.
|
||||
Can be an one of:
|
||||
ip address - "12.34.56.78"
|
||||
a stun server lookup - "stun:stun.server.com"
|
||||
a DNS name - "host:host.server.com"
|
||||
auto - Use guessed ip.
|
||||
auto-nat - Use ip learned from NAT-PMP or UPNP
|
||||
-->
|
||||
Used as the public IP address for SDP.
|
||||
Can be an one of:
|
||||
ip address - "12.34.56.78"
|
||||
a stun server lookup - "stun:stun.server.com"
|
||||
a DNS name - "host:host.server.com"
|
||||
auto - Use guessed ip.
|
||||
auto-nat - Use ip learned from NAT-PMP or UPNP
|
||||
-->
|
||||
<param name="ext-rtp-ip" value="auto-nat"/>
|
||||
<param name="ext-sip-ip" value="auto-nat"/>
|
||||
|
||||
@ -274,8 +277,8 @@
|
||||
<!-- <param name="vad" value="both"/> -->
|
||||
<!--<param name="alias" value="sip:10.0.1.251:5555"/>-->
|
||||
<!--
|
||||
These are enabled to make the default config work better out of the box.
|
||||
If you need more than ONE domain you'll need to not use these options.
|
||||
These are enabled to make the default config work better out of the box.
|
||||
If you need more than ONE domain you'll need to not use these options.
|
||||
|
||||
-->
|
||||
<!--all inbound reg will look in this domain for the users -->
|
||||
@ -297,28 +300,27 @@
|
||||
<!--<param name="disable-transfer" value="true"/>-->
|
||||
<!--<param name="disable-register" value="true"/>-->
|
||||
|
||||
<!--
|
||||
enable-3pcc can be set to either 'true' or 'proxy', true accepts the call
|
||||
right away, proxy waits until the call has been answered then sends accepts
|
||||
<!--
|
||||
enable-3pcc can be set to either 'true' or 'proxy', true accepts the call
|
||||
right away, proxy waits until the call has been answered then sends accepts
|
||||
-->
|
||||
<!--<param name="enable-3pcc" value="true"/>-->
|
||||
|
||||
|
||||
<!-- use at your own risk or if you know what this does.-->
|
||||
<!--<param name="NDLB-force-rport" value="true"/>-->
|
||||
<!--
|
||||
Choose the realm challenge key. Default is auto_to if not set.
|
||||
|
||||
auto_from - uses the from field as the value for the sip realm.
|
||||
auto_to - uses the to field as the value for the sip realm.
|
||||
<anyvalue> - you can input any value to use for the sip realm.
|
||||
Choose the realm challenge key. Default is auto_to if not set.
|
||||
|
||||
If you want URL dialing to work you'll want to set this to auto_from.
|
||||
|
||||
If you use any other value besides auto_to or auto_from you'll loose
|
||||
the ability to do multiple domains.
|
||||
|
||||
Note: comment out to restore the behavior before 2008-09-29
|
||||
auto_from - uses the from field as the value for the sip realm.
|
||||
auto_to - uses the to field as the value for the sip realm.
|
||||
<anyvalue> - you can input any value to use for the sip realm.
|
||||
|
||||
If you want URL dialing to work you'll want to set this to auto_from.
|
||||
|
||||
If you use any other value besides auto_to or auto_from you'll
|
||||
loose the ability to do multiple domains.
|
||||
|
||||
Note: comment out to restore the behavior before 2008-09-29
|
||||
-->
|
||||
<param name="challenge-realm" value="auto_from"/>
|
||||
<!--<param name="disable-rtp-auto-adjust" value="true"/>-->
|
||||
@ -332,59 +334,58 @@
|
||||
<!-- set this param to false if your gateway for some reason hates X- headers that it is supposed to ignore-->
|
||||
<!--<param name="pass-callee-id" value="false"/>-->
|
||||
|
||||
<!-- clear clears them all or supply the name to add or the name prefixed with ~ to remove
|
||||
valid values:
|
||||
<!-- clear clears them all or supply the name to add or the name
|
||||
prefixed with ~ to remove valid values:
|
||||
|
||||
clear
|
||||
CISCO_SKIP_MARK_BIT_2833
|
||||
SONUS_SEND_INVALID_TIMESTAMP_2833
|
||||
clear
|
||||
CISCO_SKIP_MARK_BIT_2833
|
||||
SONUS_SEND_INVALID_TIMESTAMP_2833
|
||||
|
||||
-->
|
||||
<!--<param name="auto-rtp-bugs" data="clear"/>-->
|
||||
|
||||
<!-- the following can be used as workaround with bogus SRV/NAPTR records -->
|
||||
<!--<param name="disable-srv" value="false" />-->
|
||||
<!--<param name="disable-naptr" value="false" />-->
|
||||
<!-- the following can be used as workaround with bogus SRV/NAPTR records -->
|
||||
<!--<param name="disable-srv" value="false" />-->
|
||||
<!--<param name="disable-naptr" value="false" />-->
|
||||
|
||||
<!-- The following can be used to fine-tune timers within sofia's transport layer
|
||||
Those settings are for advanced users and can safely be left as-is -->
|
||||
|
||||
<!-- Initial retransmission interval (in milliseconds).
|
||||
Set the T1 retransmission interval used by the SIP transaction engine.
|
||||
The T1 is the initial duration used by request retransmission timers A and E (UDP) as well as response retransmission timer G. -->
|
||||
<!-- <param name="timer-T1" value="500" /> -->
|
||||
|
||||
<!-- Transaction timeout (defaults to T1 * 64).
|
||||
Set the T1x64 timeout value used by the SIP transaction engine.
|
||||
The T1x64 is duration used for timers B, F, H, and J (UDP) by the SIP transaction engine.
|
||||
The timeout value T1x64 can be adjusted separately from the initial retransmission interval T1. -->
|
||||
<!-- <param name="timer-T1X64" value="32000" /> -->
|
||||
|
||||
|
||||
<!-- Maximum retransmission interval (in milliseconds).
|
||||
Set the maximum retransmission interval used by the SIP transaction engine.
|
||||
The T2 is the maximum duration used for the timers E (UDP) and G by the SIP transaction engine.
|
||||
Note that the timer A is not capped by T2. Retransmission interval of INVITE requests grows exponentially
|
||||
until the timer B fires. -->
|
||||
<!-- <param name="timer-T2" value="4000" /> -->
|
||||
|
||||
<!--
|
||||
Transaction lifetime (in milliseconds).
|
||||
Set the lifetime for completed transactions used by the SIP transaction engine.
|
||||
A completed transaction is kept around for the duration of T4 in order to catch late responses.
|
||||
The T4 is the maximum duration for the messages to stay in the network and the duration of SIP timer K. -->
|
||||
<!-- <param name="timer-T4" value="4000" /> -->
|
||||
<!-- The following can be used to fine-tune timers within sofia's transport layer
|
||||
Those settings are for advanced users and can safely be left as-is -->
|
||||
|
||||
<!-- Turn on a jitterbuffer for every call -->
|
||||
<!-- <param name="auto-jitterbuffer-msec" value="60"/> -->
|
||||
<!-- Initial retransmission interval (in milliseconds).
|
||||
Set the T1 retransmission interval used by the SIP transaction engine.
|
||||
The T1 is the initial duration used by request retransmission timers A and E (UDP) as well as response retransmission timer G. -->
|
||||
<!-- <param name="timer-T1" value="500" /> -->
|
||||
|
||||
<!-- Transaction timeout (defaults to T1 * 64).
|
||||
Set the T1x64 timeout value used by the SIP transaction engine.
|
||||
The T1x64 is duration used for timers B, F, H, and J (UDP) by the SIP transaction engine.
|
||||
The timeout value T1x64 can be adjusted separately from the initial retransmission interval T1. -->
|
||||
<!-- <param name="timer-T1X64" value="32000" /> -->
|
||||
|
||||
|
||||
<!-- By default mod_sofia will ignore the codecs in the sdp for hold/unhold operations
|
||||
Set this to true if you want to actually parse the sdp and re-negotiate the codec during hold/unhold.
|
||||
It's probably not what you want so stick with the default unless you really need to change this.
|
||||
-->
|
||||
<!--<param name="renegotiate-codec-on-hold" value="true"/>-->
|
||||
|
||||
<!-- Maximum retransmission interval (in milliseconds).
|
||||
Set the maximum retransmission interval used by the SIP transaction engine.
|
||||
The T2 is the maximum duration used for the timers E (UDP) and G by the SIP transaction engine.
|
||||
Note that the timer A is not capped by T2. Retransmission interval of INVITE requests grows exponentially
|
||||
until the timer B fires. -->
|
||||
<!-- <param name="timer-T2" value="4000" /> -->
|
||||
|
||||
<!--
|
||||
Transaction lifetime (in milliseconds).
|
||||
Set the lifetime for completed transactions used by the SIP transaction engine.
|
||||
A completed transaction is kept around for the duration of T4 in order to catch late responses.
|
||||
The T4 is the maximum duration for the messages to stay in the network and the duration of SIP timer K. -->
|
||||
<!-- <param name="timer-T4" value="4000" /> -->
|
||||
|
||||
<!-- Turn on a jitterbuffer for every call -->
|
||||
<!-- <param name="auto-jitterbuffer-msec" value="60"/> -->
|
||||
|
||||
|
||||
<!-- By default mod_sofia will ignore the codecs in the sdp for hold/unhold operations
|
||||
Set this to true if you want to actually parse the sdp and re-negotiate the codec during hold/unhold.
|
||||
It's probably not what you want so stick with the default unless you really need to change this.
|
||||
-->
|
||||
<!--<param name="renegotiate-codec-on-hold" value="true"/>-->
|
||||
|
||||
</settings>
|
||||
</profile>
|
||||
|
||||
|
@ -9,7 +9,7 @@
|
||||
<!--/// domain to use in from: *optional* same as realm, if blank ///-->
|
||||
<!--<param name="from-domain" value="asterlink.com"/>-->
|
||||
<!--/// account password *required* ///-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--<param name="password" value="2007"/>-->
|
||||
<!--/// extension for inbound calls: *optional* same as username, if blank ///-->
|
||||
<!--<param name="extension" value="cluecon"/>-->
|
||||
<!--/// proxy host: *optional* same as realm, if blank ///-->
|
||||
|
@ -123,7 +123,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"/>
|
||||
|
||||
<!--
|
||||
|
28
configure.in
28
configure.in
@ -3,14 +3,14 @@
|
||||
|
||||
# Must change all of the below together
|
||||
# For a release, set revision for that tagged release as well and uncomment
|
||||
AC_INIT([freeswitch], [1.1.beta1], BUG-REPORT-ADDRESS)
|
||||
AC_INIT([freeswitch], [1.3.0], BUG-REPORT-ADDRESS)
|
||||
AC_SUBST(SWITCH_VERSION_MAJOR, [1])
|
||||
AC_SUBST(SWITCH_VERSION_MINOR, [1])
|
||||
AC_SUBST(SWITCH_VERSION_MICRO, [beta1])
|
||||
#AC_SUBST(SWITCH_VERSION_REVISION, [])
|
||||
AC_SUBST(SWITCH_VERSION_MINOR, [3])
|
||||
AC_SUBST(SWITCH_VERSION_MICRO, [0])
|
||||
AC_SUBST(SWITCH_VERSION_REVISION, [])
|
||||
AC_SUBST(SWITCH_VERSION_REVISION_HUMAN, [])
|
||||
|
||||
AC_CONFIG_FILES([src/include/switch_version.h.in:src/include/switch_version.h.template])
|
||||
AC_CONFIG_FILES([.version:.version.in])
|
||||
|
||||
AC_CONFIG_AUX_DIR(build/config)
|
||||
AM_INIT_AUTOMAKE(libfreeswitch,0.1)
|
||||
@ -391,6 +391,10 @@ AX_LIB_ODBC
|
||||
if test "$ac_cv_found_odbc" = "yes" ; then
|
||||
enable_core_odbc_support="yes"
|
||||
fi
|
||||
if test "x$enable_core_odbc_support" != "xno"; then
|
||||
AC_CHECK_LIB([odbc], [SQLDisconnect],, AC_MSG_ERROR([no usable libodbc; please install unixodbc devel package or equivalent]))
|
||||
fi
|
||||
|
||||
|
||||
|
||||
AC_ARG_ENABLE(timerfd-wrapper,
|
||||
@ -491,6 +495,13 @@ AC_CHECK_FUNCS([gethostname vasprintf mmap mlock mlockall usleep getifaddrs time
|
||||
AC_CHECK_FUNCS([sched_setscheduler setpriority setrlimit setgroups initgroups])
|
||||
AC_CHECK_FUNCS([wcsncmp setgroups asprintf setenv pselect gettimeofday localtime_r gmtime_r strcasecmp stricmp _stricmp])
|
||||
|
||||
# Check availability and return type of strerror_r
|
||||
# (NOTE: apr-1-config sets -D_GNU_SOURCE at build-time, need to run the check with it too)
|
||||
save_CPPFLAGS="$CPPFLAGS"
|
||||
CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
|
||||
AC_FUNC_STRERROR_R
|
||||
CPPFLAGS="$save_CPPFLAGS"
|
||||
|
||||
AX_HAVE_CPU_SET
|
||||
|
||||
AC_CHECK_LIB(rt, clock_gettime, [AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [Define if you have clock_gettime()])])
|
||||
@ -921,7 +932,7 @@ then
|
||||
#
|
||||
# python distutils found, get settings from python directly
|
||||
#
|
||||
PYTHON_CFLAGS="`$PYTHON -c 'from distutils import sysconfig; flags = [[\"-I\" + sysconfig.get_python_inc(0), \"-I\" + sysconfig.get_python_inc(1), \" \".join(sysconfig.get_config_var(\"CFLAGS\").split())]]; print(\" \".join(flags));'`"
|
||||
PYTHON_CFLAGS="`$PYTHON -c 'from distutils import sysconfig; flags = [[\"-I\" + sysconfig.get_python_inc(0), \"-I\" + sysconfig.get_python_inc(1), \" \".join(sysconfig.get_config_var(\"CFLAGS\").split())]]; print(\" \".join(flags));' | sed -e 's/-arch i386//g;s/-arch x86_64//g'`"
|
||||
PYTHON_LDFLAGS="`$PYTHON -c 'from distutils import sysconfig; libs = sysconfig.get_config_var(\"LIBS\").split() + sysconfig.get_config_var(\"SYSLIBS\").split(); libs.append(\"-lpython\"+sysconfig.get_config_var(\"VERSION\")); print(\" \".join(libs));'`"
|
||||
PYTHON_LIB="`$PYTHON -c 'from distutils import sysconfig; print(\"python\" + sysconfig.get_config_var(\"VERSION\"));'`"
|
||||
PYTHON_LIBDIR="`$PYTHON -c 'from distutils import sysconfig; print(sysconfig.get_config_var(\"LIBDIR\"));'`"
|
||||
@ -989,12 +1000,12 @@ AC_CONFIG_FILES([Makefile
|
||||
src/Makefile
|
||||
src/mod/Makefile
|
||||
src/mod/applications/mod_expr/Makefile
|
||||
src/mod/applications/mod_fax/Makefile
|
||||
src/mod/applications/mod_spandsp/Makefile
|
||||
src/mod/applications/mod_osp/Makefile
|
||||
src/mod/applications/mod_stress/Makefile
|
||||
src/mod/applications/mod_hash/Makefile
|
||||
src/mod/codecs/mod_com_g729/Makefile
|
||||
src/mod/endpoints/mod_html5/Makefile
|
||||
src/mod/endpoints/mod_portaudio/Makefile
|
||||
src/mod/endpoints/mod_skinny/Makefile
|
||||
src/mod/endpoints/mod_skypopen/Makefile
|
||||
@ -1080,7 +1091,7 @@ AC_CONFIG_SUBDIRS([libs/portaudio])
|
||||
AC_CONFIG_SUBDIRS([libs/openzap])
|
||||
AC_CONFIG_SUBDIRS([libs/freetdm])
|
||||
AC_CONFIG_SUBDIRS([libs/unimrcp])
|
||||
AC_CONFIG_SUBDIRS([libs/tiff-3.8.2])
|
||||
AC_CONFIG_SUBDIRS([libs/tiff-4.0.2])
|
||||
AC_CONFIG_SUBDIRS([libs/spandsp])
|
||||
AC_CONFIG_SUBDIRS([libs/broadvoice])
|
||||
AC_CONFIG_SUBDIRS([libs/libg722_1])
|
||||
@ -1089,6 +1100,7 @@ AC_CONFIG_SUBDIRS([libs/libcodec2])
|
||||
if test "x${enable_zrtp}" = "xyes"; then
|
||||
AC_CONFIG_SUBDIRS([libs/libzrtp/projects/gnu])
|
||||
fi
|
||||
AC_CONFIG_SUBDIRS([libs/libwebsockets])
|
||||
|
||||
case $host in
|
||||
*-openbsd*)
|
||||
|
30
debian/.gitignore
vendored
Normal file
30
debian/.gitignore
vendored
Normal file
@ -0,0 +1,30 @@
|
||||
# gitignore
|
||||
/.stamp-bootstrap
|
||||
/control
|
||||
/control-modules.*
|
||||
/files
|
||||
/modules.conf
|
||||
/modules_.conf
|
||||
/freeswitch-autotools.install
|
||||
/freeswitch-mod-*.install
|
||||
/freeswitch-conf-*.install
|
||||
/freeswitch-music-*.install
|
||||
/freeswitch-sounds-*.install
|
||||
/*.lintian-overrides
|
||||
/*.log
|
||||
/*.substvars
|
||||
/*.debhelper
|
||||
/tmp
|
||||
/freeswitch/
|
||||
/freeswitch-conf*/
|
||||
/freeswitch-dbg/
|
||||
/freeswitch-dev/
|
||||
/freeswitch-doc/
|
||||
/freeswitch-init*/
|
||||
/freeswitch-meta*/
|
||||
/freeswitch-mod-*/
|
||||
/freeswitch-music*/
|
||||
/freeswitch-sounds*/
|
||||
/freeswitch-systemd/
|
||||
/freeswitch-sysvinit/
|
||||
/libfreeswitch*/
|
26
debian/README.Debian
vendored
Normal file
26
debian/README.Debian
vendored
Normal file
@ -0,0 +1,26 @@
|
||||
FreeSWITCH for Debian
|
||||
--------------
|
||||
|
||||
This debian packaging breaks out every module of freeswitch into a
|
||||
separate package, so be sure to verify that you are actually
|
||||
installing all the modules that you need.
|
||||
|
||||
As a break from the past, we now install all files into their correct
|
||||
FHS locations.
|
||||
|
||||
This package does not install any configuration for freeswitch into
|
||||
/etc/freeswitch. We leave you, the system administrator completely
|
||||
responsible for that directory. If you install one of the conf
|
||||
packages, it will install the corresponding sample configuration to
|
||||
/usr/share/freeswitch/conf and you'll need to copy the bits you need
|
||||
to /etc/freeswitch.
|
||||
|
||||
If you just want to get a working demo system up quickly, I'd
|
||||
recommend doing the following:
|
||||
|
||||
aptitude install -y -r -o APT::Install-Suggests=true freeswitch-meta-vanilla
|
||||
cp -a /usr/share/freeswitch/conf/vanilla /etc/freeswitch
|
||||
/etc/init.d/freeswitch start
|
||||
fs_cli
|
||||
|
||||
-- Travis Cross <tc@traviscross.com>, Sat, 5 May 2012 23:41:29 +0000
|
77
debian/README.source
vendored
Normal file
77
debian/README.source
vendored
Normal file
@ -0,0 +1,77 @@
|
||||
FreeSWITCH for Debian
|
||||
--------------
|
||||
|
||||
You may be reading this because you're wondering where all the files
|
||||
are in debian/, such as control. You may also be here looking for the
|
||||
sound or music packages. Read on.
|
||||
|
||||
Because FreeSWITCH has so many modules it was necessary to create a
|
||||
system to autogenerate the majority of the packaging. This in done
|
||||
mostly in the file debian/bootstrap.sh. This bootstrap needs to run
|
||||
before any other step of the packaging, though we do try to
|
||||
autogenerate it when possible.
|
||||
|
||||
The build dependencies, runtime dependencies, and other details about
|
||||
modules can be configured in the debian/control-modules file. Even
|
||||
though this file looks a bit like a debian control file and has a
|
||||
similar format, we are parsing this file ourselves so the format is a
|
||||
bit more restricted.
|
||||
|
||||
debian/control-modules currently supports the following fields:
|
||||
|
||||
# lines that begin with the hash character are comments
|
||||
#
|
||||
# every block must start with a Module field
|
||||
Module: <category>/<module_name>
|
||||
Description: <short description>
|
||||
<long description> # empty lines with "."s are not yet supported
|
||||
Build-Depends: <build deps for this module>
|
||||
Depends: <runtime deps for this module>
|
||||
Recommends: <recommended packages>
|
||||
Suggests: <suggested packages>
|
||||
Distro-Conflicts: <distributions on which this module should not be built> # not yet implemented
|
||||
|
||||
During bootstrap we build a file control-modules.gen. If the
|
||||
control-modules file is properly formatted, this generated file should
|
||||
be identical. This is a sanity check mechanism for our parsing, as
|
||||
well as a way to automatically reorganize the file.
|
||||
|
||||
If the file debian/modules.conf is present, we read that file and only
|
||||
build and package the files listed there. Otherwise, we build every
|
||||
module except the ones that either should not be packaged, or for
|
||||
which we don't yet have good packaging.
|
||||
|
||||
The format of debian/modules.conf is:
|
||||
|
||||
## comments should start with two hash characters
|
||||
<category>/<module_name>
|
||||
|
||||
To build this package, I recommend running the following from the root
|
||||
directory of your FS git working tree:
|
||||
|
||||
distro=sid
|
||||
ver="$(cat build/next-release.txt | sed -e 's/-/~/g')~n$(date +%Y%m%dT%H%M%SZ)-1~${distro}+1"
|
||||
git clean -fdx && git reset --hard HEAD
|
||||
./build/set-fs-version.sh "$ver"
|
||||
git add configure.in && git commit -m "bump to custom v$ver"
|
||||
(cd debian && ./bootstrap.sh -c $distro)
|
||||
dch -b -m -v "$ver" --force-distribution -D "$suite" "Custom build."
|
||||
git-buildpackage -b -us -uc \
|
||||
--git-verbose \
|
||||
--git-pbuilder --git-dist=$distro \
|
||||
--git-compression-level=1v --git-compression=xz
|
||||
git reset --hard HEAD^
|
||||
|
||||
The source packages for sounds and music on hold are maintained in a
|
||||
separate repository. Each set of sounds has a separate version number
|
||||
and the processing of the sounds is quite different from what we're
|
||||
doing here, so trying to maintain a merged debian/ between FreeSWITCH
|
||||
and the sounds and music would be a mess.
|
||||
|
||||
To build the Debian packages for freeswitch-sounds-* and
|
||||
freeswitch-music-*:
|
||||
|
||||
git clone https://github.com/traviscross/freeswitch-sounds.git
|
||||
cd freeswitch-sounds && cat debian/README.source
|
||||
|
||||
-- Travis Cross <tc@traviscross.com>, Mon, 20 Aug 2012 08:14:49 +0000
|
810
debian/bootstrap.sh
vendored
Executable file
810
debian/bootstrap.sh
vendored
Executable file
@ -0,0 +1,810 @@
|
||||
#!/bin/bash
|
||||
##### -*- mode:shell-script; indent-tabs-mode:nil; sh-basic-offset:2 -*-
|
||||
##### Author: Travis Cross <tc@traviscross.com>
|
||||
|
||||
mod_dir="../src/mod"
|
||||
conf_dir="../conf"
|
||||
fs_description="FreeSWITCH is a scalable open source cross-platform telephony platform designed to route and interconnect popular communication protocols using audio, video, text or any other form of media."
|
||||
mod_build_depends="."
|
||||
supported_distros="squeeze wheezy sid"
|
||||
avoid_mods=(
|
||||
applications/mod_fax
|
||||
applications/mod_limit
|
||||
applications/mod_mongo
|
||||
applications/mod_mp4
|
||||
applications/mod_osp
|
||||
applications/mod_rad_auth
|
||||
applications/mod_skel
|
||||
applications/mod_soundtouch
|
||||
asr_tts/mod_cepstral
|
||||
asr_tts/mod_flite
|
||||
codecs/mod_com_g729
|
||||
codecs/mod_ilbc
|
||||
codecs/mod_sangoma_codec
|
||||
codecs/mod_siren
|
||||
codecs/mod_skel_codec
|
||||
codecs/mod_voipcodecs
|
||||
endpoints/mod_gsmopen
|
||||
endpoints/mod_h323
|
||||
endpoints/mod_khomp
|
||||
endpoints/mod_opal
|
||||
endpoints/mod_reference
|
||||
endpoints/mod_unicall
|
||||
formats/mod_shout
|
||||
languages/mod_managed
|
||||
languages/mod_spidermonkey
|
||||
sdk/autotools
|
||||
xml_int/mod_xml_ldap
|
||||
)
|
||||
avoid_mods_sid=(
|
||||
endpoints/mod_portaudio
|
||||
formats/mod_portaudio_stream
|
||||
)
|
||||
avoid_mods_wheezy=(
|
||||
endpoints/mod_portaudio
|
||||
formats/mod_portaudio_stream
|
||||
)
|
||||
avoid_mods_squeeze=(
|
||||
formats/mod_vlc
|
||||
languages/mod_managed
|
||||
)
|
||||
|
||||
err () {
|
||||
echo "$0 error: $1" >&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
xread () {
|
||||
local xIFS="$IFS"
|
||||
IFS=''
|
||||
read $@
|
||||
local ret=$?
|
||||
IFS="$xIFS"
|
||||
return $ret
|
||||
}
|
||||
|
||||
avoid_mod_filter () {
|
||||
local x="avoid_mods_$codename[@]"
|
||||
local -a mods=("${avoid_mods[@]}" "${!x}")
|
||||
for x in "${mods[@]}"; do
|
||||
if [ "$1" = "$x" ]; then
|
||||
[ "$2" = "show" ] && echo "excluding module $x" >&2
|
||||
return 1
|
||||
fi
|
||||
done
|
||||
return 0
|
||||
}
|
||||
|
||||
modconf_filter () {
|
||||
while xread l; do
|
||||
if [ "$1" = "$l" ]; then
|
||||
[ "$2" = "show" ] && echo "including module $l" >&2
|
||||
return 0
|
||||
fi
|
||||
done < modules.conf
|
||||
return 1
|
||||
}
|
||||
|
||||
mod_filter () {
|
||||
if test -f modules.conf; then
|
||||
modconf_filter $@
|
||||
else
|
||||
avoid_mod_filter $@
|
||||
fi
|
||||
}
|
||||
|
||||
mod_filter_show () {
|
||||
mod_filter "$1" show
|
||||
}
|
||||
|
||||
map_fs_modules () {
|
||||
local filterfn="$1" percatfns="$2" permodfns="$3"
|
||||
for x in $mod_dir/*; do
|
||||
if test -d $x; then
|
||||
category=${x##*/} category_path=$x
|
||||
for f in $percatfns; do $f; done
|
||||
for y in $x/*; do
|
||||
module_name=${y##*/} module_path=$y
|
||||
module=$category/$module_name
|
||||
if $filterfn $category/$module; then
|
||||
[ -f ${y}/module ] && . ${y}/module
|
||||
for f in $permodfns; do $f; done
|
||||
fi
|
||||
unset module_name module_path module
|
||||
done
|
||||
unset category category_path
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
map_modules () {
|
||||
local filterfn="$1" percatfns="$2" permodfns="$3"
|
||||
for x in $parse_dir/*; do
|
||||
test -d $x || continue
|
||||
category=${x##*/} category_path=$x
|
||||
for f in $percatfns; do $f; done
|
||||
for y in $x/*; do
|
||||
test -f $y || continue
|
||||
module=${y##*/} module_path=$y
|
||||
$filterfn $category/$module || continue
|
||||
module="" category="" module_name=""
|
||||
section="" description="" long_description=""
|
||||
build_depends="" depends="" recommends="" suggests=""
|
||||
distro_conflicts=""
|
||||
distro_vars=""
|
||||
for x in $supported_distros; do
|
||||
distro_vars="$distro_vars build_depends_$x"
|
||||
eval build_depends_$x=""
|
||||
done
|
||||
. $y
|
||||
[ -n "$description" ] || description="$module_name"
|
||||
[ -n "$long_description" ] || description="Adds ${module_name}."
|
||||
for f in $permodfns; do $f; done
|
||||
unset \
|
||||
module module_name module_path \
|
||||
section description long_description \
|
||||
build_depends depends recommends suggests \
|
||||
distro_conflicts $distro_vars
|
||||
done
|
||||
unset category category_path
|
||||
done
|
||||
}
|
||||
|
||||
map_confs () {
|
||||
local fs="$1"
|
||||
for x in $conf_dir/*; do
|
||||
test ! -d $x && continue
|
||||
conf=${x##*/} conf_dir=$x
|
||||
for f in $fs; do $f; done
|
||||
unset conf conf_dir
|
||||
done
|
||||
}
|
||||
|
||||
print_source_control () {
|
||||
cat <<EOF
|
||||
Source: freeswitch
|
||||
Section: comm
|
||||
Priority: optional
|
||||
Maintainer: Travis Cross <tc@traviscross.com>
|
||||
Build-Depends:
|
||||
# for debian
|
||||
debhelper (>= 8.0.0),
|
||||
# bootstrapping
|
||||
automake (>= 1.9), autoconf, libtool,
|
||||
# core build
|
||||
dpkg-dev (>= 1.15.8.12), gcc (>= 4:4.4.5) , g++ (>= 4:4.4.5),
|
||||
libc6-dev (>= 2.11.3), make (>= 3.81),
|
||||
wget, pkg-config,
|
||||
# configure options
|
||||
libssl-dev, unixodbc-dev,
|
||||
libncurses5-dev, libjpeg62-dev,
|
||||
python-dev, erlang-dev,
|
||||
# documentation
|
||||
doxygen,
|
||||
# for APR (not essential for build)
|
||||
uuid-dev, libexpat1-dev, libgdbm-dev, libdb-dev,
|
||||
# used by many modules
|
||||
bison, zlib1g-dev,
|
||||
# module build-depends
|
||||
$(debian_wrap "${mod_build_depends}")
|
||||
Standards-Version: 3.9.3
|
||||
Homepage: http://freeswitch.org/
|
||||
Vcs-Git: git://git.freeswitch.org/freeswitch
|
||||
Vcs-Browser: http://git.freeswitch.org/git/freeswitch/
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
print_core_control () {
|
||||
cat <<EOF
|
||||
Package: freeswitch
|
||||
Architecture: any
|
||||
Depends: \${shlibs:Depends}, \${perl:Depends}, \${misc:Depends},
|
||||
libfreeswitch1 (= \${binary:Version})
|
||||
Recommends:
|
||||
Suggests: freeswitch-dbg
|
||||
Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This package contains the FreeSWITCH core.
|
||||
|
||||
Package: libfreeswitch1
|
||||
Architecture: any
|
||||
Depends: \${shlibs:Depends}, \${misc:Depends}
|
||||
Recommends:
|
||||
Suggests: libfreeswitch1-dbg
|
||||
Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This package contains the FreeSWITCH core library.
|
||||
|
||||
Package: freeswitch-meta-bare
|
||||
Architecture: any
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version})
|
||||
Recommends:
|
||||
freeswitch-doc (= \${binary:Version}),
|
||||
freeswitch-mod-commands (= \${binary:Version}),
|
||||
freeswitch-init (= \${binary:Version}),
|
||||
freeswitch-music (= \${binary:Version}),
|
||||
freeswitch-sounds (= \${binary:Version})
|
||||
Suggests:
|
||||
Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This is a metapackage which depends on the packages needed for a very
|
||||
bare FreeSWITCH install.
|
||||
|
||||
Package: freeswitch-meta-default
|
||||
Architecture: any
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
|
||||
freeswitch-mod-commands (= \${binary:Version}),
|
||||
freeswitch-mod-conference (= \${binary:Version}),
|
||||
freeswitch-mod-db (= \${binary:Version}),
|
||||
freeswitch-mod-dptools (= \${binary:Version}),
|
||||
freeswitch-mod-fifo (= \${binary:Version}),
|
||||
freeswitch-mod-hash (= \${binary:Version}),
|
||||
freeswitch-mod-spandsp (= \${binary:Version}),
|
||||
freeswitch-mod-voicemail (= \${binary:Version}),
|
||||
freeswitch-mod-dialplan-xml (= \${binary:Version}),
|
||||
freeswitch-mod-loopback (= \${binary:Version}),
|
||||
freeswitch-mod-sofia (= \${binary:Version}),
|
||||
freeswitch-mod-local-stream (= \${binary:Version}),
|
||||
freeswitch-mod-native-file (= \${binary:Version}),
|
||||
freeswitch-mod-tone-stream (= \${binary:Version}),
|
||||
freeswitch-mod-lua (= \${binary:Version}),
|
||||
freeswitch-mod-console (= \${binary:Version}),
|
||||
freeswitch-mod-say-en (= \${binary:Version})
|
||||
Recommends:
|
||||
freeswitch-init (= \${binary:Version}),
|
||||
freeswitch-meta-codecs (= \${binary:Version}),
|
||||
freeswitch-music (= \${binary:Version}),
|
||||
freeswitch-sounds (= \${binary:Version})
|
||||
Suggests:
|
||||
freeswitch-mod-cidlookup (= \${binary:Version}),
|
||||
freeswitch-mod-curl (= \${binary:Version}),
|
||||
freeswitch-mod-directory (= \${binary:Version}),
|
||||
freeswitch-mod-enum (= \${binary:Version}),
|
||||
freeswitch-mod-spy (= \${binary:Version}),
|
||||
freeswitch-mod-valet-parking (= \${binary:Version})
|
||||
Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This is a metapackage which depends on the packages needed for a
|
||||
reasonably basic FreeSWITCH install.
|
||||
|
||||
Package: freeswitch-meta-vanilla
|
||||
Architecture: any
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
|
||||
freeswitch-mod-console (= \${binary:Version}),
|
||||
freeswitch-mod-logfile (= \${binary:Version}),
|
||||
freeswitch-mod-enum (= \${binary:Version}),
|
||||
freeswitch-mod-cdr-csv (= \${binary:Version}),
|
||||
freeswitch-mod-event-socket (= \${binary:Version}),
|
||||
freeswitch-mod-sofia (= \${binary:Version}),
|
||||
freeswitch-mod-loopback (= \${binary:Version}),
|
||||
freeswitch-mod-commands (= \${binary:Version}),
|
||||
freeswitch-mod-conference (= \${binary:Version}),
|
||||
freeswitch-mod-db (= \${binary:Version}),
|
||||
freeswitch-mod-dptools (= \${binary:Version}),
|
||||
freeswitch-mod-expr (= \${binary:Version}),
|
||||
freeswitch-mod-fifo (= \${binary:Version}),
|
||||
freeswitch-mod-hash (= \${binary:Version}),
|
||||
freeswitch-mod-voicemail (= \${binary:Version}),
|
||||
freeswitch-mod-esf (= \${binary:Version}),
|
||||
freeswitch-mod-fsv (= \${binary:Version}),
|
||||
freeswitch-mod-cluechoo (= \${binary:Version}),
|
||||
freeswitch-mod-valet-parking (= \${binary:Version}),
|
||||
freeswitch-mod-httapi (= \${binary:Version}),
|
||||
freeswitch-mod-dialplan-xml (= \${binary:Version}),
|
||||
freeswitch-mod-dialplan-asterisk (= \${binary:Version}),
|
||||
freeswitch-mod-spandsp (= \${binary:Version}),
|
||||
freeswitch-mod-g723-1 (= \${binary:Version}),
|
||||
freeswitch-mod-g729 (= \${binary:Version}),
|
||||
freeswitch-mod-amr (= \${binary:Version}),
|
||||
freeswitch-mod-speex (= \${binary:Version}),
|
||||
freeswitch-mod-h26x (= \${binary:Version}),
|
||||
freeswitch-mod-sndfile (= \${binary:Version}),
|
||||
freeswitch-mod-native-file (= \${binary:Version}),
|
||||
freeswitch-mod-local-stream (= \${binary:Version}),
|
||||
freeswitch-mod-tone-stream (= \${binary:Version}),
|
||||
freeswitch-mod-lua (= \${binary:Version}),
|
||||
freeswitch-mod-say-en (= \${binary:Version}),
|
||||
Recommends:
|
||||
freeswitch-init (= \${binary:Version}),
|
||||
freeswitch-music (= \${binary:Version}),
|
||||
freeswitch-sounds (= \${binary:Version}),
|
||||
freeswitch-conf-vanilla (= \${binary:Version}),
|
||||
Suggests:
|
||||
freeswitch-mod-spidermonkey (= \${binary:Version}),
|
||||
Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This is a metapackage which depends on the packages needed for
|
||||
running the FreeSWITCH vanilla example configuration.
|
||||
|
||||
Package: freeswitch-meta-codecs
|
||||
Architecture: any
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version}),
|
||||
freeswitch-mod-amr (= \${binary:Version}),
|
||||
freeswitch-mod-amrwb (= \${binary:Version}),
|
||||
freeswitch-mod-bv (= \${binary:Version}),
|
||||
freeswitch-mod-celt (= \${binary:Version}),
|
||||
freeswitch-mod-codec2 (= \${binary:Version}),
|
||||
freeswitch-mod-g723-1 (= \${binary:Version}),
|
||||
freeswitch-mod-g729 (= \${binary:Version}),
|
||||
freeswitch-mod-h26x (= \${binary:Version}),
|
||||
freeswitch-mod-mp4v (= \${binary:Version}),
|
||||
freeswitch-mod-opus (= \${binary:Version}),
|
||||
freeswitch-mod-silk (= \${binary:Version}),
|
||||
freeswitch-mod-spandsp (= \${binary:Version}),
|
||||
freeswitch-mod-speex (= \${binary:Version}),
|
||||
freeswitch-mod-theora (= \${binary:Version})
|
||||
Suggests:
|
||||
freeswitch-mod-ilbc (= \${binary:Version}),
|
||||
freeswitch-mod-siren (= \${binary:Version})
|
||||
Description: Cross-Platform Scalable Multi-Protocol Soft Switch
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This is a metapackage which depends on the packages needed to install
|
||||
most FreeSWITCH codecs.
|
||||
|
||||
Package: freeswitch-dbg
|
||||
Section: debug
|
||||
Priority: extra
|
||||
Architecture: any
|
||||
Depends: \${misc:Depends}, freeswitch (= \${binary:Version})
|
||||
Description: debugging symbols for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This package contains debugging symbols for FreeSWITCH.
|
||||
|
||||
Package: libfreeswitch1-dbg
|
||||
Section: debug
|
||||
Priority: extra
|
||||
Architecture: any
|
||||
Depends: \${misc:Depends}, libfreeswitch1 (= \${binary:Version})
|
||||
Description: debugging symbols for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This package contains debugging symbols for libfreeswitch1.
|
||||
|
||||
Package: libfreeswitch-dev
|
||||
Section: libdevel
|
||||
Architecture: any
|
||||
Depends: \${misc:Depends}, freeswitch
|
||||
Description: development libraries and header files for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This package contains include files for FreeSWITCH.
|
||||
|
||||
Package: freeswitch-doc
|
||||
Section: doc
|
||||
Architecture: all
|
||||
Depends: \${misc:Depends}
|
||||
Description: documentation for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This package contains Doxygen-produce documentation for FreeSWITCH.
|
||||
It may be an empty package at the moment.
|
||||
|
||||
Package: freeswitch-init
|
||||
Architecture: all
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-sysvinit (= \${binary:Version}),
|
||||
freeswitch-systemd (= \${binary:Version})
|
||||
Description: FreeSWITCH startup configuration
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This is a metapackage which depends on the default system startup
|
||||
packages for FreeSWITCH.
|
||||
|
||||
Package: freeswitch-sysvinit
|
||||
Architecture: all
|
||||
Depends: \${misc:Depends}, lsb-base (>= 3.0-6)
|
||||
Description: FreeSWITCH SysV init script
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This package contains the SysV init script for FreeSWITCH.
|
||||
|
||||
Package: freeswitch-systemd
|
||||
Architecture: all
|
||||
Depends: \${misc:Depends}
|
||||
Description: FreeSWITCH systemd configuration
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This package contains the systemd configuration for FreeSWITCH.
|
||||
|
||||
## misc
|
||||
|
||||
## sounds
|
||||
|
||||
Package: freeswitch-music
|
||||
Architecture: all
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-music-default (>= 1.0.8)
|
||||
Description: Music on hold audio for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This is a metapackage which depends on the default music on hold
|
||||
packages for FreeSWITCH.
|
||||
|
||||
Package: freeswitch-sounds
|
||||
Architecture: all
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-sounds-en (= \${binary:Version})
|
||||
Description: Sounds for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This is a metapackage which depends on the default sound packages for
|
||||
FreeSWITCH.
|
||||
|
||||
Package: freeswitch-sounds-en
|
||||
Architecture: all
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-sounds-en-us (= \${binary:Version})
|
||||
Description: English sounds for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This is a metapackage which depends on the default English sound
|
||||
packages for FreeSWITCH.
|
||||
|
||||
Package: freeswitch-sounds-en-us
|
||||
Architecture: all
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-sounds-en-us-callie (>= 1.0.18)
|
||||
Description: US English sounds for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
This is a metapackage which depends on the default US/English sound
|
||||
packages for FreeSWITCH.
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
print_mod_control () {
|
||||
local m_section="${section:-comm}"
|
||||
cat <<EOF
|
||||
Package: freeswitch-${module_name//_/-}
|
||||
Section: ${m_section}
|
||||
Architecture: any
|
||||
$(debian_wrap "Depends: \${shlibs:Depends}, \${misc:Depends}, freeswitch, ${depends}")
|
||||
$(debian_wrap "Recommends: ${recommends}")
|
||||
$(debian_wrap "Suggests: freeswitch-${module_name//_/-}-dbg, ${suggests}")
|
||||
Description: ${description} for FreeSWITCH
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
$(debian_wrap "This package contains ${module_name} for FreeSWITCH.")
|
||||
.
|
||||
$(debian_wrap "${long_description}")
|
||||
|
||||
Package: freeswitch-${module_name//_/-}-dbg
|
||||
Section: debug
|
||||
Priority: extra
|
||||
Architecture: any
|
||||
Depends: \${misc:Depends},
|
||||
freeswitch-${module_name//_/-} (= \${binary:Version})
|
||||
Description: ${description} for FreeSWITCH (debug)
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
$(debian_wrap "This package contains debugging symbols for ${module_name} for FreeSWITCH.")
|
||||
.
|
||||
$(debian_wrap "${long_description}")
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
print_mod_install () {
|
||||
cat <<EOF
|
||||
/usr/lib/freeswitch/mod/${1}.so
|
||||
EOF
|
||||
}
|
||||
|
||||
print_long_filename_override () {
|
||||
local p="$1"
|
||||
cat <<EOF
|
||||
# The long file names are caused by appending the nightly information.
|
||||
# Since one of these packages will never end up on a Debian CD, the
|
||||
# related problems with long file names will never come up here.
|
||||
${p}: package-has-long-file-name *
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
print_gpl_openssl_override () {
|
||||
local p="$1"
|
||||
cat <<EOF
|
||||
# We're definitely not doing this. Nothing in FreeSWITCH has a more
|
||||
# restrictive license than LGPL or MPL.
|
||||
${p}: possible-gpl-code-linked-with-openssl
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
print_itp_override () {
|
||||
local p="$1"
|
||||
cat <<EOF
|
||||
# We're not in Debian (yet) so we don't have an ITP bug to close.
|
||||
${p}: new-package-should-close-itp-bug
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
print_common_overrides () {
|
||||
print_long_filename_override "$1"
|
||||
}
|
||||
|
||||
print_mod_overrides () {
|
||||
print_common_overrides "$1"
|
||||
print_gpl_openssl_override "$1"
|
||||
}
|
||||
|
||||
print_conf_overrides () {
|
||||
print_common_overrides "$1"
|
||||
}
|
||||
|
||||
print_conf_control () {
|
||||
cat <<EOF
|
||||
Package: freeswitch-conf-${conf//_/-}
|
||||
Architecture: all
|
||||
Depends: \${misc:Depends}
|
||||
Description: FreeSWITCH ${conf} configuration
|
||||
$(debian_wrap "${fs_description}")
|
||||
.
|
||||
$(debian_wrap "This package contains the ${conf} configuration for FreeSWITCH.")
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
print_conf_install () {
|
||||
cat <<EOF
|
||||
conf/${conf} /usr/share/freeswitch/conf
|
||||
EOF
|
||||
}
|
||||
|
||||
print_edit_warning () {
|
||||
echo "#### Do not edit! This file is auto-generated from debian/bootstrap.sh."; echo
|
||||
}
|
||||
|
||||
gencontrol_per_mod () {
|
||||
print_mod_control "$module_name" "$description" "$long_description" >> control
|
||||
}
|
||||
|
||||
gencontrol_per_cat () {
|
||||
(echo "## mod/$category"; echo) >> control
|
||||
}
|
||||
|
||||
geninstall_per_mod () {
|
||||
local f=freeswitch-${module_name//_/-}.install
|
||||
(print_edit_warning; print_mod_install "$module_name") > $f
|
||||
test -f $f.tmpl && cat $f.tmpl >> $f
|
||||
}
|
||||
|
||||
genoverrides_per_mod () {
|
||||
local f=freeswitch-${module_name//_/-}.lintian-overrides
|
||||
(print_edit_warning; print_mod_overrides freeswitch-${module_name//_/-}) > $f
|
||||
test -f $f.tmpl && cat $f.tmpl >> $f
|
||||
}
|
||||
|
||||
genmodules_per_cat () {
|
||||
echo "## $category" >> modules_.conf
|
||||
}
|
||||
|
||||
genmodules_per_mod () {
|
||||
echo "$module" >> modules_.conf
|
||||
}
|
||||
|
||||
genconf () {
|
||||
print_conf_control >> control
|
||||
local p=freeswitch-conf-${conf//_/-}
|
||||
local f=$p.install
|
||||
(print_edit_warning; print_conf_install) > $f
|
||||
test -f $f.tmpl && cat $f.tmpl >> $f
|
||||
local f=$p.lintian-overrides
|
||||
(print_edit_warning; print_conf_overrides "$p") > $f
|
||||
test -f $f.tmpl && cat $f.tmpl >> $f
|
||||
}
|
||||
|
||||
accumulate_build_depends () {
|
||||
local x=""
|
||||
if [ -n "$(eval echo \$build_depends_$codename)" ]; then
|
||||
x="$(eval echo \$build_depends_$codename)"
|
||||
else
|
||||
x="${build_depends}"
|
||||
fi
|
||||
if [ -n "$x" ]; then
|
||||
if [ ! "$mod_build_depends" = "." ]; then
|
||||
mod_build_depends="${mod_build_depends}, ${x}"
|
||||
else
|
||||
mod_build_depends="${x}"
|
||||
fi
|
||||
fi
|
||||
}
|
||||
|
||||
genmodctl_new_mod () {
|
||||
grep -e "^Module: ${module}$" control-modules >/dev/null && return 0
|
||||
cat <<EOF
|
||||
Module: $module
|
||||
Description: $description
|
||||
$long_description
|
||||
EOF
|
||||
echo
|
||||
}
|
||||
|
||||
genmodctl_new_cat () {
|
||||
grep -e "^## mod/${category}$" control-modules >/dev/null && return 0
|
||||
cat <<EOF
|
||||
## mod/$category
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
pre_parse_mod_control () {
|
||||
local fl=true ll_nl=false ll_descr=false
|
||||
while xread l; do
|
||||
if [ -z "$l" ]; then
|
||||
# is newline
|
||||
if ! $ll_nl && ! $fl; then
|
||||
echo
|
||||
fi
|
||||
ll_nl=true
|
||||
continue
|
||||
elif [ -z "${l##\#*}" ]; then
|
||||
# is comment
|
||||
continue
|
||||
elif [ -z "${l## *}" ]; then
|
||||
# is continuation line
|
||||
if ! $ll_descr; then
|
||||
echo -n "$l"
|
||||
else
|
||||
echo -n "Long-Description: $(echo "$l" | sed -e 's/^ *//')"
|
||||
fi
|
||||
else
|
||||
# is header line
|
||||
$fl || echo
|
||||
if [ "${l%%:*}" = "Description" ]; then
|
||||
ll_descr=true
|
||||
echo "Description: ${l#*: }"
|
||||
continue
|
||||
else
|
||||
echo -n "$l"
|
||||
fi
|
||||
fi
|
||||
fl=false ll_nl=false ll_descr=false
|
||||
done < control-modules
|
||||
}
|
||||
|
||||
var_escape () {
|
||||
(echo -n \'; echo -n "$1" | sed -e "s/'/'\\\\''/g"; echo -n \')
|
||||
}
|
||||
|
||||
parse_mod_control () {
|
||||
pre_parse_mod_control > control-modules.preparse
|
||||
local category=""
|
||||
local module_name=""
|
||||
rm -rf $parse_dir
|
||||
while xread l; do
|
||||
if [ -z "$l" ]; then
|
||||
# is newline
|
||||
continue
|
||||
fi
|
||||
local header="${l%%:*}"
|
||||
local value="${l#*: }"
|
||||
if [ "$header" = "Module" ]; then
|
||||
category="${value%%/*}"
|
||||
module_name="${value#*/}"
|
||||
mkdir -p $parse_dir/$category
|
||||
(echo "module=$(var_escape "$value")"; \
|
||||
echo "category=$(var_escape "$category")"; \
|
||||
echo "module_name=$(var_escape "$module_name")"; \
|
||||
) >> $parse_dir/$category/$module_name
|
||||
else
|
||||
([ -n "$category" ] && [ -n "$module_name" ]) \
|
||||
|| err "unexpected header $header"
|
||||
local var_name="$(echo "$header" | sed -e 's/-/_/g' | tr '[A-Z]' '[a-z]')"
|
||||
echo "${var_name}=$(var_escape "$value")" >> $parse_dir/$category/$module_name
|
||||
fi
|
||||
done < control-modules.preparse
|
||||
}
|
||||
|
||||
debian_wrap () {
|
||||
local fl=true
|
||||
echo "$1" | fold -s -w 69 | while xread l; do
|
||||
local v="$(echo "$l" | sed -e 's/ *$//g')"
|
||||
if $fl; then
|
||||
fl=false
|
||||
echo "$v"
|
||||
else
|
||||
echo " $v"
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
genmodctl_cat () {
|
||||
(echo "## mod/$category"; echo)
|
||||
}
|
||||
|
||||
genmodctl_mod () {
|
||||
echo "Module: $module"
|
||||
[ -n "$section" ] && echo "Section: $section"
|
||||
echo "Description: $description"
|
||||
echo "$long_description" | fold -s -w 69 | while xread l; do
|
||||
local v="$(echo "$l" | sed -e 's/ *$//g')"
|
||||
echo " $v"
|
||||
done
|
||||
[ -n "$build_depends" ] && debian_wrap "Build-Depends: $build_depends"
|
||||
for x in $supported_distros; do
|
||||
[ -n "$(eval echo \$build_depends_$x)" ] \
|
||||
&& debian_wrap "Build-Depends-$x: $(eval echo \$build_depends_$x)"
|
||||
done
|
||||
[ -n "$depends" ] && debian_wrap "Depends: $depends"
|
||||
[ -n "$reccomends" ] && debian_wrap "Recommends: $recommends"
|
||||
[ -n "$suggests" ] && debian_wrap "Suggests: $suggests"
|
||||
[ -n "$distro_conflicts" ] && debian_wrap "Distro-Conflicts: $distro_conflicts"
|
||||
echo
|
||||
}
|
||||
|
||||
codename="sid"
|
||||
while getopts "c:" o; do
|
||||
case "$o" in
|
||||
c) codename="$OPTARG" ;;
|
||||
esac
|
||||
done
|
||||
shift $(($OPTIND-1))
|
||||
|
||||
echo "Bootstrapping debian/ for ${codename}" >&2
|
||||
echo >&2
|
||||
echo "Please wait, this takes a few seconds..." >&2
|
||||
|
||||
echo "Adding any new modules to control-modules..." >&2
|
||||
parse_dir=control-modules.parse
|
||||
map_fs_modules ':' 'genmodctl_new_cat' 'genmodctl_new_mod' >> control-modules
|
||||
echo "Parsing control-modules..." >&2
|
||||
parse_mod_control
|
||||
echo "Displaying includes/excludes..." >&2
|
||||
map_modules 'mod_filter_show' '' ''
|
||||
echo "Generating control-modules.gen as sanity check..." >&2
|
||||
(echo "# -*- mode:debian-control -*-"; \
|
||||
echo "##### Author: Travis Cross <tc@traviscross.com>"; echo; \
|
||||
map_modules ':' 'genmodctl_cat' 'genmodctl_mod' \
|
||||
) > control-modules.gen
|
||||
|
||||
echo "Accumulating build dependencies from modules..." >&2
|
||||
map_modules 'mod_filter' '' 'accumulate_build_depends'
|
||||
echo "Generating debian/..." >&2
|
||||
> control
|
||||
(print_edit_warning; print_source_control; print_core_control) >> control
|
||||
echo "Generating debian/ (conf)..." >&2
|
||||
(echo "### conf"; echo) >> control
|
||||
map_confs 'genconf'
|
||||
echo "Generating debian/ (modules)..." >&2
|
||||
(echo "### modules"; echo) >> control
|
||||
print_edit_warning > modules_.conf
|
||||
map_modules "mod_filter" \
|
||||
"gencontrol_per_cat genmodules_per_cat" \
|
||||
"gencontrol_per_mod geninstall_per_mod genoverrides_per_mod genmodules_per_mod"
|
||||
|
||||
echo "Generating additional lintian overrides..." >&2
|
||||
grep -e '^Package:' control | while xread l; do
|
||||
m="${l#*: }"
|
||||
f=$m.lintian-overrides
|
||||
[ -s $f ] || print_edit_warning >> $f
|
||||
if ! grep -e 'package-has-long-file-name' $f >/dev/null; then
|
||||
print_long_filename_override "$m" >> $f
|
||||
fi
|
||||
if ! grep -e 'new-package-should-close-itp-bug' $f >/dev/null; then
|
||||
print_itp_override "$m" >> $f
|
||||
fi
|
||||
done
|
||||
for p in freeswitch libfreeswitch1; do
|
||||
f=$p.lintian-overrides
|
||||
[ -s $f ] || print_edit_warning >> $f
|
||||
print_gpl_openssl_override "$p" >> $f
|
||||
done
|
||||
|
||||
echo "Cleaning up..." >&2
|
||||
rm -f control-modules.preparse
|
||||
rm -rf control-modules.parse
|
||||
diff control-modules control-modules.gen >/dev/null && rm -f control-modules.gen
|
||||
|
||||
echo "Done bootstrapping debian/" >&2
|
||||
touch .stamp-bootstrap
|
883
debian/changelog
vendored
883
debian/changelog
vendored
@ -1,875 +1,18 @@
|
||||
freeswitch (1.1.beta2.1-1) unstable; urgency=low
|
||||
freeswitch (1.2~rc2-1) unstable; urgency=low
|
||||
|
||||
* Fixing FS-3449 as well as a bit of cleanup in prep for 1.2 release
|
||||
packaging. Also a handful of lintian errors/warnings are now fixed.
|
||||
* Bump version.
|
||||
* Sounds and music have been moved to their own source packaging.
|
||||
|
||||
-- William King <quentusrex@gmail.com> Thu, 19 Apr 2012 19:23:18 -0700
|
||||
-- Travis Cross <tc@traviscross.com> Thu, 24 May 2012 15:15:10 +0000
|
||||
|
||||
freeswitch (1.0.head-git.master.20110530.1-1) unstable; urgency=low
|
||||
freeswitch (1.2~alpha1-1) unstable; urgency=low
|
||||
|
||||
* added mod_cdr_sqlite
|
||||
* Initial release of FreeSWITCH in new debian packaging.
|
||||
* The debian packaging has been completely rewritten from the ground up.
|
||||
* We now install to the correct locations outlined in the Filesystem
|
||||
Hierarchy Standard (FHS).
|
||||
* All modules are packaged separately from the core.
|
||||
* We have a handy system for autogenerating the final packaging
|
||||
configuration from a consolidated configuration file.
|
||||
|
||||
-- Michal Bielicki <michal.bielicki@seventhsignal.de> Mon, 30 May 2011 16:02:02 +0200
|
||||
|
||||
freeswitch (1.0.head-git.master.20110402.1-1) unstable; urgency=low
|
||||
|
||||
* Added Hebrew lang package
|
||||
|
||||
-- Michal Bielicki <michal.bielicki@seventhsignal.de> Sat, 02 Apr 2011 03:12:02 +0200
|
||||
|
||||
freeswitch (1.0.head-git.master.20110330.1-1) unstable; urgency=low
|
||||
|
||||
* removed mod_file_string since it has been merged into dptoolsa
|
||||
|
||||
-- Michal Bielicki <michal.bielicki@seventhsignal.de> Wed, 30 Mar 2011 11:39:02 +0200
|
||||
|
||||
freeswitch (1.0.head~git.master.20101222.1-1) unstable; urgency=low
|
||||
|
||||
* cleaning work
|
||||
|
||||
-- Michal Bielicki <michal.bielicki@seventhsignal.de> Wed, 22 Dec 2010 22:48:02 +0200
|
||||
|
||||
freeswitch (1.0.head~git.master.20101015.1-1) unstable; urgency=low
|
||||
|
||||
* reintroduced mod_flite
|
||||
* disabled the patching stuff introduced by Julien ... needs an overwork
|
||||
* reintroduced mod_tts_commandline
|
||||
* cleaned up rules file and module make rules
|
||||
* more trivial changes and updates :)
|
||||
|
||||
-- Michal Bielicki <michal.bielicki@seventhsignal.de> Fri, 15 Oct 2010 13:14:02 +0200
|
||||
|
||||
freeswitch (1.0.head~git.master.20101014.1-1) unstable; urgency=low
|
||||
|
||||
* replaced mod_openzap with mod_freetdm
|
||||
* added mod_theora
|
||||
* added mod_codec2
|
||||
* added mod_amrwb
|
||||
* added mod_portaudio_stream
|
||||
* cleaned up rules file and module make rules
|
||||
* added patches from Julien Duqene (FS-369)
|
||||
* Various trivial changes and updates :)
|
||||
|
||||
-- Michal Bielicki <michal.bielicki@seventhsignal.de> Fri, 15 Oct 2010 05:05:02 +0200
|
||||
|
||||
freeswitch (1.0.head~git.master.20100601.2-1) unstable; urgency=low
|
||||
|
||||
* Various trivial changes and updates.
|
||||
* Change upstream package version numbering scheme for unreleased versions:
|
||||
new format is major.minor.micro~git.branch.date.commits-1
|
||||
* Change source format to 3.0 (quilt).
|
||||
* Upgrade debhelper compatibility to version 7.
|
||||
* Update maintainer data and copyright file; now includes the full text
|
||||
of the MPL since it is not (yet?) available in /usr/share/common-licenses/
|
||||
|
||||
* Build and install mod_file_string.so (FSBUILD-247)
|
||||
* Work around build failure caused by clean rules for openzap.
|
||||
|
||||
* Remove several libraries from explicit dependencies, there were no special
|
||||
version requirements and they should be picked up by dh_shlibdeps.
|
||||
* Add dh_makeshlibs and make dh_shlibsdeps work again.
|
||||
* Move openssl to Suggests: as it is not a required package to install or
|
||||
run freeswitch.
|
||||
|
||||
* Add upstream-convert rule to apply patches, generate orig tarball
|
||||
and set package version.
|
||||
* Add check to ensure debian patches are applied before attempting build.
|
||||
* Fix clean rule to avoid unwanted tree change before building orig.tar
|
||||
archives with git-buildpackage.
|
||||
|
||||
-- Julien Plissonneau Duquene <exp-end-2010-06-88a41947@aqiii.org> Tue, 01 Jun 2010 09:53:44 -0400
|
||||
|
||||
freeswitch (1.0.6-1ubuntu1) maverick; urgency=low
|
||||
|
||||
[ Gabriel Gunderson ]
|
||||
* upgrade: Added mod_callcenter and pulled out Python into its own
|
||||
package.
|
||||
|
||||
[ Mathieu Parent ]
|
||||
* Updated Uploaders list
|
||||
* Updated Standards-Version to 3.9.1
|
||||
|
||||
-- Mathieu Parent <sathieu@debian.org> Thu, 23 Sep 2010 15:34:00 +0200
|
||||
|
||||
freeswitch (1.0.4-1ubuntu2) karmic; urgency=low
|
||||
|
||||
* upgrade: Add more verbosity when building to make it easier to find build
|
||||
errors.
|
||||
* upgrade: Remove the requirement for EXACTLY automake1.9 and change it to
|
||||
need at least automake 1.9
|
||||
* upgrade: Add the modules (directory, cluechoo, and valet_parking) to the
|
||||
build files. These are in the standard build, so they should be here too.
|
||||
|
||||
-- William King <quentusrex@gmail.com> Fri, 18 Dec 2009 14:27:42 -0800
|
||||
|
||||
freeswitch (1.0.4-1ubuntu1) karmic; urgency=low
|
||||
|
||||
* upgrade: Pulling out the sounds into separate source files for easier management.
|
||||
|
||||
-- William King <quentusrex@gmail.com> Sun, 15 Nov 2009 16:38:13 -0800
|
||||
|
||||
freeswitch (1.0.4-1) unstable; urgency=low
|
||||
|
||||
* new
|
||||
|
||||
-- Mike Jerris <mike@jerris.com> Mon, 18 Feb 2009 17:39:00 -0500
|
||||
|
||||
freeswitch (1.0.3-1) unstable; urgency=low
|
||||
|
||||
* build: add targets cd-sounds[-install] and cd-moh[-install] for 48k sounds (r:11151)
|
||||
* build: autoconf detect odbc library (FSBUILD-8)
|
||||
* build: fix sound install on windows build (r:11635,11638)
|
||||
* build: fix configure --sysconfdir (FSBUILD-84)
|
||||
* build: fix uclibc build (MODLANG-99)
|
||||
* build: fix adduser in debian (FSBUILD-122, FSBUILD-102)
|
||||
* core: fix buffering issues (r:11101,11145,11152-11157,11162,11191,11200)
|
||||
* core: fix c leg no hangup when converting attended to blind transfer before b leg answers (MODENDP-165/r:11061)
|
||||
* core: fix codec and media handling issues (r:11104)
|
||||
* core: fix double close of file handles and add recording of native files (r:11108-11113,11482,11483)
|
||||
* core: fix file resampling issue (r:11090)
|
||||
* core: fix incorrect call progress timestamps in timetable (r:11186-11187/FSCORE-268)
|
||||
* core: fix media handling issues (r:11079-11082)
|
||||
* core: fix multiple 2833 dtmf handling issues (r:11149,11261,11262,11266,11293,11294,11338/FSCORE-266,FSCORE-273)
|
||||
* core: send more event types verbos bridge,unbridge,park,unpark (r:11097-11098)
|
||||
* core: Prevent media setup on failed originates (r:11462/FSCORE-279)
|
||||
* core: fix recorded soundfiles had random data at end of file (r:11491/MODAPP-205)
|
||||
* core: fix user for windows service (r:11538/FSCORE-277)
|
||||
* core: modify variable expansion code to expand in more places and to fix potential security issue from injecting variables (r:11569,11570)
|
||||
* core: look for soundfiles in more locations based on rate (r:11601/MODFORM-23)
|
||||
* core: state machine veto behavior changed (r:11610)
|
||||
* core: add enable_file_write_buffering variable (r:11677)
|
||||
* core: fix garbled audio on media bug during bridge using stateful codecs (FSCORE-288)
|
||||
* core: fix tone detect running multiple bugs when detecting multiple tones
|
||||
* core: add {instant_ringback=true} to make ringback not wait for indication to generate ringback
|
||||
* core: fix segfault from race condition on multiple reloadxml calls (MOODAPP-211)
|
||||
* core: modify xml locking so phrases do not lock the xml for the duration of playing them
|
||||
* core: replace resampler with the speexdsp resampler
|
||||
* core: fix windows calling convention on threads launched that return a value to fix shutdown segfault (FSCORE-298)
|
||||
* core: do not auto-export origination_caller_id_* to avoid confusion (r:12052)
|
||||
* core: API visibility support (GCC/SUNCC) (FSCORE-264)
|
||||
* core: fix leak in exposed event class serialize method (r:12068)
|
||||
* core: add volume as possible return value from input callback on embedded languages (r:12114)
|
||||
* core: add resampler to seech handles (r:12141)
|
||||
* core: add api.getTime to embedded languages (r:12149)
|
||||
* freeswitch: allow you to specify -htdocs dir at runtime. (r:11614)
|
||||
* fs_cli: add "debug" command to change the esl debug level at runtime (r:11057)
|
||||
* iksemel: update to 1.3 (r:11645)
|
||||
* libesl: fix disconnect failure (r:11078,11083)
|
||||
* libesl: fix solaris build (r:11067,11068)
|
||||
* libesl: add c++ wrapper and swigged wrappers for multiple scripting languages
|
||||
* libg722_1: fix dct4.h code generator to include the "f" (r:11188-11189,11367)
|
||||
* libilbc: update to new library from Steve Underwood
|
||||
* mod_amrwb: add amr wideband passthrough codec (r:11971)
|
||||
* mod_cepstral: fix failure return code handling (MODASRTTS-9)
|
||||
* mod_conference: add 'conference xml_list' and 'conference [conf_name] xml_list' (r:11062-11063)
|
||||
* mod_conference: make conference verbose-events param to control if events have all the channel data or not (r:11073-11077)
|
||||
* mod_conference: add MINTWO flag to end conference when down to 1 participant (r:11523)
|
||||
* mod_conference: refactor conference record function (r:11626)
|
||||
* mod_conference: add conference list summary command (MODAPP-197)
|
||||
* mod_conference: fix Deadlock or coredump on conference commands play, transfer (MODAPP-209)
|
||||
* mod_dahdi_codec: added (MODCODEC-7)
|
||||
* mod_dialplan_xml: make previous auto hunt feature optional and off by defaule use auto_hunt=true session or global variable to enable (r:12144)
|
||||
* mod_dptools: Add failure_causes channel variable (r:12058)
|
||||
* mod_easyroute: add configuration file example for custom-query (r:11055)
|
||||
* mod_easyroute: add custom-query configuration option (r:11054)
|
||||
* mod_easyroute: fix build error when not configured for odbc (r:11478)
|
||||
* mod_easyroute: fix memory leak (r:11611)
|
||||
* mod_erlang_event: add ability to spawn a process (module/function) outbound on a specified node. (r:11460,11477)
|
||||
* mod_erlang_event: Fix some issues with standing up a new outbound listener and cleaning up after a failed session (r:11479)
|
||||
* mod_erlang_event: Fix setting up a listener for an outbound session if one doesn't already exist (r:11488)
|
||||
* mod_erlang_event: add "erlang" fscli command (r:11488)
|
||||
* mod_erlang_event: Monitor spawned outbound processes for premature exits (r:11489)
|
||||
* mod_erlang_event: Allow the event encoding strategy to be configurable; choices are string or binary (r:11495)
|
||||
* mod_erlang_event: Allow certain tuple elements to be binaries or strings, to reduce conversion requirements on the erlang side (r:11496)
|
||||
* mod_erlang_event: Support sending a message to a registered process to request a pid (when spawning won't cut it) (r:11499)
|
||||
* mod_erlang_event: Ensure events received while a pid session is being created aren't discarded but are queued instead (r:11500)
|
||||
* mod_erlang_event: Add freeswitch.erl - An erlang module to make talking to mod_erlang_event more painless (r:11525)
|
||||
* mod_erlang_event: use rpc:call instead of spawn and to make the registered process argument to handlecall optional (r:11542)
|
||||
* mod_event_socket: add ability to use a comma sep list of events on event-sink create-listener (r:11056)
|
||||
* mod_event_socket: add debug logging to event-sink (r:11060)
|
||||
* mod_event_socket: fix race condition (r:11680,12146)
|
||||
* mod_dptools: add all modifier to break command (r:11557,11558)
|
||||
* mod_dptools: add sound_test application (r:11658)
|
||||
* mod_fax: Dont hangup after sending/receiving faxes
|
||||
* mod_fifo: pause media bugs while not in a bridge (r:11466,11490)
|
||||
* mod_fifo: allow unpark during chime list playing (r:11555/MODAPP-206)
|
||||
* mod_fifo: fix outbound fifos doesn't check if the consumer is in the fifo in question. (r:11561/MODAPP-207)
|
||||
* mod_fifo: Fix segfault when no argument were supplied to fifo_member call (MODAPP-210)
|
||||
* mod_lcr: added (r:11180,11184,11532,11609)
|
||||
* mod_limit: fix memory corruption caused by race condition when using limit hash (r:11070-11071)
|
||||
* mod_limit: Fix transfer bug, fix leak and make the channel hangup if the extension is \!hangup_cause (r:11604,11932)
|
||||
* mod_limit: add write different channel variables per realm_id (r:11608)
|
||||
* mod_limit: Make max argument optional on the limit app, set the limit_usage variable to current count after inserting call in the db (r:11955)
|
||||
* mod_lua: Create empty argv table when no args are passed to a Lua script (r:11559)
|
||||
* mod_lua: use dll for lua windows build (FSCORE-299)
|
||||
* mod_openmrcp: removed (r:11176-11179)
|
||||
* mod_opal: added
|
||||
* mod_pocketsphinx: fix leak (r:11974)
|
||||
* mod_portaudio: fix stuck channels on outbound calls (r:11160,11470,11471,11472,11475,11476,11485)
|
||||
* mod_python: fix build when site dir is not /usr/lib/python2.4 (r:12070)
|
||||
* mod_say_en: add short form date/time (MODAPP-180)
|
||||
* mod_sofia: add auto-rtp-bugs profile option to make rtp bug compensation configurable (r :11146-11147)
|
||||
* mod_sofia: add support in sdp for a=maxptime (r:11103)
|
||||
* mod_sofia: fix codec change race condition (r:11143)
|
||||
* mod_sofia: fix notify event wasn't allowing content-length 0 (r:11106/MODENDP-167)
|
||||
* mod_sofia: fix sending extra sdp in 200 OK when using 100rel in violation of sdp o/a protocol draft-ietf-sipping-sip-offeranswer-10 (r:11088)
|
||||
* mod_sofia: fix sip_auto_answer=true (r:11069)
|
||||
* mod_sofia: improve outbound registration error message (r:11059)
|
||||
* mod_sofia: reset media timeout on re-invite (r:11161)
|
||||
* mod_sofia: fix segfault due to missing contact header in invite (r:11463/MODENDP-177)
|
||||
* mod_sofia: allow <params> tag in gateways as well as <variables> with direction inbound/outbound (default both) and call counter (r:11468)
|
||||
* mod_sofia: add support or SLA, works with Polycom and Snom(Sylantro mode). (r:11562/MODENDP-179)
|
||||
* mod_sofia: tolerate missing user in the request uri (r:11636)
|
||||
* mod_sofia: Add purpose=gateways and profile=[name] so xml_curl requests make sense (MDXMLINT-46)
|
||||
* mod_sofia: Add disable-srv and disable-naptr params to sip profiles (default false) (MODENDP-183)
|
||||
* mod_sofia: add outbound-proxy param (MODENDP-184)
|
||||
* mod_sofia: fix segfault with stun-enabled=false (SFSIP-120)
|
||||
* mod_sofia: Profile Name in Expire Event is incorrect (MODENDP-185)
|
||||
* mod_sofia: add "scrooge" mode to "inbound-codec-negotiation" (r:11881)
|
||||
* mod_sofia: Add context to reconfig_sofia (r:12080)
|
||||
* mod_sofia: fix segfault when calling from a Cisco 7940 using bypass_media (FSCORE-301)
|
||||
* mod_sofia: ilbc to default to 30 if no mode= fmtp is defined on the inbound (r:12110)
|
||||
* mod_sofia: fix challenge-realm (r:12113)
|
||||
* mod_sofia: Segmentation fault when running killgw command on sofia profile without specifying a gateway (MODENDP-189)
|
||||
* mod_sofia: gateways will inherit the context from its parent unless manually provided (r:12138)
|
||||
* mod_sndfile: Add IMA ADPCM support (MODFORM-22)
|
||||
* mod_spidermonkey: fix loading of spidermonkey modules (r:11084-11085)
|
||||
* mod_spidermonkey: block some unwanted behaviours in session.originate
|
||||
* mod_spidermonkey_socket: fix gc blocking (MODLANG-97)
|
||||
* mod_xml_rpc: fixed authentication using @domain syntax (r:11064)
|
||||
* mod_xml_rpc: fix http content types sent in responses (r:11099,11148,11150)
|
||||
* mod_voicemail: voicemail insert into the proper fields (MODAPP-190)
|
||||
* mod_voipcodecs: add G.726 24k (r:12083)
|
||||
* sofia-sip: update to current sofia-sip repository
|
||||
* spandsp: sync to latest snapshot and fix windows build
|
||||
* speex: updated to 1.2rc1
|
||||
* sqlite: fix random assert on windows (FSCORE-292)
|
||||
|
||||
-- Mike Jerris <mike@jerris.com> Mon, 18 Feb 2009 17:39:00 -0500
|
||||
|
||||
freeswitch (1.0.2-1) unstable; urgency=low
|
||||
|
||||
* all: don't add module interfaces before returning from error conditions in module load functions (MDXMLINT-36)
|
||||
* all: fixed multiple memory leaks
|
||||
* all: improved module unloading/reloading support
|
||||
* build: add support for --switchconfdir (FSBUILD-84)
|
||||
* build: fixed netbsd build
|
||||
* build: make freeswitch stop graceflly with /etc/init.d/freeswitch stop on debian add working dir to start-stop-dir so freeswitch dumps core in workdir
|
||||
* build: multiple packaging fixes
|
||||
* build: user freeswitch not added to audio group on deb install (FSBUILD-95)
|
||||
* Configuration: many updates to default configuration
|
||||
* core: Add ability to choose uuid from originate string, originate_uuid var (use at your own risk)
|
||||
* core: add bridge_generate_comfort_noise option for bridge to generate comfort noise to the A leg when there is no audio on the B leg
|
||||
* core: add chan vars to param event during hangup hook
|
||||
* core: add exec directive to xml preprocessor (not available on windows)
|
||||
* core: add force_transfer_dialplan and force_transfer_context variables
|
||||
* core: add hashing to event header lookup
|
||||
* core: add hits to tone_detect
|
||||
* core: add last_dtmf_duration variable
|
||||
* core: add msleep function to swigged languages
|
||||
* core: add park_after_bridge variable
|
||||
* core: add per leg timeouts and specific cause codes in reject_on_single_fail
|
||||
* core: add runtime selection of the module dir (FSCORE-198)
|
||||
* core: add scheduler support for heartbeat
|
||||
* core: add session heartbeat feature
|
||||
* core: add session.destroy psuedo method to sort of destroy a session at least for the sake of FS
|
||||
* core: add session.unsetInputCallback
|
||||
* core: add strftime format string validation for user supplied values
|
||||
* core: add vars param to switch_ivr_originate for recursion (MODAPP-175)
|
||||
* core: added a "group" concept to the user directory
|
||||
* core: added ability to do dns lookup to find ip with host: like stun: (FSCORE-219)
|
||||
* core: added better locking for codec changes during a call
|
||||
* core: added current_application and current_application_data variables
|
||||
* core: added error/ magic endpoint so modules can return error causes in situations like sofia_contact
|
||||
* core: added read_result channel variable
|
||||
* core: added support for "F" to indicate flash in dtmf (FSCORE-213)
|
||||
* core: allow calls to be stolen from originate
|
||||
* core: allow you to get the privacy bits in the caller_profile
|
||||
* core: change dso code to load symbols local
|
||||
* core: changes core flags to be array based so we have more
|
||||
* core: eavesdrop causes the people being eavesdropped on to not hear ach other (MODAPP-140)
|
||||
* core: expose time table to variable interface via caller field lookup
|
||||
* core: fix 100% cpu when sending parked call to moh (FSCORE-234)
|
||||
* core: fix bridge app to make sure both channels are ready for media when one is only in ringing state
|
||||
* core: fix buffer overflow (FSCORE-188)
|
||||
* core: fix conference dial by allowing multiple braces in originate, fix bad pointer op (FSCORE-208)
|
||||
* core: fix double detection of DTMF in IVR (FSCORE-221)
|
||||
* core: fix hangup_after_bridge is false on a bridge started with the intercept app
|
||||
* core: fix issue where pid file is accidentally truncated
|
||||
* core: fix ivr timeout (FSCORE-181)
|
||||
* core: fix memory leak in alias tab completion code
|
||||
* core: fix min digits in read app
|
||||
* core: fix out-of-bounds pointer in variable expansion (FSCORE-171)
|
||||
* core: fix segfault in media bugs when in bypass media (FSCORE-193)
|
||||
* core: fix segfault on gtalk to sip calls (FSCORE-212)
|
||||
* core: fix segfault on reloadxml (FSCORE-176)
|
||||
* core: fix segfault on trasfering eavesdopping party (FSCORE-210)
|
||||
* core: fix segfault using switch_system function (FSCORE-196)
|
||||
* core: fix session.bridge
|
||||
* core: fix setting effective_caller_id_name / effective_caller_id_number on bridge dialstring (MODAPP-122)
|
||||
* core: fix stream_raw_write (MODAPP-145)
|
||||
* core: fix using resampling on ringback file
|
||||
* core: fixed performance bottleneck in sqlite db's
|
||||
* core: fixed race in reloadxml
|
||||
* core: increment app before execute in case it returns to execute it will go to the next item in the list and not the same
|
||||
* core: ivr menu max_failures and max_timeouts now default to 3 if not specified or invalid (less than 1) values are specified (FSCORE-244)
|
||||
* core: ivr_menu max-timeouts option, result in ivr_menu_status var (FSCORE-183)
|
||||
* core: let b legs use park_after_bridge too
|
||||
* core: make events less verbose unless verbose_events is set
|
||||
* core: parse private events during originate
|
||||
* core: pass pdd data to a leg on oubound calls using bridge
|
||||
* core: prevent crash in crazy situation with xml interface lookup failures (FSCORE-169)
|
||||
* core: reduce cpu requirement for generated comfort noise
|
||||
* core: remove interface names from core db on unload
|
||||
* core: reworked timing resulting in significant performance increase and better rtp timing
|
||||
* core: rewrite switch_play_and_get_digits (MODAPP-166)
|
||||
* core: session.recordFile never terminates (MODLANG-79)
|
||||
* core: session.transfer make dialplan and context optional
|
||||
* core: set_user app now sets domain vars as well as user vars
|
||||
* core: tone_detect not triggering app after tone detection (MODAPP-182)
|
||||
* core: unprivileged user setting bigger stack for switch_system thread failure (FSCORE-197)
|
||||
* core: user_exists returns false when fetching a user from XML Curl or other xml interfaces
|
||||
* libesl: added c event socket library and fs_cli
|
||||
* libsndfile: fix autoconf 2.62 support (LBSNDF-5)
|
||||
* mod commands: add "all" modifier to "break" command
|
||||
* mod_celt: added new module
|
||||
* mod_commands: Add support for more than 2 variables to uuid_setvar_multi (MODAPP-171)
|
||||
* mod_commands: Add support for passing the cause of hangup to the uuid_kill command (FSCORE-217)
|
||||
* mod_commands: add attr lookup to user_data
|
||||
* mod_commands: add domain_exists fsapi command
|
||||
* mod_commands: add eval fsapi command
|
||||
* mod_commands: add flush_dtmf app and uuid_flush_dtmf api command
|
||||
* mod_commands: add fsctl send_sighup, fsctl shutdown asap, unsched_api commands
|
||||
* mod_commands: add fsctl shutdown [elegant|restart|cancel]
|
||||
* mod_commands: add new syntax to uuid_setvar to allow you to unset a var. <uuid> <var> [value] (MODAPP-167)
|
||||
* mod_commands: add reload fsapi command to reload a module
|
||||
* mod_commands: add system fsapi and application (MODAPP-138)
|
||||
* mod_commands: added hupall fsapi command
|
||||
* mod_commands: added strftime_tz api command
|
||||
* mod_commands: break all now stops broadcast too
|
||||
* mod_commands: fix api command sent through sched_api was getting the last char lopped off
|
||||
* mod_commands: fix race on transfer with -both
|
||||
* mod_commands: fix system dialplan app problems (MODAPP-86)
|
||||
* mod_commands: only send content-type on status when it really is http.
|
||||
* mod_conference: add fsapi to stop async playback too
|
||||
* mod_conference: add video caps to mod_conference with video follow audio
|
||||
* mod_conference: better sound prefix handling when using say: and allow say: on kick sounds.
|
||||
* mod_conference: fix race in record
|
||||
* mod_conference: fix runaway thread when floor holder has no video and other people do have video
|
||||
* mod_conference: fix seg when kicking many members quickly (MODAPP-129)
|
||||
* mod_conference: fix segfault on invalid chat event
|
||||
* mod_conference: perpetual sound does not auto-mute, you can do that yourself if you want it
|
||||
* mod_dialplan_xml: add Hunt- vars in dialplan lookup after transfer
|
||||
* mod_dialplan_xml: fail call on extensions with nested conditions
|
||||
* mod_dingaling: (LBDING-7) fix segfault on os x
|
||||
* mod_dingaling: end call on ice timeout
|
||||
* mod_dingaling: fix presence on jabber to be less protocol ambiguous
|
||||
* mod_dingaling: fix segfault (LBDING-10)
|
||||
* mod_dingaling: update to support latest client from google
|
||||
* mod_dptools: add a mechanism to tell if a file played from sendmsg over event socket
|
||||
* mod_dptools: add playback_terminator support to phrase and say app
|
||||
* mod_dptools: add playback_terminator_used variable (MODAPP-132)
|
||||
* mod_dptools: add presence application
|
||||
* mod_dptools: fix originate api not parsing users properly (FSCORE-246)
|
||||
* mod_dptools: fix record and record_session to create directory if it does not exist (FSCORE-250)
|
||||
* mod_dptools: fixed limit and + parsing bug in record_session app (MODAPP-148)
|
||||
* mod_dptools: remove_bugs added to remove all media bugs on a session
|
||||
* mod_erlang_event: add new module
|
||||
* mod_event_socket: missing : after Content-Length in event socket (MODEVENT-33)
|
||||
* mod_event_socket: add event socket listener filters
|
||||
* mod_event_socket: add stateful listener fsapi commands for ajax-y type event interface over http
|
||||
* mod_event_socket: fix arg parsing errors (MODEVENT-34)
|
||||
* mod_event_socket: fix shutdown segfault race (MODEVENT-32)
|
||||
* mod_event_socket: inbound connection to event_socket can now take over an existing channel with 'myevents <uuid>' to take on the behaviour of an outbound socket
|
||||
* mod_event_socket: let any channel get messages
|
||||
* mod_event_socket: make event socket wait for hangup on outbound mode and send disconnect message
|
||||
* mod_expr: fix endless loop
|
||||
* mod_fax: new module
|
||||
* mod_fifo: add fifo_consumer_wrapup_time var (MODAPP-117)
|
||||
* mod_fifo: added callback agents
|
||||
* mod_fifo: honor keyword silence (MODAPP-118)
|
||||
* mod_flite: added windows build
|
||||
* mod_fsv: fix in a windows enviroment opening the record file in text mode. (MODAPP-169)
|
||||
* mod_http: added new module
|
||||
* mod_java: updated to new module api to support read/write locks on interface
|
||||
* mod_limit: accept dialplan context for transfer (MODAPP-161)
|
||||
* mod_limit: added hashtable based limit functions
|
||||
* mod_limit: prevent empty error log message (MODAPP-134)
|
||||
* mod_local_stream: add start_local_stream and stop_local_stream fsapi commands to start/stop dynamically (MODFORM-13)
|
||||
* mod_local_stream: fix leak and improve error checking
|
||||
* mod_local_stream: fix seg when no timer name specified in config file. (MODFORM-16)
|
||||
* mod_loopback: add new module
|
||||
* mod_lua: add local scripts directory support (MODLANG-86)
|
||||
* mod_lua: don't eval blank string
|
||||
* mod_lua: fix originate
|
||||
* mod_lua: fix segfault (MODLANG-77)
|
||||
* mod_lua: update to lua 5.1.4 (MODLANG-87)
|
||||
* mod_lumenvox: removed
|
||||
* mod_managed: new module replaces mod_mono now supports native .net runtime on windows as well
|
||||
* mod_opal: added to trunk (still very beta)
|
||||
* mod_perl: fix segfault (MODLANG-77)
|
||||
* mod_pocketsphinx: fix rpm build
|
||||
* mod_portaudio: fix cpu race on inbound call to pa when no ring file is set
|
||||
* mod_radius_cdr: dictionary update for cause code changes (MODEVENT-27)
|
||||
* mod_radius_cdr: fix unload (MODEVENT-29)
|
||||
* mod_shout: add stereo recording broadcast support
|
||||
* mod_shout: added windows build
|
||||
* mod_shout: fix segfault when recording mp3's (MODFORM-12)
|
||||
* mod_shout: improved stability of mp3 decoding
|
||||
* mod_siren: added new module
|
||||
* mod_sndfile added support to record 16bit for the various rates including 48kHz
|
||||
* mod_sofia: Add filter to "sofia status profile XXX" (MODENDP-138)
|
||||
* mod_sofia: Add force-register-db-domain which works in conjunction with force-register-domain.
|
||||
* mod_sofia: Add optional <variables> and <params> tag to <gateway> tag.
|
||||
* mod_sofia: Challenge the right realm when to_host is outside the users domain. (MODENDP-136)
|
||||
* mod_sofia: Improve notify messages through a proxy (MODENDP-147)
|
||||
* mod_sofia: MWI for multiple domains (MODAPP-126)
|
||||
* mod_sofia: Move "a=sendrecv" from session to media section of SDP (MODENDP-148)
|
||||
* mod_sofia: add 200 OK re-invite without sdp
|
||||
* mod_sofia: add custom sofia::gateway_state event (MODENDP-112)
|
||||
* mod_sofia: add fire events for the refer SIP NOTIFY event package (MODENDP-152)
|
||||
* mod_sofia: add more params for xml_curl directory lookup
|
||||
* mod_sofia: add new auto vals for challenge-realm param <param name="challenge-realm" value="auto_from|auto_to|<hardcoded_val>"/>
|
||||
* mod_sofia: add option to turn of auto_restart of sofia profiles on ip change
|
||||
* mod_sofia: add params to use sip callid as uuid on inbound calls and uuid as sip callid on outbound calls
|
||||
* mod_sofia: add parsing of Privacy header for privacy info (MODENDP-133)
|
||||
* mod_sofia: add proto_specific_hangup_cause to both legs
|
||||
* mod_sofia: add proxy 3pcc mode
|
||||
* mod_sofia: add redirect variable to channel as well as partner channe (MODENDP-135)
|
||||
* mod_sofia: add sip-forbid-register to user params to refuse to let a certian user register
|
||||
* mod_sofia: add sip: into register-proxy when it's not specified
|
||||
* mod_sofia: add sip_history_info var for inbound invites.
|
||||
* mod_sofia: add sip_via_protocol variable
|
||||
* mod_sofia: add sofia xmlstatus (MODENDP-156)
|
||||
* mod_sofia: add support for params other than Replaces in Refer-To (MODENDP-143)
|
||||
* mod_sofia: add support for profiles sharing databases so that you can have a domain that uses multiple profiles for split dns type setups
|
||||
* mod_sofia: add support for refer transfer involving multiple machines
|
||||
* mod_sofia: add support to send a notify in the invite dialog by specifying the uuid of the call. (SFSIP-92)
|
||||
* mod_sofia: add suppress_from_cidname var to not have display name in from header (MODENDP-153)
|
||||
* mod_sofia: added sip_hangup_disposition variable
|
||||
* mod_sofia: allow send_message and notify events to send a message/notify without a body if needed.
|
||||
* mod_sofia: append -1 .. -N postfix after any X-headers as vars that have the same name
|
||||
* mod_sofia: cache auth_gateway_name in sofia for challenged bye
|
||||
* mod_sofia: cancel proxy or no-media mode if you purposely answer or pre_answer
|
||||
* mod_sofia: correct result code mapping for Unallocated Number (MODENDP-124)
|
||||
* mod_sofia: disable 100rel by default
|
||||
* mod_sofia: don't accept crypto in the RTP/AVP (MODENDP-126)
|
||||
* mod_sofia: don't put CN in sdp answer if it was not in the offer.
|
||||
* mod_sofia: fix Incorrect IP address shows up in SDP "o" field when multiple external IPs available and FS not bound to first (MODENDP-132)
|
||||
* mod_sofia: fix Wrong RTP media port destination after reinvite/UNHOLD (SFSIP-82)
|
||||
* mod_sofia: fix bug on linksys where they lie about the ptime and handle linksys transfer problem
|
||||
* mod_sofia: fix chat (send an IM) assumes that the user's profile is the same as their domain, which isn't necessarily so (SFSIP-83)
|
||||
* mod_sofia: fix dtmf handling of broken info dtmf endpoints
|
||||
* mod_sofia: fix eyebeam presence to be RFC compliant (MODENDP-144)
|
||||
* mod_sofia: fix ip change detection when in proxy mode
|
||||
* mod_sofia: fix register_proxy ignoring the paramaters (MODENDP-121)
|
||||
* mod_sofia: fix remote session refresh triggers request glare (MODENDP-131)
|
||||
* mod_sofia: fix rtp auto adjust running when it should not
|
||||
* mod_sofia: fix rtp sent to wrong port after some re-INVITE scenarios (MODENDP-141)
|
||||
* mod_sofia: fix sending of cn packets across bridge when we shouldn't
|
||||
* mod_sofia: fix sqlite issue with select of the sip contact
|
||||
* mod_sofia: fixed segfault on invalid presence payload
|
||||
* mod_sofia: gateway ping needs to look for 501 (SFSIP-78)
|
||||
* mod_sofia: handle multi contact register responses and register timeout better
|
||||
* mod_sofia: improve gateway resilience
|
||||
* mod_sofia: log ip and port you get reply to invite from
|
||||
* mod_sofia: make multiple-registations=true use the contact method and call-id option to do it the old way
|
||||
* mod_sofia: make proxy mode pull the port from m=image as well
|
||||
* mod_sofia: make register-proxy preserve the url composed from proxy but target the packets to desired address (MODENDP-121)
|
||||
* mod_sofia: many fixes for sonus rtp issues silence_when_idle=400 chanvar to send generated silence duing sleeps etc
|
||||
* mod_sofia: many fixes in presence handling
|
||||
* mod_sofia: passthrough t.38 fixes
|
||||
* mod_sofia: pick ipv4 or ipv6 based on sipip instead of having mixed in sdp
|
||||
* mod_sofia: send NOTIFY on TCP/UDP depending on the SUBSCRIBE (SFSIP-104)
|
||||
* mod_sofia: setting profile option multiple-registrations=contact key multi reg off the contact string
|
||||
* mod_sofia: wait for a reply on refer
|
||||
* mod_soundtouch: fixes and improvements, many options changed (MODAPP-149)
|
||||
* mod_soundtouch: updated to new module api
|
||||
* mod_spidermonkey: Segmentation fault in check_hangup_hook at mod_spidermonkey.c:1589 (MODLANG-74)
|
||||
* mod_spidermonkey: fix bug in apiExecute
|
||||
* mod_spidermonkey: fix memory pool handling and leaks
|
||||
* mod_spidermonkey: limit recursion busting through the stack (FSCORE-202)
|
||||
* mod_spidermonkey: make session.getVariable return blank string not the word false
|
||||
* mod_spidermonkey_curl: add optional content-type arg
|
||||
* mod_spidermonkey_odbc: fix numRows and add numCols
|
||||
* mod_spidermonkey_odbc: fix segfault (MODLANG-75)
|
||||
* mod_stress: new module for voice stress analysis
|
||||
* mod_syslog: don't log blank lines (FSCORE-163)
|
||||
* mod_tone_stream: let silence_stream://0 indicate perpetual silence
|
||||
* mod_vmd: add new module to detect voicemail "beep"
|
||||
* mod_voicemail: Add vm_alternate_greet_id param to directory entry (MODAPP-174)
|
||||
* mod_voicemail: Patch to add voicemail preference controlling date announcement new param 'play-date-announcement' to values 'first' 'last' or 'never' defaults to first to retain previous behavior (MODAPP-121)
|
||||
* mod_voicemail: Update mwi light after delete vm via web. (MODAPP-124)
|
||||
* mod_voicemail: add ability to get to options without listening to every saved message (MODAPP-115)
|
||||
* mod_voicemail: add ability to skip greeting when leaving a voicemail. (MODAPP-181)
|
||||
* mod_voicemail: add change-pass-key config file option
|
||||
* mod_voicemail: add forwarding support
|
||||
* mod_voicemail: add local dtmf driven alternat vm pass
|
||||
* mod_voicemail: add proper notification of a vm message being too short
|
||||
* mod_voicemail: add support for auth via a1-hash
|
||||
* mod_voicemail: add the "storage-dir" parameter to be set on a per-user basis (MODAPP-133)
|
||||
* mod_voicemail: add voicemail_greeting_path variable
|
||||
* mod_voicemail: added voicemail_alternate_greet_id variable
|
||||
* mod_voicemail: allow changing of password from voicemail to update user directory if using non-static config (MODAPP-156)
|
||||
* mod_voicemail: created email date (int overflow) (MODAPP-125)
|
||||
* mod_voicemail: don't try to deliver vm when no file was recorded. (MODAPP-133)
|
||||
* mod_voicemail: fix MWI with xml_curl used for directory (MODAPP-176)
|
||||
* mod_voicemail: fix Voicemail messages occasionally lost / stranded (MODAPP-178)
|
||||
* mod_voicemail: fix invalid event after message deleted (MODAPP-170)
|
||||
* mod_voicemail: fix mwi for phones with multiple registrations problem (MODAPP-153)
|
||||
* mod_voicemail: fix voicemail segfault on incorrect password (FSCORE-187)
|
||||
* mod_voicemail: fix voicemail_inject error handling (MODAPP-133)
|
||||
* mod_voicemail: fix voicemail_inject usage api call
|
||||
* mod_voicemail: improve error checking (MODAPP-142)
|
||||
* mod_voicemail: localize notification emails (MODAPP-139)
|
||||
* mod_voicemail: make more multi-domain friendly (MODAPP-162)
|
||||
* mod_voicemail: make playback created file macros optional (MODAPP-150)
|
||||
* mod_voicemail: recognize operator key in more places (MODAPP-159)
|
||||
* mod_voicemail: web interface displays incorrect created / last heard dates (MODAPP-123)
|
||||
* mod_wanpipe: removed
|
||||
* mod_xml_cdr: add https support
|
||||
* mod_xml_cdr: add optional a-leg prefix to xml cdr filenames (MDXMLINT-39)
|
||||
* mod_xml_cdr: add support for fallback webserver for cdr posting (FSCORE-238)
|
||||
* mod_xml_curl: Allow specification of HTTP method, and dynamic expansion of variables in URI. (MDXMLINT-41)
|
||||
* mod_xml_curl: added redirect following (max 10)
|
||||
* mod_xml_ldap: almost a complete rewrite of this module
|
||||
* mod_xml_rpc: allow setting of global realm without a global user (MDXMLINT-45)
|
||||
* mod_xml_rpc: fix multiple segfaults
|
||||
* mod_xml_rpc: fix segfault on originate via http
|
||||
* sofia-sip: updated to 1.12.10 (plus a few patches)
|
||||
|
||||
-- Mike Jerris <mike@jerris.com> Mon, 29 Dec 2008 14:46:00 -0500
|
||||
|
||||
freeswitch (1.0.1-1) unstable; urgency=low
|
||||
|
||||
* FIX: prevent intercept race condition that can also be solved with continue_on_fail=originator_cancel
|
||||
* FIX: NULL dereference detected by klockwork (www.klockwork.com)
|
||||
* FIX: don't open failed local stream (MODFORM-9)
|
||||
* FIX: instability in mod_local_stream in failure scenarios
|
||||
* FIX: xmlrpc-c build on OS X 10.4 (FSBUILD-47)
|
||||
* ENHANCEMENT: Added tab completion on many api commands in console
|
||||
* ENHANCEMENT: polycom BLF support
|
||||
* FIX: many sip NAT related fixes in mod_sofia
|
||||
* FIX: support sip unregister with Contact: *
|
||||
* FIX: multiple segfaults in xmlrpc-c
|
||||
* FIX: sip unregister event being skipped
|
||||
* FIX: hangup properly on malformed sip 3pcc calls being used as a way to ping
|
||||
* ADD: enable-3pcc sofia profile param, it is now disabled by default.
|
||||
* ADD: presence events to sip proxy mode
|
||||
* ADD: legs param to cdr_csv
|
||||
* ADD: support for perl as an embedded lanugage
|
||||
* ENHANCEMENT: many new api's and functions to the embedded languages including api support, xml interface support, auto start scripts, and many new objects
|
||||
* CHANGE: python embedded language api changed to match perl, lua, java
|
||||
* FIX: many stability fixes in embedded langauges perl, lua, java, python
|
||||
* ADD: failed_xml_cdr magic channel variable
|
||||
* FIX: access free memory error in mod_sofia when using respond app
|
||||
* ENHNACEMENT: make global_setvar only have 2 fields so you can set foo=bar=blah w/o quotes
|
||||
* FIX: mod_spidermonkey keep hangup hook in the session thread
|
||||
* ENHANCEMENT: mod_ldap added sasl support and search filters
|
||||
* ADD: answered, waitForAnswer and mediaReady methods to embedded language Session object
|
||||
* ENHANCEMENT: mod_voicemail param change to allow notification emails using templates
|
||||
* ADD: per user acl in sofia
|
||||
* FIX: deadlock in mod_portaudio
|
||||
* ENHANCEMENT: blank username in sip will trigger a lookup for the user "nobody"
|
||||
* ADD: import variable to import variables from a peer channel at time of originate
|
||||
* FIX: api type fix for c++ modules when incorrectly using enums
|
||||
* FIX: eliminate need for escaped , in [] on originate
|
||||
* ADD: NDLB-force-rport option to force behavior as if rport was sent in the via
|
||||
* ENHANCEMENT: honor execute_on_answer on outbound legs too
|
||||
* ADD: execute_on_ring variable
|
||||
* FIX: Seg fault in CoreSession() class destructor
|
||||
* ADD: per channel caller id in originate
|
||||
* ADD: sip_outgoing_call_id variable
|
||||
* FIX: multiple memory leaks in mod_sofia
|
||||
* FIX: find_local_ip IPv6 support
|
||||
* ADD: variable expansion to on execute vars.(FSCORE-114)
|
||||
* ADD: count optional arg to show calls and show channels (MODAPP-103)
|
||||
* FIX: MODEVENT-25 (WSAWOULDBLOCK error on socket send in windows) in event socket
|
||||
* FIX: multiple fixes to the logic in mod_say_zh
|
||||
* ADD: inter digit timeout to swigged embedded languages getDigits method. (MODLANG-65)
|
||||
* ADD: Linksys P-RTP-Stat SIP header values (SFSIP-66)
|
||||
* FIX: small leak in core
|
||||
* ADD: progress_timeout var to originate
|
||||
* UPDATE: portaudio library
|
||||
* FIX: added timeout to iax read
|
||||
* ADD: 'pa rescan' to portaudio to look for new devices
|
||||
* FIX: wait for broadcast to start when starting async hold to avoid race
|
||||
* FIX: mod_rss, don't always play the first news feed
|
||||
* FIX: mod_rss inverval to use the session inteval (audio problems on 30ms channels)
|
||||
* ADD: Path: support in mod_sofia on register
|
||||
* FIX: mod_shout record stream
|
||||
* ENHANCEMENT: mod_voicemail support for effective_caller_id_name/number
|
||||
* ADD: url encode/decode api calls
|
||||
* FIX: "nua()" in debug information in sofia instead of the real function name
|
||||
* FIX: better handling of sips: uris
|
||||
* FIX: don't seg when using more than SWITCH_MAX_CODECS and bump SWITCH_MAX_CODECS to 50 (we have more than 30 in tree) (MODFORM-10)
|
||||
* ADD: mod_yaml
|
||||
* FIX: segfault on freeswitch startup if installed directories are removed
|
||||
* FIX: segfault when intercept with inbound_late_negotiation=true set
|
||||
* FIX: dont flood logs with eavesdrop messages (MODAPP-101)
|
||||
* FIX: don't destroy a codec that has not been created (MODAPP-101)
|
||||
* ENHANCEMENT: allows the "eavesdrop_group" variable to contain several groups, comma separated. (MODAPP-101)
|
||||
* FIX: cross compile (FSBUILD-53)
|
||||
* FIX: add header that Nuaunce considers mandatory (MODASRTTS-5)
|
||||
* ADD: write locks to the core and a function to unregister event bindings (adds better ability to unload modules)
|
||||
* ENHANCEMENT: make modules unbind events and un-reserve subclasses on module unload
|
||||
* ADD: removable xml hook bindings
|
||||
* ADD: EventConsumer object to embedded languages so you can make event handlers
|
||||
* FIX: sending CN with supress-cng true
|
||||
* FIX: segfault in the event system when trying to remove NULL event
|
||||
* ADD: flags to turn off srtp auth and rtp auto adj (FSCORE-149 && MODENDP-115)
|
||||
* FIX: use lighter math and avoid infinite loop in port allocator (FSCORE-148)
|
||||
* ENHANCEMENT: let conference pin entry start during prompt (MODAPP-111)
|
||||
* ADD: mod_pocketsphinx
|
||||
* FIX: Misuse of SQLRowCount, issues with MSSQL (MODAPP-105)
|
||||
* FIX: segfaults in mod_python with dtmf callback
|
||||
* ENHANCEMENT: mod_conference auto-record parameter (MODAPP-112)
|
||||
* ENHANCEMENT: reload support to many modules
|
||||
* FIX: mod_sofia add replaces to supported header
|
||||
* ENHANCEMENT: add args callback to sleep so you can process dtmf and events while "sleeping"
|
||||
* ADD: mod_flite
|
||||
* ENHANCEMENT: switch_xml converted back to c code and support double globs on windows
|
||||
* ENHANCEMENT: mod_sofia support for adding and removing gateways without restarting profiles
|
||||
* ADD: extract contact header info into A channel when unhandled 3xx response is received (MODENDP-116)
|
||||
* FIX: outbound event_socket + late negotiation
|
||||
* ADD: copy_xml_cdr variable
|
||||
* ADD: silence_stream (like tone_stream but silent)
|
||||
* ADD: module_exists api call
|
||||
* ADD: emailer implementation for windows
|
||||
* ADD: wait_for_silence application
|
||||
* FIX: no error message generated if OS is unable to load a module ( due to dependency/installation issues )
|
||||
* FIX: segfault in media bugs
|
||||
* FIX: acl lists not correctly matching all ip adresses
|
||||
* FIX: mod_spidermonkey exit() does not stop script when called from the hangup callback (return "exit" from the callback)
|
||||
* FIX: mod_syslog works again
|
||||
* FIX: crash on terminal resize
|
||||
* FIX: audio problems on big endian
|
||||
* ENHANCEMENT: Disable multiple registrations on a per-device basis (MODENDP-117)
|
||||
* ADD: fifo_consumer_exit_key variable (MODAPP-100)
|
||||
* ADD: cidr based user auth in mod_sofia
|
||||
* ADD: uuid_send_dtmf fsapi command (MODAPP-114)
|
||||
* ADD: server registration fiels to sip_registration database (MODENDP-118)
|
||||
* FIX: use a variable, realm or to host to find gateway when it's not obvious (handles challenged REFER)
|
||||
* ADD: timeout to curl run in javascript
|
||||
* ADD: voicemail_inject fsapi command
|
||||
* ADD: reboot option for sip phones to flush_inboud_reg sofia profile api command
|
||||
* FIX: add small padding to end of mp3 to avoid cut off mp3 recording
|
||||
* FIX: patch multiple SDP connection lines in sdp for proxy media mode (MODENDP-109)
|
||||
* FIX: don't parse ringback variable in proxy situations
|
||||
* ADD: per call vm recording ext with vm_message_ext variable
|
||||
* ADD: sip_bye_h prefix to add headers to bye
|
||||
* ENHANCEMENT: more interfaces available in show fsapi command
|
||||
* FIX: don't leak in buffers on realloc fail
|
||||
* FIX: fail out of a conference call if write fails
|
||||
* ADD: auto ip-change detection
|
||||
* ADD: mod_snom
|
||||
* FIX: mod_sofia don't send sipfrag on transfer to cisco so they don't hang up the call
|
||||
|
||||
-- Mike Jerris <mike@jerris.com> Thu, 24 Jul 2008 07:00:00 -0500
|
||||
|
||||
freeswitch (1.0.1~trunk) unstable; urgency=low
|
||||
|
||||
* Updated revision number
|
||||
* Fixed init problem reported by Jay Binks (FSSCRIPTS-1)
|
||||
* Added a patch to the debian build system add more features (thanks to Hadley Rich) (FSBUILD-45)
|
||||
- Added en-us-callie sounds and music on hold packages
|
||||
- Added recommends and suggests
|
||||
- Added mod_say_es and mod_say_nl
|
||||
- Updated descriptions
|
||||
- Added mod_cdr_csv
|
||||
* Fixed typos and some errors in the previous patch.
|
||||
* Modified monit script. Now it should work.
|
||||
* The debian build system now bootstrap automagically if it's necessary and all scripts are in place.
|
||||
|
||||
-- Massimo Cetra <devel@navynet.it> Sun, 6 Jul 2008 16:30:00 +0100
|
||||
|
||||
freeswitch (1.0.0-1) unstable; urgency=low
|
||||
|
||||
* Enhanced sofia sip nat handling
|
||||
* Many fixes found by Klockwork (www.klocwork.com)
|
||||
* Added disable_app_log variable
|
||||
* Fixed mod_local_stream with rates on windows
|
||||
* Fixed finding of files in rate dirs on windows
|
||||
* Fixed memory corruption from sofia_contact function
|
||||
* Added sofia profile param NDLB-received-in-nat-reg-contact
|
||||
* Added sofia profile param aggressive-nat-detection
|
||||
* Fixed video sip calls in proxy media mode
|
||||
* Added bridge_terminate_key var
|
||||
* Update xmlrpc-c lib to trunk revision from upstream, fix windows xmlrpc
|
||||
* Enhanced nat handling in proxy media mode in sip
|
||||
* Add progress media to timetable so you can calculate pdd
|
||||
* Fixed seg when using unicast on socket when call has no read_codec
|
||||
* Fixed missed log events on busy box
|
||||
* Added -bleg to intercept
|
||||
* Enhance configure detection of python
|
||||
* Fixed build on solaris and freebsd for several modules
|
||||
* Added param "vm-email-only" to make voicemail sent by email only (previously default behavior)
|
||||
* Added param "vm-mailto-notify" to allow sending a notification email
|
||||
* Fixed mod_java build
|
||||
* Fixed mwi failures for some devices that don't subscribe
|
||||
* Removed fsapi functions (killchan, transfer, session_displace, reject)
|
||||
* Removed fsapi functions (session_record, broadcast, hold, media)
|
||||
* Many updates to sofia-sip library including over 100 fixes
|
||||
|
||||
-- Michael Jerris <mike@jerris.com> Tue, 27 May 2008 01:30:00 -0400
|
||||
|
||||
freeswitch (1.0~rc6-1) unstable; urgency=low
|
||||
|
||||
* Changed to not allow pass_2833 on transcoded calls
|
||||
(it never worked, now it will tell you)
|
||||
* Enhanced sofia sip nat handling
|
||||
* Fix libedit build on solaris
|
||||
* Fix session timers in mod_sofia
|
||||
* Fix conference fire-call
|
||||
* Change: add var_event down into the endpoints so chans
|
||||
with no parents can still pass options
|
||||
* Added enable-post-var param to xml_rpc
|
||||
* Fix mod_lua build on solaris
|
||||
* Many fixes found by Klockwork (www.klocwork.com)
|
||||
* Add unregister event in mod_sofia
|
||||
* Enhance python configure detection
|
||||
* Add vm_boxcount api func
|
||||
* Fixed att_xfer issue
|
||||
* Fix sip now includes the Allow-Events header in more places
|
||||
|
||||
-- Michael Jerris <mike@jerris.com> Tue, 13 May 2008 02:01:00 -0400
|
||||
|
||||
freeswitch (1.0~rc5-1) unstable; urgency=low
|
||||
|
||||
* Changed internal state names to avoid confusion
|
||||
Fixed video negotiation
|
||||
Enhanced accuracy of windows timer
|
||||
Fixed mod_ldap build
|
||||
Added dialplan and context to sql table for channels
|
||||
Multiple fixes to mod_lua and mod_perl
|
||||
Fixed logic bug in fifo causing segfault
|
||||
internal changes to sip stack so we can remove a hash redundant to the stack
|
||||
Fixed multiple memory leaks in mod_sofia
|
||||
Fixed event fetch segfault on sip subscribe
|
||||
Fixed segfault on timer rollover in sofia on 64bit
|
||||
Fixed audio timing issues in mod_portaudio
|
||||
Changed names of sip profiles in default config to avoid confusion
|
||||
Fixed memory usage leak-like behavior when playing files requiring resampling
|
||||
Removed some unused api's
|
||||
Fix rtp timeout when playing moh
|
||||
Removed some un-needed libraries and files from tree
|
||||
Fixed multiple issues in sip stack including multiple segfaults
|
||||
Added support for sip transfers on bypass_media and proxy_media calls
|
||||
Added say application
|
||||
Fixed --disable-debug configure option
|
||||
Enhanced switch_cpp wrapper (and perl, python, lua, java)
|
||||
Fixed segfault on inavalid stun response
|
||||
Fixed configure help output
|
||||
Fixed segfault on mp3 playback
|
||||
Fixed assert on invalid sdp (missing m= line)
|
||||
Added configurable windows service name
|
||||
Fixed proxy mode call transition to non proxy call
|
||||
Fixed solaris build of voipcodecs
|
||||
Fixed sofia seg when call failure edge case
|
||||
|
||||
-- Michael Jerris <mike@jerris.com> Tue, 13 May 2008 02:01:00 -0400
|
||||
|
||||
freeswitch (1.0~8327) unstable; urgency=low
|
||||
|
||||
* Adding perl and lua separate packages
|
||||
* Adding mod_voipcodecs
|
||||
|
||||
-- root <root@fs.navynet.it> Tue, 6 May 2008 09:46:26 +0000
|
||||
|
||||
freeswitch (1.0~rc4-1) unstable; urgency=low
|
||||
* Add tab completion in cli
|
||||
Add "inline" dialplan
|
||||
Fixed segfault in enum
|
||||
Enhance enum to fork dial equal priority entries
|
||||
Added auto-reload to enum
|
||||
Fixed odbc bug is mod_sofia presence handling
|
||||
Add presence for conference and dial an eavesdrop
|
||||
Fix stack overflow segfault when recursively parking calls
|
||||
Fixed race is sofia registration handling
|
||||
Enhance sofia registration, unregister on keep-alive OPTIONS failure
|
||||
Added internal routing loop detection/avoidance
|
||||
Fixed race in bgapi in event socket
|
||||
Fixed vars to execute apps before bridge "bridge_pre_execute_aleg_app" and "bridge_pre_execute_bleg_app"
|
||||
Fixed re-setting sound prefix to no prefix after a pharse
|
||||
Enhanced setting of bracket vars from originate so they show in the CHANNEL_ORIGINATE event
|
||||
Add "enable-timer" and "enable-100rel" options to turn off default behaviors in sofia
|
||||
Add originate_timeout to originate vars
|
||||
Fixed hanging channels in mod_portaudio
|
||||
Added auto time sync on vps migration to different hardware
|
||||
Fixed seg on transfer when both legs are not sip
|
||||
Added configurable dtmf duration defaults
|
||||
Enhanced voicemail, allow interruption of hello message
|
||||
Fixed voicemail to not light up light on saved messages
|
||||
Enhance mod_amr honor disable dtx in fmtp (MODCODEC-3)
|
||||
Fixed bootstrap to install automake dependencies so you can use tarball without same version of automake installed
|
||||
Fixed MODLANG-56 (bad audio on originate and javascript streamFile)
|
||||
Added hold/unhold dialplan apps
|
||||
Enhanced sofia error checking to outlaw 0.0.0.0 in sofia ip params
|
||||
Backport fixes from sofia-sip tree
|
||||
Fixed MSVC build
|
||||
Fixed segfault on sip SUBSCRIBE with Expires: 0
|
||||
Added mod_say_zh
|
||||
Added --with-pyton and --with-pyton-config configure options
|
||||
Added mod_lua
|
||||
Enhanced switch_cpp wrapper in core and normalized interfaces for perl, python, lua, and java
|
||||
Fixed multiple issues in cpp wrapper and the languages perl, python, lua and java
|
||||
Added back mod_perl
|
||||
Added sofia gateway option ping to adjust options ping frequency
|
||||
Added .net event socket lib to contrib
|
||||
Fixed passing of exact response codes of sip across a bridge
|
||||
Added mod_reference, reference endpoint module
|
||||
Enhanced build so you can now make commented out modules using "make mod_name"
|
||||
|
||||
-- Michael Jerris <mike@jerris.com> Wed, 23 Apr 2008 12:58:00 -0400
|
||||
|
||||
freeswitch (1.0~rc3-1) unstable; urgency=low
|
||||
* Enhance xml menu system
|
||||
fixes upstream from sofia-sip library
|
||||
Enhance mod_fifo
|
||||
added close method to ODBC spidermonkey class
|
||||
Fix multiple bugs in the cpp wrapper used in mod_java and mod_python
|
||||
Fix hung sip channel issue using respond app or on re-invite with bypass media after 1xx or 2xx responses
|
||||
|
||||
-- Michael Jerris <mike@jerris.com> Wed, 9 Apr 2008 12:58:22 -0400
|
||||
|
||||
freeswitch (1.0~rc2-1) unstable; urgency=low
|
||||
* Fixed speex protocol negotiation issues (8k vs 16k)
|
||||
Fixed mod_iax race conditions
|
||||
Fixed ptime negotiation issues when re-packetizing
|
||||
Added ip based acl lists
|
||||
*
|
||||
-- Michael Jerris <mike@jerris.com> Wed, 9 Apr 2008 12:58:22 -0400
|
||||
|
||||
freeswitch (1.0~rc1-1) unstable; urgency=low
|
||||
* loads of fixes
|
||||
new cdr-csv module
|
||||
new spidermonkey-curl module
|
||||
|
||||
-- Michal Bielicki <michal.bielicki@voiceworks.pl> Mon, 14 Jan 2008 23:37:04 +0100
|
||||
|
||||
freeswitch (1.0~beta3-1) unstable; urgency=low
|
||||
|
||||
* Additional scripts for changing the user to freeswitch
|
||||
Added Startup Scripts
|
||||
Monit integration
|
||||
Settings file for integration into init
|
||||
init.d file
|
||||
added user freeswitch to own and run all off freeswitch
|
||||
cleaned up config file control
|
||||
new upstream release
|
||||
split off codec pakcages
|
||||
split off spidermonkey packages
|
||||
|
||||
-- Michal Bielicki <michal.bielicki@voiceworks.pl> Tue, 27 Nov 2007 13:20:21 +0100
|
||||
|
||||
freeswitch (1.0~beta2-1) unstable; urgency=low
|
||||
|
||||
* New upstream release
|
||||
|
||||
-- Paul van Genderen <paulvg@member.fsf.org> Wed, 17 Oct 2007 19:32:09 +0200
|
||||
|
||||
freeswitch (1.0~beta1-1) unstable; urgency=low
|
||||
|
||||
* New packages.
|
||||
|
||||
-- Robert McQueen <robot101@debian.org> Sun, 12 Nov 2006 17:32:23 -0500
|
||||
-- Travis Cross <tc@traviscross.com> Sat, 05 May 2012 07:10:14 +0000
|
||||
|
2
debian/compat
vendored
2
debian/compat
vendored
@ -1 +1 @@
|
||||
7
|
||||
8
|
||||
|
279
debian/control
vendored
279
debian/control
vendored
@ -1,279 +0,0 @@
|
||||
Source: freeswitch
|
||||
Section: comm
|
||||
Priority: extra
|
||||
Maintainer: FreeSWITCH developers <freeswitch-dev@lists.freeswitch.org>
|
||||
Uploaders: Michal Bielicki <michal.bielicki@seventhsignal.pl>, Gabriel Gunderson <gabe@gundy.org>, William King <quentusrex@gmail.com>, Mathieu Parent <sathieu@debian.org>
|
||||
Build-Depends: debhelper (>= 7), wget, automake (>=1.9), autoconf, libtool,
|
||||
unixodbc-dev, libasound2-dev, libcurl3-openssl-dev|libcurl4-openssl-dev,
|
||||
libssl-dev, ncurses-dev, libogg-dev, libvorbis-dev, libperl-dev, libgdbm-dev,
|
||||
libdb-dev, libgnutls-dev, libtiff4-dev, python-dev, libx11-dev, uuid-dev,
|
||||
libc6-dev (>= 2), bison, gawk
|
||||
Homepage: http://freeswitch.org/
|
||||
Standards-Version: 3.9.3
|
||||
Vcs-Git: git://git.freeswitch.org/freeswitch.git
|
||||
Vcs-Browser: http://fisheye.freeswitch.org/browse/freeswitch.git
|
||||
|
||||
Package: freeswitch
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
||||
Recommends: freeswitch-lang-en
|
||||
Suggests: freeswitch-spidermonkey, freeswitch-lua, freeswitch-perl,
|
||||
freeswitch-sounds-music-8000, monit, openssl
|
||||
Description: open source telephony platform
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This is the main package that includes the FreeSWITCH daemon and most modules.
|
||||
|
||||
Package: freeswitch-dbg
|
||||
Section: debug
|
||||
Architecture: any
|
||||
Depends: ${misc:Depends}, freeswitch (= ${binary:Version})
|
||||
Description: debugging symbols for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package includes the debugging symbols useful for debugging FreeSWITCH.
|
||||
The debugging symbols are used for execution tracing and core dump analysis.
|
||||
|
||||
Package: freeswitch-dev
|
||||
Section: libdevel
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: development libraries and header files for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the include files used if you wish to compile a package
|
||||
which require FreeSWITCH's source file headers.
|
||||
|
||||
Package: freeswitch-spidermonkey
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: Javascript engine for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_spidermonkey language module.
|
||||
|
||||
Package: freeswitch-perl
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: Perl engine for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_perl language module.
|
||||
|
||||
Package: freeswitch-lua
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: Lua engine for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_lua language module.
|
||||
|
||||
Package: freeswitch-python
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: Python engine for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_python language module.
|
||||
|
||||
Package: freeswitch-codec-passthru-g7231
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: pass through g723.1 codec support for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_g723_1 codec module.
|
||||
|
||||
Package: freeswitch-codec-passthru-amr
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: pass through AMR codec support for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_amr codec module.
|
||||
|
||||
Package: freeswitch-codec-passthru-amrwb
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: pass through AMRWB codec support for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_amrwb codec module.
|
||||
|
||||
|
||||
Package: freeswitch-codec-passthru-g729
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: pass through g729 codec support for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_g729 codec module.
|
||||
|
||||
Package: freeswitch-lang-en
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Recommends: freeswitch-sounds-en-us-callie-8000
|
||||
Suggests: freeswitch-sounds-en-us-callie-16000, freeswitch-sounds-en-us-callie-32000,
|
||||
freeswitch-sounds-en-us-callie-48000
|
||||
Description: English language files for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_say_en module and available language
|
||||
configuration files.
|
||||
|
||||
Package: freeswitch-lang-de
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: German language files for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_say_de module and available language
|
||||
configuration files.
|
||||
|
||||
Package: freeswitch-lang-fr
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: French language files for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_say_fr module and available language
|
||||
configuration files.
|
||||
|
||||
Package: freeswitch-lang-it
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: Italian language files for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_say_it module and available language
|
||||
configuration files.
|
||||
|
||||
Package: freeswitch-lang-es
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: Spanish language files for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_say_es module and available language
|
||||
configuration files.
|
||||
|
||||
Package: freeswitch-lang-nl
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: Dutch language files for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_say_nl module and available language
|
||||
configuration files.
|
||||
|
||||
Package: freeswitch-lang-ru
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Recommends: freeswitch-sounds-ru-ru-elena-8000
|
||||
Suggests: freeswitch-sounds-ru-ru-elena-16000, freeswitch-sounds-ru-ru-elena-32000,
|
||||
freeswitch-sounds-ru-ru-elena-48000
|
||||
Description: Russian language files for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_say_ru module and available language
|
||||
configuration files.
|
||||
|
||||
Package: freeswitch-lang-he
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: Hebrew language files for FreeSWITCH
|
||||
FreeSWITCH is an open source telephony platform designed to facilitate the
|
||||
creation of voice and chat driven products scaling from a soft-phone up to a
|
||||
soft-switch. It can be used as a simple switching engine, a PBX, a media
|
||||
gateway or a media server to host IVR applications using simple scripts or XML
|
||||
to control the callflow.
|
||||
.
|
||||
This package contains the mod_say_he module and available language
|
||||
configuration files.
|
||||
|
||||
Package: freeswitch-freetdm
|
||||
Architecture: any
|
||||
Depends: ${shlibs:Depends}, ${misc:Depends}, freeswitch
|
||||
Description: FreeTDM is a signaling and board API abstraction used mainly by the
|
||||
FreeSWITCH project to place calls in TDM and analog telephony circuits. The library
|
||||
was previously named "OpenZAP". Sangoma has worked along with the FreeSWITCH
|
||||
developers in this library so Sangoma's customers can also use it to do custom
|
||||
development. The library is still under heavy development but the overall API
|
||||
does not change often. The intention of the library is to present a consistent
|
||||
API for different telephony signaling stacks and board I/O APIs. FreeTDM can
|
||||
either be used as a standalone API or along with FreeSWITCH as an endpoint
|
||||
(mod_freetdm). If you want to use it as a part of FreeSWITCH remember following
|
||||
the FreeSWITCH configuration section.
|
||||
This package contains all the freetdm modules and libs and submodules
|
661
debian/control-modules
vendored
Normal file
661
debian/control-modules
vendored
Normal file
@ -0,0 +1,661 @@
|
||||
# -*- mode:debian-control -*-
|
||||
##### Author: Travis Cross <tc@traviscross.com>
|
||||
|
||||
## mod/applications
|
||||
|
||||
Module: applications/mod_abstraction
|
||||
Description: Abstraction layer for APIs
|
||||
This module provides a way to create new API functions via regex
|
||||
rewriting.
|
||||
|
||||
Module: applications/mod_avmd
|
||||
Description: Advanced voicemail detection
|
||||
This module attempts to determine when a voicemail system has
|
||||
answered the call.
|
||||
|
||||
Module: applications/mod_blacklist
|
||||
Description: Blacklist helper
|
||||
This module provides tools to blacklist callers.
|
||||
|
||||
Module: applications/mod_callcenter
|
||||
Description: Call center
|
||||
This module implements Automated Call Distribution (ACD) queues.
|
||||
|
||||
Module: applications/mod_cidlookup
|
||||
Description: Caller ID name lookup
|
||||
This module provides an API for querying caller ID name and location
|
||||
data.
|
||||
|
||||
Module: applications/mod_cluechoo
|
||||
Description: Clue Choo
|
||||
This demo module renders a Clue Choo train on the FreeSWITCH console.
|
||||
|
||||
Module: applications/mod_commands
|
||||
Description: Command module
|
||||
This module provides miscellaneous API commands.
|
||||
|
||||
Module: applications/mod_conference
|
||||
Description: Conference
|
||||
This module provides multi-party conferencing.
|
||||
|
||||
Module: applications/mod_curl
|
||||
Description: cURL
|
||||
This module provides an API for making HTTP requests with cURL.
|
||||
|
||||
Module: applications/mod_db
|
||||
Description: DB
|
||||
This module implements simple db API, group support, and limit db
|
||||
backend.
|
||||
|
||||
Module: applications/mod_directory
|
||||
Description: Dial by name directory
|
||||
This module implements a dial-by-name directory IVR.
|
||||
|
||||
Module: applications/mod_distributor
|
||||
Description: Load distributor
|
||||
This module implements a mechanism for performing load balancing.
|
||||
|
||||
Module: applications/mod_dptools
|
||||
Description: Dialplan tools
|
||||
This module implements basic dialplan tools.
|
||||
|
||||
Module: applications/mod_easyroute
|
||||
Description: Easyroute
|
||||
This module does destination lookup based on DID.
|
||||
|
||||
Module: applications/mod_enum
|
||||
Description: ENUM
|
||||
This module implements ENUM support.
|
||||
|
||||
Module: applications/mod_esf
|
||||
Description: Multicast support
|
||||
This module adds multi-cast support.
|
||||
|
||||
Module: applications/mod_esl
|
||||
Description: Single ESL
|
||||
This module adds an API for generating one-off ESL requests.
|
||||
|
||||
Module: applications/mod_expr
|
||||
Description: Expr
|
||||
This module adds expr support for expression evaluation.
|
||||
|
||||
Module: applications/mod_fax
|
||||
Description: Fax
|
||||
This module adds fax support provided by Steve Underwood's SpanDSP.
|
||||
|
||||
Module: applications/mod_fifo
|
||||
Description: FIFO
|
||||
This module adds a first-in first-out queue system.
|
||||
|
||||
Module: applications/mod_fsk
|
||||
Description: Frequency-shift keying
|
||||
This module adds frequency-shift keying support which can be used to
|
||||
send and receive caller ID.
|
||||
|
||||
Module: applications/mod_fsv
|
||||
Description: FSV
|
||||
This module provides dialplan applications for recording and playing
|
||||
FSV videos.
|
||||
|
||||
Module: applications/mod_hash
|
||||
Description: Hash
|
||||
This module provides a hash API, a key-value in-memory datastore.
|
||||
|
||||
Module: applications/mod_httapi
|
||||
Description: HT-TAPI Hypertext Telephony API
|
||||
This module provides an API for controlling the switch by responding
|
||||
to HTTP requests.
|
||||
|
||||
Module: applications/mod_http_cache
|
||||
Description: HTTP GET with caching
|
||||
This module provides an API for making HTTP GET requests where the
|
||||
result is cached.
|
||||
|
||||
Module: applications/mod_ladspa
|
||||
Description: LADSPA
|
||||
This module provides an API for accessing LADSPA plugins.
|
||||
Build-Depends: ladspa-sdk
|
||||
Suggests: tap-plugins, swh-plugins, autotalent
|
||||
|
||||
Module: applications/mod_lcr
|
||||
Description: LCR
|
||||
This module adds a facility for least-cost routing.
|
||||
|
||||
Module: applications/mod_limit
|
||||
Description: Limit compatibility module
|
||||
This module provides a backward-compatible interface to the DB limit
|
||||
system.
|
||||
|
||||
Module: applications/mod_memcache
|
||||
Description: Memcache
|
||||
This module provides an interface to memcache servers.
|
||||
|
||||
Module: applications/mod_mongo
|
||||
Description: MongoDB
|
||||
This module provides an interface to MongoDB.
|
||||
Build-Depends: scons, libboost-dev, libboost-system-dev,
|
||||
libboost-date-time-dev, libboost-thread-dev, libboost-filesystem-dev
|
||||
|
||||
Module: applications/mod_mp4
|
||||
Section: contrib/comm
|
||||
Description: MP4 video support
|
||||
This module adds support for MP4 video playback.
|
||||
Build-Depends: libmp4v2-dev
|
||||
|
||||
Module: applications/mod_nibblebill
|
||||
Description: Nibblebill
|
||||
This module allows for real-time accounting of a cash balance and
|
||||
using that information for call routing.
|
||||
|
||||
Module: applications/mod_osp
|
||||
Description: Open Settlement Protocol
|
||||
This module adds support for the Open Settlement Protocol (OSP).
|
||||
Build-Depends: libosptk3-dev
|
||||
|
||||
Module: applications/mod_rad_auth
|
||||
Description: RADIUS AA
|
||||
This module implements RADIUS Authentication and Authorization.
|
||||
|
||||
Module: applications/mod_random
|
||||
Description: Entropy extraction
|
||||
This module extracts entropy from FreeSWITCH and feeds it into
|
||||
/dev/random.
|
||||
|
||||
Module: applications/mod_redis
|
||||
Description: Redis limit backend
|
||||
This module provides a mechanism to use Redis as a backend data
|
||||
store.
|
||||
|
||||
Module: applications/mod_rss
|
||||
Description: RSS browser
|
||||
This module provides an RSS browser.
|
||||
|
||||
Module: applications/mod_skel
|
||||
Description: Framework demo module
|
||||
This module demonstrates how to build an add-on module.
|
||||
|
||||
Module: applications/mod_sms
|
||||
Description: Astract SMS
|
||||
This module provides an abstract facility for interfacing with SMS
|
||||
systems.
|
||||
|
||||
Module: applications/mod_snapshot
|
||||
Description: Snapshot
|
||||
This module can record a sliding window of audio and take snapshots
|
||||
to disk.
|
||||
|
||||
Module: applications/mod_snipe_hunt
|
||||
Description: Snipe hunt
|
||||
This is a framework demo module.
|
||||
|
||||
Module: applications/mod_snom
|
||||
Description: SNOM specific features
|
||||
This module implements features specific to SNOM phones.
|
||||
|
||||
Module: applications/mod_soundtouch
|
||||
Description: Soundtouch
|
||||
This module implements example media bugs.
|
||||
|
||||
Module: applications/mod_spandsp
|
||||
Description: SpanDSP
|
||||
This module implements spandsp fax, dsp, and codec functionality.
|
||||
|
||||
Module: applications/mod_spy
|
||||
Description: UserSpy
|
||||
This module adds the ability to monitor the audio of a channel.
|
||||
|
||||
Module: applications/mod_stress
|
||||
Description: Voice stress detection
|
||||
This module attempts to detect voice stress on an audio channel.
|
||||
|
||||
Module: applications/mod_valet_parking
|
||||
Description: Valet parking
|
||||
This module implements the valet call parking strategy.
|
||||
|
||||
Module: applications/mod_vmd
|
||||
Description: Voicemail detection
|
||||
This module detects voicemail beeps at any frequency in O(1) time.
|
||||
|
||||
Module: applications/mod_voicemail
|
||||
Description: Voicemail
|
||||
This module provides a voicemail system.
|
||||
|
||||
Module: applications/mod_voicemail_ivr
|
||||
Description: Voicemail IVR
|
||||
This module provides an extensible voicemail IVR system.
|
||||
|
||||
## mod/asr_tts
|
||||
|
||||
Module: asr_tts/mod_cepstral
|
||||
Description: mod_cepstral
|
||||
Adds mod_cepstral.
|
||||
|
||||
Module: asr_tts/mod_flite
|
||||
Description: mod_flite
|
||||
Adds mod_flite.
|
||||
|
||||
Module: asr_tts/mod_pocketsphinx
|
||||
Description: mod_pocketsphinx
|
||||
Adds mod_pocketsphinx.
|
||||
|
||||
Module: asr_tts/mod_tts_commandline
|
||||
Description: mod_tts_commandline
|
||||
Adds mod_tts_commandline.
|
||||
|
||||
Module: asr_tts/mod_unimrcp
|
||||
Description: mod_unimrcp
|
||||
Adds mod_unimrcp.
|
||||
|
||||
## mod/codecs
|
||||
|
||||
Module: codecs/mod_amr
|
||||
Description: mod_amr
|
||||
Adds mod_amr.
|
||||
|
||||
Module: codecs/mod_amrwb
|
||||
Description: mod_amrwb
|
||||
Adds mod_amrwb.
|
||||
|
||||
Module: codecs/mod_bv
|
||||
Description: mod_bv
|
||||
Adds mod_bv.
|
||||
|
||||
Module: codecs/mod_celt
|
||||
Description: mod_celt
|
||||
Adds mod_celt.
|
||||
|
||||
Module: codecs/mod_codec2
|
||||
Description: mod_codec2
|
||||
Adds mod_codec2.
|
||||
|
||||
Module: codecs/mod_com_g729
|
||||
Description: mod_com_g729
|
||||
Adds mod_com_g729.
|
||||
|
||||
Module: codecs/mod_dahdi_codec
|
||||
Description: mod_dahdi_codec
|
||||
Adds mod_dahdi_codec.
|
||||
|
||||
Module: codecs/mod_g723_1
|
||||
Description: mod_g723_1
|
||||
Adds mod_g723_1.
|
||||
|
||||
Module: codecs/mod_g729
|
||||
Description: mod_g729
|
||||
Adds mod_g729.
|
||||
|
||||
Module: codecs/mod_h26x
|
||||
Description: mod_h26x
|
||||
Adds mod_h26x.
|
||||
|
||||
Module: codecs/mod_ilbc
|
||||
Section: non-free/comm
|
||||
Description: mod_ilbc
|
||||
Adds mod_ilbc.
|
||||
|
||||
Module: codecs/mod_isac
|
||||
Description: mod_isac
|
||||
Adds mod_isac.
|
||||
|
||||
Module: codecs/mod_mp4v
|
||||
Description: mod_mp4v
|
||||
Adds mod_mp4v.
|
||||
|
||||
Module: codecs/mod_opus
|
||||
Description: mod_opus
|
||||
Adds mod_opus.
|
||||
|
||||
Module: codecs/mod_sangoma_codec
|
||||
Description: mod_sangoma_codec
|
||||
Adds mod_sangoma_codec.
|
||||
|
||||
Module: codecs/mod_silk
|
||||
Description: mod_silk
|
||||
Adds mod_silk.
|
||||
|
||||
Module: codecs/mod_siren
|
||||
Section: non-free/comm
|
||||
Description: mod_siren
|
||||
Adds mod_siren.
|
||||
|
||||
Module: codecs/mod_skel_codec
|
||||
Description: mod_skel_codec
|
||||
Adds mod_skel_codec.
|
||||
|
||||
Module: codecs/mod_speex
|
||||
Description: mod_speex
|
||||
Adds mod_speex.
|
||||
Build-Depends: libogg-dev
|
||||
|
||||
Module: codecs/mod_theora
|
||||
Description: mod_theora
|
||||
Adds mod_theora.
|
||||
|
||||
Module: codecs/mod_voipcodecs
|
||||
Description: mod_voipcodecs
|
||||
Adds mod_voipcodecs.
|
||||
|
||||
## mod/dialplans
|
||||
|
||||
Module: dialplans/mod_dialplan_asterisk
|
||||
Description: mod_dialplan_asterisk
|
||||
Adds mod_dialplan_asterisk.
|
||||
|
||||
Module: dialplans/mod_dialplan_directory
|
||||
Description: mod_dialplan_directory
|
||||
Adds mod_dialplan_directory.
|
||||
|
||||
Module: dialplans/mod_dialplan_xml
|
||||
Description: mod_dialplan_xml
|
||||
Adds mod_dialplan_xml.
|
||||
|
||||
## mod/directories
|
||||
|
||||
Module: directories/mod_ldap
|
||||
Description: mod_ldap
|
||||
Adds mod_ldap.
|
||||
|
||||
## mod/endpoints
|
||||
|
||||
Module: endpoints/mod_alsa
|
||||
Description: mod_alsa
|
||||
Adds mod_alsa.
|
||||
Build-Depends: libasound2-dev
|
||||
|
||||
Module: endpoints/mod_dingaling
|
||||
Description: mod_dingaling
|
||||
Adds mod_dingaling.
|
||||
|
||||
Module: endpoints/mod_gsmopen
|
||||
Description: mod_gsmopen
|
||||
Adds mod_gsmopen.
|
||||
Build-Depends: libx11-dev
|
||||
|
||||
Module: endpoints/mod_h323
|
||||
Description: mod_h323
|
||||
Adds mod_h323.
|
||||
Build-Depends: libopenh323-dev, libpt-dev
|
||||
|
||||
Module: endpoints/mod_khomp
|
||||
Description: mod_khomp
|
||||
Adds mod_khomp.
|
||||
|
||||
Module: endpoints/mod_loopback
|
||||
Description: mod_loopback
|
||||
Adds mod_loopback.
|
||||
|
||||
Module: endpoints/mod_opal
|
||||
Description: mod_opal
|
||||
Adds mod_opal.
|
||||
|
||||
Module: endpoints/mod_portaudio
|
||||
Description: mod_portaudio
|
||||
Adds mod_portaudio.
|
||||
|
||||
Module: endpoints/mod_reference
|
||||
Description: mod_reference
|
||||
Adds mod_reference.
|
||||
|
||||
Module: endpoints/mod_rtmp
|
||||
Description: mod_rtmp
|
||||
Adds mod_rtmp.
|
||||
|
||||
Module: endpoints/mod_skinny
|
||||
Description: mod_skinny
|
||||
Adds mod_skinny.
|
||||
|
||||
Module: endpoints/mod_skypopen
|
||||
Description: mod_skypopen
|
||||
Adds mod_skypopen.
|
||||
Build-Depends: libx11-dev
|
||||
|
||||
Module: endpoints/mod_sofia
|
||||
Description: mod_sofia
|
||||
Adds mod_sofia.
|
||||
|
||||
Module: endpoints/mod_unicall
|
||||
Description: mod_unicall
|
||||
Adds mod_unicall.
|
||||
|
||||
## mod/event_handlers
|
||||
|
||||
Module: event_handlers/mod_cdr_csv
|
||||
Description: mod_cdr_csv
|
||||
Adds mod_cdr_csv.
|
||||
|
||||
Module: event_handlers/mod_cdr_mongodb
|
||||
Description: mod_cdr_mongodb
|
||||
Adds mod_cdr_mongodb.
|
||||
|
||||
Module: event_handlers/mod_cdr_pg_csv
|
||||
Description: mod_cdr_pg_csv
|
||||
Adds mod_cdr_pg_csv.
|
||||
Build-Depends: libpq-dev
|
||||
|
||||
Module: event_handlers/mod_cdr_sqlite
|
||||
Description: mod_cdr_sqlite
|
||||
Adds mod_cdr_sqlite.
|
||||
|
||||
Module: event_handlers/mod_erlang_event
|
||||
Description: mod_erlang_event
|
||||
Adds mod_erlang_event.
|
||||
Build-Depends: erlang-dev
|
||||
|
||||
Module: event_handlers/mod_event_multicast
|
||||
Description: mod_event_multicast
|
||||
Adds mod_event_multicast.
|
||||
Build-Depends: libssl-dev
|
||||
|
||||
Module: event_handlers/mod_event_socket
|
||||
Description: mod_event_socket
|
||||
Adds mod_event_socket.
|
||||
|
||||
Module: event_handlers/mod_event_test
|
||||
Description: mod_event_test
|
||||
Adds mod_event_test.
|
||||
|
||||
Module: event_handlers/mod_event_zmq
|
||||
Description: mod_event_zmq
|
||||
Adds mod_event_zmq.
|
||||
|
||||
Module: event_handlers/mod_json_cdr
|
||||
Description: mod_json_cdr
|
||||
Adds mod_json_cdr.
|
||||
|
||||
Module: event_handlers/mod_radius_cdr
|
||||
Description: mod_radius_cdr
|
||||
Adds mod_radius_cdr.
|
||||
|
||||
Module: event_handlers/mod_snmp
|
||||
Description: mod_snmp
|
||||
Adds mod_snmp.
|
||||
Build-Depends: libsnmp-dev
|
||||
|
||||
## mod/formats
|
||||
|
||||
Module: formats/mod_local_stream
|
||||
Description: mod_local_stream
|
||||
Adds mod_local_stream.
|
||||
|
||||
Module: formats/mod_native_file
|
||||
Description: mod_native_file
|
||||
Adds mod_native_file.
|
||||
|
||||
Module: formats/mod_portaudio_stream
|
||||
Description: mod_portaudio_stream
|
||||
Adds mod_portaudio_stream.
|
||||
|
||||
Module: formats/mod_shell_stream
|
||||
Description: mod_shell_stream
|
||||
Adds mod_shell_stream.
|
||||
|
||||
Module: formats/mod_shout
|
||||
Description: mod_shout
|
||||
Adds mod_shout.
|
||||
Build-Depends: libogg-dev, libvorbis-dev
|
||||
|
||||
Module: formats/mod_sndfile
|
||||
Description: mod_sndfile
|
||||
Adds mod_sndfile.
|
||||
|
||||
Module: formats/mod_tone_stream
|
||||
Description: mod_tone_stream
|
||||
Adds mod_tone_stream.
|
||||
|
||||
Module: formats/mod_vlc
|
||||
Description: VLC streaming
|
||||
This module provides VLC streaming.
|
||||
Build-Depends: libvlc-dev (>= 2.0.0)
|
||||
Distro-Conflicts: squeeze
|
||||
|
||||
## mod/languages
|
||||
|
||||
Module: languages/mod_java
|
||||
Description: mod_java
|
||||
Adds mod_java.
|
||||
Build-Depends: default-jdk, gcj-jdk
|
||||
|
||||
Module: languages/mod_lua
|
||||
Description: mod_lua
|
||||
Adds mod_lua.
|
||||
|
||||
Module: languages/mod_managed
|
||||
Description: mod_managed
|
||||
Adds mod_managed.
|
||||
Build-Depends: libmono-2.0-dev, mono-gmcs
|
||||
|
||||
Module: languages/mod_perl
|
||||
Description: mod_perl
|
||||
Adds mod_perl.
|
||||
Build-Depends: libperl-dev
|
||||
|
||||
Module: languages/mod_python
|
||||
Description: mod_python
|
||||
Adds mod_python.
|
||||
Build-Depends: python-dev
|
||||
|
||||
Module: languages/mod_spidermonkey
|
||||
Description: mod_spidermonkey
|
||||
Adds mod_spidermonkey.
|
||||
Build-Depends: unixodbc-dev
|
||||
|
||||
Module: languages/mod_yaml
|
||||
Description: mod_yaml
|
||||
Adds mod_yaml.
|
||||
Build-Depends: libyaml-dev
|
||||
|
||||
## mod/loggers
|
||||
|
||||
Module: loggers/mod_console
|
||||
Description: mod_console
|
||||
Adds mod_console.
|
||||
|
||||
Module: loggers/mod_logfile
|
||||
Description: mod_logfile
|
||||
Adds mod_logfile.
|
||||
|
||||
Module: loggers/mod_syslog
|
||||
Description: mod_syslog
|
||||
Adds mod_syslog.
|
||||
|
||||
## mod/say
|
||||
|
||||
Module: say/mod_say_de
|
||||
Description: mod_say_de
|
||||
Adds mod_say_de.
|
||||
|
||||
Module: say/mod_say_en
|
||||
Description: mod_say_en
|
||||
Adds mod_say_en.
|
||||
|
||||
Module: say/mod_say_es
|
||||
Description: mod_say_es
|
||||
Adds mod_say_es.
|
||||
|
||||
Module: say/mod_say_fa
|
||||
Description: mod_say_fa
|
||||
Adds mod_say_fa.
|
||||
|
||||
Module: say/mod_say_fr
|
||||
Description: mod_say_fr
|
||||
Adds mod_say_fr.
|
||||
|
||||
Module: say/mod_say_he
|
||||
Description: mod_say_he
|
||||
Adds mod_say_he.
|
||||
|
||||
Module: say/mod_say_hr
|
||||
Description: mod_say_hr
|
||||
Adds mod_say_hr.
|
||||
|
||||
Module: say/mod_say_hu
|
||||
Description: mod_say_hu
|
||||
Adds mod_say_hu.
|
||||
|
||||
Module: say/mod_say_it
|
||||
Description: mod_say_it
|
||||
Adds mod_say_it.
|
||||
|
||||
Module: say/mod_say_ja
|
||||
Description: mod_say_ja
|
||||
Adds mod_say_ja.
|
||||
|
||||
Module: say/mod_say_nl
|
||||
Description: mod_say_nl
|
||||
Adds mod_say_nl.
|
||||
|
||||
Module: say/mod_say_pt
|
||||
Description: mod_say_pt
|
||||
Adds mod_say_pt.
|
||||
|
||||
Module: say/mod_say_ru
|
||||
Description: mod_say_ru
|
||||
Adds mod_say_ru.
|
||||
|
||||
Module: say/mod_say_th
|
||||
Description: mod_say_th
|
||||
Adds mod_say_th.
|
||||
|
||||
Module: say/mod_say_zh
|
||||
Description: mod_say_zh
|
||||
Adds mod_say_zh.
|
||||
|
||||
## mod/sdk
|
||||
|
||||
Module: sdk/autotools
|
||||
Description: autotools
|
||||
Adds autotools.
|
||||
|
||||
## mod/timers
|
||||
|
||||
Module: timers/mod_posix_timer
|
||||
Description: mod_posix_timer
|
||||
Adds mod_posix_timer.
|
||||
|
||||
Module: timers/mod_timerfd
|
||||
Description: mod_timerfd
|
||||
Adds mod_timerfd.
|
||||
|
||||
## mod/xml_int
|
||||
|
||||
Module: xml_int/mod_xml_cdr
|
||||
Description: mod_xml_cdr
|
||||
Adds mod_xml_cdr.
|
||||
|
||||
Module: xml_int/mod_xml_curl
|
||||
Description: mod_xml_curl
|
||||
Adds mod_xml_curl.
|
||||
|
||||
Module: xml_int/mod_xml_ldap
|
||||
Description: mod_xml_ldap
|
||||
Adds mod_xml_ldap.
|
||||
Build-Depends: libsasl2-dev
|
||||
|
||||
Module: xml_int/mod_xml_rpc
|
||||
Description: mod_xml_rpc
|
||||
Adds mod_xml_rpc.
|
||||
|
||||
Module: xml_int/mod_xml_scgi
|
||||
Description: mod_xml_scgi
|
||||
Adds mod_xml_scgi.
|
||||
|
1549
debian/copyright
vendored
1549
debian/copyright
vendored
File diff suppressed because it is too large
Load Diff
5
debian/dirs
vendored
5
debian/dirs
vendored
@ -1,5 +0,0 @@
|
||||
opt/freeswitch/log
|
||||
opt/freeswitch/db
|
||||
opt/freeswitch/bin/scripts
|
||||
etc/monit
|
||||
|
0
libs/tiff-3.8.2/m4/.empty → debian/docs
vendored
0
libs/tiff-3.8.2/m4/.empty → debian/docs
vendored
1
debian/freeswitch-codec-passthru-amr.install
vendored
1
debian/freeswitch-codec-passthru-amr.install
vendored
@ -1 +0,0 @@
|
||||
opt/freeswitch/mod/mod_amr.so*
|
@ -1 +0,0 @@
|
||||
opt/freeswitch/mod/mod_amrwb.so*
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user