Configuring Avaya Voice Portal with Avaya

Avaya Solution & Interoperability Test Lab
Configuring Avaya Voice Portal with Avaya Communication
Manager and Designing a Sample Speech Application using
Avaya Dialog Designer – Issue 1.0
Abstract
These Application Notes describe how to configure the Avaya Voice Portal (VP) with Avaya
Communication Manager. Avaya VP is a Web based and speech enabled interactive voice
response system that can accept both traditional DTMF touch tone inputs and prerecorded
audio files for output, and VoiceXML2.0 compliant speech applications to guide callers
through call flows. In the configuration described in these Application Notes, the Avaya VP
system is comprised of a Voice Portal Management System (VPMS) server, a Media
Processing Platform (MPP) server and Avaya Dialog Designer. The reference network of the
Voice Portal System described in these Application Notes consists of an Application server,
IBM WebSphere Voice server, and Microsoft SQL server. These Application Notes also
provides a guide for building a sample speech application using the Avaya Dialog Designer.
This sample speech application was used to verify the Avaya VP integration of external
servers and speech applications which includes an Application server, IBM Automated Speech
Recognition and Text to Speech applications, and Microsoft SQL server.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
1 of 54
VoicePortal.doc
1. Introduction
These Application Notes describe how to configure the Avaya Voice Portal with Avaya
Communication Manager. Avaya VP is a Web based and speech enabled interactive voice
response system that can accept both traditional user DTMF touch tone inputs and prerecorded
audio files for output, and VoiceXML2.0 compliant speech applications to guide callers through
call flows. The Avaya Voice Portal system is comprised of a Voice Portal Management System
(VPMS) server, a Media Processing Platform (MPP) server and Avaya Dialog Designer (DD).
The IBM Automated Speech Recognition (ASR) application and the IBM Text-to-Speech (TTS)
application were installed on the IBM WebSphere Voice Server and used as the VoiceXML2.0
compliant speech applications for speech recognition and to convert ASCII text into synthesized
speech. The Application server is a web based and J2EE compliant server. The Application
server consists of an Apache Tomcat application and user created speech applications. The
speech applications are deployed to the Application server and invoked by the MPP. In these
Application Notes, the Application server is installed on a Windows based platform.
Media Processing Platform (MPP) – The MPP communicates with Avaya Communication
Manager to provide voice response media service. The function of the MPP is described as
follows:
• Uses H.323, SIP, and RTP protocols to communicate with Avaya Communication
Manager. In these Application Notes, the MPP uses the H.323 protocol to register IP
Softphones to the C-LAN located in the G650 Media Gateway. The IP Softphones are
mapped to the sample speech application.
• Runs the Avaya VoiceXML browser to interpret VoiceXML2.0 compliant speech
applications.
• Provides proxy interfaces to communicate with the TTS servers and ASR servers. The MPP
uses Media Resource Control Protocol (MRCP) to control ASR and TTS servers. The MPP
sends utterances to the IBM ASR application for speech recognition processing. To prompt
text to a caller, the MPP sends the ASCII text to the IBM TTS application for converting
text into synthesized speech.
Voice Portal Management System (VPMS) manages the MPPs and provides a web interface
for administering Avaya Voice Portal (VP). The VPMS is the centralized management system
for the Avaya VP.
The Dialog Designer (DD) is used to develop a speech application. The speech application is a
set of servlets, grammars and artifacts needed to generate VoiceXML at run-time. The sample
speech application consists of a set of nodes which includes prompt and grammar files, and data
nodes. The sample speech application call flow prompts the caller to enter a four digit account
number. Built-in DTMF grammar accepts touch tone inputs while voice grammar is used to
accept voice inputs. The data node, configured to run database query operations, then sends the
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
2 of 54
VoicePortal.doc
account number to the Microsoft SQL database server to query the account balance. When the
query is returned, the announce node plays to the caller the account number and account balance.
1.1. Avaya Voice Portal Call Flow
After the sample speech application is deployed to the Apache Tomcat server, use the VPMS
web configuration to administer the sample application with a hunt group number. When the
number is called, Avaya Communication Manager directs the call to the MPP to start the call.
The call flow is described as follows:
1. A customer originates a call to find the account balance.
2. The call is received at the Avaya Communication Manager.
3. Avaya Communication Manager directs the call to the MPP via the H.323 VoIP
connection.
4. The MPP maps the DNIS number to a speech application.
5. The MPP Voice Browser connects to the Application server where speech applications
reside.
6. The MPP receives the VoiceXML page from the Application server and interacts with the
caller.
7. The MPP sends the text prompt “Please enter your account number” to the TTS
application which converts the text into synthesized speech and sends the synthesized
speech to the MPP.
8. The MPP prompts the caller with the synthesized speech.
9. The caller responds verbally with a 4-digit account number.
10. The MPP sends the caller’s verbal response to the ASR application.
11. The ASR application returns the account number to the MPP.
12. The MPP sends the account number to the Application server for database query.
13. The Application server connects to the SQL server and queries for the account balance.
14. The SQL server returns the account balance to the Application server.
15. The Application server returns the account balance to the MPP.
16. The MPP sends the account number and account balance to the TTS application.
17. The TTS application returns the synthesized speech to the MPP.
18. The MPP responds to the caller with the synthesized speech saying the account number
and account balance.
19. Call ends.
1.2. Test Configuration
Figure 1 illustrates the Retail Store Headquarters configuration used to verify these Application
Notes. The Headquarters consists of a pair of Avaya S8710 Media Servers with one Avaya G650
Media Gateway. All IP telephones register to Avaya Communication Manager running on the
Avaya S8710 Media Servers at the Headquarters.
Note: These Application Notes assume that the Retail Store Headquarters depicted in Figure 1 is
already in place, as well as Avaya Communication Manager, Avaya Media Gateway, routers,
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
3 of 54
VoicePortal.doc
switches, Microsoft SQL server, Application server, and IBM WebSphere Voice server. Please
consult the appropriate documentation listed in the References section of this document for more
information on setting up these components. The focus of these Application Notes is to configure
the Voice Portal system with Avaya Communication Manager.
Name
C-LAN
MedPro
VPMS
MPP
Dialog Designer
Application server
IBM TTS/ASR
Microsoft SQL server
IP Address
30.1.1.4
30.1.1.5
30.1.1.12
30.1.1.11
30.1.1.16
30.1.1.15
30.1.1.14
30.1.1.17
Table 1 - IP Address Assignment
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
4 of 54
VoicePortal.doc
Figure 1: Network Configuration Diagram
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
5 of 54
VoicePortal.doc
2. Equipment and Software Validated
The following equipment and software were used for the sample configuration provided:
Equipment
Avaya Communication Manager
Avaya S8710 Media Server
Avaya G650 Media gateway
IPSI (TN2312BP)
C-LAN (TN799DP)
MEDPRO (TN2302AP)
Avaya Voice Portal
ƒ Voice Portal Management System
ƒ Media Processing Platform
ƒ Dialog Designer
Application Server
ƒ Apache Tomcat
ƒ J2sdk
ƒ Microsoft Windows 2003 Server
IBM WebSphere Voice Server
ƒ ASR
ƒ TTS
ƒ Microsoft Windows 2003 Server
Microsoft SQL Server
Software
3.1.2 (R013x.01.2.632.1)
HW 10 FW 031
HW 017 FW 017
HW 20 FW 112
3.0.1.0.2303
3.0.1.0-2308
3.0.20
5.0.28
1_4_1_02
SP 1
WAS 5.1
WVS 5.1.3
WVS 5.1.3
SP 1
SQL 2000 SP 4
Table 2 - Equipment and Version Validated
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
6 of 54
VoicePortal.doc
3. Configure Avaya Communication Manager
This section details the administration on Avaya Communication Manager that must be
performed for the Avaya Voice Portal. The following commands are issued at the Avaya System
Access Terminal (SAT) on the S8710 Media Server at the Headquarters location.
Step
1.
Description
Issue the display system-parameters customer-options command and verify that there are
sufficient IP_API_A licenses. If not contact an authorized Avaya account representative to
obtain these licenses.
display system-parameters customer-options
MAXIMUM IP REGISTRATIONS BY PRODUCT ID
Product ID
IP_API_A
IP_API_B
IP_API_C
IP_Agent
IP_IR_A
IP_Phone
IP_ROMax
IP_Soft
IP_eCons
2.
Rel.
:
:
:
:
:
:
:
:
:
:
Limit
2400
2400
2400
2400
2400
12000
12000
2400
20
0
Page
10 of
11
Used
0
0
0
0
0
9
0
0
0
0
Issue the change system-parameters features command. On Page 6 of the systemparameters features form, set 7434ND to “y”.
change system-parameters features
Page
6 of 17
FEATURE-RELATED SYSTEM PARAMETERS
Public Network Trunks on Conference Call: 5
Auto Start? n
Conference Parties with Public Network Trunks: 6
Auto Hold? n
Conference Parties without Public Network Trunks: 6
Attendant Tone? y
Night Service Disconnect Timer (seconds): 180
Bridging Tone? n
Short Interdigit Timer (seconds): 3
Conference Tone? n
Unanswered DID Call Timer (seconds):
Intrusion Tone? n
Line Intercept Tone Timer (seconds): 30
Mode Code Interface? n
Long Hold Recall Timer (seconds): 0
Reset Shift Timer (seconds): 0
Station Call Transfer Recall Timer (seconds): 0
DID Busy Treatment: tone
Allow AAR/ARS Access from DID/DIOD?
Allow ANI Restriction on AAR/ARS?
Use Trunk COR for Outgoing Trunk Disconnect?
7405ND Numeric Terminal Display?
DISTINCTIVE AUDIBLE ALERTING
Internal: 1
External: 2
Priority:
Attendant Originated Calls:
WH; Reviewed:
SPOC 9/20/2006
y
n
n
n
7434ND? y
3
external
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
7 of 54
VoicePortal.doc
Step
3.
Description
Issue the change ip-codec-set 1 command. Enter the following values:
•
•
•
•
•
Audio codec: Enter “G.711MU”. The value administered here will be used in
Voice Portal configuration Section 4 Step 5.
Silence Suppression: Retain the default value “n”.
Frames Per Pkt: Enter “3”.
Packet Size (ms): Enter “30”.
Media Encryption: Voice Portal supports Media Encryption. Enter the value
based on the system requirement, for example “aea”.
change ip-codec-set 1
Page
1 of
2
IP Codec Set
Codec Set: 1
Audio
Codec
1: G.711MU
2:
3:
4:
5:
Silence
Suppression
n
Frames
Per Pkt
3
Packet
Size(ms)
30
Media Encryption
1: aea
2:
3:
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
8 of 54
VoicePortal.doc
Step
4.
Description
Issue the change ip-network-region <n> command, where <n> is a valid network region
number. On Page 1, set the Intra-region IP-IP Direct Audio, and Inter-region IP-IP
Direct Audio fields are set to “yes”.
change ip-network-region 1
Page
1 of
19
IP NETWORK REGION
Region: 1
Location: 1
Authoritative Domain:
Name: Retail-HQ
MEDIA PARAMETERS
Intra-region IP-IP Direct Audio: yes
Codec Set: 1
Inter-region IP-IP Direct Audio: yes
UDP Port Min: 5000
IP Audio Hairpinning? n
UDP Port Max: 5999
DIFFSERV/TOS PARAMETERS
RTCP Reporting Enabled? y
Call Control PHB Value: 46
RTCP MONITOR SERVER PARAMETERS
Audio PHB Value: 46
Use Default Server Parameters? y
Video PHB Value: 26
802.1P/Q PARAMETERS
Call Control 802.1p Priority: 6
Audio 802.1p Priority: 6
Video 802.1p Priority: 5
AUDIO RESOURCE RESERVATION PARAMETERS
H.323 IP ENDPOINTS
RSVP Enabled? n
H.323 Link Bounce Recovery? y
Idle Traffic Interval (sec): 20
Keep-Alive Interval (sec): 5
Keep-Alive Count: 5
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
9 of 54
VoicePortal.doc
Step
5.
Description
Issue the add station <n> command, where <n> is a valid unused station number, for
example 2220011. The station numbers correspond to the stations assigned to the VP ports
and will be used later in Section 4 Step 4. On Page 1, enter the following values:
•
•
•
•
•
•
•
Type: Enter station type “7434ND”.
Port: Enter “IP”.
Name: Enter a descriptive name.
Security Code: Enter a valid station security code.
Display Module: Enter “y”.
Display Language: Enter “english”.
IP Softphone: Enter “y”.
add station 2220011
Page
1 of
5
STATION
Extension:
Type:
Port:
Name:
2220011
7434ND
IP
Voice Portal 1
STATION OPTIONS
Loss Group:
Data Module?
Display Module?
Display Language:
Lock Messages? n
Security Code: *
Coverage Path 1:
Coverage Path 2:
Hunt-to Station:
2
n
y
english
BCC: 0
TN: 1
COR: 1
COS: 1
Personalized Ringing Pattern: 1
Message Lamp Ext: 2220011
Coverage Module? n
Media Complex Ext:
IP SoftPhone? y
IP Video Softphone? n
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
10 of 54
VoicePortal.doc
Step
Description
On Page 2, set the Multimedia Mode field to “enhanced”.
add station 2220011
Page
2 of
5
STATION
FEATURE OPTIONS
LWC Reception:
LWC Activation?
LWC Log External Calls?
CDR Privacy?
Redirect Notification?
Per Button Ring Control?
Bridged Call Alerting?
Active Station Ringing:
spe
y
n
n
y
n
n
single
H.320 Conversion? n
Service Link Mode: as-needed
Multimedia Mode: enhanced
MWI Served User Type:
AUDIX Name:
Auto Select Any Idle Appearance?
Coverage Msg Retrieval?
Auto Answer:
Data Restriction?
Idle Appearance Preference?
Bridged Idle Line Preference?
Restrict Last Appearance?
Conf/Trans on Primary Appearance?
n
y
none
n
n
n
y
n
Per Station CPN - Send Calling Number?
Display Client Redirection? n
Select Last Used Appearance? n
Coverage After Forwarding? s
Remote Softphone Emergency Calls: as-on-local Direct IP-IP Audio Connections? y
Emergency Location Ext: 2220011
Always Use? n
IP Audio Hairpinning? y
On Page 3, set items 1 and 2 of the BUTTON ASSIGNMENTS fields to “call-appr”.
add station 2220011
Page
3 of
5
STATION
SITE DATA
Room:
Jack:
Cable:
Floor:
Building:
ABBREVIATED DIALING
List1:
BUTTON ASSIGNMENTS
1: call-appr
2: call-appr
3:
4:
Headset?
Speaker?
Mounting:
Cord Length:
Set Color:
List2:
n
n
d
0
List3:
6:
7:
8:
9:
On Page 5, set item 1 of the DISPLAY BUTTON ASSIGNMENTS field to “normal”.
add station 2220011
Page
5 of
5
STATION
DISPLAY BUTTON ASSIGNMENTS
1: normal
2:
3:
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
11 of 54
VoicePortal.doc
Step
6.
Description
Repeat Step 5 as necessary to add additional stations 2220012 - 2220016.
7.
Issue the add hunt-group <n> command, where <n> is an unused hunt group number. On
Page 1, enter the following values and leave the rest with the default values.
•
•
•
Group Name: Enter a descriptive name.
Group Extension: Enter a valid group extension, for example 2220511.
ISDN/SIP Caller Display: Enter “grp-name”.
Add hunt-group 11
Page
1 of
60
HUNT GROUP
Group Number:
Group Name:
Group Extension:
Group Type:
TN:
COR:
Security Code:
ISDN/SIP Caller Display:
11
ACD? n
Account Balance
Queue? n
2220511
Vector? n
ucd-mia
Coverage Path:
1
Night Service Destination:
1
MM Early Answer? n
Local Agent Preference? n
grp-name
On Page 3, enter the Voice Portal station numbers in the Ext fields of the GROUP
MEMBER ASSIGNMENTS. The station numbers were administered in Step 5 - 6.
add hunt-group 11
Page
3 of 60
HUNT GROUP
Group Number: 11
Group Extension: 2220511
Group Type: ucd-mia
Member Range Allowed: 1 - 1500
Administered Members (min/max): 1
/6
Total Administered Members: 6
GROUP MEMBER ASSIGNMENTS
Ext
Name (24 characters)
Ext
Name (24 characters)
1: 2220011 VP ST 1
14:
2: 2220012 VP ST 2
15:
3: 2220013 VP ST 3
16:
4: 2220014 VP st 4
17:
5: 2220015 VP ST 5
18:
6: 2220016 VP ST 6
19:
7:
20:
8:
21:
9:
22:
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
12 of 54
VoicePortal.doc
Step
8.
Description
Select a C-LAN to be used in Section 4 Step 4 for Voice Portal H.323 provisioning. Issue
the display node-names ip command. Note the C-LAN IP address “30.1.1.4”.
display node-names ip
IP NODE NAMES
Name
C-LAN
G250-HQ1-lsp
HQ-VAL
MM-MAS
Medpro
RS1-IPO
RS2-G350
RS4-IPSO
default
procr
WH; Reviewed:
SPOC 9/20/2006
IP Address
30 .1 .1 .4
40 .1 .1 .1
30 .1 .1 .16
30 .1 .1 .9
30 .1 .1 .5
11 .1 .1 .1
22 .1 .1 .22
44 .1 .1 .1
0 .0 .0 .0
30 .1 .1 .1
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
13 of 54
VoicePortal.doc
4. Configure Avaya Voice Portal System
This section details the administration of the Avaya Voice Portal Management System (VPMS)
and the Media Processing Platform (MPP). It is assumed that the Avaya VPMS and MPP are
installed and have the appropriate license. Please refer to the Avaya Voice Portal Installation
Guide [2] for a description of these procedures. Avaya Voice Portal System is configured using
the web interface. The VPMS web interface is accessed by typing the following URL on a web
browser and then pressing Enter:
http://<hostname or IP address of VPMS server>:8080/VoicePortal
Step Description
Log in to VPMS using proper credentials.
1.
2.
In the left pane of the Voice Portal Management System, click on System Configuration Æ
Licensing. Verify that there are sufficient licenses for Telephony Ports, ASR Connections, and
TTS Connections. If not, contact an authorized Avaya account representative to obtain these
licenses.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
14 of 54
VoicePortal.doc
Step Description
In the left pane of the Voice Portal Management System, click on System Configuration Æ
3.
H.323 Connections. The H.323 Connections screen appears. Click Add.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
15 of 54
VoicePortal.doc
Step Description
The Add H.323 Connection screen appears. Enter the following values:
4.
• Name: Enter a descriptive name, for example “C-LAN-HQ”.
• GateKeeper Address: Enter the ip address of the C-LAN “30.1.1.4”. The C-LAN ip addess
can be found in Section 3 Step 8.
• GateKeeper Port: Use the default value.
• Media Encryption: Check “Yes”. This is administered in Section 3 Step 3.
• New Phone Number:
ƒ From: Enter the first station number “2220011” administered in Section 3 Step 5.
ƒ To: Enter the last station number “2220016” administered in Section 3 Step 6.
ƒ Password: Enter station password.
ƒ Check Use same password for all.
ƒ Click Add.
Scroll down to the bottom of the screen, and click Save.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
16 of 54
VoicePortal.doc
Step Description
In the left pane of the Voice Portal Management System, click on System Configuration Æ
5.
VoIP Settings. The VoIP Settings screen appears. Select “audio/basic” from the MPP Native
Format drop down list. This setting is equivalent to the codec setting “G711MU” on Avaya
Communication Manager administered in Section 3 Step 3. Retain the default values for all other
fields.
Click on Save.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
17 of 54
VoicePortal.doc
Step Description
In the left pane of the Voice Portal Management System, click on MPP Servers. The MPP
6.
Servers screen appears. Click Add.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
18 of 54
VoicePortal.doc
Step Description
The Add MPP Servers screen appears. Enter the following values:
7.
• Name: Enter a descriptive name, for example “mpps-hq”.
• Host Address: Enter the ip address of the MPP server, for example “30.1.1.11”.
Click Continue.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
19 of 54
VoicePortal.doc
Step Description
A new Add MPP Servers screen appears. In the Maximum Simultaneous Calls field, enter the
8.
maximum number of simultaneous calls. The valid number is in the range of 1 to 128. Retain the
default values for all other fields. Scroll down to the bottom of the screen and click Save.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
20 of 54
VoicePortal.doc
Step Description
In the left pane of the Voice Portal Management System, click on ASR Servers. The ASR
9.
Servers screen appears. Click Add.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
21 of 54
VoicePortal.doc
Step Description
The Add ASR Server screen appears. Enter the following values and retain the rest of the
10.
default values.
• Name: Enter a descriptive name, for example “VP-WVS”.
• Engine Type: Select “IBM WVS” from the Engine Type drop down list.
• Network Address: The ASR Engine is installed on the IBM WebSphere server. Enter the IP
address of the IBM WebSphere server address.
• Ports per MPP: Enter a valid number that a MPP can connect to on this ASR. The valid
numbers are 1 to 1000.
Click Save.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
22 of 54
VoicePortal.doc
Step Description
In the left pane of the Voice Portal Management System, click on TTS Servers. The TTS
11.
Servers screen appears. Click on Add. The Add TTS Server Screen appears. Enter the
following values and retain the rest of the default values.
• Name: Enter a descriptive name, for example “VP-WVS”.
• Engine Type: Select “IBM WVS” from the Engine Type drop down list.
• Network Address: The TTS Engine is installed on the IBM WebSphere server. Enter the IP
address of the IBM WebSphere server address.
• Ports per MPP: Enter a valid number that a MPP can connect to on this TTS. The valid
numbers are 1 to 1000.
Click Save.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
23 of 54
VoicePortal.doc
Step Description
In the left pane of the Voice Portal Management System, click on Applications. The
12.
Applications screen appears. Click Add.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
24 of 54
VoicePortal.doc
Step Description
The Add Application screen appears. Enter the following values:
13.
• Name: Enter a descriptive name.
• VoiceXML URI: Enter “http://<application server IP address>:8080/<application
name>/Start”, for example: “http://30.1.1.15:8080/BONStoreDriectory/Start”.
• Phone Number: Enter the hunt-group number added in Section 3, Step 7, and then click
Add.
Retain the rest of the default values. Scroll down to the bottom of the screen, and click Save.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
25 of 54
VoicePortal.doc
5. Design and Generate Speech Application
These Application Notes assume that the Dialog Designer (DD) depicted in Figure 1 is already
installed. Refer to [3] for detailed information about installation procedure. The DD was used to
develop and generate the speech application. The speech application is a set of servlets,
grammars and other artifacts which are needed to generate VoiceXML at run-time.
5.1. Develop the Speech Application
This section describes the steps necessary to design a sample application with a database
connector using the Dialog Designer. It is assumed that the Dialog Designer, Microsoft SQL
server and the Microsoft JDBC driver were already installed. In this sample application, the
database name “RetailStore” and the database table “consumerAccount” must be created before
the DD database connector configuration in Steps 6 and 7 can be performed.
Step Description
Launch the Dialog Designer. From the DD server, navigate to Start Æ Programs Æ Eclipse.
1.
The Speech - Eclipse Platform screen appears. In the Speech - Eclipse Platform window, click
FileÆ New Æ Speech Project.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
26 of 54
VoicePortal.doc
Step Description
The New Speech Project screen appears. Enter a descriptive project name, for example
2.
“BONStoreDirectory”. Check the Use default checkbox. Click Finish.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
27 of 54
VoicePortal.doc
Step Description
Add data source to the BONStoreDirectory project. In the Navigator view, click on
3.
BONStoreDirectory. In the popup window that appears, select Property followed by Dialog
Designer.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
28 of 54
VoicePortal.doc
Step Description
The Properties for BONStoreDirectory screen appears. Click the Data Sources tab.
4.
5.
The JDBC Data Sources appears. To add JDBC data source, click Add.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
29 of 54
VoicePortal.doc
Step Description
In the Create a new data source window, enter the following values.
6.
•
•
•
•
Name: Enter a descriptive name, for example “BONStoreDirectory”.
Driver Class Name: Select “com.microsoft.jdbc.sqlserver.SQLServerDriver” from the
pull-down menu.
Connection URL: Select
“jdbc:microsoft:sqlserver://30.1.1.17:1433;databasename=RetailStore” from the pulldown menu. The IP address 30.1.1.17 is the IP address of the SQL server. 1433 is the
port number used by the JDBC connector. RetailStore is the database name in the SQL
server. Note: The database name must be already created in the SQL server prior to
performing this step.
Username/Password: Enter the proper credentials.
Click OK.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
30 of 54
VoicePortal.doc
Step Description
Add a new database operation. In the Navigator view, click connectivity Æ dboperations Æ
7.
New Æ Database Operation File. The Database Operation screen appears. Enter the
following values, and then click Next.
•
•
•
•
•
Data Source name: Select “BONStoreDirectory” from the drop down list. The name
BONStoreDirectory was administered in Step 6.
Operation: Select “Query” from the drop down list.
Table name: Select “dbo.consumerAccount” from the drop down list. Note: The
database table must be already created in the SQL server prior to performing this step.
File name: Enter a descriptive name, for example “myAccBalance”.
Mark the Open file for editing checkbox.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
31 of 54
VoicePortal.doc
Step Description
The Map columns to variables screen appears. To create new variables, check the accNumber
8.
and accBalance, and New variable checkboxes. Note: The accPwd column exists in the
database table, but is not required in this database operation. Click Finish.
9.
The myAccBalance.dbop screen appears in the workspace. This database query operation uses
account number to query the account balance. To set the query condition, click the Predicate
tab.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
32 of 54
VoicePortal.doc
Step Description
The Predicate tab appears. The following steps, add a Simple database operation for account
10.
balance query.
• From the palette, under Condition, select Simple, and place it in the workspace.
• Under Operand, select Column, and place it in the workspace under Simple. In the Avaya
Properties view, for the Name property, select “accNumber” from the Value drop down
list.
• Under Operator, select Comparison, and place it in the workspace under Column. In the
Avaya Properties view, for the Name property, select “=” from the Value drop down list.
• Under Operand, select Variable, and place it in the workspace under Comparison. In the
Avaya Properties view, for the Name property, select “accNumber” from the Value drop
down list.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
33 of 54
VoicePortal.doc
Step Description
To create a new prompt file, click File Æ New Æ Prompt File from Dialog Designer main
11.
screen. The Prompts screen appears. In the Available Projects click on project name
BONStoreDirectory. Enter a descriptive name in the File Name field, for example
“MenuPrompt”. Click Finish.
12.
The MenuPrompt.prompt [english] appears in the work place. In the Avaya Properties view,
TTS Text Property, enter the text in the Value field, for example “Welcome to the BON’s
Store Information Center”. To save the change, click on the Save tab.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
34 of 54
VoicePortal.doc
Step Description
Repeat Steps 11 - 12 to add additional text to speech prompts as necessary. For the testing,
13.
“NoMatch”, “NoInput”, “echoAccount” and “returnBalanceVoice” text prompt files were
created.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
35 of 54
VoicePortal.doc
Step Description
To create a DTMF grammar file, click File Æ New Æ Grammar File from Dialog Designer
14.
main screen. The Grammars screen appears. Enter a descriptive name in the File Name field,
for example “account_DTMF_input”. Select “Built-in” from the Style drop down list and
retain the default values for other fields. Click on Finish. This file will be used in Step 15.
A new page appears. Select “digits” from the Type drop down list. The sample configuration
uses a 4 digit account number. To set the grammar file to accept exactly 4 digits, enter “4” in the
Exact Length field. Click the Save icon.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
36 of 54
VoicePortal.doc
Step Description
To create a static grammar file, click File Æ New Æ Grammar File. The New Grammars
15.
Create a Grammar screen appears. Enter a descriptive name in the File Name field. Retain the
default values for other fields. Click Finish.
A EnterAccountNumber.gram [english] appears in the workspace. Edit the grammar file to
collect any digits from 0 to 9. Enter digit 0 in row one of column 1 and then click the Enter
to add/delete a grammar row/column appear. Click
button. The icons
the add rows icon to add additional 9 rows. In column 1 of the new rows enter a unique digit
from 1 to 9. To collect 4 responses in a single grammar file, click add columns icon to add
additional 3 columns. In row one of columns 2 to 4, enter “%1”. Click the Save icon.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
37 of 54
VoicePortal.doc
Step Description
Add a Prompt & Collect node to the call flow. In the Navigator view, click
16.
BONStoreDirectory Æ flow Æ main.flow. The work flow editor palette and the
BONStoreDirectory [main.flow] workspace appear. From the palette, select the Prompt &
Collect node and place it in the workspace. In the Avaya Properties view, edit the name in the
Value field to a descriptive name, for example “PromptAndCollectAcctNum”. Click Save.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
38 of 54
VoicePortal.doc
Step Description
Repeat Step16 to place the following nodes in the workspace.
17.
• Select the Data node and place it in the workspace. In the Avaya Properties view, Name
Property, enter a descriptive name in the Value field, for example “remChar”.
• Select the Data node and place it in the workspace. In the Avaya Properties view, Name
Property, enter a descriptive name in the Value field, for example “getBalance”.
• Select the Announce node and place it in the workspace. In the Avaya Properties view,
Name Property, enter a descriptive name in the Value field, for example “annBalance”.
• Select the Return node and place it in the workspace. In the Avaya Properties view, Name
Property, enter a descriptive name in the Value field, for example “End”.
Click the Save icon.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
39 of 54
VoicePortal.doc
Step Description
In the workspace as shown in Step 17, double click on the PromptAndCollectAcctNum node.
18.
The PromptAndCollectAcctNum appears in the workspace. Click on each item to enter the
following values in the Avaya Properties:
• Input: Enter a descriptive name, for example “account_inp”.
• Prompt: Enter the name of the prompt file, “MenuPrompt”, created in Step 12.
• Grammar: To collect caller touch tone inputs, enter the name of the grammar file, created in
•
•
•
•
Step 14, “account_DTMF_input”.
Grammar: For caller utterance, enter the name of the grammar file, created in Step 15,
“accNumberVoice”.
No Input: Enter the name of the prompt file name “NoInput” created in Step 13.
No Match: Enter the name of the prompt file name “NoMatch” created in Step 13.
Next: Leave it “not set”.
Click the Save icon.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
40 of 54
VoicePortal.doc
Step Description
The remChar node is needed to remove space characters added by the speech to text conversion.
19.
In the workspace as shown in Step 17, click on the remChar node. In the Avaya Properties
view, enter the following values:
•
•
•
•
Type: Select “Remove Character” from the drop down list.
Destination Variable: Select “accNumber” from the drop down list.
Source Variable: Select “account_inp” from the drop down list.
Source Variable Field: Select “value” from the drop down list.
Click the Save icon.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
41 of 54
VoicePortal.doc
Step Description
The getData node is used to send the database query to the SQL server. In the workspace as
20.
shown in Step 17, double click on the getData node. The getData appears in the workspace.
Click on Database Operation. In the Avaya Properties, Property Name, enter the database
name “myAccBalance” in the Value field. The database operation was created in Steps 7 - 10.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
42 of 54
VoicePortal.doc
Step Description
When the database query is returned, the annBalance node is used to read the account number
21.
and account balance back to the caller. The Prompt files were created in Step13.
• In the workspace as shown in Step 17, double click on the annBalance node. The
annBalance node appears.
• From the palette, click on Prompt and place it in the workspace. In the Avaya Properties,
enter the name of the Prompt file “echoAccount” in the Value field.
• Repeat the previous bullet item to add the second Prompt file with the file name
“returnBalanceVoice”.
Click the Save icon.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
43 of 54
VoicePortal.doc
Step Description
Use the following procedure to connect nodes in the call flow diagram.
22.
• In the palette, click on Connection, and click the outgoing connection point on the Start
node.
• Click the incoming connection point on PromptAndCollectAccNum node.
Repeat above steps to complete the call flow connection as shown below.
Click the Save icon.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
44 of 54
VoicePortal.doc
Step Description
To add a text variable in the echoAccount prompt file, open the echoAccount prompt file. Click
23.
on Text Variable and place it in the workspace. In the Avaya Properties, enter the following
values:
• Variable: Enter “account_inp”. The account_inp is created in Step 18.
• Variable Field: Select “value” from the drop down list.
• Format: Enter “text”.
24.
Similarly, using Step 23 as a guide adds the text variable accNumber in the
returnBalanceVoice prompt file.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
45 of 54
VoicePortal.doc
5.2. Export Project
This section describes the steps necessary to export the sample speech application project from
the Avaya Dialog Designer (DD) to the Application server. It is assumed that the WebLM and
the DD license file are already installed on the Apache Tomcat server.
Step Description
In the Navigator view, right click on BONStoreDirectory Æ Export. The Export screen
1.
appears. In the Select an export destination list, select “Export Dialog Designer Project”, and
then click Next.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
46 of 54
VoicePortal.doc
Step Description
The Export Dialog Designer project screen appears. Select the project name from the Available
2.
Projects, for example “BONStoreDirectory”. To save the export project, enter the path and
directory name, for example “C:\tmp”, in the Destination Directory field. Click Next.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
47 of 54
VoicePortal.doc
Step Description
The Platform Details screen appears. Enter the following values:
3.
• Platform: Select “Voice Portal” from the drop down list.
• Servlet container: Select “Apache Tomcat” from the drop down list.
• License server URI: “Enter the following http:// <IP address of the WebLM server
>:8080/WebLM/LicenseServer”. Note: The DD license file is installed on this WebLM.
For example “http//:30.1.1.15:8080/WebLM/LicenseServer”.
• Grammar computability: From the drop down list, select the ASR server which will be used
to process the voice recognition. For example, the “IBM” is used in this configuration.
Retain the default values for all other fields.
Click Next.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
48 of 54
VoicePortal.doc
Step Description
The Options screen appears. For the testing, the JAR file is used to deploy the DD project class
4.
files. Verify that the Jar file is selected on the Options form. Retain the default values for all
other fields. Click Next.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
49 of 54
VoicePortal.doc
Step Description
The Configure web application descriptor screen appears, review the settings and click Finish
5.
to export the project.
6.
The resulting Speech Application must be copied to the Application server. To do this, perform
the following:
1. The DD creates a new BONStoreDirectory.war file under the C:\tmp directory which
was administered in Step 2.
2. Copy the BONStoreDirectory.war file to the Application server under “<Apache
Tomcat Home>/Webapps/”. Note: The <Apache Tomcat Home> is the path to the
Apache Tomcat home directory. The default <Apache Tomcat Home> path is:
“C:\Program Files\Apache Software Foundation\Tomcat 5.0”.
3. When the copy is done, restart the Tomcat server engine. The application is ready to run.
Use the VPMS Add Application page, described in Section 4, Steps12 and 13, to add the
sample application on the VP.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
50 of 54
VoicePortal.doc
6. Verification Steps
This section provides the tests that may be used to verify the proper VP configuration:
Step Description
Verify MPP stations register to the Avaya Communication Manager via the C-LAN.
1.
Issue the list registered-ip-stations command from the Avaya Communication Manager SAT to
verify the stations 2220011 – 2220016, administered in Section 3, Steps 5 and 6, are registered in
Avaya Communication Manager.
list registered-ip-stations
REGISTERED IP STATIONS
Station
Ext
301
2220011
2220012
2220013
2220014
2220015
2220016
2222000
2222001
3330010
3333001
WH; Reviewed:
SPOC 9/20/2006
Set
Type
4612
7434ND
7434ND
7434ND
7434ND
7434ND
7434ND
4625
4621
4620
4602+
Product
ID
IP_Phone
IP_API_A
IP_API_A
IP_API_A
IP_API_A
IP_API_A
IP_API_A
IP_Phone
IP_Phone
IP_Phone
IP_Phone
Prod
Rel
1.800
3. 0
3. 0
3. 0
3. 0
3. 0
3. 0
2.500
2.302
2.300
1.800
Station
IP Address
30.1.1.199
30.1.1.11
30.1.1.11
30.1.1.11
30.1.1.11
30.1.1.11
30.1.1.11
30.1.1.110
30.1.1.111
40.1.1.112
40.1.1.111
Net Orig
Rgn Port
1
1
1
1
1
1
1
1
1
1
1
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
Gatekeeper
IP Address
30.1.1.4
30.1.1.4
30.1.1.4
30.1.1.4
30.1.1.4
30.1.1.4
30.1.1.4
30.1.1.4
30.1.1.4
30.1.1.4
30.1.1.4
TCP
Skt
y
y
y
y
y
y
y
y
y
y
y
51 of 54
VoicePortal.doc
Step Description
From the VPMS, click on System Maintenance Æ System Monitor. Verify the status of the
2.
System Monitor as shown below:
•
•
•
•
Mode: Online
State : Running
Config: OK
Call Capacity: The number of stations displayed is the same as the number of stations
administered.
• Alarms: No alarms.
3.
Verify the initial TTS speech is heard.
Place a call to the hunt group number.
Verify the “Welcome to the BONStore’s account information center” and “Please enter your
account number” are heard.
4.
Verify touch tone input is successfully processed.
Place a call to the hunt group number. After prompted to enter the account number, press “2201”
on the touch tone key pad.
Verify the account number and account balance are heard.
5.
Verify voice input is successfully processed.
Place a call to the hunt group number. After prompted to enter the account number, say “2201”.
Verify the account number and account balance are heard.
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
52 of 54
VoicePortal.doc
Step Description
Verify “no input” is detected when caller does not enter the account number.
6.
Place a call to the hunt group and do not speak or press any touch tone key.
Verify “no input” is heard.
Verify “no match” is detected when caller enter less than 4 digits.
7.
Place a call to the hunt group and only say two digits.
Verify “no match” is heard.
8.
Verify MPP can recover from the C-LAN connection failure.
Disconnect C-LAN and reconnect C-LAN.
Verify after C-LAN is reconnected, all IP stations are re-registered.
Repeat Steps 3 - 5 to verify the call.
7. Conclusion
These Application Notes demonstrate how to provision the Avaya Voice Portal with Avaya
Communication Manager to interact with the IBM TTS and ASR applications. These
Application Notes also provides steps necessary to develop a sample speech application. The
sample application was used to verify the Voice Portal configuration.
8. Additional References
The following documents can be found at http://support.avaya.com:
[1] Administrator’s Guide for Avaya Communication Manager, Issue 2, May 2006; Doc ID:
03-300509
[2] “Administering Avaya Voice Portal 3.0.1 ”, April 2006
[3] “Avaya Dialog Designer Developer’s Guide ”, Issue 1, August 2005
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
53 of 54
VoicePortal.doc
©2006 Avaya Inc. All Rights Reserved.
Avaya and the Avaya Logo are trademarks of Avaya Inc. All trademarks identified by ® and ™
are registered trademarks or trademarks, respectively, of Avaya Inc. All other trademarks are the
property of their respective owners. The information provided in these Application Notes is
subject to change without notice. The configurations, technical data, and recommendations
provided in these Application Notes are believed to be accurate and dependable, but are
presented without express or implied warranty. Users are responsible for their application of any
products specified in these Application Notes.
Please e-mail any questions or comments pertaining to these Application Notes along with the
full title name and filename, located in the lower right corner, directly to the Avaya Solution &
Interoperability Test Lab at interoplabnotes@list.avaya.com
WH; Reviewed:
SPOC 9/20/2006
Solution & Interoperability Test Lab Application Notes
©2006 Avaya Inc. All Rights Reserved.
54 of 54
VoicePortal.doc