Quality Management Suite 12.3 SDK Release Notes

Enhancements/Changes

The Enghouse Interactive Quality Management Suite 12.3 SDK contains the following enhancements and changes:

IClientService

Desktop Agent deployment profiles

  • List<DesktopAgentDeploymentProfileDetails> GetDesktopAgentDeploymentProfiles() (new)

  • DesktopAgentDeploymentProfileDetails GetDesktopAgentDeploymentProfile(Guid profileId) (new)

  • Guid UpdateDesktopAgentDeploymentProfile(DesktopAgentDeploymentProfileDetails profileDetails) (new)

  • bool DeleteDesktopAgentDeploymentProfile(Guid profileId) (new)

Flag connector trigger rules

  • FlagConnectorRuleView GetFlagConnectorRuleView(Guid? tenantId) (new)

  • FlagConnectorRuleChange AddFlagConnectorRule(Guid? tenantId, string eventName, string parameterName) (new)

  • FlagConnectorRuleChange SetFlagConnectorRuleEnabled(Guid ruleId, bool enabled) (new)

  • FlagConnectorRuleChange DeleteFlagConnectorRule(Guid ruleId) (new)

  • FullTextFeatureUpdateResult UpdateFullTextSettings(bool featureEnabled, bool featureUseSSL, string configCloudSet, string electedCandidate, bool useAuth, string user, string passwd) (removed)

  • MeilisearchStatus GetMeilisearchServerStatus() (new)

  • MeilisearchStatus GetMeilisearchIndexStatus(Guid tenantId) (new)

  • bool TenantHasActiveReindex(Guid tenantId) (new)

  • MeilisearchStatus GetReindexTaskStatus(Guid tenantId) (new)

  • MeilisearchStatus GetIndexAndTaskFullStatus(Guid tenantId) (new)

  • bool StartReindexDocuments(Guid tenantId) (new)

  • bool StopReindexDocuments(Guid tenantId, ReindexTaskStatus status) (new)

  • IndexedSearchResult SearchAllIndexedMedia (added new optional parameter: Guid? tenantId; added new fault contract: IndexServiceDisabledFault)

  • class IndexServiceDisabledFault (new)

  • class TenantDetail (added new properties: IsFullTextEnabled)

Matching multiple flags with AND / OR

  • enum FlagMatchType (new: And, Or)

  • ExportRecordedMediaJobStatus ExportAllRecordedMedia (added new optional parameter: FlagMatchType flagMatchType = And)

  • List<RecordedMediaContainer> SearchAllRecordedMedia (added new optional parameter: FlagMatchType flagMatchType = And)

  • List<EvaluationSummary> GetEvaluations (added new optional parameter: FlagMatchType flagMatchType = And)

  • class SavedSearch (added new properties: FlagMatchType)

Computer monitoring

  • CheckAvailabilityForComputerMonitoring(Guid monitorTarget) (changed return type from GuidPair to ComputerMonitoringAvailability)

  • class ComputerMonitoringAvailability (new: MonitorTarget, MonitorUri)

Recordings, users and other data classes

  • class RecordedCallContainer (added new properties: RetainRecording)

  • class RecordedMediaContainer (added new properties: RetainRecording, RecordingSummary)

  • class TextContentContainer (added new properties: RecordingSummary)

  • class AttachedDataContainer (added new properties: Notes)

  • class EvaluationSummary (added new properties: Notes)

  • class UserListItem (added new properties: SipURI, AdditionalExtensions)

  • class CallRecordingURIInformation (property ImageFileUri is obsolete and no longer populated; constructor parameter imageFileUri removed)

Parameterless constructors

Parameterless constructors were added to the following classes to support JSON serialization: TenantServiceListItem, TenantListItem, TenantDetail, SecurityProfileListItem, CallRecordingProfileListItem, ScreenRecordingProfileListItem, LiveAnalyticsProfileListItem, BatchAnalyticsProfileListItem, TextRecordingProfileListItem, VideoRecordingProfileListItem, BatchAIProfileListItem, UserListItem, Report, SavedReport, SavedSearch, FlagValue, FlagFilterDetails, AttachedDataContainer, ComputerRecordingDeployment, ArchiveListItem, ArchiveTaskListItem, DataSourceListItem, RemoteDataSourceCreationItem, LoginNotificationListItem, LoginNotificationItem, AlertListItem, AlertTargetItem, ApplicationCredential, ExcludedWords, WorkflowListItem, WorkflowTransitionDetail, WorkflowRights, EvaluationWorkflow, EvaluationWorkflowState, WorkflowJobDetail, WorkflowJobHistoryDetail, GroupTypeDetail, GroupDetail, CalibrationJobListItem, CalibrationJobDetail, ExportRecordedMediaJobStatus.

IAgentStateService

No changes

IRecordingControlService

Cisco Contact Center connector

  • int GetCiscoConnectorConfigVersion() (new)

  • CiscoConnectorConfiguration GetCiscoConnectorConfiguration(CiscoConnectorKind connectorKind) (new)

  • int PublishCiscoConnectorParameterCatalogue(CiscoConnectorParameterCatalogueUpdate catalogue) (new)

  • enum CiscoConnectorKind (new: UCCE, UCCX)

  • enum CiscoConnectorParameterKind (new: Fixed, Floating, EccDiscovered)

  • class CiscoConnectorRule (new)

  • class CiscoConnectorConfiguration (new)

  • class CiscoConnectorParameter (new)

  • class CiscoConnectorParameterCatalogueUpdate (new)

Rest API Changes

  • The ClientService REST API underwent a complete rewrite (too large to list here) and now has full parity with the ClientService WCF API. The swagger API documentation for this new API is available on port 8032 of the dataservice.

  • The swagger page now describes how to authenticate and has an Authorize button: get an access token from POST /api/v2/auth/sessions (QMS user name and password) or POST /api/V1/Account/Authenticate (QMS user, or application client ID and secret), then use it to try requests directly from the page.

SDK Examples and Documentation

  • New QMSClientRESTSDK examples (Administration, CallControl and SearchRecordings) show how to use the ClientService REST API. They perform the same tasks as the QMSSDK examples, which use the ClientService WCF API, and run on .NET 10. The examples connect over http or https and take the QMS host name, user name and password on the command line.

  • New guide: Enghouse QMS REST SDK (QMSClientRESTSDK\Enghouse QMS REST SDK.pdf in the SDK) describes the REST examples, authentication, secure (https) connections and the REST API endpoint that replaces each ClientService WCF method used by the QMSSDK examples.

  • The QMSSDK (ClientService WCF API) examples and guide are still included in the SDK.