Presentation is loading. Please wait.

Presentation is loading. Please wait.

EIM/WIM Architecture & Design

Similar presentations


Presentation on theme: "EIM/WIM Architecture & Design"— Presentation transcript:

1 EIM/WIM Architecture & Design
Goran Selthofer Cisco TAC

2 Agenda Deployment Overview Email & Chat Task Routing Media Blender
Virtualization Components & Services & Chat Task Routing Standalone Integration with CCE Exception Queue Media Blender Callback Sizing & Best Practices Preferred “Sticky” Agent Understanding Handle Time  Moved to Appendix What’s New in 9.0(2)

3 Deployment Overview Module intended to give a high level overview

4 Platform Bare-metal deployments still supported, but not recommended
SRND ONLY for bare-metal server hardware requirements Virtualized Hardware Virtualized deployments always follow the DocWiki’s hardware requirements: UCS Tested Reference Configuration (TRC) Specs-based 3rd party on Intel Xeon Virtualized Deployments VMware ESXi 5.0 Hypervisor Pre-sized OVA templates for all size deployments, small to large (including_OVA/OVF_Templates)#Cisco_Unified_ _Interaction_Manager_ and_Web_Interaction_Manager Explain what an OVA is VMware ESXi

5 Example OVA Template Sets
Application, OVA Capacity and Notes+Download Link Contents No of VM's to deploy of each component vCPU vDisk vRAM/Memory EIMWEIMWIM_Template_4_v9.0.ova Deployed Template Name: CUEIM-WIM_CIM9_4 Deployment Option: 200 agents - Chat only  or 200 agents - and Chat All components except web  Web Server 1 8 1 x 80GB 16 GB  1 GB EIMWIM_Template_5_v9.0.ova CUEIM-WIM_CIM9_5 250 Agents - and Chat or 120 Agents - BC and CallBack EIMWIM_Template_9_v9.0.ova CUEIM-WIM_CIM9_9 1250 Agents - and Chat or 600 Agents - BC and CallBack File Server 1 2 1 x 80GB 2 GB Messaging Server Application Server Web Server 1 GB Services Server 4 GB Database Server 1 x 80 GB for OS and 1 x 150 GB for DB Here are a few of the EIM/WIM OVA Template options. As of the 9.0(1) release there are 9 options, ranging from single-server to full distributed deployment. Let’s focus on the basic Distributed model first. Note that the only difference between this model and the 9th model is the number of web servers and application servers. These two components are key in scaling for additional agents. "Let's deploy Template 5!" We will use this for the rest of this session 1:1 App:Web File Server 1 2 1 x 80GB 2 GB Messaging Server Application Server 5 Web Server 1 GB Services Server 8 GB Database Server 8 1 x 80 GB for OS and 1 x 438 GB for DB 16 GB

6 Standardization in 9.0(2) Reduced the overall number of supported configurations in SRND Less confusion in the field Less .OVA templates to consider Addressed gaps with port requirements for EIM WIM components Supported Configurations: < = 200 standardized agents Use LITE Configuration > 200 and < = 250 standardized agents Use 1 Web/App Fully Distributed Configuration > 250 and <= 1250 standardized agents CPU and RAM will remain the same as that for the 1250 configuration Only # of Web/App Server will vary for every 250 increment (e.g., 500 = 2, 750 = 3, 1000 = 4, 1250 = 5)

7 Q1. True or False? The Cisco DocWiki provides solution reference network design and sizing requirements for EIM/WIM in a virtualized environment. TRUE The traditional PDF-based SRND is to be used for bare-metal deployments only.

8 EIM/WIM Distributed Deployment
Windows Messaging Server Windows Services Server Windows Application Server Windows Web Server Windows File Server The heart of the EIM/WIM deployment is the Database Server. As of 9.0, attachments are stored in the database. Prior to 9.0, they were stored on the File Server. EIM/WIM is a very database-intensive application, so database server health is crucial. Then comes the file server, where application files are stored. Prior to 9.0, all server logs were homed to this server. In 9.0, they are now kept local to each server. The Services Server is where all of the EIM/WIM process run. We’ll get into those more in the next section. The Application servers handle the Java sessions for both agents and customer chats. If you have multiple Application Servers, the Messaging Server keeps them all in sync with each other. The Web Server is the entry point for agents and customer chats. It is essentially a passthrough to the Application Server. And finally, this will be our agent today. Look how happy he is! Each of these components talks to each other And they all talk to the Application Server Windows Database Server

9 EIM/WIM Component Overview
Server Purpose Operating System Components Scaling Database Server Stores EIM/WIM Configuration, Reporting, System Data, Attachments Microsoft Windows 2008 R2, 64 bit, Enterprise or Standard Microsoft SQL Server 2008 R2, 64 bit, Enterprise or Standard; Microsoft SQL Server Clustering Supported File Server Stores Web, Configuration, Data Files Standard UNC File Share 1 in Deployment Services Server Runs all ‘Services’, each with one to many ‘Instances’ Microsoft SQL Server JDBC Driver v3.0; JDK 1.7 (Update 2+) Application Server JSP/Servlet Engine & Enterprise JavaBean Container; Core Business Logic Microsoft SQL Server JDBC Driver v3.0; JBoss 7.1.2; JDK 1.7 (Update 2+) Up to 5 Web/Application Server Pairs All Servers -CSA Policy 4.0(4)-W -Anti-virus: McAfee VirusScan Ent. V 8.7 OR Symantec AntiVirus Corporate Edition 10.1 Database Server -MSSQL Enterprise – creates separate reporting db -Four Databases --eGMasterDB – System Level Information --eGActiveDB – Business Level Information (Partition DB) --eGArchiveDB – Archived Information --eGReportsDB* – Reporting Information Application Server -Business logic in JAVA classes -JSP/servlets interacte with business objects through business client layer -these objects interact with db to represent applicable business logic -All external user load applied to application servers Services Server -if scaling needed, must scale vertically – more ram, more cpu’s, etc. -‘Services’ java.exe or javaw.exe processes -‘Services’ managed by Distributed Service Manager (DSM) -> like the UCCE Node Manager - Each ‘Service’ contains multiple ‘instances’, used for increased processing power - High Availability achieved through VMware HA

10 EIM/WIM Component Overview
Server Purpose Operating System Components Scaling Messaging Server Manages Asynchronous Communication between Server Side Components and the User (Agent/Customer) Interface Microsoft Windows 2008 R2, 64 bit, Enterprise or Standard JBoss 7.1.2; JDK 1.7 (Update 2+) 1 in Deployment Web Server Serves Static Content to Web Browsers Microsoft IIS 7.5 Up to 5 Web/Application Server Pairs User Desktop Allows Access to Agent, Supervisor, Administrator, or System Consoles Microsoft Windows XP (SP3+); Microsoft Windows Vista (SP2+); Microsoft Windows 7 Internet Explorer 7.0 or 8.0 or 9.0, Java JRE 1.6u30+ or 1.7 with “Allow insecure versions” option 1 per Agent All Servers -CSA Policy 4.0(4)-W -Anti-virus: McAfee VirusScan Ent. V 8.7 OR Symantec AntiVirus Corporate Edition 10.1 Messaging Server -Application servers communicate w/ the messaging server for system transactions -Java messaging clients use publisher/subscriber model to interact with each other -messaging server controls these interactions Web Server -Use a load balancer to distribute load evenly across multiple web servers User Desktop -IE 9.0 supported in EIM/WIM v9

11 Services

12 Java and JBoss EIM/WIM uses an open-source Application server and servlet engine requires Development Kit EIM/WIM Services also require Development Kit

13 Service & Process Matrix
Server Cisco Service JBoss JDK Java Processes Web Server No n/a Application Server Yes 1 Java.exe Services Server > 4 Java.exe* > 12 Javaw.exe* Messaging Server Database Server File Server Varies depending on number of EIM/WIM services enabled * Number of java.exe and javaw.exe depends on EIM/WIM ‘Services’ being run.. -Combining Server types may alter the number of Java.exe processes, i.e. an App/Msg combo would have 1 Java.exe, larger memory footprint An EIM/WIM Service is called a process in the system Admin UI. Each process maps to a Java.exe or Javaw.exe process on the Services server.

14 Key Components – Standalone Task Routing
IIS Web Server – Access point for agents, administrators, and chat customers Serves sessions to JBoss Application Server (“passthrough”) Corporate mail server Exchange, Lotus, etc. NOT EIM! Retriever – “Retrieves” incoming s from corporate mail server POP3 or IMAP protocols Dispatcher – “Dispatches” outgoing s to corporate mail server SMTP or ESMTP protocols Workflow (Rules-Engine) – Processes incoming s and routes to queues Agent Assignment – Assigns CHAT activities in queue to available agents An external corporate mail server is required (yes some customers use GMail). EIM is not its own server! Workflow is essentially an EIM Routing Script

15 Standalone Task Routing – Agent Login
Windows Messaging Server Windows Services Server Windows Application Server Windows Web Server Windows File Server Agent logs in through IIS to the default partition Authentication occurs against the EIM/WIM Database Windows Database Server

16 Standalone Task Routing – Email
Windows Messaging Server Retrieved from IMAP/POP3 Case created in DB: [#12345] Inbound Workflow applied Routed to Queue Assigned to Agent Windows Services Server RX / DX Windows Application Server Windows Web Server Windows File Server Retriever, Workflow, and Agent Assignment processes run on Services Server Windows Database Server

17 Standalone Task Routing – Chat
Entry Point – Interface used by customers to enter chat queue Fields can be customized and used in routing variables address collected by default for post-chat transcript Web Server must reside in DMZ for customer access Agent sessions can share the same Web Server This is also done when agents will access over the internet (i.e. outsourcer) Typically deployed on a dedicated server, i.e. UCS C220M3 or old MCS Alternatively, can deploy a second Web/App Server pair within the corporate firewall Windows Web Server

18 Standalone Task Routing – Chat
Windows Messaging Server Windows Services Server RX / DX Internet Agent Connections Windows Application Server Windows Web Server Windows File Server Customers must access a Web Server for chat entry points, so typically this is placed on a dedicated host in the DMZ. Agents can still share this same webserver, particularly if they are from an outsourcer and access over the internet. Alternatively, many customers deploy a parallel pair of web/app servers behind the firewall that agents use Note that there is no workflow for chat activities! Local Agent Connections Windows Application Server Windows Web Server Windows Database Server

19 Standalone Task Routing – Chat
Windows Messaging Server Customer Entry Point Case created in DB: [#67890] Routed to Queue Assigned to Agent Windows Services Server RX / DX Internet Agent Connections Windows Application Server Windows Web Server Windows File Server Customers must access a Web Server for chat entry points, so typically this is placed on a dedicated host in the DMZ. Agents can still share this same webserver, particularly if they are from an outsourcer and access over the internet. Alternatively, many customers deploy a parallel pair of web/app servers behind the firewall that agents use Note that there is no workflow for chat activities! Local Agent Connections Windows Application Server Windows Web Server Windows Database Server

20 Q2. Which of the following components does NOT need to be installed on the EIM/WIM Application Server? Microsoft SQL Server JDBC Driver JBoss Internet Information Services (IIS) Java Development Kit (JDK) IIS should only be installed on the Web Server.

21 Q3. True or False? EIM can function as its own server. Customers can optionally integrate EIM with an existing corporate mail server, such as Exchange or Lotus. FALSE An external corporate mail server that supports IMAP/POP3 and SMTP is required (even Gmail can be used). EIM is not its own server!

22 Q4. Which is the correct task flow for standalone emails?
Retriever Inbound Workflow Create Case Route to Queue Assign to Agent Retriever Create Case Inbound Workflow Route to Queue Assign to Agent Internet Magic Assign to Agent Entry Point Inbound Workflow Create Case Route to Queue Assign to Agent Entry Point Create Case Inbound Workflow Route to Queue Assign to Agent

23 Integration with CCE

24 Key Components – CCE Integrated Routing
Data Access Layer (DAL) – JDBC/ODBC access to CCE AWDB Agent authentication Integrated objects (Primary/Secondary CTI Server address, MRDs, Routing Scripts, etc) External Agent Assignment Service – Request routing instructions from MR PIM MR PIM passes request to CCE Router, which runs Routing Script and returns destination agent EAAS replaces AAS from Standalone routing Listener – Communicates agent availability to CTI Server Distinguishes Ready/Not Ready for /Chat --Listener <-> Agent PG: monitor agents for routing of tasks -EAAS <-> MR PG: queuing tasks to UCCE, routing task to agent -App <-> AW DB: integration validation (when logging into Admin console), disabled/deleted agents (when logging into agent console), maps relevant config from aw to eim/wim db, Verify Agent Login Credentials

25 EIM/WIM to UCCE Object Mappings
EIM/WIM User becomes associated with EIM/WIM queue based on UCCE Agent's Skill Group membership Notes: --MRD can have multiple queues, because you can have multiple script selectors. --Queue = a MRD & script selector. --Application instance identifies the IP address of an EIM/WIM deployment that is integrated with UCCE. It is required for downloading configuration objects UCCE and mapping them to EIM/WIM. --An application path opens a communication channel with a CTI server, associated with an Agent PG, for agent and task status reporting. --A media class is required for creating Media Routing Domains (MRDs). It helps categorize the MRDs based on media type (i.e. ) --An MR PG handles new activity routing requests initiated by Cisco Unified Interaction Manager, over the connection established by the embedded MR PIM (side A or side B)

26 EIM/WIM to UCCE Object Mappings
MediaClass MRD1 MRD2 MRDX Application Path For Agent PG Peripheral – MRD1 Peripheral – MRD2 Application Instance MRD SG 1 SG2 SGX EIM/WIM User UCCE Agent EIM/WIM User Group EIM/WIM User becomes associated with EIM/WIM queue based on UCCE Agent's Skill Group membership Notes: --MRD can have multiple queues, because you can have multiple script selectors. --Queue = a MRD & script selector. --Application instance identifies the IP address of an EIM/WIM deployment that is integrated with UCCE. It is required for downloading configuration objects UCCE and mapping them to EIM/WIM. --An application path opens a communication channel with a CTI server, associated with an Agent PG, for agent and task status reporting. --A media class is required for creating Media Routing Domains (MRDs). It helps categorize the MRDs based on media type (i.e. ) --An MR PG handles new activity routing requests initiated by Cisco Unified Interaction Manager, over the connection established by the embedded MR PIM (side A or side B) ScriptSelector 1 EIM/WIM Q1 EIM/WIM Q2 ScriptSelector 1

27 EIM/WIM to UCCE Object Mappings
UCCE Agent EIM/WIM User UCCE Skill Group EIM/WIM Groups EIM/WIM User becomes associated with EIM/WIM queue based on UCCE Agent's Skill Group membership Notes: --MRD can have multiple queues, because you can have multiple script selectors. --Queue = a MRD & script selector. --Application instance identifies the IP address of an EIM/WIM deployment that is integrated with UCCE. It is required for downloading configuration objects UCCE and mapping them to EIM/WIM. --An application path opens a communication channel with a CTI server, associated with an Agent PG, for agent and task status reporting. --A media class is required for creating Media Routing Domains (MRDs). It helps categorize the MRDs based on media type (i.e. ) --An MR PG handles new activity routing requests initiated by Cisco Unified Interaction Manager, over the connection established by the embedded MR PIM (side A or side B) UCCE MRD + Script Selector Pair EIM/WIM Queue

28 ICMAgentID v EIM/WIM AgentID
EIM/WIM Logs Referencing ICMAgentID are Actually Referring to Agent’s SkillTargetID EIM/WIM also Stores a Local AgentID Integrated Agents have both, Standalone Agents have EIM/WIM AgentID System Administrator (pa/sa) are essentially Standalone Users EIM/WIM: egpl_user, egicm_user tables in eGActiveDB Use eGMasterDB for sa info ICM: t_Agent Query eGActiveDB to return the eGAgentID and ICMAgentID of Integrated agents: select * from egicm_user LEFT OUTER JOIN egpl_user on egpl_user.user_id = egicm_user.user_id EIM/WIM Database ICM Database

29 CCE Integrated Routing – Agent Login
Windows Messaging Server Windows Call Server Windows Services Server RX / DX RX / DX Internet Agent Connections Windows Application Server Windows Web Server DAL Windows File Server Integrated agents authenticate against the CCE AWDB instead of the CIM Database Windows Data Server Local Agent Connections AWDB Windows Application Server Windows Web Server Windows Database Server

30 CCE Integrated Routing – Email
Windows Messaging Server Windows Call Server Windows Services Server RX / DX RX / DX Retrieved from IMAP/POP3 Case created in DB: [#12345] Inbound Workflow applied Internet Agent Connections Windows Application Server Windows Web Server DAL Windows File Server Windows Data Server Local Agent Connections AWDB Windows Application Server Windows Web Server Windows Database Server

31 CCE Integrated Routing – Email
Windows Messaging Server Windows Call Server MR PIM CTI Svr Windows Services Server EAAS RX / DX RX / DX Listener Retrieved from IMAP/POP3 Case created in DB: [#12345] Inbound Workflow applied Sent to ICM Routing Script Assigned to Agent Internet Agent Connections Windows Application Server Windows Web Server DAL Windows File Server Windows Data Server Local Agent Connections AWDB Windows Application Server Windows Web Server Windows Database Server

32 CCE Integrated Routing – Chat
Windows Messaging Server Windows Call Server MR PIM CTI Svr Windows Services Server EAAS RX / DX RX / DX Listener Internet Agent Connections Windows Application Server Windows Web Server Customer Entry Point Case created in DB: [#12345] Sent to ICM Routing Script Assigned to Agent DAL Windows File Server Windows Data Server Local Agent Connections AWDB Windows Application Server Windows Web Server Windows Database Server

33 Match the integrated EIM/WIM component with the CCE component
External Agent Assignment Service Admin Workstation DB Data Access Layer Media Routing (MR) PIM Listener Service CTI Server

34 Exception Queue

35 What is the Exception Queue?
EIM Standalone Queue that serves as a bucket for all s meeting certain conditions: Delivery Exceptions – Rudimentary spam filter (sender or subject line filter) System routing failures – No active inbound workflow, CCE script error, etc. Integrated agents cannot access standalone queues Only Standalone users or Integrated users with the Administrator role Depending on the failure, some s can be transferred to the Integrated Queue EIM will NOT request CCE routing instructions for Delivery Exception s Transferring these s to integrated queues gives the misconception that s are “stuck in queue” Administrators must handle these s, or create an Alarm Workflow to automatically handle them How do I route the s to agents?

36 Alarm Workflows Inbound Workflows run when an activity initially enters the system; Alarm Workflows run periodically (hourly, daily, weekly, etc) Alarm workflows can process activities in the system and perform actions such as notifications, escalations, reassignments, etc. depending on the specified conditions. Each deployment comes with an out-of-the-box "Exception Queue Alarm Workflow" that notifies administrators of activities pending in the exception queue. An Alarm Workflow can be created to automatically handle Delivery Exception s in the Exception Queue In this example, we simply mark them as Complete. Step-by-Step: This workflow runs periodically (i.e. every hour). The branch node checks for activities flagged as Delivery Exceptions (subtype 4 or 5) If the branch rule is matched, the activity is marked as complete in the Completion node.

37 Q5. True or False? The Exception Queue is a standalone queue that integrated users can only access via the Administrator role. TRUE The Administrator Role is the only stock role with the necessary permissions to access messages in the Exception Queue.

38 Media Blender

39 Cisco Media Blender Provides Web Callback capability
Acts as an Event Bus, Sharing Software Events between WIM and CCE Web Callback – Customer requests voice call through web form Can be immediate (pending agent availability) or delayed for a user-specified period of time Blended Collaboration deprecated starting in 9.0(2). CMB no longer used by EIM/WIM. All references removed from UI. CMB will still ship with EIM/WIM media but will only be used by CCE for Web/Scheduled Callback feature When a medium notices that an event has taken place; for example, when an ACD medium receives CTI notification of a queued call, it packages this event into a unified format and gives the event to Cisco MB, which then shares the event with other media. For EIM/WIM/UCCE, CMB triggers the Agent PG to place calls on behalf of WIM for Delayed/Callback. - Note: properties Files are located by default on the CMB server C:\CiscoMB\servlet\Properties\Blender Positioning of alternatives to BC (in case of future demand): Phone + Cobrowse available with Cisco – eGain SolutionsPlus (S+) Chat to Voice escalation on the roadmap for both EIM WIM and S+ Start with Chat, Escalate to Voice – a more compelling use case than BC!

40 EIM/WIM Component Overview
Server Purpose Operating System Components Scaling Cisco Media Blender Event Bus between WIM and UCCE Microsoft Windows 2003 (SP2 +), 32 bit, Enterprise or Standard Apache Tomcat ; JDK 1.6 (Update 17+) 1 in Deployment Do not install on Agent PG – conflict with Java/JTAPI CMB Version used in 4.4(1) and 9.0 All Servers -CSA Policy 4.0(4)-W -Anti-virus: McAfee VirusScan Ent. V 8.7 OR Symantec AntiVirus Corporate Edition 10.1 Cisco Media Blender

41 Key Components –Callback
Entry Point – Interface used by customers to submit request Fields can be customized and used in routing variables Phone Number used for Callback Blender API – Intermediary between Listener and CTI Server Calls are placed directly from the agent’s CTI desktop when available

42 Web Callback Internet Agent Connections Local Agent Connections MR PIM
Windows Messaging Server Windows Call Server MR PIM CTI Svr Windows Services Server EAAS RX / DX Listener Windows Media Blender Internet Agent Connections Windows Application Server Windows Web Server DAL Windows File Server Windows Data Server Local Agent Connections AWDB Windows Application Server Windows Web Server Windows Database Server

43 Sizing & Best Practices

44 Sizing All sizing limits assume agents handle 1 concurrent chat and up to 12 s per hour Most customers want agents to multitask with multiple activities (5 chats) and higher productivity (20 s) More concurrent tasks per agent = Less concurrent agents supported in the deployment! SRND: Must use Standardized Agent calculations when sizing a deployment More Standardized Agents = More Application Server / Web Server pairs Now that we understand task routing, we want our agents to do more concurrently! Chat sessions are the most impacting to load. Each chat session is essentially the equivalent of an agent session.

45 Agent Sizing Example SRND Agent Count Actual Agent Count Keep 12 s per hour - Meaning, if your agents require 4 concurrent chats, and you have 200 agents, youre actually looking at the 750 standardized agent deployment model Each chat session is essentially counted as another agent session.

46 Agent Concurrent Task Limits
Concurrent Task Limit set on a per queue, per agent basis Consistent across the MRD. When an agent belongs to multiple skill groups from the same MRD, the highest Concurrent Task Limit is used for ALL skill groups/queues Managed Per Queue, per Agent, found under the queue properties pane. DBottoms will have be allowed 10 concurrent s in both the EIM_MRD queue and the EIM_SVC queue. The 1 in EIM_MRD will be trumped by the 10 in EIM_SVC because they are both part of the same MRD.

47 System Concurrent Task Limit
Max Task Limit for media type set in CCE MRD “Max Calls in Queue” 5000 for all media types in 4.x, 15,000 for in 9.x CCE will not allow more activities to be queued, will trigger routing failure Concurrent_task_limit = activities currently queued in UCCE for MRD UCCE will not allow more activities than the MRD ‘Max Calls in Queue’ value to be queued -Change value = cycle EAAS Process & Instance for EIM/WIM to pick up change --negative consequences – double counting of activities -Note that Activities in the Exception Queue count toward this limit agents concurrent task limit – value cannot be greater than the MRD defined max task limit – will get error if try to configure otherwise

48 Planning for Growth Database Growth File Server Growth
Incoming & Outgoing Volume per Month Average Size of Each (KB) Excludes attachments Computational Growth Rates Published in EIM/WIM SRND Number & Size of Attachments for Incoming & Outgoing s File Server Growth Rate of Growth of Log Files Future Agent Growth Requires Discussion with Customer Future Redundant Components -DB based on two factors -File server proportional to two factors Redundancy: -DB Clustering -Web/App

49 Multiple Lines of Business Process vs. Instance
Each process contains one to many instances. Only the System Administrator has access to the processes. Allows individual lines of business to control their own instances without impacting others. Multiple Lines of Business Process vs. Instance Process management can only be done through the System Admin UI (i.e. partition 0). Individual Lines of Business Administrators can have their own Instances. By restricting permission to an instance, they will not be able to impact other instances under the same process.

50 Visually…

51 Process Administration Best Practice
Set Process start type to “On Demand.” Process will start when an instance requires it. Best Practice: Set start type to “On Demand” for a process,

52 Instance Administration Best Practice
Automatic Instance startup requires no manual intervention on system restart Best Practice: Set start type to “Automatic” for an instance.

53 Preferred “Sticky” Agent

54 Preferred Agent – What is it?
Maintain single agent through life of customer case Establishes consistency and relationship between customer and agent Wait specified time, then release to any available agent Example script: Preferred Agent - routed to an agent that has previously worked on the case. EIM/WIM populates the preferredAgent field of the NEW_TASK request with the agents ICM Agent id

55 Preferred Agent Configuration
Create UCCE Enterprise Skill Group Create UCCE Enterprise Route

56 Preferred Agent Configuration
s queue only when agent is logged in, or wait some time (weekend) until they do log in Peripheral -> <Select Agent by SkillTargetID> Agent Expression -> Call.PreferredAgentID (from NEW_TASK msg) Ensure ‘Queue to Agent if Not Logged In’ checked if the s should be queued while the agent is not available With Packaged CCE, the Enterprise Skill Group List Tool is removed from the CCE Configuration Manager. Customers would need to change their deployment type back to a CCE deployment type to access this tool, create the Enterprise SG, and then change again back to PCCE.

57 Preferred Agent Configuration
Enable Personalized activity assignment in EIM/WIM Administration Console Administration > Partition: default > Settings > Department > Department Setting Groups > Attributes tab Note on when Preferred Agent Variable Populated -“Logged In" - the agent is logged in -"Always" - always -“Disabled” - not populated ever

58 Preferred Agent Logging
Route Request sent with Preferred Agent’s Skill Target ID (STID) 15:19:19 Trace: Application->PG: Message = NEW_TASK; Length = 78 bytes DialogueID = (2) Hex PreferredAgent = (5030) Hex a6 ECC Variable Name: user.cim.activity.id Value: 2757 Routing Instructions sent, task destined for Preferred Agent as requested 15:19:19 Trace: PG->Application: Message = DO_THIS_WITH_TASK; Length = 90 bytes Agent = (5030) Hex a6 AgentInfo: 1002 - Now when a customer replies to an that an agent has handled, EIM/WIM sends the NEW_TASK request with the case owners ICM Id in the PreferredAgent Field

59 Preferred Agent Reporting
s queued to ‘Queue to Agent’ will not count as queued to skill group for skill group reporting Call Type variables to count s queued to a particular script s queued at the “Queue to Agent” node will NOT count as being Queued to the Skill Group in Webview reports  make use of Call Type variables to get the total number of s queued for a particular script, and then report off the Call Type

60 What’s New in 9.0(2)

61 EIM WIM 9.0(2) Browser Support
OS Agent Customer IE 8, 9, 10 XP SP3, Vista, Windows 7 Firefox 3 and higher XP SP3, Vista, Mac OS 10.4, 10.5, 10.6 Safari 4 and higher Mac OS 10.4, 10.5, 10.6 Chrome 5 and higher All OS’s that Chrome is compatible with Opera 9 and higher All OS’s that Opera is compatible with Finesse 9.1(1), 10 See System Requirements Guide for Finesse, for compatible OS’s

62 Blended Collaboration Discontinued
Effective with the 9.0(2) release Blended Collaboration (BC) is a unique use case: Not the same as Universal Queue, but only a small subset of it. Not the same as Web/Scheduled Callback. Mainly allows Voice Call and Page Sharing to happen in parallel. No measurable adoption of BC among existing customers Complexity around BC and Cisco Media Blender (CMB) configuration Limitations with CMB failover and redundancy Alternative Options to using BC for EIM WIM customers: Voice + eGain Cobrowse (through Professional Services engagement) Future plans exist to support “Chat to Voice escalation”

63 Email/Voice Multitasking
Agents are now able to continue handling s that were present in the Main Inbox prior to being routed a voice call. Department Level Setting 0 => Voice interrupts new and existing s (default behavior) 1 => Voice interrupts new s only (multitasking enabled for existing s)

64 Email/Voice Multitasking
Agents are now able to continue handling s that were present in the Main Inbox prior to being routed a voice call. Department Level Setting 0 => Voice interrupts new and existing s (default behavior) 1 => Voice interrupts new s only (multitasking enabled for existing s) What happens at the System Level? 0 => EIM WIM accepts incoming AGENT_INTERRUPT_ADVISORY event from CTI Inbox/Reply buttons in the EIM WIM agent console are disabled UCCE will not assign new s/chats until phone call is completed 1 => EIM WIM rejects incoming AGENT_INTERRUPT_ADVISORY event from CTI Inbox/Reply buttons in the EIM WIM agent console continue to be function Agent can send/complete existing s

65 Email/Voice Multitasking
Active Voice Call Ability to Handle Existing s

66 Finesse Gadget Enhancements
Use OpenSocial standards Requirement for every Finesse gadget Ability to listen/react/respond to Finesse events Finesse Tab Switching Auto-refresh the agent’s view in Finesse when a tab is unloaded Pass context between different tabs as needed etc New deployment steps same as that for every 3rd party gadget Same steps as published in Cisco Finesse documentation (3rd party gadget deployment model) 6 files apply (instead of 1 - previously) SSL Support now available Finesse configured with SSL EIM WIM configured with SSL Finesse always invokes gadget with HTTP (known Cisco Finesse limitation)

67 Finesse Gadget Enhancements

68 SolutionsPlus SolutionsPlus (S+) is a new Cisco/eGain offering
S+ runs in parallel with the EIM/WIM OEM offering (different SKU) OEM is chat/ , optional customizations. eGain S+ is full eService suite S+ brings “additional” eGain products into the Cisco channel, with UCCE & Finesse Integration eGain Mail & Chat (identical to Unified EIM/WIM) eGain Offers eGain Video Chat eGain Cobrowse eGain Chatbot For more information:   eGain Knowledge eGain Web Self Service eGain ClickToCall eGain Community eGain Social (in Phase 2) eGain CallTrack (in Phase 2)

69 50 and Tactical FIXES CREATE CHAOS
Tactical customer experience projects running at one time at an eGain client! Tactical fixes with legacy CRM systems or point products put you back in capabilities and create chaos. Here’s an example. One Fortune 100 company had over 50 separate digital customer experience initiatives going on across functions, product lines, and channels, creating chaos within their IT teams and disconnected experiences for their customers.

70 ABOUT EGAIN WHAT WE DO WHO WE ARE Multichannel Customer Engagement
Interactive sales Multichannel service Knowledge management Trusted cloud solutions WHO WE ARE Founded in 1997 Global CRM web Customer Service leader Offices in USA, EMEA and APAC eGain was founded in the late 90’s and we’re a leading provider of cloud customer engagement solutions. Our solution is the Customer Engagement Hub that includes a unified platform and applications for multichannel customer engagement and knowledge management for sales and service. Something that we are proud is that over the years, we have been consistently rated #1 by analysts. For both on the completeness of products and vision, and the ability to execute.

71 Summary Deployment options and relevant sizing
Services and key components & Chat CCE Integration Web Callback Sizing and Best practices Troubleshooting Training delivered to global TAC, AS, HTTS, PDI: Cisco EIM/WIM Documentation Cisco Support Forum for Contact Center

72 Understanding Handle Time
Warning! Logs Ahead! Understanding Handle Time

73 Multimedia Integration
Key Differences from Voice: /Chat Media Routing Domains (MRD) A collection of skill groups and services associated with a specific communication channel. – UCCE Scripting and Media Routing Guide Concurrency How many tasks can an agent handle in an MRD? Interruptibility Can one task be interrupted by another task? Concept of “Available” vs. “ICM Available” MRD Sales Support Billing I.E. Agent “Available” for but not “ICM Available”

74 Interruptibility & Handle Time
Problem Statement: Agent Productivity confusion. Business Impact: Agents paid based on activity efficiency. Reported numbers are unclear to supervisors. Versions: CCE 9.0(3) EIM/WIM 9.0(1) Troubleshooting Performed: Verified interruptibility settings for Chat and MRDs are correct. Verified concurrent task limits defined in EIM/WIM. Paid attention to this crash course!

75 Interruptibility & Handle Time
Media Routing Domain Chat Concurrent Task Limit 3 2

76 Interruptibility & Handle Time
Media Routing Domain Chat Concurrent Task Limit 3 2

77 Interruptibility & Handle Time
Media Routing Domain Chat Concurrent Task Limit 3 2

78 Interruptibility & Handle Time
Media Routing Domain Chat Concurrent Task Limit 3 2

79 Interruptibility & Handle Time
Media Routing Domain Chat Concurrent Task Limit 3 2

80 Interruptibility & Handle Time
Media Routing Domain Chat Concurrent Task Limit 3 2 ! Interrupted!

81 Interruptibility & Handle Time
Media Routing Domain Chat Concurrent Task Limit 3 2

82 Interruptibility & Handle Time
Media Routing Domain Chat Concurrent Task Limit 3 2 ! Interrupted!

83 Interruptibility & Handle Time
Media Routing Domain Chat Concurrent Task Limit 3 2 ! Interrupted!

84 Interruptibility & Handle Time
GED-125 External Agent Assignment Service MR PIM MR PIM Finished! 18:38:19:693 pg2A-pim2 Trace: Application->PG: Message = NEW_TASK; Length = 102 bytes DialogueID = (10) Hex a SendSeqNo = (1) Hex MRDomainID = (5003) Hex b PreviousTask = -1:-1:-1 PreferredAgent = Undefined Service = (0) Hex CiscoReserved = (0) Hex ScriptSelector: 8000 ECC Variable Name: user.cim.activity.id Value: 1372 MR PG Agent PG 18:38:19:693 pg2A-pim2 Trace: PG->Application: Message = DO_THIS_WITH_TASK; Length = 121 bytes DialogueID = (10) Hex a SendSeqNo = (1) Hex IcmTaskID = :310: 1 SkillGroup = (5036) Hex ac Service = Undefined Agent = (5003) Hex b AgentInfo: 1003 Label: ECC Variable Name: user.cim.activity.id Value: 1372 Router CallKey Agent STID EIM/WIM AgentID

85 Interruptibility & Handle Time
Listener CTI Server Pre-Call Indicator, Links The RouterCallKey & DialedNumber Indicators are generally sent from an integrated application EXCEPT DEVICE_TARGET_PRE_CALL_IND which is sent from Router. Events are calculations that occur within OPC for interval reporting & All Event Clients GED-188 18:38:19:693 cg1A-ctisvr Trace: DEVICE_TARGET_PRE_CALL_IND - Instrument= RouterCallKey= NetworkTargetID=0 18:38:19:709 cg1A-ctisvr Trace: SvSkTargID=-1(-1) SkGroupSkTarID=5036(531) 18:38:19:709 cg1A-ctisvr Trace: AgSkTargID=5003 ANI= CED= 18:38:19:709 cg1A-ctisvr SESSION 2: MsgType:AGENT_PRE_CALL_EVENT (MonitorID:0 NumNamedVariables:2 NumNamedArrays:0 ServiceNumber:N/A 18:38:19:709 cg1A-ctisvr SESSION 2: ServiceID:N/A SkillGroupNumber:531 SkillGroupID:5036 SkillGroupPriority:0 MRDID:5003 18:38:19:709 cg1A-ctisvr SESSION 2: AgentInstrument:"" RouterCallKeyDay: RouterCallKeyCallID:310 18:38:19:709 cg1A-ctisvr SESSION 2: RouterCallKeySequenceNum:1 DialedNumber:"8000" ) Agent PG

86 Interruptibility & Handle Time
GED-188 Listener CTI Server Offered & Started Handle Time Starts Counting 18:38:19:724 cg1A-ctisvr SESSION 3: MsgType:OFFER_TASK_IND (InvokeID:0x2c767 MRDID:5003 ICMAgentID:5003 18:38:19:724 cg1A-ctisvr SESSION 3: TaskID:150083/310/1ARMSkillGroupID:5036 ARMServiceID:N/A ) 18:38:19:724 cg1A-ctisvr Trace: OFFER_TASK_EVENT: PeripherlID=5000 PeripherlType=4 MRDomainID=5003 18:38:19:724 cg1A-ctisvr Trace: TaskID=150083:310:1 ICMAgentID=5003 SkillGroupID=5036 18:38:19:724 cg1A-ctisvr Trace: ServiceID= ApplicationRouted Agent PG 18:38:25:537 cg1A-ctisvr SESSION 3: MsgType:START_TASK_IND (InvokeID:0x2c768 MRDID:5003 ICMAgentID:5003 18:38:25:537 cg1A-ctisvr SESSION 3: TaskID:150083/310/1ARMSkillGroupID:5036 ARMServiceID:N/A ) 18:38:25:537 cg1A-ctisvr Trace: START_TASK_EVENT: PeripherlID=5000 PeripherlType=4 MRDomainID=5003 18:38:25:537 cg1A-ctisvr Trace: TaskID=150083:310:1 ICMAgentID=5003 SkillGroupID=5036 18:38:25:537 cg1A-ctisvr Trace: ServiceID= ApplicationRouted

87 Interruptibility & Handle Time
GED-188 Listener CTI Server Agent “Active” In Multimedia SG Agent Can Still Receive A Second Task NumTasks=1, MaxTaskLimit=2 18:38:25:537 cg1A-ctisvr Trace: AGENT_EVENT: ID=21 Periph=5000 Ext= Inst= Sig= 18:38:25:537 cg1A-ctisvr Trace: SGState=ACTIVE SGDuration=0 OverallState=ACTIVE OverallDuration=0 Reason=-1 18:38:25:537 cg1A-ctisvr Trace: MRDID=5003 NumTasks=1 MaxTaskLimit=2 AgtMode=1 AgtAvailStatus=1 ICMAgentID=5003 18:38:25:537 cg1A-ctisvr Trace: SkTgtID=5003 SkGrpNo=0x213 SkGrpID=5036 NumLines=0 CurLine=-1 ClientStatus=0x0 Agent PG

88 Interruptibility & Handle Time
GED-188 Listener CTI Server Agent Gets Second (Pre_Call, Offer) and Reads It Handle Time “pauses” for original and starts for new Second Completed, Original Resumed Agent PG 18:40:33:632 cg1A-ctisvr Trace: PAUSE_TASK_EVENT: PeripherlID=5000 PeripherlType=4 MRDomainID=5003 18:40:33:632 cg1A-ctisvr Trace: TaskID=150083:310:1 ICMAgentID=5003 Reason=5000 18:40:33:647 cg1A-ctisvr Trace: START_TASK_EVENT: PeripherlID=5000 PeripherlType=4 MRDomainID=5003 18:40:33:647 cg1A-ctisvr Trace: TaskID=150083:311:1 ICMAgentID=5003 SkillGroupID=5036 18:40:33:647 cg1A-ctisvr Trace: ServiceID= ApplicationRouted 18:40:39:929 cg1A-ctisvr Trace: END_TASK_EVENT: PeripherlID=5000 PeripherlType=4 MRDomainID=5003 18:40:39:929 cg1A-ctisvr Trace: TaskID=150083:311:1 PreviousTaskID=-1:-1:-1 18:40:39:929 cg1A-ctisvr Trace: ICMAgentID=5003 18:40:42:788 cg1A-ctisvr Trace: RESUME_TASK_EVENT: PeripherlID=5000 PeripherlType=4 MRDomainID=5003 18:40:42:788 cg1A-ctisvr Trace: TaskID=150083:310:1 ICMAgentID=5003 Reason=5000

89 Interruptibility & Handle Time
GED-188 Listener CTI Server Original Interrupted By Chat What are these MRDs? Where can we find their names? USE bxb_awdb select * from t_Media_Routing_Domain 18:40:49:710 cg1A-ctisvr SESSION 3: MsgType:AGENT_INTERRUPT_ADVISORY_EVENT (InvokeID:0x2 MRDID:5001 InterruptingMRDID:5002 ICMAgentID:5003 ) 18:40:49:710 cg1A-ctisvr SESSION 3: MsgType:AGENT_INTERRUPT_ADVISORY_EVENT (InvokeID:0x2 MRDID:5003 InterruptingMRDID:5002 ICMAgentID:5003 ) Agent PG

90 Interruptibility & Handle Time
MRD ID Media 5001 Outbound 5002 Chat 5003 Inbound Interruptibility & Handle Time GED-188 Listener CTI Server Agent Reserved For Chat SG; Interrupted For SG Offer, Start, End Task Indicators/Events and state transitions mimic Note: Handle time for chat increments for all running sessions. 18:40:49:710 cg1A-ctisvr Trace: AGENT_EVENT: ID=21 Periph=5000 Ext= Inst= Sig= 18:40:49:710 cg1A-ctisvr Trace: SGState=RESERVED SGDuration=0 OverallState=RESERVED OverallDuration=0 Reason=-1 18:40:49:710 cg1A-ctisvr Trace: MRDID=5002 NumTasks=1 MaxTaskLimit=1 AgtMode=1 AgtAvailStatus=0 ICMAgentID=5003 18:40:49:710 cg1A-ctisvr Trace: SkTgtID=5003 SkGrpNo=0x21d SkGrpID=5039 NumLines=0 CurLine=-1 ClientStatus=0x0 18:40:49:725 cg1A-ctisvr SESSION 3: MsgType:AGENT_INTERRUPT_ACCEPTED_IND (InvokeID:0x2 MRDID:5001 ICMAgentID:5003 ) 18:40:49:725 cg1A-ctisvr SESSION 3: MsgType:AGENT_INTERRUPT_ACCEPTED_IND (InvokeID:0x2 MRDID:5003 ICMAgentID:5003 ) 18:40:49:725 cg1A-ctisvr Trace: AGENT_EVENT: ID=21 Periph=5000 Ext= Inst= Sig= 18:40:49:725 cg1A-ctisvr Trace: SGState=INTERRUPTED SGDuration=0 OverallState=INTERRUPTED OverallDuration=0 Reason=0 18:40:49:725 cg1A-ctisvr Trace: MRDID=5003 NumTasks=1 MaxTaskLimit=2 AgtMode=1 AgtAvailStatus=0 ICMAgentID=5003 18:40:49:725 cg1A-ctisvr Trace: SkTgtID=5003 SkGrpNo=0x213 SkGrpID=5036 NumLines=0 CurLine=-1 ClientStatus=0x0 Agent PG

91 Interruptibility & Handle Time
How Can a Failure Event Be Mapped to a Task/Activity? Use DialogueID to Correlate 18:38:19:693 pg2A-pim2 Trace: PG->Application: Message = NEW_TASK_FAILURE_EVENT; Length = 12 bytes DialogueID = (10) Hex a SendSeqNo = (1) Hex ReasonCode = (209) Hex d1 MR PG Agent PG 18:38:19:693 pg2A-pim2 Trace: Application->PG: Message = NEW_TASK; Length = 102 bytes DialogueID = (10) Hex a SendSeqNo = (1) Hex MRDomainID = (5003) Hex b PreviousTask = -1:-1:-1 PreferredAgent = Undefined Service = (0) Hex CiscoReserved = (0) Hex ScriptSelector: 8000 ECC Variable Name: user.cim.activity.id Value: 1372 18:38:19:693 pg2A-pim2 Trace: PG->Application: Message = DO_THIS_WITH_TASK; Length = 121 bytes DialogueID = (10) Hex a SendSeqNo = (1) Hex IcmTaskID = :310: 1 SkillGroup = (5036) Hex ac Service = Undefined Agent = (5003) Hex b AgentInfo: 1003 Label: ECC Variable Name: user.cim.activity.id Value: 1372 DialogueID can also be used to correlate successful tasks, but not necessary since ECC variable is present

92 Sample Diagnostic Scenarios

93 Scenario 1: How to increase JVM heap size for a service/process
Symptoms Crash of service/process associated with Retriever and Listener while retrieving large s/attachments into the system. Steps to reproduce N/A (cannot easily be reproduced in a lab) Steps to resolve (for the TAC Participants) To increase the JVM heap size in EIM WIM 9. Execute following query on Active database and restart respective process and instance. INSERT INTO EGPL_CONFIG_PROPERTY VALUES ('egpl_dsm.xml', 'JVMParams.<process_name_as_appears_on_UI>','-Xmx256m', null)

94 Scenario 2: EIM WIM 9 Integration Wizard does not seem to integrate data from Unified CCE
Symptoms After completing EIM WIM 9 installation, Listener/EAAS instance are stuck in a connecting state. Integrated users, queues, and user groups are not visible in the administration console. Steps to reproduce N/A (cannot easily be reproduced in a lab but faced by a few customers. Steps to resolve (for the TAC Participants) In egpl_ds_connpool_map.xml, AW database (AW DB) information may not be updated. To resolve this issue, take a backup of eservice.ear and configuration.zip. Delete eservice.ear at the following location on the application server <INSTALLDIR>:\jboss-as Final\standalone\deployments\eService.ear Update the changes for AW DB server name, port, username, password, etc, in egpl_ds_connpool_map.xml available in eservice.ear and configuration.zip. Restart Cisco Service on all the servers.

95 Scenario 3: Need clarification for ‘agent concurrent task limit’
Symptoms If a user has permission on multiple queues that map to the same MRD, with different concurrent task limits, agents tend to receive more activities than expected. Steps to reproduce If the agent has permission on multiple queues, the maximum concurrent task limit when logging in would assume the value of the highest across all queues. Steps to resolve (for the TAC Participants) Concurrent task limit of an agent per MRD is defined as the maximum number of concurrent activities that an agent can work on in that MRD. The agent concurrent task limit is set at the queue level in EIM WIM (default = 1). If this concurrent task limit is met, the agent will be unavailable for future assignment, until the agent load is lesser than the agent’s concurrent task limit. Ensure that the agent concurrent task limit is high enough to ensure that the agent is able to work on that many number of activities concurrently per MRD.

96 Scenario 4: Failed to install application server due to duplicate DB entry
Symptoms Unable to install web/application server Steps to reproduce Install a new web/application server, so as to add it to an active deployment. Remove Cisco Service from that extra web/application server with standard procedures of removing a service from the windows services panel. Try installing the web/application again on same VM, and this will reproduce the issue. Steps to resolve (for the TAC Participants) Duplicate entries were removed from EGPL_DSM_HOST and EGPL_DSM_HOST_MONITOR tables, after which the installation of the web/application server succeeded.

97 Scenario 5: Unable to display logo in the signature of an email
Symptoms Application does not display logo in the signature. Steps to reproduce Create article from KB console and insert image into it Now use this article macro in the signature In the agent console, logo is not rendered in the signature Steps to resolve (for the TAC Participants) Based on product behavior, an image cannot be embedded directly as a logo in the signature. In order to do this, the image should be copied to a shared location that is publicly accessible, and the URL to it must be used in the signature. Plans exist to address this in a future product release.

98

99 Extra Diagrams

100 Items of note: Integration points -> Listner Service, EAAS Hardware requirements -> CMB, MR PG VMWare Support in 4.4(1)

101 Items of note: Integration points -> Listner Service, EAAS Hardware requirements -> CMB, MR PG VMWare Support in 4.4(1)

102 Administration Synchronization
Windows Messaging Server Windows Call Server MR PIM CTI Svr Windows Services Server EAAS RX / DX Listener Windows Media Blender Internet Agent Connections DAL Windows Application Server Windows Web Server DAL Windows File Server Items of note: Integration points -> Listner Service, EAAS Hardware requirements -> CMB, MR PG VMWare Support in 4.4(1) Windows Data Server Local Agent Connections AWDB Windows Application Server Windows Web Server Windows Database Server


Download ppt "EIM/WIM Architecture & Design"

Similar presentations


Ads by Google