Avaya CMS
The AvayaCMS agent state connector connects to CXone WFM via SDK for data integration. This includes both Real Time Adherence (RTA) and historical data.
How each type of data is used in CXone WFM:
-
Historical skill-based data: This is used in the Forecasting.
-
Historical adherence data: This is used in the Adherence Report and in the CSV report you export from the Real Time Adherence.
-
Intraday data: This is used to monitor skill performance and compare with forecasted data in the Intraday Manager.
-
Real-time agent states data: This is used to calculate Real Time Adherence and show it on the RTA.
Functional Description
Here is a breakdown of what AvayaCMS ASC supports:
-
Real-time data:
Data
Support
RTA Yes Method of Integration RESTFUL APIs
Reason Codes Yes
-
Historical data:
Data
support
Skills Yes Method of Integration RESTFUL APIs Interval Setting 15 minutes -
Data types:
data
support
Inbound Voice Yes Outbound Dialer No Email No Chat
No
Fax
No
Text (SMS)
No
Web
No
-
Historical adherence:
data
support
Agent Activity Log Historical adherence data is pulled every 15 minutes -
Reports:
Reports
support
Agent Adherence Report Yes Real Time Adherence Yes -
Event sets:
event name
event code
Reason code
Unstaff 10 Signon/Logon 100 Signoff/Logout 110 Available 20 ACD 30 ACD Out 31 ACD In 32 ACW 40 ACW In 42 ACW Out 41 Aux 50 Aux W/Reason (1-99) 50 (1-99) Aux In 52 (Pure) Aux Out 51 Aux In W/Reason 52 (1-99) Aux Out W/Reason 51 (1-99) DACD 60 DACD In 62 DACD Out 61 DACW 70 DACW In 72 DACW Out 71 Ring 80 Other 220 AuxOutonHold 600 AuxOutOnHold W/Reason 600 (1-99) -
Other information
LOGON ID SUPPORTED Vendor Login ID
Steps to installing the AvayaCMS ACD Connector:
Generate the Access Key
The access key grants the AvayaCMS ACD access to CXone. You generate the key in CXone and later enter it when running the installation wizard.
Create a specific user for ACD Integration. This user’s Access Key information will be used for the integration. Do not assign any permissions to this user.
The following steps need to be performed by the Admin to obtain the Access Key details for this user:
To generate the access key:
-
Create a role for the AvayaCMS connector In CXone:
-
Click the app selector and select Admin.
-
Go to Security > Roles and Permissions.
-
Click New Role, and enter a relevant name for the role. For example, Role for AvayaCMS ACD.
-
Remove all permissions for the role.
-
Save & Activate the role.
-
-
Create an employee for the AvayaCMS connector:
-
Click the app selector and select Admin.
-
Click Employees.
-
Click New Employee and enter a relevant name for the employee. For example, name the employee AvayaCMS ACD.
-
From the Primary Role drop-down list, select the role you just created for the connector.
-
In the General tab, deselect all the attributes.
-
Create the connector employee. Activate the employee account by clicking the Activate Account button in the activation email (the Access Keys tab will only appear after you create the account).
-
-
Open the connector employee again, then go to the Access Keys tab and generate an access key.
-
Copy both the Access Key ID and Secret Access Key. Save them in a text file and share it with the user, integrating the APIs.
If you don't copy the Secret Access Key, or lose it, you'll need to create a new one.
Use this access key ID and secret access key when integrating the connector.
Download and Configure SDK
To download and import SDK:
-
In the CXone application, proceed to your profile and click on it.
-
Click on Support and Downloads.
-
Find the CXone WFM client SDK listed under External ACD and click Download.
-
Import the downloaded SDK into your ACD project.
To configure SDK:
-
Follow these steps for application initialization.
See stepsvar(--codeSnippetCopyLabel)WFMConnectionConfig wfmConnectionConfig = new WFMConnectionConfigBuilder()
.setServiceUrl("<Provide Service URL>")
.setAccessKey("<provide Access Key>")
.setSecretKey("<Provide Secret Key>")
.build();
WFMConnection wfmConnection = WFMConnection.getConnection(wfmConnectionConfig);
wfmConnection.connect();This will initialize the required class to connect to the WFM to send the data. The data include:
-
Agent states
-
Agent activities
-
Queue report.
-
-
Once initialized, use these classes to transmit agent states, agent activities, and queue reports.
See stepsvar(--codeSnippetCopyLabel)// send Agent States
AgentStateListDTO agentStateListDTO = generateAgentStateDTO(); // Add implementation for method generateAgentStateDTO()
AgentStatesService agentStatesService = AgentStatesServiceImpl.getInstance();
try {
agentStatesService.processAgentStates(agentStateListDTO);
} catch (CXoneWfmException e) {
WFMReportResponseDTO wfmReportResponseDTO = e.getResponse();
// implementation to read error response
}
// send Agent Activity report
try {
ReportService reportService = ReportServiceImpl.getInstance();
AgentActivityReportDTO agentActivityReportDTO = generateAgentActivityReportDTOForAgentActivity(); // add implementation for this method generateAgentActivityReportDTOForAgentActivity()
reportService.processAgentActivityReport(agentActivityReportDTO);
} catch (CXoneWfmException e) {
WFMReportResponseDTO wfmReportResponseDTO = e.getResponse();
// implementation to read error response
}
// send Queue report
try {
ReportService reportService = ReportServiceImpl.getInstance();
ReportDTO reportDTO = generateQueueReportDTO(); // Add implementation for method generateQueueReportDTO()
reportService.processQueueReport(reportDTO);
} catch (CXoneWfmException e) {
WFMReportResponseDTO wfmReportResponseDTO = e.getResponse();
// implementation to read error response
}
For the ACD integration with CXone WFM, its mandatory to provide the below within queue report:
-
Agent Queue Report
-
Agent System Performance Report
If there is no Activity for Agent Queue Report, Agent System Performance Report, add JSON object with empty array.