Interaction Recording Web Services (Web Services) Group Settings
You use the API to configure the settings groups that Interaction Recording Web Services (or Web Services if you're using version 8.5.210.02 or earlier) uses for Genesys Interaction Recording, so that you can maintain these settings groups after deployment.
Screen Recording Storage Settings
Interaction Recording Web Services (or Web Services if you're using version 8.5.210.02 or earlier) provides location-based storage settings so that the Interaction Recording Web Services (Web Services) node can access external storage. The next sections describe how to use the API to create, update, delete and get the storage settings.
Create Storage Settings
The following example shows how to create the storage settings with the properties described in the table below:
POST http://<Web Services-cluster-address>/api/v2/settings/screen-recording { "name":"storage", "location": "/US/CA", "value":[ { "storageType": "webDAV", "active": true, "credential": { "userName": "user", "password": "pass", "storagePath": "http://<IP Address>:<Port>/recordings" } } ] }
Update Storage Settings
The following example shows how to create the storage settings with the properties described in the table below:
PUT http://<Web Services-cluster-address>/api/v2/settings/screen-recording { "name":"storage", "location": "/US/CA", "value":[ { "storageType": "webDAV", "active": true, "credential": { "userName": "user", "password": "pass", "storagePath": "http://<IP Address>:<Port>/recordings" } } ] }
Delete Storage Settings
The following example shows how to delete the storage settings:
DELETE http://<Web Services-cluster-address>/api/v2/settings/screen-recording?location=/US/CA { "name": "storage" }
Retrieve the Storage Settings
The following examples shows how to retrieve the storage settings with the properties described in the table below:
For All Locations
GET http://<Web Services-cluster-address>/api/v2/settings/screen-recording?location=*&ignoreParentLocations=true { "statusCode": 0, "settings": [ { "name": "storage", "values": [ { "location": "/US/CA", "value": [ { "storageType": "webDAV", "active": true, "credential": { "userName": "****", "password": "****", "storagePath": "http://<First IP Address>:<Port>/recordings" } }, ] }, { "location": "/US/OR", "value": [ { "storageType": "webDAV", "active": true, "credential": { "userName": "****", "password": "****", "storagePath": "http://<Second IP Address>:<Port>/webdav" } } ] } ] } ], "key": "name" }
For a Single Location
GET http://<Web Services-cluster-address>/api/v2/settings/screen-recording?location=/US/CA&ignoreParentLocations=true { "statusCode": 0, "settings": [ { "name": "storage", "values": [ { "location": "/US/CA", "value": [ { "storage": "webDAV", "active": true, "credential": { "userName": "****", "password": "****", "storagePath": "http://IP Address>:<Port>/recordings" } }, ] } ] } ], "key": "name" }
Property Descriptions
Property | Description |
---|---|
storageType | The storage location. Set it to webDAV, to store the recordings on the physical server. |
active | Determines whether the location-based storage is enabled and available to store the recordings. If set to true, the corresponding Interaction Recording Web Services node(s) (or Web Services if you are using version 8.5.210.02 or earlier) will upload and save the screen recordings to this storage resource. If set to false, or the property is missing, recordings are not uploaded to this storage resource, but media located on this storage can be played back. |
credential |
|
key | The name of the "key" attribute for this group's settings. Whenever an individual setting needs to be modified, this "key" attribute is used to identify the setting. The value of the "key" attribute must be unique for every setting and is read-only after the setting has been created. A setting cannot be created without this attribute. |
The location matching for these settings are hierarchical matches. For more information and examples, see Hierarchical Location Matching.
Screen Recording Decrypt URI Prefix
Interaction Recording Web Services (or Web Services if you're using version 8.5.210.02 or earlier) defers the decryption process of screen recordings to the Recording Crypto Server. Interaction Recording Web Services (Web Services) provides a URI that directs the SpeechMiner application to the Recording Crypto Server for the decrypted screen recording, and for the mediaUri member in a Get Screen Recording Meta-Data response. Note that the value must be set to the URL of the Recording Crypto Server instance.
The following sections describe how to use the API to create, update, delete and retrieve the decrypt URI prefix.
Create Decryption URI Prefix Setting
The following example shows how to create the decryption URI prefix settings:
POST http://<Web Services-cluster-address>/api/v2/settings/screen-recording { "name":"decrypt-uri-prefix", "location": "/US/CA", "value":"https://<IP Address>/rcs" }
Update Decryption URI Prefix Setting
The following example shows how to update the decryption URI prefix settings:
PUT http://<Web Services-cluster-address>/api/v2/settings/screen-recording { "name":"decrypt-uri-prefix", "location": "/US/CA", "value":"https://<IP Address>/rcs" }
Delete Decryption URI Prefix Setting
The following example shows how to delete the decryption URI prefix settings:
DELETE http://<Web Services-cluster-address>/api/v2/settings/screen-recording?location=/US/CA { "name":"decrypt-uri-prefix" }
Retrieve the Decryption URI Prefix Setting
The following examples shows how to retrieve the decryption URI prefix settings:
For All Locations
GET http://<Web Services-cluster-address>/api/v2/settings/screen-recording?location=*&ignoreParentLocations=true { "name":"decrypt-uri-prefix", "values": [ { "location": "/US/CA", "value":"https://<First IP Address>:<Port>/rcs" }, { "location": "/US/OR", "value":"https://<First IP Address>:<Port>/rcs" } ] }
For a Single Location
GET http://<Web Services-cluster-address>/api/v2/settings/interaction-recording?location=/US/CA&ignoreParentLocations=true { "name":"decrypt-uri-prefix", "values": [ { "location": "/US/CA", "value":"https://<IP Address>:<Port>/rcs" } ] }
The location matching for these setting are also hierarchical matches. See the example described above in the Screen Recording Storage Settings.
Local Decrypt URI Prefix for Call Recording and Screen Recording
Interaction Recording Web Services defers the decryption process of call recordings and screen recordings to the Recording Crypto Server. Interaction Recording Web Services can optionally provide a URI that directs the SpeechMiner application to Interaction Recording Web Services instead of directing it to the Recording Crypto Server for the decrypted call recording or screen recording, and for the mediaUri member in a GET Call Recording Metadata response or Get Screen Recording Metadata response. To do this, the following are required:
- Set the api-recordings-decryption-proxying feature flag. If you're using Interaction Recording and Web Services component, click here for details. If you're using Web Services, click here for details.
- Add the local-decrypt-uri-prefix setting (described in this section)
- Remove the decrypt-uri-prefix setting (described above)
- Remove External RCS URI from Speechminer configuration for encrypted screen recordings. For more information, refer to the table that describes the parameters under Step 10 in Configuring SpeechMiner users.
The following sections describe how to use the API to create, update, delete and retrieve the local decrypt URI prefix. Note that the value property in these REST calls must be set to the URL of the Recording Crypto Server instance.
Create Local Decryption URI Prefix Setting
The following example shows how to create the local decryption URI prefix settings:
POST http://<Web Services-cluster-address>/api/v2/settings/interaction-recording { "name":"local-decrypt-uri-prefix", "location": "/US/CA", "value":"https://<IP Address>/rcs" }
Update Local Decryption URI Prefix Setting
The following example shows how to update the local decryption URI prefix settings:
PUT http://<Web Services-cluster-address>/api/v2/settings/interaction-recording { "name":"local-decrypt-uri-prefix", "location": "/US/CA", "value":"https://<IP Address>/rcs" }
Delete Local Decryption URI Prefix Setting
The following example shows how to delete the local decryption URI prefix settings:
DELETE http://<Web Services-cluster-address>/api/v2/settings/interaction-recording?location=/US/CA { "name":"local-decrypt-uri-prefix" }
Retrieve the Local Decryption URI Prefix Setting
The following examples shows how to retrieve the local decryption URI prefix settings:
For All Locations
GET http://<Web Services-cluster-address>/api/v2/settings/interaction-recording?location=*&ignoreParentLocations=true { "name":"local-decrypt-uri-prefix", "values": [ { "location": "/US/CA", "value":"https://<First IP Address>:<Port>/rcs" }, { "location": "/US/OR", "value":"https://<First IP Address>:<Port>/rcs" } ] }
For a Single Location
GET http://<Web Services-cluster-address>/api/v2/settings/interaction-recording?location=/US/CA&ignoreParentLocations=true { "name":"local-decrypt-uri-prefix", "values": [ { "location": "/US/CA", "value":"https://<IP Address>:<Port>/rcs" } ] }
The location matching for these setting are also hierarchical matches. See the example described above in the Screen Recording Storage Settings.
SpeechMiner Settings
For MLM purge, label/tagging, and deletion protection operations, Interaction Recording Web Services issues requests to the SpeechMiner Interaction Receiver to update the corresponding records in the SpeechMiner database. The Interaction Recording Web Services node that executes the operation determines the SpeechMiner API URI prefix and the credentials based on the SpeechMiner group setting with the location-based interaction-receiver settings. The following sections describe how to use the API to create, update, delete and retrieve the SpeechMiner settings.
Create SpeechMiner Settings
The following example shows how to create the Interaction Receiver settings with the properties described in the table below:
POST curl -u <ops-user>:<ops-pass> http://<Web Services-cluster-address>/api/v2/settings/speechminer { "name": "interaction-receiver", "location": "/US/CA", "value": { "uri-prefix": "http://<IP Address>:<Port>/interactionreceiver", "userName": "interaction receiver user name", "password": "interaction receiver password" } }
Update SpeechMiner Settings
The following example shows how to update the Interaction Receiver settings with the properties described in the table below:
PUT curl -u <ops-user>:<ops-pass> http://<Web Services-cluster-address>/api/v2/settings/speechminer { "name":"interaction-receiver", "location": "/US/CA", "value": { "uri-prefix": "http://<IP Address>:<Port>/interactionreceiver", "userName": "interaction receiver user name", "password": "interaction receiver password" } }
Delete SpeechMiner Settings
The following example shows how to update the Interaction Receiver settings.
DELETE http://<Web Services-cluster-address>/api/v2/settings/speechminer?location=/US/CA { "name":"interaction-receiver" }
Retrieve SpeechMiner Settings
The following examples show how to update the Interaction Receiver settings with the properties described in the table below:
For All Locations
GET http://<Web Services-cluster-address>/api/v2/settings/speechminer?location=*&ignoreParentLocations=true { "statusCode": 0, "settings": [ { "name": "interaction-receiver", "values": [ { "location": "/US/CA", "value": { "uri-prefix": "http://<IP Address>:<Port>/interactionreceiver", "userName": "****", "password": "****" } }, { "location": "/US/OR", "value": { "uri-prefix": "http://<IP Address>:<Port>/interactionreceiver", "userName": "****", "password": "****" } } ] } ], "key": "name" }
For a Single Location
GET http://<Web Services-cluster-address>/api/v2/settings/speechminer?location=/US/CA&ignoreParentLocations=true { "statusCode": 0, "settings": [ { "name": "interaction-receiver", "values": [ { "location": "/US/CA", "value": { "uri-prefix": "http://<IP Address>:<Port>/interactionreceiver", "userName": "****", "password": "****" } } ] } ], "key": "name" }
Property Descriptions for SpeechMiner
Property | Description |
---|---|
uri-prefix | The URL of the Interaction Receiver server. |
userName | The userName that is used to access the Interaction Receiver server. |
password | The password that is used to access the Interaction Receiver server. |
key | The name of the "key" attribute for this group's settings. Whenever an individual setting needs to be modified, this "key" attribute is used to identify the setting. The value of the "key" attribute must be unique for every setting and is read-only after the setting has been created. A setting can not be created without this attribute. |
- Configuring SpeechMiner Interaction Receiver Authorization Header in the Recording Destinations section of IVR profile configuration.
- Step 5 of Configuring SpeechMiner users
The location matching for this setting is a hierarchical match. For more information and an example, see Hierarchical Location Matching.
Corrections and Changes to Behavior
In GIR release 8.5.205.01 and prior, the location based matching of the interaction-receiver setting in the speechminer settings group was exact match, that is, a setting would have to have the location property specified exactly the same as the Web Services node's nodePath from the Web Services application.yaml file (for example, /US/10.2.100.100), if the node was to update recording information within SpeechMiner. This has been changed in GIR release 8.5.206.01 and onwards for this setting to hierarchical based location matching. This is also true for Interaction Recording Web Services. In other words, the interaction-receiver setting in the speechminer settings group must have a location setting that is one of the folders of the node's nodePath from the Interaction Recording Web Services (Web Services) application.yaml file (if you are using Web Services and Applications version 8.5.201.09 or earlier use the value of the nodePath from an MLM node's server-settings.yaml file instead) in order for that setting to be used by the node (for example, / or /US for the MLM node nodePath of /US/10.2.100.100) to update recording information within SpeechMiner.
Impact to Customers Upgrading from GIR release 8.5.205.01 and prior
Customers upgrading their Web Services installation that have SpeechMiner, and have scheduled MLM purge tasks must update their interaction-receiver settings in the speechminer settings group by removing the last (node) portion of the location setting of each value. If, as a result, any settings is duplicated, these settings can be merged. For example, if the following is the settings for an existing installation:
GET http://<Web Services-cluster-address>/api/v2/settings/speechminer?location=*&ignoreParentLocations=true { "statusCode": 0, "settings": [ { "name": "interaction-receiver", "values": [ { "location": "/US/10.2.100.1", "value": { "uri-prefix": "http://<IP Address>:<Port>/interactionreceiver", "userName": "****", "password": "****" } }, { "location": "/US/10.2.100.101", "value": { "uri-prefix": "http://<IP Address>:<Port>/interactionreceiver", "userName": "****", "password": "****" } } ] } ], "key": "name" }
They are changed to:
GET http://<Web Services-cluster-address>/api/v2/settings/speechminer?location=*&ignoreParentLocations=true { "statusCode": 0, "settings": [ { "name": "interaction-receiver", "values": [ { "location": "/US", "value": { "uri-prefix": "http://<IP Address>:<Port>/interactionreceiver", "userName": "****", "password": "****" } } ] } ], "key": "name" }
Voice Processor Tenant Level Settings
As the Voice Processor is designed to support Genesys cloud multi-tenancy model, settings that may vary from tenant to tenant are stored in an RWS group settings called rps-provisioning. For more information on these settings, see Voice Processor.
Settings Groups Location Matching
Settings found within a Settings Group are shared by all Interaction Recording Web Services nodes (or Web Services nodes if you're using version 8.5.210.02 or earlier) nodes. For some of the Settings Groups, each setting has a location property that helps, along with the location matching behavior of the Setting Group, an individual Web Services node to determine which settings apply to them. Currently there are two location matching behaviors:
- Exact location matching—Allows a specific setting in a Settings Group to be applied to one Web Service node only, but does not allow a setting to be applied to a group of location-related Web Services nodes.
- Hierarchical location matching—Allows a setting to be applied to a group of location-related Web Services nodes, but allows another setting to override that setting for a single Web Services node in the group or a more closely location-related group of Web Services nodes within the original group.
Exact Location Matching
Web Services provides location-based settings for gir-scheduler operations. These settings are an exact match.
For example:
The Web Services Cluster is provisioned with gir-scheduler settings with locations "/US/CA/10.10.15.83", "/US/CA/10.10.15.84", "/CA/ON/10.10.15.85", and "/US/CA".
Nodes have the following nodePaths:
- Web Services node1 has nodePath = /US/CA/10.10.15.83
- Web Services node2 has nodePath = /US/CA/10.10.15.84
- Web Services node3 has nodePath = /CA/ON/10.10.15.85
The results are:
- node1 matches "/US/CA/10.10.15.83" and so will use gir-scheduler settings for that location.
- node2 matches "/US/CA/10.10.15.84" and so will use gir-scheduler settings for that location.
- node3 matches "/CA/ON/10.10.15.85" and so will use gir-scheduler settings for that location.
No node matches "/US/CA" and so those gir-scheduler settings will not be used by any node.
Hierarchical Location Matching
Web Services also provides the location-based hierarchical matches settings groups for storage location.
For example, if the Web Services node is provisioned with storage settings "/US/CA", "/US/OR", and "/US", the Nodes have the following nodePaths:
- Web Services node1 has nodePath = /US/CA/10.10.15.83
- Web Services node2 has nodePath = /US/NY/10.10.15.84
- Web Services node3 has nodePath = /CA/ON/10.10.15.85
The results are:
- node1 matches “/US/CA” and “/US”. “/US/CA” will be selected as storage which match the location with "closest" (that is, closest in the hierarchy represented in the location property) match.
- node2 matches “/US” only, so “/US” storage will be selected.
- node3 matches none - it will have no access to external storage.