Oracle® Beehive Administrator's Guide Release 1 (1.5) Part Number E14836-04 |
|
|
View PDF |
Note:
Oracle Beehive Voicemail functionality requires advanced configuration to enable. Some necessary Cisco configuration is not fully documented in this Guide. Please contact your Oracle support representative for assistance with deploying Oracle Beehive Voicemail.Oracle Beehive Voicemail is provided by the Voice Message Service. It enables a variety of functionality for Oracle Beehive users, including the ability to access and manage voice messages from a telephone or as audio files in the e-mail Inbox. Oracle Beehive Fax is provided by the Fax Message Service. This module describes how to set up and configure the necessary software components to enable the voicemail functionality. It contains the following sections:
See Also:
For more information on configuring the Voice Message Service, see "Managing the Voice Message Service"
For more information on configuring the Fax Service, see "Managing the Fax Message Service"
This section includes the following topics:
A Facility is an Oracle Beehive group, defined for a physical location that is connected to a single PBX. This concept allows all users at that facility to have common attributes and be treated in a common way. For example, a facility will set the default language for the voicemail users of that facility. Users may also have their own unique parameters as required.
Facilities are optional. You can set preferences and settings at the enterprise level, and those settings not specified at the facility level will default to the enterprise values. Facilities allow you the flexibility of having different settings at different physical locations, each with their own PBX.
An Auto Attendant is an automated call-answering and routing server, which presents a collection of menus that are created for individual phone numbers supported at a facility. The menus allow callers to be routed to the correct department or extension, or expose additional recorded information (such as street directions or operation hours), and the corporate directory.
Auto Attendants are optional. You can deploy Oracle Beehive voicemail functionality with or without the use of Auto Attendants. You can have one Auto Attendant for each facility, or one for the whole enterprise.
Oracle Beehive voicemail and automated attendant (AA) telephone user interface (TUI) use VoiceXML to present the TUI to the caller via a Cisco VoiceXML capable router. The Cisco router has a VoiceXML browser imbedded in the Cisco IOS operating system. VoiceXML is a W3C standards-based approach for voice applications and services, which leverages a Web-based development and deployment model instead of a proprietary telephony hardware and software approach. Since VoiceXML uses a Web based model, all the Oracle Beehive voice applications are executed on the server and only the VoiceXML and audio .wav files are served to the Cisco VoiceXML browser via HTTP or HTTPS.
Figure 11-1 shows an example deployment architecture linking Cisco Call Manager (CCM) hardware to Oracle Beehive.
Figure 11-1 Oracle Beehive Voicemail Centralized Deployment
This section contains the following topics:
In order to deploy Oracle Beehive voicemail, Cisco VoiceXML-capable hardware and Cisco IOS VXML software is required. The supported Cisco VXML routers are the 2800 and 3800 Series Internet Service Routers (ISR), and the AS5350XM/AS5400XM Universal gateways. These routers offer a VoiceXML featureset in the Cisco IOS operating system, to execute the Oracle Beehive voice applications.
Please refer to your Cisco account representative to determine the VXML browser software licensing required for your environment and hardware. Cisco Unified Call Manager 5.0 or greater is the only IP PBX that has been tested with Oracle Beehive voicemail redirection.
For an Oracle Beehive user to be active for voicemail, the user's UDS record must contain voice_principal
, voice_pin
, and tel:
(telephone scheme) address attributes. The voice principal and telephone scheme address must be numbers containing no special characters or spaces. See "Managing and Provisioning Oracle Beehive Users" for complete documentation on configuring the appropriate user record attributes. You can use the
command-line tool to add and modify preference profiles, users' voice properties, groups, and group properties.beectl
Voicemail configuration properties follow the Oracle Beehive model of property inheritance: Enterprise, Facility, and User. This allows you to group configuration properties. Enterprise properties apply to all voicemail users. Facility properties apply to the users defined in the UDS group that constitutes a voicemail facility. User properties are defined at the user level inside the user's UDS Voicemail Preference Profile. For example, the user property PreferedLocale will override the locale defined at the facility.
There are three types of preference properties:
Voicemail stores application configuration options in Oracle Beehive Preference Property Profiles. The enterprise properties for voicemail are stored in a Preference Profile called VoiceEnterprisePrefs. Before you can add or modify any voicemail properties, you must create the profile, by using the
command.beectl
add_voice_enterprise
Voicemail has the ability to define multiple facilities in order to decentralize the deployment of voicemail router resources in remote offices without having to run or administer multiple voicemail applications. A voicemail facility is a group of users and properties that share the same physical location and configuration information. You create voicemail facilities by using the
command.beectl
add_voice_facility
User properties are defined inside the user's voicemail profile. These properties can define the user's PreferredLocale
and ActiveGreetingType
.
To set a preference property for a user, first use the beectl list_preference_profiles
command to get the ID of the user's Voice preference set:
beectl> list_preference_profiles --consumer user=<userID> --entity_format id
Then, use the beectl add_preference_property
command to set the PreferredLocale
or ActiveGreetingType
as needed. For example, to set the PreferredLocale to en-us
:
beectl add_preference_property --set <Voice Preference Set ID> --name PreferredLocale --type string --value en-us
You must perform some configuration before Oracle Beehive voicemail functionality is enabled. At a minimum, you must configure the enterprise, and you optionally may configure one or more facilities. You must also ensure that all users who will use Oracle Beehive voicemail have required values for the relevant attributes in their user accounts.
If you want to enable the Message Waiting Indicator and graphical user interface features of your telephones, you must configure them. If you want to use an auto attendant to answer and forward calls, you must configure the auto attendant.
This section contains the following topics:
Table 11-1, "Voicemail Properties" lists the properties used by the voicemail Enterprise and voicemail Facilities. When configuring the voicemail Enterprise Preferences, or a facility's properties, refer to this table for a description and examples.
Inheritance Rules
In general, the hierarchy is Enterprise -> Facility -> User, such that property values set at the lowest level are used first, and if no value is set, the property value at the next-higher level is used. This general flow is not followed in some cases.
The following rules are applied for determining inheritance of property values:
UNDEFINED VALUES
When the Enterprise value is not defined, then the default value is used. When the default value is not defined, then the Facility's value, if defined, is used. When neither value is defined, then the application determines a value, which may cause undesirable results.
BOOLEAN
When the Enterprise value is true
, then the Facility's value, if set, is used. If not set, then true
is used. If the Enterprise value is false
, then all Facilities will use the value false
, even if specified at the Facility level.
INTEGER
When the Enterprise value is -1
, then the Facility's value is used.
STRING and STRING ARRAY
Both of these types behave as UNDEFINED VALUES
Table 11-1 Voicemail Properties
Property Name | Type | Example Value | Default Value | Description |
---|---|---|---|---|
isRetrievalEnabled |
BOOLEAN |
true |
true |
Determines whether users are allowed to retrieve their messages |
isMWIEnabled |
BOOLEAN |
true |
true |
Enables or disables users' Message Waiting Indicator (MWI) |
isOperatorConfigured |
BOOLEAN |
true |
true |
Determines whether a caller can transfer to a live operator from the Touchtone User Interface (TUI) |
MaxRecordingDuration |
INTEGER |
-1 |
Specifies the maximum duration of a recording, in seconds. -1 means that the Facility's value will be used. If not set at the Facility level, then 180 is used. |
|
RTPServerURI |
STRING |
http://<BH_MT>:<PORT>/voice-servlet/rtp_server/RtpServer.jsp |
The URI to access the RTP Server |
|
RTPServerUserName |
STRING |
RtpClient |
This value must be defined, but the user name is only used for internal communication |
|
RTPServerPassword |
STRING |
RtpPassword |
This value must be defined but the password is only used for internal communication |
|
isGlobalLookupFallbackEnabled |
BOOLEAN |
true |
true |
|
isPhoneNumberPresentable |
BOOLEAN |
true |
true |
|
StoreMsgMenuLocale |
STRING |
en-US |
The locale to use when messages are being left for a user |
|
RetrieveMsgMenuLocale |
STRING |
en-US |
The locale to use when messages are being retrieved by a caller. This locale is always used at the login, but the user's locale, if specified, will be used after he or she is authenticated |
|
IpPhoneUserName |
STRING |
bhvmgui |
Username of the account defined in Cisco Call Manager which has device control over the users' telephones for audio playback and return call functionality in the Voicemail GUI |
|
IpPhonePassword |
STRING |
<bhvmgui_password> |
Password of the account defined in Cisco Call Manager which has device control over the users telephones for audio playback and return call functionality in Voicemail GUI |
|
IpPhonePasswordSeed |
STRING |
This only needs to be set if local IP phone authentication is used. Oracle recommends you use Cisco Call Manager Administrative XML Layer (AXL) configuration for IP authentication |
||
IpPhonePasswordAlgorithm |
STRING |
This only needs to be set if local IP phone authentication is used. Oracle recommends you use Cisco Call Manager Administrative XML Layer (AXL) configuration for IP authentication |
||
IpPhonePasswordNumBits |
INTEGER |
This only needs to be set if local IP phone authentication is used. Oracle recommends you use Cisco Call Manager Administrative XML Layer (AXL) configuration for IP authentication |
||
IpPhoneRtpMinPort |
INTEGER |
|||
IpPhoneRtpMaxPort |
INTEGER |
|||
IpPhoneHttpProxyHost |
STRING |
This only needs to be set if the Oracle Beehive tier needs to communicate through a proxy to reach the IP phones' HTTP server |
||
IpPhoneHttpProxyPort |
INTEGER |
This only needs to be set if the Oracle Beehive tier needs to communicate through a proxy to reach the IP phones' HTTP server |
||
MwiAlgorithm |
STRING |
SHA1PRNG |
Defines the algorithm used to create the SIP NOTIFY messages for MWI which must be set |
|
MwiCcmHost |
STRING |
The IP address of the Cisco Call Manager SIP trunk configured to accept SIP NOTIFY messages |
||
MwiCcmPort |
INTEGER |
5060 |
The port of the Cisco Call Manager SIP trunk configured to accept SIP NOTIFY messages |
|
MwiSipProxyHost |
STRING |
SIP Proxy Host that is authorized to send SIP messages to Cisco Call Manager SIP MWI trunk |
||
MwiSipProxyPort |
INTEGER |
SIP Proxy Port that is authorized to send SIP messages to Cisco Call Manager SIP MWI trunk |
||
MwiMinLocalPort |
INTEGER |
5061 |
Lowest port in the range that Oracle Beehive will use to send and receive SIP messages |
|
MwiMaxLocalPort |
INTEGER |
5080 |
Highest port in the range that Oracle Beehive will use to send and receive SIP messages |
|
MwiSourcePhone |
STRING |
16505551234 |
Voicemail DNIS phone number that is presented in the SIP NOTIFY message |
|
RtpServerHost |
STRING |
beehive.example.com |
Host where the RTP Server is running |
|
RtpServerMinPort |
INTEGER |
20480 |
Lowest port in the range used by the RTP server to send RTP packets |
|
RtpServerMaxPort |
INTEGER |
32768 |
Highest port in the range used by the RTP server to send RTP packets |
|
RtpServerPacketSize |
INTEGER |
160 |
RTP Packet Size. Leave at default for Cisco IP phones |
|
RtpServerHttpProxyHost |
STRING |
This value must be set if the RtpServer has been deployed on a standalone host which can only be accessed by the Oracle Beehive tier through a proxy |
||
RtpServerHttpProxyPort |
INTEGER |
This value must be set if the RtpServer has been deployed on a standalone host which can only be accessed by the Oracle Beehive tier through a proxy |
||
AxlConfigA |
STRING |
https://<CCM_HOST>:8443/axl/,https://<CCM_HOST>:8443/realtimeservice/services/RisPort,,,bhvmgui,password,f,f |
none |
The comma separated fields, in order, are:
|
AxlConfigB |
STRING |
https://192.188.175.105:8443/axl/,https://192.188.175.105:8443/realtimeservice/services/RisPort,,,bhvmgui,password,f,f STRING_LIST |
This field's contents are the same as for AxlConfigA, and are used for backup AXL services running on another Cisco Call Manager Node |
|
RecordStreamURIs |
STRING ARRAY |
http://<host>:<port>/voice-servlet/vmail/crs |
||
RecordPlaybackURIs |
STRING ARRAY |
http://<host>:<port>/voice-servlet/vmail/data/shared/playback |
||
ExclusiveAudioContentURIs |
STRING ARRAY |
audio |
The default value is a relative audio path |
|
SharedAudioContentURIs |
STRING ARRAY |
../shared-audio |
The default value is a relative audio path |
|
TelephoneAnsweringAddress |
STRING ARRAY |
vm-no-reply@example.com |
TelephoneAnsweringService@example.com |
This is the e-mail from: address that is used for voicemail messages when an Oracle Beehive user is not the originator |
This section describes how to configure enterprise-level preferences for Oracle Beehive voicemail functionality.
Note:
The Enterprise is created during Oracle Beehive installation. The only optional steps are to configure the settings for Voicemail and Auto Attendant. The values are stored in enterprise preferences.This section contains the following topic:
These are set as part of the Enterprise Preferences:
Use the following commands to set any of the Enterprise Preference properties listed in Table 11-1, "Voicemail Properties".
First, get the identifier for your enterprise by using the
command:beectl
list_enterprises
beectl> list_enterprises
Then, use the enterprise identifier with the
command to get the Active Preference Profile identifier:beectl
list_preference_profiles
beectl> list_preference_profiles --consumer <Enterprise identifier>
Look for output similar to the following:
Name : ActivePreferenceProfile Identifier : prfp=ActivePreferenceProfile,enpr=Oracle
Create a preference set using the
command:beectl
add_preference_set
beectl> add_preference_set --parent <Preference Profile identifier> --name VoiceEnterprisePrefs
The console will output an identifier for the new Preference Set.
Use the
command to set preference properties:beectl
add_preference_property
beectl> add_preference_property --set <Preference Set identifier> --name <name> --value <value> --type <type>
See Table 11-1, "Voicemail Properties" for the values of the --name
, --value
, and --type
attributes. Repeat this step for each enterprise property.
Generally, you can follow the instructions in "Managing and Provisioning Oracle Beehive Users" to create users with access to Oracle Beehive voicemail functions. You must provide values for any voicemail user for the following specific user attributes, in addition to the required user attributes:
--voice_principal <phone number>
--voice_pin <PIN>
--address <type>:tel:<phone number>
The voice_principal and tel: address must be integers containing no special characters or spaces. The voice_principal is used for user authentication because it is associated to the voice_pin. The tel: address attribute is used to associate the redirected DNIS passed by the PBX to the user account or user's e-mail Inbox.
Note:
It is possible to define multiple phone numbers that map to the same user account, but only the voice principal defined for that account can be used to authenticate.This section describes how to create and configure a Facility. Facilities allow you to deploy more than one voicemail system (such as, at different physical locations), each with its own properties. Those properties not set at the facility level, will default to their enterprise-level values.
This section contains the following topics:
To create a Facility, you must create both a group and a voice facility object. The group's values (enterprise identifier, name, properties, and so on) are defined in an XML file. The values of these properties are shown in Table 11-1, "Voicemail Properties". See Example 11-1, "Sample Facility XML File" for an example Facility XML file.
Perform the following steps to create a Facility:
Create a group by using the
command:beectl
add_group
beectl> add_group --file <path to Group XML file>
See Example 11-1, "Sample Facility XML File" for an example Facility XML file.
Add a voice facility object using the
command:beectl
add_voice_facility
beectl> beectl> add_voice_facility --group_collabid <1234:grup:1234:5678> [--include <phone rules>] [--exclude <phone rules>]]
Note:
This command initializes the voicemail component configuration properties which maps the voicemail phone numbers assigned to the UDS group (facility). This mapping is contained within a table which is used for phone number look-up, defined with the inclusion and exclusion numbers assigned during theadd_voice_facility
command execution.Using the optional --include and --exclude options, you can specify a range of phone numbers to be associated with this voice facility. Use a question mark (?) as a wildcard. Multiple include and exclude ranges can be specified on the command line by delimiting them with a pipe (|
) symbol in quotes due to the command shell limitations. For example:
beectl> add_voice_facility --name --group_collabid <1234:grup:1234:5678> --include "1866612????|1866264????|4730"
This example associates all phone numbers in the range "18666120000-18666129999 and 18662640000-99999 and 4730" number ranges with this facility. The phone number lookup is based upon ANI, then RDNIS (redirect number), and then DNIS (dialed number), in that order, to make the association.
Note:
It is also possible to add full SIP URIs to the facility if needed depending upon the router configuration and deployment. If the router has SIP header parsing enabled, then it may be necessary to use a full SIP URI. For example:--include "sip:1866612????@192.168.1.1"
Use the
command with the global option beectl
list_groups--entity_format id
to get the group identifier:
beectl> list_groups --group <group name> --show ALL --entity_format id
You can look up with which facility or facilities a given phone number is assigned and selected based upon weight (strength of number match) by using the
command:beectl
list_voice_facilities
beectl> list_voice_facilities --phone <user or voicemail DNIS number>
Example 11-1, "Sample Facility XML File" is a sample XML-formatted file for creating the Group when setting up a Facility. In this example, a static group is used, but you could use a more complex group if you want. Be sure to replace the name, description, and scope values with the correct ones for the Facility you are creating.
Note:
To find the CollabID of the enterprise or a user, use the global option--entity_format id
with the appropriate beectl
list command. For example:
beectl list_users --user user=exampleuser --show ALL --entity_format id
The user's CollabID will be shown on the Identifier line of the output.
Example 11-1 Sample Facility XML File
<?xml version="1.0" encoding="utf-8"?> <groups> <group type="grup"> <name>18665552020</name> <description>18665552020 Voicemail Facility</description> <scope> <!-- Define Enterpripse CollabID here --> <cen>178B:5E25:enpr:360B9A7289F63579E040578C05156389000000018845</cen> </scope> <members> <add> <actor> <item> <!-- User 1 --> <!-- Define a User's CollabID here --> <cen>178B:5E25:user:63386283615A46D59306642C37BF3D07000000000000</cen> </item> </actor> </add> </members> <properties> <add> <item> <name>isMwiEnabled</name> <value>true</value> <description>MWI Enabled</description> </item> <item> <name>VMPhoneNumber</name> <value>18665552020</value> <description>VM DNIS</description> </item> <item> <name>OperatorTransferNumber</name> <value>13125554399</value> <description>Operator or AA Phone Number</description> </item> <item> <name>isOperatorConfigured</name> <value>true</value> <description>Enable Operator Transfer Number</description> </item> <item> <name>StoreMsgMenuLocale</name> <value>en-US</value> <description>Facility Default Message Leaving Language</description> </item> <item> <name>RetrieveMsgMenuLocale</name> <value>en-US</value> <description>Facility Default Message Retrieval Language</description> </item> <item> <name>isUserLookupEnabled</name> <value>true</value> <description>Allow User Directory Lookup</description> </item> <item> <name>isGlobalLookupFallbackEnabled</name> <value>true</value> <description>Allow User Directory Lookup Local to Global</description> </item> <item> <name>PhoneList</name> <value>1866</value> <description>Common prefix of all interal phone numbers for Lookup by Phone number for directory and Voicemail GUI</description> </item> <item> <name>ExtensionTranslationRules</name> <value>1866555????|1866556????</value> <description>Enable users to enter extentions instead of full e.164 phone numbers</description> <!-- The first rule allow users to enter 51234, which maps to 18665551234 --> <!-- The second rule allows users to enter 61234, which maps to 18665561234 --> </item> </add> </properties> </group> </groups>
Example 11-2, "Sample Modifying Facility XML File" shows the XML for modifying a facility. Note that when modifying a group, you do not provide the enterprise identifier, so you should remove the <scope> element tags from a file you previously used to create the group. The facility group's identifier is used. In this example, a second user (User 2) is added to the group.
Example 11-2 Sample Modifying Facility XML File
<?xml version="1.0" encoding="utf-8"?> <groups> <group type="grup" cen="178B:5E25:grup:63386283615A46D59306642C37BF3D0700000000003F"> <name>18665552020</name> <description>18665552020 Voicemail Facility</description> <members> <remove> <actor> <!-- User 1 --> <cen>178B:5E25:user:63386283615A46D59306642C37BF3D07000000000000</cen> </item> <item> <!-- User 2 --> <cen>178B:5E25:user:63386283615A46D59306642C37BF3D07000000000009</cen> </item> </actor> </remove> </members> <properties> <remove> <item> <name>isMwiEnabled</name> <value>true</value> <description>MWI Enabled</description> </item> <item> <name>VMPhoneNumber</name> <value>18665552020</value> <description>VM DNIS</description> </item> </remove> <add> <item> <name>isGlobalLookupFallbackEnabled</name> <value>true</value> <description>Allow User Directory Lookup Local to Global</description> </item> <item> <name>PhoneList</name> <value>1866</value> <description>IP Phone GUI User Finder</description> </item> <item> <name>ExtensionTranslationRules</name> <value>186655?????</value> <description>Extension Dialing</description> </item> </add> </properties> </group> </groups>
For the Voicemail TUI to function the only required action is to create users with the required attribute values, as described in "Creating Voicemail Users". Once a user is created you can call into the voice service, and leave and listen to voice messages.
To enable the Cisco VXML router to access Oracle Beehive via HTTPS, the Oracle Beehive system must be configured for HTTPS, and the Voicemail Component Properties must be modified to map the RecordPlaybackURIs and RecordStreamURIs properties to the HTTPS URIs.
The Cisco VXML device also needs to import the Oracle Beehive application server's CA certificate, to enable access to Oracle Beehive using HTTPS.
Perform the following steps:
Configure HTTPS for this Oracle Beehive instance
For instructions, see "Changing HTTP Port" in Chapter 12, "Oracle Beehive Post-Installation Procedures" in the Oracle Beehive Installation Guide for your platform (Linux or Solaris only).
Modify the voicemail facility object's properties, using the following commands, replacing the items in angle-brackets (<>
) with the appropriate values:
beectl> modify_property --component <voice enterprise alias or object ID> --name RecordPlaybackURIs --value https://<host>:<port>/voice-servlet/vmail/data/shared/playback beectl> modify_property --component <voice enterprise alias or object ID> --name RecordStreamURIs --value https://<host>:<port>/voice-servlet/vmail/crs beectl> activate_configuration
To secure HTTPS between Cisco VXML-enabled Routers and Oracle Beehive, you need to import the Oracle Beehive certificate into the IOS device during device configuration. Configure your Cisco VXML router for HTTPS application access using the following steps:
From Internet Explorer, access the Oracle Beehive Application Server with [https://<ServerIP>:<port>/
Use the server and HTTP port for the computer hosting the Oracle Beehive tier.]
The Security Alert dialog box displays
Click View Certificate
The Certificate dialog box displays
Select the Details tab
<All> will be highlighted in the Show drop-down list
Click Copy to File
The Certificate Export Wizard dialog appears
Click Base-64 encoded X.509 (.CER) and then click Next
Specify a file name in the File to Export dialog box and then click Next
Click Finish
An Export was Successful message displays.
Click OK and close the Security Alert dialog box.
Open the exported file in a text editor and copy the text that appears between the ---BEGINCERTIFICATE--
and --END CERTIFICATE--
tags.
You are now ready to copy the Oracle Beehive Application Server certificate information to the IOS device
Access the IOS device in privileged EXEC mode
Note:
For more information about managing the IOS device, refer to the Cisco IOS Command-Line Interface documentationAccess global configuration mode by entering the configuration terminal
Create and enroll a trustpoint by entering the following commands:
crypto pki trustpoint xxxx en terminal revocation-check none exit
Where xxxx
is a trustpoint name
The IOS device exits configuration terminal mode and returns to privileged EXEC mode
To copy the certificate exported to the text file to the IOS device, perform the following steps:
Enter:
crypto pki auth xxxx
Where xxxx
is the trustpoint name specified in step 12
Paste in the certificate you copied from the text file in Step 9
Enter:
quit
A message displays describing the certificate attributes, and a confirmation prompt appears
Enter:
Yes
A message reports that the certificate was successfully imported
Associate the imported certificate with the http client by entering the following command:
Enter http client secure-trustpoint xxxx
Where xxxx
is the trustpoint name specified in the previous steps
You have finished importing the certificate.
The IP Phone GUI is a Cisco phoneXML application that is served from Oracle Beehive to the Cisco IP Phones, for use on the Cisco IP Phone's graphical display. This application is supported by Cisco Hard Phone 7970 Series as well as Cisco IP communicator, which is a software phone. In order for the voicemail GUI advanced features (play audio and return call) to function properly, the internal Cisco IP phone's Web server must be enabled. These Web servers are enabled by default, but some deployments disable them. Also, the Cisco IP Phones do not support HTTPS, so in order for the IP phones to access the XML application, the Oracle Beehive application server must allow HTTP access from the phone to the URI http://<beehive server>:<port>/voice-servlet/cisco-ip-phones
.
Note:
Cisco IP Communicator version 7.0.1 is supported. Other versions may not be fully compatible.The configuration for the voicemail GUI is determined by the network topology and how Cisco Unified Call Manager is deployed.
The following are the points of communication:
HTTP and RTP from the Oracle Beehive application tier to the IP Phones
HTTPS from the Oracle Beehive application tier to the Cisco Call Manager AXL interface
Standard client traffic flow of HTTP from the Cisco IP phones to the Oracle Beehive application tier
The communication needed from the Oracle Beehive application tier to the IP Phones is necessary because Oracle Beehive will push requests to the IP Phones via HTTP utilizing the internal Web server running on the Cisco IP phones. Also, to play back voicemail audio files, RTP communication needs to be enabled from the Oracle Beehive application tier to the IP phones. The Oracle Beehive application tier needs to communicate to the Cisco Call Manager AXL interface to look up the IP Phone's registered IP address, to push HTTP commands and RTP streams for audio playback.
To configure the voicemail GUI the properties shown in Table 11-2, "Cisco IP Phone Recommended Deployment Properties" need to be set, depending on your network topology and Cisco Call Manager Configuration. These properties can be set in the Voice Enterprise preference set or in the facility group file. The values in bold are the recommended values to define.
Note:
To make the voicemail GUI available from the Cisco IP Phones, you must also set certain properties, as described in "Configuring the Voicemail GUI and Message Waiting Indicator".Table 11-2 Cisco IP Phone Recommended Deployment Properties
Preference Name | Type | Example Value | Default Value | Description |
---|---|---|---|---|
IpPhoneUserName |
STRING |
bhvmgui |
none |
Defines the account name provisioned in Cisco Call Manager that has device control over the user's device |
IpPhonePassword |
STRING |
password |
none |
Defines the account password provisioned in Cisco Call Manager that has device control over the user's device |
AxlConfigA |
STRING |
https://<CCM HOST>:8443/axl/,https://<CCM HOST>:8443/realtimeservice/services/RisPort,,,bhvmgui,password,f,f |
none |
The comma separated fields, in order, are:
|
RTPServerURI |
STRING |
http://bigip-beehive.example.com/voice-servlet/rtp_server/RtpServer.jsp |
http://<beehive_middle_tier>:<PORT>/voice-servlet/rtp_server/RtpServer.jsp |
The URI to access the RTP Server |
RTPServerUserName |
STRING |
RtpClient |
none |
This value must be defined but the username and password is only used for internal communication |
RTPServerPassword |
STRING |
RtpPassword |
none |
This value must be defined but the username and password is only used for internal communication |
MwiCcmHost |
String |
callmanger.example.com |
none |
The Cisco Call Manager IP address where the MWI SIP trunk is defined |
MwiCcmPort |
INTEGER |
5060 |
none |
The Cisco Call Manager port of the MWI SIP trunk |
IpPhoneRtpMinPort |
INTEGER |
20480 |
none |
Minimum value for allowed RTP port range to IP phones |
IpPhoneRtpMaxPort |
INTEGER |
32768 |
none |
Maximum value for allowed RTP port range to IP phones |
IpPhoneHttpProxyHost |
STRING |
internal-proxy.example.com |
none |
Defines the proxy needed for the Oracle Beehive tier to access the internal IP Phones |
IpPhoneHttpProxyPort |
INTEGER |
80 |
none |
Defines the proxy port needed for the Oracle Beehive tier to access the internal IP Phones |
MwiAlgorithm |
STRING |
SHA1PRNG |
none |
Defines the algorithm used to created the SIP NOTIFY messages for MWI |
MwiSipProxyHost |
STRING |
sip-proxy.example.com |
none |
SIP Proxy Host that is authorized to send SIP messages to Cisco Call Manager SIP MWI trunk |
MwiSipProxyPort |
INTEGER |
5060 |
none |
SIP Proxy Port that is authorized to send SIP messages to Cisco Call Manager SIP MWI trunk |
MwiMinLocalPort |
INTEGER |
5060 |
none |
Lowest port in the range that Oracle Beehive will use to send and receive SIP messages |
MwiMaxLocalPort |
INTEGER |
5080 |
none |
Highest port in the range that Oracle Beehive will use to send and receive SIP messages |
MwiSourcePhone |
STRING |
18665551234 |
none |
Voicemail DNIS phone number that is presented in the SIP NOTIFY message |
RtpServerHost |
STRING |
bigip-beehive.example.com |
none |
Host where the RTP Server is running |
RtpServerMinPort |
INTEGER |
20480 |
20480 |
Minimum port range used by the RTP server to send RTP packets |
RtpServerMaxPort |
INTEGER |
32768 |
32768 |
Maximum port range used by the RTP server to send RTP packets |
RtpServerPacketSize |
INTEGER |
160 |
160 |
RTP Packet Size. Leave at default for Cisco IP phones |
Telephones within your deployment may have a Message Waiting Indicator (MWI), which lights up when the phone number has received one or more voicemail messages. Additionally, sophisticated phones may have a Graphical User Interface (GUI), which presents a menu of choices to the user.
In order to enable the use of voicemail features through an IP phone's GUI, or to enable MWI operation, you must set the properties identified in Table 11-3, "Voicemail Properties". These are a subset of the total set of properties, which are listed in Table 11-1, "Voicemail Properties". You must set these properties at the Enterprise level of scope, but you can also set them at a Facility level; at a given Facility, the Facility-level properties override the global Enterprise-level properties.
The properties listed are for configuring using local IP Phone authentication.
To use local IP Phone configuration every device in Cisco Call Manager needs to be configured with the authentication server URL: http://<Beehive_HOST>:<port>/voice-servlet/cisco-ip-phones/authenticate.jsp
"Configuring Enterprise Preferences" describes how to set the voicemail properties.
Table 11-3 Voicemail Properties
Property | Value | Type |
---|---|---|
IpPhonePasswordSeed |
STRING |
|
IpPhonePasswordAlgorithm |
AES |
STRING |
IpPhonePasswordNumBits |
128 |
INTEGER |
IpPhoneRtpMinPort |
20480 |
INTEGER |
IpPhoneRtpMaxPort |
32768 |
INTEGER |
RtpServerHost |
<hostname> (of the computer on which Beehive is installed |
STRING |
RTPServerUserName |
RTPClient |
STRING |
RTPServerPassword |
RTPpwd |
STRING |
RTPServerURI |
STRING |
|
MwiAlgorithm |
SHA1PRNG |
STRING |
MwiCcmHost |
STRING |
|
MwiCcmPort |
5060 |
INTEGER |
MwiSipProxyHost |
STRING |
|
MwiSipProxyPort |
15060 (optional property) |
INTEGER |
MwiMinLocalPort |
5060 |
INTEGER |
MwiMaxLocalPort |
5080 |
INTEGER |
MwiSourcePhone |
STRING |
This section assumes you have Cisco IOS and Cisco Call Manager Administration configuration experience. Cisco 2800/3800 Series or AS5400XM with IOS version 12.4(11T) or greater with VXML feature set, is required for Oracle Beehive voicemail.
To configure your Cisco router hardware for use with Oracle Beehive, perform the following steps:
Each step is described in its own section.
The router must be configured for full E.164 phone numbers, which map to the phone numbers defined in users' UDS record voice_principal
and tel:
address attributes.
These rules will change, depending on the incoming DNIS delivery method provided by your PRI.
The following example shows how 5-digit DNIS delivery is expanded:
voice translation-rule 10 rule 2 /\(^627..$\)/ /170332\1/ ! ! voice translation-profile FULL_E164_IN translate called 10 ! voice-port 0/3/0:23 translation-profile incoming FULL_E164_IN
Make the following configurations:
http client cache memory pool 8192
Note:
If you record prompts with file sizes larger than the http client cache, the prompt will not be cached. Latency between the gateway and the Oracle Beehive instance could cause a timeout while Oracle Beehive waits for the gateway to send audio files. The end-user may experience long pauses while using the TUI, and a timeout could abruptly end the call without any error messages.If you experience this issue, increase the http client cache memory pool size to a size larger than your largest prompt file.
http client cache memory file 200
http client cache refresh 300
http client response timeout 30
ivr prompt memory 4096
ivr prompt streamed http
Note:
NOTE: If using https then ivr prompt streamed must be set to none.ivr record memory system 48000
ivr record memory session 1500
vxml tree memory 100000
vxml version 2.0
The following settings are necessary only if fax is to be supported on the PSTN side of the ingress gateway:
fax receive called-subscriber $d$
fax interface-type fax-mail
mta send server bh-midtier port 5025
Note:
This is the SMTP service running on your Oracle Beehive server.mta send with-subject both
mta send mail-from hostname example.com
mta send mail-from username $s$
Use the following configuration settings:
application service vm_bh http://beehive.example.com:7777/voice-servlet/vmail/start.vxml ! dial-peer voice 500 voip description Voicemail Pilot Number huntstop service vm_bh session protocol sipv2 incoming called-number 18665551234 dtmf-relay rtp-nte sip-notify codec g711ulaw no vad
Use the following settings to configure Fax functionality (if you will be setting up fax service with Oracle Beehive).
! dial-peer voice 310 mmoip service fax_on_vfc_onramp_app out-bound destination-pattern 1866....... information-type fax session target mailto:faxservice@example.com image encoding MH
Note:
To complete the configuration of fax functionality with Oracle Beehive, follow the steps in "Configuring Oracle Beehive Fax".Cisco only supports uncompressed audio on IVR application call legs. Depending on the Call Manager deployment configuration using compressed audio, it is possible to configure transcoding on the local router in order to support multiple codecs.
Use the following configuration settings:
sccp local Loopback0 sccp ccm 192.188.175.105 identifier 1 priority 1 version 5.0.1 sccp ! sccp ccm group 1 description Reston Lab transcoding for IPC bind interface Loopback0 associate ccm 1 priority 1 associate profile 1 register restontvg2 ! dspfarm profile 1 transcode codec g711ulaw codec g711alaw codec g729ar8 codec g729abr8 codec gsmfr codec g729r8 codec pass-through maximum sessions 12 associate application SCCP
To configure the Touch-tone User Interface (TUI), you must do the following:
Create SIP Trunk
Create Voicemail Pilot Number
Create Voicemail Profile
Assign Voicemail Profile to users' Directory Phone Number
To configure Voicemail GUI, you must do the following:
Create CCM User that is associated to all users' phone devices
Create a Read Only user with AXL Access
Define IP Phone Services in CCM
Note:
You can also configure the language availability for Oracle Beehive voicemail users from Cisco Call Manager user interface. The default location for the CCM User interface ishttps://<CCM_HOST>:8443/ccmuser/
.
For locale support on Cisco Call Manager, the appropriate locale packs must be installed. Once the locales are installed in Cisco Call Manager, Oracle Beehive voicemail users can select the locale using the Cisco Call Manager User interface.
This section contains the following topics:
To install an Auto Attendant, create an Auto Attendant Markup Language (AAML) document for your attendant, and record your voice prompts, making sure that they are 8000Hz mono u-law WAVE files. Make the files accessible from the computer on which Oracle Beehive is installed.
Use the
command to add the auto attendant:beectl
add_attendant
beectl> add_attendant --file <AAML file>
Next, use the
command to upload your recorded audio prompts:beectl
upload_attendant_prompt
beectl> upload_attendant_prompt --name <attendant name> --language <language> --type <type> --file <prompt file>
You can review the VoiceXML at http://<host>:<port>/voice-servlet/aa/view/<attendant name>.do
.
To associate an Auto Attendant to a facility, first create one or more facilities by following the directions in "Managing Facilities". When you create a Facility, you create both a group and a config object. The group's values, such as identifier, Name, Properties, and so on, are defined in an XML file. See Example 11-1, "Sample Facility XML File" for an example Facility XML file.
See "Managing Facilities" for instructions on creating a Facility.
Create a facility object by using the
command:beectl
add_voice_facility
beectl> add_voice_facility --name <voicemail service phone number OR auto attendant service phone number>
Next, use the
command to get the name and identifier of the group:beectl
list_groups
beectl> list_groups
Use the
command:beectl
modify_property
beectl> modify_property --component <config object id or Alias defined by adding the configuration object> --name FacilityCollabId --value <Group identifier>
Use the
command to validate and activate the configuration changes:beectl
activate_configuration
beectl> activate_configuration
For more information on administration commands for the auto attendant, see "Auto Attendant Administration Commands".
An Enterprise is not required for Facility values to be used. You may specify all settings at the Facility level, by following the instructions in the section "Creating a Facility", and skipping these Enterprise steps.
You can create Enterprise-level settings, which are used by default if you do not specify a given setting at the Facility level.
To create Enterprise-level settings:
Load defaultfacility.xml
as a group (see "Sample Facility XML File"). The default Facility must be created for Enterprise values to be used
Set Enterprise values, by following the instructions in "Configuring the Enterprise"
This section lists the various
commands used for managing the Auto Attendant, along with descriptions.beectl
add_attendant
Adds an auto attendant using the information from an AAML document. The name of the attendant will be taken from the name attribute of the root element, "attendant". It should not contain any white space.
delete_attendant
Deletes an auto attendant by name.
modify_attendant
Updates an existing auto attendant with a new AAML file. You can also use this command to rename an existing attendant.
upload_attendant_prompt
Uploads a prompt for an attendant.
delete_attendant_prompt
Deletes a prompt.
list_attendant_prompts
List all prompts that have been uploaded for an attendant.
list_attendant_aaml
Prints the Auto Attendant Markup Language document for an auto attendant.
modify_ip_phone_password_seed
Resets the seed of the password generator for IP phones. To send commands to an IP phone the requestor must be authenticated. The password is generated based on information in the phone but must be seeded to ensure security.
Oracle Beehive fax functionality is enabled using the same Cisco infrastructure as voicemail. Once you have configured Cisco Call Manager for voicemail, you must perform additional configuration to enable fax.
In Oracle Beehive, the Fax Message Service provides configuration options. You must also create a special Fax User, and set up a business event notification for that user. The Cisco Call Manager will send all faxes to that user, and then the notification will trigger a process that forwards the fax to the intended Oracle Beehive user.
To configure Cisco Call Manager for fax, see "Configure Voicemail VXML Application"
Perform the following procedure to create the special Oracle Beehive fax account and set up the notification:
Add a user using the
command. You can use any name for the account; in this example, beectl
add_userFaxUser
is used. Give the user an e-mail address, such as faxuser@<yourcompany.com>:
beectl> add_user --family_name FaxUser --scope <your enterprise identifier> --login_id faxuser --login_password <password> --address BUSINESS_1:mailto:faxuser@example.com
After the fax service user is provisioned, get the Entity ID (EID) of that user by using the
command with the beectl
list_users--entity_format
option:
beectl> list_users --user user=faxuser --show ALL --entity_format id
The EID is the portion of the user's CollabID following the :user:
segment. For example, if the list_users command produced the following output:
User Identifier: 05C1:7403:user:9AE5E38909BE41C181BAD42CE1B88F5300000000000E
Then the EID is 9AE5E38909BE41C181BAD42CE1B88F5300000000000E
Use the XML file shown in Example 11-3 to create a subscription, by using the
command:beectl
add_event_subscription
beectl> add_event_subscription --file <name of XML file>
When you have completed this step, Oracle Beehive is ready to receive fax messages from the Cisco Call Manager.
Example 11-3 Sample Fax User Event Subscription
In this example, replace the bolded EID with the EID of your Oracle Beehive fax user.
<?xml version="1.0" encoding="UTF-8" ?>
<eventSubscription xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="eventSubscription.xsd">
<subscriberId></subscriberId>
<name>ES_MSG_DELIVERED_EVENT_FAX_LISTENER</name>
<description>Subscription to sync Fax repository for incoming fax </description>
<eventName>ES_MSG_DELIVERED</eventName>
<Condition>
<simple>
<leftSide>RAWTOHEX(custom_attributes.recipient_eid)</leftSide>
<operator>=</operator>
<rightSide>'E603E73114BB4944AF5A6E5014D520E10000000003C1'</rightSide>
</simple>
<!--
<conjunction>
</conjunction>-->
<!--
<disjunction>
</disjunction>-->
</Condition>
<Action>
<isPLSQLAction>F</isPLSQLAction>
<actionString>oracle.ocs.management.model.FaxMessageService:ES_MSG_DELIVERED</actionString>
<ActionPreferenceInfos>
<actionPreferenceInfo>
<key></key>
<value></value>
</actionPreferenceInfo>
</ActionPreferenceInfos>
</Action>
</eventSubscription>