Integration Points
There are two key integration points with this architecture design:
- The PureConnect ICWS Service for RealTime metrics
- The PureConnect CIC database
The ICWS integration (PureConnect Adapter)
Data Available from the ICWS is loosely based on the Statistics Catalog provided by the Genesys, for the latest revision of the Statistics Catalog. See this link: Statistics Catalog. eMite categorises the available statistics based on the modules it uses
Module Name | Module Description |
---|---|
Interactions | Subscribes to the interaction data looks at key information such as AcdSkillSet, CallState, ConnectionTime, WorkGroup Assigned, Agent Assigned, Acd Wait Reason, Termination Time (to clear the message) |
QueueStatMetrics | Subscribes to the Queue Stat Metrics available within the Statistics Catalog. |
UserStatMetrics | Subscribes to the User Stat Metrics within the Statistics Catalog |
UserStatus | Subscribes to the User Statuses, looks at key information such as Agent Name, Agent Status |
WorkGroupStatMetrics | Subscribes to the WorkGroup Stat metrics available within the Statistics catalog. |
PureConnect Adapter Behaviour
The PureConnect Adapter utilizes the ICWS pub-sub model of retrieving real time data. It's adapter acts like a subscriber and listens to the any new messages or changed states associated to the subscriptions. It's first step is to attempt to login using the credentials provided, once authenticated it will subscribe to the relavant API's (based on the Module name) it will keep a running thread associated to the specific API to provide real time notifications.
Notes
Multiple ICWS Services - It's common that there are multiple hosts associated to ICWS; usually when the ICWS hosts switch - it provides an error message to notify the subscriber that an alternate host is being used. In the scenario when it switches it; there will be a period of time where the subscriptions will need to be re-subscribed. This might affect dashboards for a minute.
The PureConnect CIC Database integration
Data Available:
Fact Queries | Description |
---|---|
AgentActivityLog | Provides data around the agent states; usually stored within the Agent Activity tables within the CIC Database |
AgentHistorySummary | Based on the Interval Queue data using the Agent Summary Views |
AgentHistoryDetail | Based on the Interval Queue data using the Agent Detail Views |
QueueHistorySummary | Based on the Interval Queue data using the WorkGroup Summary Views |
QueueHistoryDetail | Based on the Interval Queue data using the WorkGroup Detail Views; "CHKey4" being the key shown (in some contact centres this is used as a Skill field) |
InteractionDetailSegments | Based on the Interaction Detail Data, key components of interaction data is broken down into 'Segments' to provide detailed analysis on transitions of segments within an interaction. |
InteractionDetailSummary | Based on the Interaction Detail Data, key aggregated statistics associated to the interaction for faster statistical analysis over standard metrics. |
Notes
Availability - Note that this data's available can be delayed up to 30 minutes; there is a key dependancy on the PureConnect PMQ (Persistent Messaging Queue) on pushing this data into the CIC Database. eMite will poll the latest data that is available at 5 minute intervals; however is still dependant on the availablility within the database.
Granularity - pertains to the Interval Queue data dependant indexes: the granuarity is specified by PureConnect's settings, if the intervals are setup to be a minimum of 30 minutes; all our data Interval Queueu data related indexes will be aggregated at 30 minute intervals.
Application Scaling (Multi-Tier Infrastructure)
The recommended method of scaling the solution once the single tier infrastructure has been maxed out; is to naturally introduce multiple servers. To aid this process; it's easiest to understand how to setup each server and their server specifications based upon the core functions of each eMite component and understand which resource it is dependent upon.
Component | Resource Bottleneck | Comments |
---|---|---|
PureConnect Adapter | CPU | Each module uses a single thread based upon a listening subscription. |
PureConnect CIC Database Integration | RAM | Each fact query will poll data from the database, stores the data in memory and pushes it into the persistent ES store |
RTBI Framework + Index Server | CPU | Handles requests from the dashboard and translates requests to Elasticsearch, dependant upon IIS. |
Elasticsearch | RAM + Disk | Persistant data store; operates better with Linux based servers |
Dashboard | CPU | Direct interface and handles requests from Users/Wallboards, depependant upon IIS. |
eMite Scheduler | CPU | Fires/Schedules jobs based on configurations, runs Adapters. Low resource profile, takes from half to 1 CPU thread. |
eMite Configuration DB | CPU | SQL Server Express capability. Low resource profile, takes up 1 CPU thread. |
Example Configuration 1: Historical Analysis Orientated Configuration based on 2 servers
Server 1 - eMite Dashboard + Data Onboarding Server
Key Components:
Dashboard
eMite Scheduler
eMite Configuration DB
PureConnect Adapter
RTBI Framework + Index Server
Server 2 - Dedicated Elasticsearch host
Elasticsearch
Example Configuration 2: Real-Time Dashboard Orientated Configuration based on 2 servers
Server 1 - eMite Dashboard
Key Components
Dashboard
eMite Configuration DB
Server 2 - eMite Onboarding Server
eMite Scheduler
RTBI Framework + Index Server
Elasticsearch
PureConnect Adapter
CIC Database Integration