240 likes | 482 Views
Chapter Three, VoiceMail Pro Advanced Functions Module Two – Database and IVR. Module Introduction. This module provides participants details for VoiceMail Pro Integrated Voice Response (IVR) features including: Integration with 3 rd party database programs
E N D
Chapter Three,VoiceMail Pro Advanced FunctionsModule Two – Database and IVR
Module Introduction This module provides participants details for VoiceMail Pro Integrated Voice Response (IVR) features including: • Integration with 3rd party database programs • Using TTS functions with database interactions • Call Data Tagging • Troubleshooting?
Interactive Voice Response (IVR) overview With the IVR features of VoiceMail Pro custom automated systems can be created to allow customers to interact with business information. For example, • Account query systems • Order processing • Ticket purchasing • Reservation status • Front end system to a help / support desk
IVR overview - continued • IVR functions can be constructed using call flow actions using the standards based ActiveX data objects (ADO) interface. • Structured Query Language (SQL) scripts are used to read and write database information. • Information retrieved from a database can be assigned to any system or user defined variable for use at other points within the call flow.
Database pre-requisites • VoiceMail Pro database interaction is enabled with the Advanced Edition license. (the legacy VMPro Database Interface license may be used) • If the database being queried resides on the voicemail server, the speed of the query will be affected by the amount of memory available. Take into account the memory requirements of the database being queried. • The playback of voice prompts and the use of TTS requires the Windows Audio components to be present and enabled on the server PC. Enabling Windows Audio does not require the server PC to have a sound card installed.
Database types • The VoiceMail Pro software includes the Microsoft Data Access Components (MDAC) to access most third-party databases. • OLE DB (Object Linking and Embedding Database) is an API designed by Microsoft for accessing data without requiring access to the specific database engines such as Oracle, SQL Server or Sybase. OLE DB is part of the MDAC stack. • OLE DB is conceptually divided into two parts: • Consumers: applications that need access to the data • Providers: software component that implements the interface and provides the data to the consumer • The Microsoft Jet 4.0 OLE DB Provider is the default database engine for Microsoft Access
Database Demonstration • Create new database OR • Demonstrate existing database
Database Actions The following are the VoiceMail Pro actions that can be used to interact with databases: • Database Open – initiates a link to a database and authenticates the connection. If a database connection already exists, the existing link is closed in order to open a connection for this action • Database Execute – executes a SQL query to read or write data to an open database • Database Get Data – determines which data to use in the event multiple records are returned from the SQL query and provides an option if no data is returned • Database Close – closes the database connection, if a call terminates the Database Close action runs automatically
Database Open action • Click on the ellipsis of the Specific tab to open the Data Link Properties • Click on the Provider tab • Select the appropriate option for the database type • Click on Next >>
Database Open action - continued • Click on the ellipsis to select the database file or type in the name of the file including the full path • If required, enter the database login credentials: • User name • Password • Blank password • Allow Saving password • Click on Test Connection
Database Open action - continued • Access permissions • Read = read only • ReadWrite = read and write • Share Deny Read = neither read nor write access is denied to others • Share Deny Write = prevents others from opening in read mode • Share Exclusive = prevents others from opening in read/write mode • Write = write only • Click on Help for details of all option on the Advanced tab
Database Execute Clicking on the Specific tab of the Database Execute action invokes the SQL Wizard and confirms the information from the Database Open action (click on Next to continue)
Database Execute - continued The ‘Command to execute’ can be typed directly in the space provided on the Specific tab using the SQL query language. Ensure that any data included in the query matches the data type (number, integer or text) of the field being queried. For example, if $KEY is used to query a text field it should be enclosed by quotation marks (e.g. “$KEY”)
Database Execute - continued The SQL Wizard can be used to build the query through a series of menus with drop down boxes for tables, fields and relational operators (=, <>, <, >, <=, >=, Contains and Starts with). Multiple criteria can be entered in the query by using the logical functions “AND” and “OR”. The resulting SQL command for this query is: SELECT name FROM Student Where (custom_nr = $KEY)
Database Get Data The Database Get Data action is used to determine which records should be used from the results of the Database Execute action. The values returned are stored into the call flow’s $DBD variables.
Database system variables A set of six database variables ($DBD[0] to $DBD[5]) are used to store information extracted from the database query. Information is stored in the variables based on the order of the fields chosen in SELECT statement of the Database Execute action. • $DBD[0] = End_Date • $DBD[1] = Location • $DBD[2] = Start_Date • $DBD[3] = Title
Database Close The Database Close action will close the current database connection. If the database is open when a call terminates, then a Database Close action is run automatically. There are no configurable options for this action.
IVR call variable use There are 16 variables ($CP0 to $CP15) used to store call parameters for the duration of a call within a call flow. Values can be written into these variables using the Generic action “free format” command (e.g. CP0:$DBD[0])
IVR call variable use - continued The Select Generic command may be used to store database values as an alternative “free format” command (e.g. CP0:$DBD[0]) by using drop down selections.
IVR call variable use - continued The Speak Text action allows the stored Database variables and other Call variables to be spoken to the caller.
Call Data Tagging Values contained in call variables can be displayed on telephones using the Transfer or Assisted Transfer actions.
Condition Editor The Condition Editor Compare element is used examine the value of Call Variable to a fixed value or another Call Variable. The state (True or False) of the element is determined based on the following options: • Equal to: (Value A = Value B) • Not equal to: (A =! B) • Less than: (A < B) • Greater than: (A > B) • Less than or equal to: (A <= B) • Greater than or equal to: (A >= B)
Compare element and Data Tagging example This is an example of a call flow that retrieves data from a database, compares the results using the Test Condition action and routes the call based on the results of the action. For example, if the account balance is greater than or equal to 0, use TTS to speak the balance. If not, transfer the caller to the Collections hunt group with Call Data Tagging.
Troubleshooting Methodology • Record prompts at various locations to determine where call flow is failing • Check database for spaces in anything other than fields • Verify ports are available • Voicemail Ports • Data Channels • TTS ports • Use Debug View to capture a trace of a failing call flow