Examples
This is a xml code (<install_dir>/config/voicemail.xml) with the following procedure defined:
-
Play audio
-
Record audio
-
Play recorded audio
-
Copy file
-
Delete file
The following text gives an example of the Execute application type use:
Note: DTMF: ^(.*)#$
Path: /bin/ivr.sh
Param: %DTMF $1%
The rule will take any DTMF sequence ending with #, call the ivr.sh script and pass the DTMF number to it.
The script can do anything required validate against a database or whatever else.
Note: The vocemail.xml file contains information about Voicemail, Echo and Attendant. The order is of no importance here. Just account types are to be distinguished.
voicemail.xml File
This file includes data as set on both IVR and Services tabs. It is possible to set these data using IceWarp Server GUI or edit this file directly. To be able to do it, you need to know variables, formats , etc.:
profile type values:
VOICEMAIL - voicemail service that sends recorded messages via email with embedded MP3
ECHO - echo service ala Skype
AA - auto attendent service
%email% - email of the callee taken from To:
%alias% - alias of the callee
%domain% - domain of the callee
%time <timeformat>% - time of voicemail received using any syntax
%callee_email% - email of the callee taken from To:
%callee_alias% - alias of the callee
%callee_domain% - domain of the callee
%caller_email% - email of the caller taken from From:
%caller_alias% - alias of the caller
%caller_domain% - domain of the caller
%length% - call length of recorded message
time format:
Letter |
Date or Time Component |
Presentation |
Examples |
---|---|---|---|
G |
Era designator |
Text |
AD |
y |
Year |
Year |
1996; 96 |
M |
Month in year |
Month |
July; Jul; 07 |
w |
Week in year |
Number |
27 |
W |
Week in month |
Number |
2 |
D |
Day in year |
Number |
189 |
d |
Day in month |
Number |
10 |
F |
Day of week in month |
Number |
2 |
E |
Day in week |
Text |
Tuesday; Tue |
a |
am/pm marker |
Text |
PM |
H |
Hour in day (0-23) |
Number |
0 |
k |
Hour in day (1-24) |
Number |
24 |
K |
Hour in am/pm (0-11) |
Number |
0 |
h |
Hour in am/pm (1-12) |
Number |
12 |
m |
Minute in hour |
Number |
30 |
s |
Second in minute |
Number |
55 |
S |
Millisecond |
Number |
978 |
z |
Time zone |
General time zone |
Pacific Standard Time; PST; GMT-08:00 |
Z |
Time zone RFC 822 |
time zone |
-0800 |
Example:
"EEE, d MMM yyyy HH:mm:ss Z" = Wed, 4 Jul 2001 12:08:56 -0700
>maxcalltime tag values:
-1 - unlimited
0 - call is immediately stopped after playing audio file
<seconds> - otherwise specifies number of seconds after which call will be stopped
playaudiofile and playbyeaudiofile can be specified the settings area or in each profile
<proxy> Tag
In the case you do not want to use the default VoIP service port (5060), you can specify different ports for the Voicemail, Echo and Conference services either in GUI (VoIP - Services) or within the voicemail.xml file (<install_dir>/config/) - <proxy> tags for individual accounts/services.
The syntax is as usually - >IP:port.