Jump to: navigation, search

Configuring Media Lifecycle Management

When it is time to purge old recording files, Interaction Recording Web Services (or Web Services if you're using version 8.5.210.02 or earlier) requires additional configuration to allow the records to purge and/or backup successfully. For instance, when it is time to purge old recording files, Interaction Recording Web Services (Web Services) sends a purge request to the SpeechMiner database indicating which records to delete.

Interaction Recording Web Services (Web Services)

To enable Genesys Interaction Recording to purge and back up recording files, configure the Interaction Recording Web Services (Web Services) node as follows:

In the backgroundScheduledMediaOperationsSettings section of the serverSettings section within the application.yaml file:

  • Set enableBackgroundScheduledMediaOperations to true
  • Set defaultBackupExportURI to a backup folder—for example, file:///tmp/archLocDefault is the default backup folder.
Important
Verify that the SIP Server is running before accessing the MLM configuration. If the SIP Server is not running, a User not authorized message will appear when you try to access MLM in GAX.

For more information about these options, see the Advanced Settings for the MLM API.

In the recordingSettings section of the serverSettings section within the application.yaml file, set auditLogDeletedFiles to true if you want to log all deleted recordings in the audit log when they are purged.

For more information about these options, see Configuring the Call Recording Audit Log.

SpeechMiner

To enable Interaction Recording Web Services (Web Services) to contact Interaction Receiver and purge the requested recordings, use a text editor to add the following to the location based setting group in the json.txt file:

{
    "name":"interaction-receiver",
    "location": "/US/CA",
    "value": {
        "uri-prefix": "http://speechminer-server/interactionreceiver",
        "userName": "interaction receiver user name",
        "password": "interaction receiver password"
    }
}
Important
  • http://speechminer-server/interactionreceiver is the Load Balancer URL that points to the Interaction Receiver.
  • The Interaction Receiver user name and password must be the same as the user and password property values found within the [recording.archive] section of the tenant Annex in the configuration, and are set when configuring Recording Crypto Server. If these values are not found there, they should be added.

Execute the following command:

curl -u <user:password> -X POST -d @json.txt --header
"Content-Type: application/json" http://<Web Services-cluster-address>/api/v2/settings/speechminer
Important
The username and password must be associated with a user defined in the Genesys configuration environment.

For more information on the properties of this settings group, see Interaction Recording Web Services Settings Groups.

For more information about the location based setting group for encryption, see Encrypting and Provisioning Certificates.

Creating Rules and Schedules

Use Genesys Administrator Extension to create rules and schedules. For step-by-step instructions, see Recording Lifecycle Scheduler.

Consider the following when creating backup and purge tasks:

  • Do not schedule backup tasks to run concurrently on the same Interaction Recording Web Services (Web Services) node if these tasks back up overlapping records.
  • Do not schedule backup and purge tasks to run concurrently if they act on overlapping records.
  • Ensure that all the Interaction Recording Web Services (Web Services) nodes have accurate clocks.
  • Genesys Administrator Extension's time is based on UTC.
Important
  • When using the MLM Purge feature, if you specify a rule for voice recordings, the corresponding muxed screen recordings will not be purged unless you also select the Include Screen Recordings checkbox.
  • Recordings that are protected from deletion (using the Non-Deletion API or SpeechMiner) will not be deleted by Media Lifecycle Management purge tasks.
  • Do not schedule a purge task to run independently in its own rule unless you are willing to lose the associated data. Even if a backup has been scheduled, it is not guaranteed to complete successfully before the purge task is executed.
Warning

When you are scheduling rules containing purge tasks, adhere to the following guidelines to avoid an unexpected failure of Purge or Backup tasks:

  • Run only one Purge task in a rule.
  • Run the Purge task last in a rule.
  • Do not run two rules with overlapping minAge/maxAge time intervals too close together (less than 5 seconds) if the first rule contains a Purge task. Note that the interval is the time between the rules that are running (that is, the completion of one rule and the start of the next) and not between the scheduled start time of rules.

You can look at the recording.log file to determine when a rule has finished. Look for the following message:

... [] [] []  Scheduled rule [<rule name>] at location [<node path>] completed
The <rule name> and <node path> depend on the customer configuration. Note that the amount of time to run a rule depends on many factors, including call volume. The interval should be much greater than that suggested above to make allowances for day to day variations.

Configuring For Multiple Regions

The following sections describe how to configure MLM for multiple regions.

Need For An MLM Node In Each Region Requiring Backup and/or Purge

By design, an MLM node will only backup and/or purge call and screen recordings for which the metadata region property exactly matches the crRegion (call recording region) property found in the node's Interaction Recording Web Services (Web Services) application.yaml configuration file (if you are using Web Services and Application version 8.5.201.09 or earlier it is found in the server-settings.yaml file). This design prevents these nodes from "pulling" media between data centers.

For example, if there are two data centers defining regions "east" and "west", and the client Interaction Recording Web Services (Web Services) nodes with nodePaths (in the application.yaml file or in the server-settings.yaml file if you are using Web Services and Application version 8.5.201.09 or earlier) /US/EAST/10.2.0.1 through /US/EAST/10.2.0.10 are in region "east", and client Interaction Recording Web Services (Web Services) nodes with nodePaths /US/WEST/10.2.1.1 through /US/WEST/10.2.1.10 are in region "west", and there is a requirement for deleting all call recordings after 90 days, then there will need to be at least one MLM node in each region (possibly with nodePaths /US/EAST/10.2.0.20 and /US/WEST/10.2.1.20) each with a 90-day purge rule.

Configuring SpeechMiner Purge API

If a deployment supports call recording and SpeechMiner, a deployment will need to have the SpeechMiner Purge API configured (see SpeechMiner for more information).

For a multi-region deployment that has only one SpeechMiner, the SpeechMiner Purge API should be configured with a location property value that is the nearest common ancestor of the nodePaths of all the MLM nodes. For instance, using the example above, the nearest common ancestor of nodePaths /US/EAST/10.2.0.20 and /US/WEST/10.2.1.20 is /US.

For a multi-region deployment that has one SpeechMiner per region, the SpeechMiner Purge API should be configured for the SpeechMiner of each region, using a location property value for each that is the nearest common ancestor of all the nodePaths of the region's Interaction Recording Web Services (Web Services) nodes. For instance, using the example above, the nearest common ancestor of nodePaths /US/EAST/10.2.0.1 through /US/EAST/10.2.0.10 and /US/EAST/10.2.0.20 is /US/EAST, and the nearest common ancestor of nodePaths /US/WEST/10.2.1.1 through /US/WEST/10.2.1.10 and /US/WEST/10.2.1.20 is /US/WEST.

Configuring Pre-Recording

You can configure MLM to keep the entire audio and the screen of calls that might need review of a Contact Center supervisor or manager. Use the following steps to set up Pre-recording:

  1. Using Genesys Administrator Extension (GAX), select Business Attributes and create a new Custom business attribute object. Name the object Recording.
  2. In GAX, select Business Attribute Values and select the Recording object you created in step #1 above.
  3. Select Attribute Values, and create a new attribute value named Keep Recording.
  4. In the Interaction-Workspace section, create the following parameters:
    • display-type=enum
    • enum.business-attribute=enumkeep_recording
    • enum.default-value=no
    • ready-only=false
  5. In GAX, select Business Attributes and create a Customer new business attribute object. Name the new object enumkeep_recording.
  6. In GAX, select Business Attribute Values and select the enumkeep_recording object you created in the step above.
  7. Select Attribute Values and create the following attribute values:
    • no (set to default)
    • yes
  8. In the Workspace Web Edition Cluster object (WWEWS_Cluster) or from the Workspace Desktop Edition application object, select the Application Options tab.
  9. In the [interaction-workspace] section, set the interaction.case-data.format-business-attribute option to Recording.
  10. From Routing Strategy, attache the following user data to the interaction: keep_recording="no"..
    For additional information, refer to the Universal Routing 8.1 Reference Manual.

Selective Recording

If your business retention policy is to keep a random percentage, say 20% of calls, then the routing strategy would call a function to determine whether to keep the call. If the call should not be kept, set the value to keep_recording="no". If the call should be kept based on the rule, set the value to keep_recording="yes". The agent does not need to mark the call to be kept for review.

Use the following steps to setup Pre-recording for selective recording:

  1. In the routing strategy, attach the following user data to the call:
    • keep_recording="no"
  2. Add the same user data on the Agent's desktop, so that the agent can change the value from no to yes if the agent wants to keep the recording based on what the caller said.


For more information about how to create rules and schedules, see Recording Lifecycle Scheduler.

Upgrading the GIR Components

When upgrading from version 8.5.205.01 or earlier to version 8.5.206.01 or later, the GIR components can be upgraded in any order (Web Services, Recording Plug-in, Recording Processor Script, etc), but callType should not be specified in MLM tasks within the upgraded Recording plug-in until all Web Services nodes have been upgraded.

Rolling Back the GIR Components

When rolling back the components from version 8.5.206.01 or later to version 8.5.205.01 or earlier, the GIR components can be rolled back in any order (Web Services, Recording Plug-in, Recording Processor Script, etc), as long as no MLM tasks specify callType in the filter. If a callType is specified as a filter of a task, the task must be removed before rolling back Web Services to a previous version. Disabling the task is not sufficient.


Advanced Settings for the MLM API

The following table describes the parameters that are in the backgroundScheduledMediaOperationsSettings section of the serverSettings section within the application.yaml file.

Parameter Name Description Default Value
enableBackgroundScheduledMediaOperations Specifies whether to turn on the MLM feature. false
schedulerThreads Specifies the maximum number of enabled MLM scheduled rules that can run concurrently (that is, they start and run at the same time everyday). Valid range of values: 1 - 64.
Note: If you set this value too low, the scheduled rules will run sequentially as necessary to save the number of threads opened, resulting in scheduled rules running some time after the time they are scheduled.
4
schedulePollingInterval Specifies, in seconds, the time to poll for gir-scheduler settings and synchronize the rule schedule. 60
speechMinerMaxConnection Specifies the maximum number of concurrent TCP connections when issuing API request to the SpeechMiner. 20
speechMinerMaxTotalConnection Specifies the size of the connection pool for issuing API requests to the SpeechMiner. If set to a value less than 1, the value is automatically set to speechMinerMaxConnection * 10. -1
speechMinerSocketTimeout Specifies the time, in milliseconds, to wait for the SpeechMiner API response before timing out. 15000
defaultBackupExportURI Specifies the file path (file:// URI) to the backup the export directory to if gir-scheduler rule setting does not specify the backup location. Empty

Feedback

Comment on this article:

blog comments powered by Disqus
This page was last modified on 8 October 2018, at 04:05.