1k likes | 1.22k Views
EIM / WIM Architecture & Design. Goran Selthofer. Cisco TAC. Agenda. Deployment Overview Virtualization Components & Services Email & Chat Task Routing Standalone Integration with CCE Exception Queue Media Blender Callback Sizing & Best Practices Preferred “Sticky” Agent
E N D
EIM/WIM Architecture & Design Goran Selthofer Cisco TAC
Agenda • Deployment Overview • Virtualization • Components & Services • Email & 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)
Platform • Bare-metal deployments still supported, but not recommended • SRNDONLY 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 • http://docwiki.cisco.com/wiki/Unified_Communications_Virtualization_Downloads_(including_OVA/OVF_Templates)#Cisco_Unified_Email_Interaction_Manager_and_Web_Interaction_Manager http://docwiki.cisco.com/wiki/Virtualization_for_Unified_Email_Interaction_Manager_-_Web_Interaction_Manager VMware ESXi
Example OVA Template Sets 1:1App:Web
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 EIMWIM 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)
Q1. True or False? TRUE The Cisco DocWiki provides solution reference network design and sizing requirements for EIM/WIM in a virtualized environment. The traditional PDF-based SRND is to be used for bare-metal deployments only.
ApplicationServer DatabaseServer FileServer MessagingServer ServicesServer WebServer EIM/WIM Distributed Deployment Windows Windows Windows Windows Windows Windows
Java and JBoss • EIM/WIM uses an open-source Application server and servlet engine • requires Development Kit • EIM/WIM Services also require Development Kit
Service & Process Matrix • 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. Varies depending on number of EIM/WIM services enabled
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 emails from corporate mail server • POP3 or IMAP protocols • Dispatcher – “Dispatches” outgoing emails to corporate mail server • SMTP or ESMTP protocols • Workflow (Rules-Engine) – Processes incoming emails and routes to queues • Agent Assignment – Assigns CHAT activities in queue to available agents
ApplicationServer FileServer MessagingServer ServicesServer WebServer DatabaseServer Standalone Task Routing – Agent Login Windows Windows Windows Windows Windows Windows
ApplicationServer FileServer MessagingServer WebServer DatabaseServer ServicesServer Standalone Task Routing – Email Windows Windows Windows Windows Windows Windows Retrieved from IMAP/POP3 Case created in DB: [#12345] Inbound Workflow applied Routed to Queue Assigned to Agent RX / DX
WebServer Standalone Task Routing – Chat Windows • Entry Point – Interface used by customers to enter chat queue • Fields can be customized and used in routing variables • Email 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. UCSC220M3 or old MCS • Alternatively, can deploy a second Web/App Server pair within the corporate firewall
ApplicationServer WebServer ApplicationServer WebServer DatabaseServer FileServer ServicesServer MessagingServer Standalone Task Routing – Chat Windows Windows Windows Windows Windows Windows Windows Windows RX / DX Internet Agent Connections Local Agent Connections
ServicesServer ApplicationServer WebServer WebServer MessagingServer FileServer ApplicationServer DatabaseServer Standalone Task Routing – Chat Windows Windows Windows Windows Windows Windows Windows Windows Customer Entry Point Case created in DB: [#67890] Routed to Queue Assigned to Agent RX / DX Internet Agent Connections Local Agent Connections
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.
Q3. True or False? FALSE EIM can function as its own email server. Customers can optionally integrate EIM with an existing corporate mail server, such as Exchange or Lotus. An external corporate mail server that supports IMAP/POP3 and SMTP is required (even Gmail can be used). EIM is not its own email server!
Key Components – CCE Integrated Routing • Data Access Layer (DAL) – JDBC/ODBC access to CCEAWDB • 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 Email/Chat
EIM/WIM to UCCE Object Mappings MediaClass MRD SG 1 MRD1 Application Path For Agent PG Peripheral – MRD1 Peripheral – MRD2 … MRD2 Application Instance SG2 SGX MRDX EIM/WIM User UCCE Agent EIM/WIM User Group ScriptSelector 1 EIM/WIM Q1 ScriptSelector 1 EIM/WIM Q2
EIM/WIM to UCCE Object Mappings UCCE Agent EIM/WIM User UCCE Skill Group EIM/WIM Groups UCCE MRD + Script Selector Pair EIM/WIM Queue
ICMAgentID v EIM/WIMAgentID • 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/WIMAgentID • System Administrator (pa/sa) are essentially Standalone Users EIM/WIM Database ICM Database
WebServer ApplicationServer DatabaseServer FileServer WebServer MessagingServer ApplicationServer ServicesServer Data Server Call Server CCE Integrated Routing – Agent Login Windows Windows Windows Windows Windows Windows Windows Windows Windows Windows RX / DX RX / DX Internet Agent Connections DAL Local Agent Connections AWDB
ServicesServer DatabaseServer ApplicationServer ApplicationServer FileServer MessagingServer WebServer Data Server Call Server WebServer CCE Integrated Routing – Email Windows Windows Windows Windows Windows Windows Windows Windows Windows Windows RX / DX RX / DX Retrieved from IMAP/POP3 Case created in DB: [#12345] Inbound Workflow applied Internet Agent Connections DAL Local Agent Connections AWDB
ServicesServer ApplicationServer WebServer Call Server WebServer MessagingServer Data Server ApplicationServer DatabaseServer FileServer CCE Integrated Routing – Email Windows Windows Windows Windows Windows Windows Windows Windows Windows Windows MR PIM CTISvr RX / DX RX / DX EAAS Listener Retrieved from IMAP/POP3 Case created in DB: [#12345] Inbound Workflow applied Sent to ICM Routing Script Assigned to Agent Internet Agent Connections DAL Local Agent Connections AWDB
Data Server WebServer Call Server ApplicationServer ServicesServer FileServer DatabaseServer MessagingServer ApplicationServer WebServer CCE Integrated Routing – Chat Windows Windows Windows Windows Windows Windows Windows Windows Windows Windows MR PIM CTISvr RX / DX RX / DX EAAS Listener Internet Agent Connections Customer Entry Point Case created in DB: [#12345] Sent to ICM Routing Script Assigned to Agent DAL Local Agent Connections AWDB
CCE Component Match the integrated EIM/WIM component with the CCEcomponent External Agent Assignment Service Admin Workstation DB Data Access Layer Media Routing (MR) PIM EIM/WIMComponent Listener Service CTI Server
What is the Exception Queue? • EIM Standalone Queue that serves as a bucket for all emails 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 emails can be transferred to the Integrated Queue • EIM will NOT request CCE routing instructions for Delivery Exception emails • Transferring these emails to integrated queues gives the misconception that emails are “stuck in queue” • Administrators must handle these emails, or create an Alarm Workflow to automatically handle them How do I route the emails to agents?
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 emails in the Exception Queue • In this example, we simply mark them as Complete. • Step-by-Step: http://docwiki.cisco.com/wiki/Exception_Queue_Email#Automatic_Handling
Q5. True or False? TRUE The Exception Queue is a standalone queue that integrated users can only access via the Administrator role. The Administrator Role is the only stock role with the necessary permissions to access messages in the Exception Queue.
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
EIM/WIM Component Overview • Do not install on Agent PG – conflict with Java/JTAPI • CMB Version 7.1.3 used in 4.4(1) and 9.0
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
Media Blender Data Server Call Server MessagingServer WebServer ServicesServer DatabaseServer WebServer ApplicationServer ApplicationServer FileServer Web Callback Windows Windows Windows Windows Windows Windows Windows Windows Windows Windows Windows MR PIM CTISvr RX / DX EAAS Listener Internet Agent Connections DAL Local Agent Connections AWDB
Sizing • All sizing limits assume agents handle 1 concurrent chat and up to 12 emails per hour • Most customers want agents to multitask with multiple activities (5 chats) and higher productivity (20 emails) • 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
Agent Sizing Example • Each chat session is essentially counted as another agent session. SRND Agent Count Actual Agent Count
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
System Concurrent Task Limit • Max Task Limit for media type set in CCEMRD “Max Calls in Queue” • 5000 for all media types in 4.x, 15,000 for email in 9.x • CCE will not allow more activities to be queued, will trigger routing failure
Planning for Growth • Database Growth • Incoming & Outgoing Email Volume per Month • Average Size of Each Email (KB) • Excludes attachments • Computational Growth Rates Published in EIM/WIMSRND • Number & Size of Email Attachments for Incoming & Outgoing Emails • File Server Growth • Rate of Growth of Log Files • Computational Growth Rates Published in EIM/WIM SRND • Future Agent Growth • Requires Discussion with Customer • Future Redundant Components
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 BusinessProcess vs. Instance