All,
We're running 2021 R4 Patch 20 and we are looking to build an IceLib application that polls for ACD Workgroup data (very similar to how Int. Marquee works today). We are basing our code off the example found at https://help.genesys.com/developer/cic/docs/icelib/webhelp/html/37E33069-65FE-4538-96C7-9614879FE5FE.htm#E2
What we're noticing is our query is taking a very long time to complete, like 4 to 5 minutes to get one set of data back. Have any of you attempted to listen/monitor for workgroup statistics via IceLib and been able to get back workgroup results within seconds?
Fingers crossed that someone here has went down this path before and has some suggestions. I can directly engage our developer if you need any additional information.
As an example, here is one set of code we're using with some sample statistics: (I've only included a small snippet of some of the code and can provide the entire section of code if necessary).
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using ININ.IceLib.Connection;
using ININ.IceLib.Statistics;
using MarqueeData;
using MarqueeData.Workgroup;
namespace IceLibExtension
{
public class AdvancedWorkgroupDataManager
{
Session session;
public AdvancedWorkgroupDataManager(String host)
{
IceConnection iceConnection = new IceConnection();
session = iceConnection.GetSession(host);
}
switch (watchedKey.Identifier.Uri)
{
case "ININ.Workgroup:NumberAvailableForACDInteractions":
workgroupStats_Workgroup.Workgroup_NumberAvailableForACDInteractions = statValue.GetDisplayString();
break;
case "ININ.Workgroup:InteractionsWaiting":
workgroupStats_Workgroup.Workgroup_InteractionsWaiting = statValue.GetDisplayString();
break;
case "ININ.Workgroup:OnInboundACDInteractions":
workgroupStats_Workgroup.Workgroup_OnInboundACDInteractions = statValue.GetDisplayString();
break;
case "ININ.Workgroup:InteractionsConnected":
workgroupStats_Workgroup.Workgroup_InteractionsConnected = statValue.GetDisplayString();
break;
case "ININ.Workgroup:TotalAgents":
workgroupStats_Workgroup.Workgroup_TotalAgents = statValue.GetDisplayString();
break;
case "ININ.Workgroup:AgentsAvailable":
workgroupStats_Workgroup.Workgroup_AgentsAvailable = statValue.GetDisplayString();
break;
case "ININ.Workgroup:LongestAvailable":
workgroupStats_Workgroup.Workgroup_LongestAvailable = statValue.GetDisplayString();
break;
case "ININ.Workgroup:LongestOutboundACDInteraction":
workgroupStats_Workgroup.Workgroup_LongestOutboundACDInteraction = statValue.GetDisplayString();
break;
case "ININ.Workgroup:AgentsLoggedIn":
workgroupStats_Workgroup.Workgroup_AgentsLoggedIn = statValue.GetDisplayString();
break;
case "ININ.Workgroup:AgentsLoggedInAndActivated":
workgroupStats_Workgroup.Workgroup_AgentsLoggedInAndActivated = statValue.GetDisplayString();
break;
case "ININ.Workgroup:OnOutboundACDInteractions":
workgroupStats_Workgroup.Workgroup_OnOutboundACDInteractions = statValue.GetDisplayString();
break;
case "ININ.Workgroup:OnOutboundACW":
workgroupStats_Workgroup.Workgroup_OnOutboundACW = statValue.GetDisplayString();
break;
case "ININ.Workgroup:LongestWaitTime":
workgroupStats_Workgroup.Workgroup_LongestWaitTime = statValue.GetDisplayString();
break;
case "ININ.Workgroup:LoggedIn":
workgroupStats_Workgroup.Workgroup_LoggedIn = statValue.GetDisplayString();
break;
case "ININ.Workgroup:LongestInboundACDInteraction":
workgroupStats_Workgroup.Workgroup_LongestInboundACDInteraction = statValue.GetDisplayString();
break;
case "ININ.Workgroup:LongestNonACDInteraction":
workgroupStats_Workgroup.Workgroup_LongestNonACDInteraction = statValue.GetDisplayString();
break;
case "ININ.Workgroup:LongestTalkTime":
workgroupStats_Workgroup.Workgroup_LongestTalkTime = statValue.GetDisplayString();
break;
}
#ArchitectureandDesign#Reporting/Analytics------------------------------
Thanks,
Shane
------------------------------