Professional Documents
Culture Documents
1. Overview / Architecture
2. Logging
3. Troubleshooting / Common Problems
4. Tools (Myzamir)
5. Questions
What is eServices?
• eServices (called also MCR in 7.0-7.1 and Multimedia in 7.2-8.0) is a platform on which you can
assemble a coordinated suite of components that processes, manages, and archives
customer/agent interactions in the media of your choice, including social media.
Main components:
• Interaction Server (ofter referred to as Ixn)
• Universal Contact Server (UCS)
• Media Servers (E-mail Server, Chat Server, SMS Server, Social Messaging Server)
Universal Routing is not considered part of eServices because it deals with both traditional telephonic
interactions and the non-voice interactions that are handled in eServices
What's an interaction?
• It's a non-voice communication (for example, between the end-customer and agent) with a
unique id
• It has a media type (email, chat, workitem, twitter etc)
• It can be a parent to, or a child of another interaction (series of related interactions form a
thread)
Media Interface
IRD
Stat Server
Corporate
Mail E-mail Server URS
Corporate
Server
Mail Interaction
Server Server
Desktop
Application
Interaction
Universal DB Server
Classification
Contact
Main Server
UCS DB
Server
Archive
Ixn DB
UCS DB Knowledge
UCS Manager
Manager
Data Storage Workflow Control
Media Servers
• Source of inbound interactions
• Processing of outbound interactions (optional)
• Some are provided out of box (E-mail Server, Chat Server, SMS Server, Social Messaging Server)
• Custom servers can be created using SDKs
Interaction Server
• Processes new interactions submitted by media servers
• Submits interactions to Universal Routing Server (URS) for routing
• Manages communications between URS and other eService servers
• Delivers interactions to agents
• Stops interactions
• Provides reporting to StatServer
Knowledge Management
• Classification Server (applies screening rules when triggered by a routing strategy)
• Knowledge Manager (GUI for managing Standard Response Library, Screening Rules and
Categories)
Business Process
A script defining an interaction processing scenario that covers the whole interaction life cycle and
reflects major steps of the interaction such as:
• Origination
• Segmentation for processing
• Processing by strategy
• Delivery to the agent desktop
• Creation of child interactions
• Termination
Interaction Queue
• Logical parking place (persistent queue) for an interaction during processing
Workbin
• Object that holds interactions for later processing
Strategy
• Processing with or without a human target
• May receive interactions from multiple queues
• Can update interaction data, apply services, segment, prioritize etc
UCS Database
• Interaction (main storage for attributes common to all interactions, such as status, type,
thread id, miscellaneous timestamps, etc)
• IxnContent (stores original interaction content, for example raw email data)
• Contact (defines a contact and stores a few basic features of that contact)
• ContactAttributeMetaData (defines attributes a contact can have, as determined by
Contact Attributes under Business Attributes in Config Database)
• ContactAttribute (indicates that a contact has one of the attributes listed in the
ContactAttributeMetaData and stores its value)
• EmRoute (stores Screening Rules)
• StandardResponse (stores Standard Responses)
• Category* (stores categories tree)
• PhoneCall (stores voice-media specific data, such as ConnID)
• Emailin / EmailOut (stores email-specific data)
• Chat (stores chat-media specifc data)
See "Selected Conceptual Data Models for the UCS Database" for details
Headers:
• Application name, type and command line used to start it
• Host name and info (OS type and version)
• Timezone info
• Local and UTC time at the time of log creation
• Start time and uptime
Application name: is81pri
Application type: InteractionServer (111)
Command line: ./interaction_server -app is81pri -host roman-lx -port 2020
Host name: roman-lx
DST: TZ = 1, timeb = 0
Time zone: 0, GMT, IST
UTC time: 2012-05-25T10:20:25.049
Local time: 2012-05-25T11:20:25.049
Start time (UTC): 2012-05-25T10:20:24
Running time: 0:00:00:01
Host info: Linux, roman-lx, 2.6.18-274.3.1.el5, #1 SMP Fri Aug 26 18:49:02 EDT 2011, x86_64
File: (1) /var/SP/logs/is81pri/is81pri.log
• options enumeration
11:20:25.090 Trc 06084 Configuration option set: 'settings':'default-max-submitted-per-router' = '1000'
11:20:25.090 Trc 06084 Configuration option set: 'settings':'default-max-submitted-per-strategy' = '1000':
• config objects from Tenant (scripts, strategies, queues, places, persons, business attributes etc)
11:20:25.145 Trc 21003 Loaded business process configuration, process name: 'email-processing', tenant id:
'101', state: enabled
11:20:25.177 Trc 22007 Loaded place information: name: 'Place1', tenant id: '101', state: enabled
11:20:25.198 Trc 22005 Loaded person information: employee id 'smith', tenant id: '101', name: 'Smith,
Agent', state: enabled
• startup as primary
11:20:25.660 Std 05060 Application started
11:20:31.034 Trc 30002 Switching to [PRIMARY] mode
11:20:31.036 Std 04525 Port 5604 opened for listening
11:20:31.036 Std 04562 Warm Standby (Primary) mode activated
• database open
11:20:40.593 Std 25004 Database:'orcl:oracle', DBServer:'ixndbserver', DAP:'ixn_dap' is opened
11:20:40.593 Std 25009 DAP:'ixn_dap', DBServer version:'8.1.000.05' ('7.5.000.02' or greater required)
Startup
10:20:48.610 Std 05060 Application started
10:20:48.610 Std 20002 [Ucs-Main] Running 'ucs81' with Config Server running on host 'roman-lx', port 2020
• initialization start
10:20:48.829 Trc 21007 [Ucs-Main] LCA Status changed to 'Initializing'.
10:20:48.832 Std 20031 [Ucs-Main] Load Balancing mode is : MASTER.
• reading database connection parameters, checking schema version and database structure
10:20:48.876 Std 29997 [Ucs-Main] 'ucs81' on 'ucsdap' properties: (dbcase=any) (dbengine=oracle) (port=1521)
(dbname=) (appname='ucs81' on 'ucsdap') (role=Main) (username=RMN) (interpret-prepared-statements=false)
(dbserver=roman=lx) (max-connections=100) (jdbc-debug=TRUE) (password=****) (query-timeout=20)
(jdbcurl=jdbc:oracle:thin:@uk-sup-vm1:1521/orcl)
10:20:52.293 Trc 21103 [Ucs-Main] Schema information : [id: 8.1.000.10, timestamp: 8 Feb 2012 00:00:00 GMT, version:
8.1.000.00 , description: null]
• actual startup:
10:20:58.613 Std 05061 Initialization completed
10:20:58.613 Trc 21007 [Ucs-Main] LCA Status changed to 'Running'.
18:00:01.904 Dbg 29999 [SvcSrvW-5] <27 txn-108 txn-108 txn-108> Executing request :
select ContactAttribute.StrValue, ContactAttribute.Description,
ContactAttribute.BinValue, ContactAttribute.MimeType, ContactAttribute.AttributeName,
ContactAttribute.ContactId, ContactAttribute.Id, ContactAttribute.StrValueLowerCase,
ContactAttribute.IsPrimary, ContactAttribute.AttributeId, ContactAttribute.DateValue
from ContactAttribute WITH (NOLOCK) where (ContactAttribute.ContactId =
'0007Va6VJTFH00CF') in transaction : txn-108 with timeout=35
• connection to server:
12:59:35.299 Trc 21633 [MsgIn-2] <pop-client> Connected to server 'IMAP' at host 'localhost', port 143.
• reading mailbox:
12:59:35.330 Trc 21009 [MsgIn-2] <pop-client> Mailbox account 'agent1'[localhost:143]: opened folder 'INBOX' with mode 'Read-Write' contains messages: 1 - unread, 1 -
new, 1 – total
12:59:35.330 Dbg 23036 [MsgIn-2] <pop-client> Looking up for 1 unread message(s)...
12:59:35.346 Dbg 23037 [MsgIn-2] <pop-client> Unread messages lookup successful. Starting to retrieve them.
• retrieving:
12:59:35.346 Trc 21010 [MsgIn-1] <pop-client> Retrieving message # 1 with size 1715 bytes.
12:59:35.346 Dbg 23040 [MsgIn-1] <pop-client> Filling record for message <000a01cd47c9$9f87ad00$99ba5687@emea.int.genesyslab.com>.
12:59:35.408 Trc 25018 [MsgIn-1] <pop-client 0007Wa7WBQ4D000N> Message # 1 stored in UCS with interaction id '0007Wa7WBQ4D000N'.
12:59:35.408 Dbg 23041 [MsgIn-1] <pop-client 0007Wa7WBQ4D000N> Retrieved message # 1 and created ixn, duration (ms): 62.
12:59:35.408 Dbg 23038 [MsgIn-2] <pop-client> Retrieval session ended: 1 msg read, 1 msg stored, at throughput 16.13 msg/s.
• cycle stop:
12:59:35.424 Dbg 23005 [MsgIn-2] <pop-client> Inbound messaging client finished.
• start submitting:
13:00:33.221 Trc 25019 [InSbW-0] <0007Wa7WBQ4D000N> Service 'EmailInternal' method 'submitInboundEmail' started.
13:00:33.236 Dbg 23027 [InSbW-0] <0007Wa7WBQ4D000N> Submitting interaction to queue 'Inbound_emails'...
13:00:33.236 Trc 21631 [InSbW-0] <0007Wa7WBQ4D000N 1369> Sending message 'RequestSubmit' to InteractionServer [w2kromans-mcr75:4420].
• cycle end:
13:00:33.361 Dbg 23028 [InSbW-0] <0007Wa7WBQ4D000N> Interaction successfully submitted to queue 'Inbound_emails'
13:00:33.361 Trc 25020 [InSbW-0] <0007Wa7WBQ4D000N> Service 'EmailInternal' method 'submitInboundEmail' ended, processing time (ms): 140.
See Tech Tutorial #63 - Interaction Server Log Analysis and Event Flows
See "Interaction Submission Process" diagram in "eServices 8.1 Reference Manual“ for details
Starting Java...
java version "1.4.2_12"
Java HotSpot(TM) Server VM (build 1.4.2_12-b03)
12:54:40.549 Std 10008 Loaded Java Virtual Machine from
'C:\JAVA\jre\bin\server\jvm.dll’
• StatServer logs:
Event Flow:
• RequestRouteCall (to URS)
After timeout
16:08:34.033 Trc 26019 Sending message 'EventRevoked' ('134') to client '1' - Agent
application:5:984 through proxy 'GD761' - Proxy:4:984, message attributes:
<..skipped..>
attr_reason_system_name [str] = "Expired"
attr_reason_desc [str] = "Invitation expired“
• This is common problem during testing stage when the same mailbox is used
• Set [email-processing]\enable-mail-loops=true
• Set [settings]\allow-multiple-agent-connections=true
Example:
10:26:35.954 Trc 21001 [SvcSrvW-1] <11> Service 'OMInteractions' method 'CountInteractions' ended, processing time (ms): 2.
10:26:36.033 Trc 21001 [SvcSrvW-3] <13> Service 'OMContacts' method 'GetAttributes' ended, processing time (ms): 5.
10:26:36.042 Trc 21001 [SvcSrvW-2] <12> Service 'OMInteractions' method 'UpdateInteraction' ended, processing time (ms): 60.
10:26:36.122 Trc 21001 [SvcSrvW-4] <14> Service 'OMInteractions' method 'InteractionListGet' ended, processing time (ms): 28.
10:26:36.145 Trc 21001 [SvcSrvW-5] <15> Service 'OMInteractions' method 'InteractionListGet' ended, processing time (ms): 17.
10:26:36.449 Trc 21001 [SvcSrvW-6] <16> Service 'OMInteractions' method 'UpdateInteraction' ended, processing time (ms): 61.
10:26:36.469 Trc 21001 [SvcSrvW-7] <17> Service 'OMInteractions' method 'InteractionListGet' ended, processing time (ms): 13.
10:26:49.223 Trc 21001 [SvcSrvW-8] <4> Service 'Contact' method 'Identify' ended, processing time (ms): 10.
Both the above cases are the UCS DB corruption and that emails can be removed manually only.
Check "Language for non-Unicode programs” settings in "Regional and Language Options"
(Windows) and value of 'LANG' and 'LC_ALL' environment variables (Unix-like OS)
If this is a Java-based server (E-mail Server, UCS) try forcing -Dfile.encoding parameter
specifying the code page
Both ESJ and UCS write current memory info into log file headers
UCS also writes memory info into logs:
17:44:42.216 Trc 29998 [MemoryMon] 53 active thread(s) - memory usage : using 45,957,744
out of 65,470,464 (70.20%) (max=533,528,576)
Myzamir
Parses Interaction Server and URS logs
(multiple files can be loaded, depending on available workstation memory)
Sort by
• Interaction ID
• Place name
• Agent ID
• Connection ID
• Queue name
• Event name
Myzamir - Interface
For more details on these and other classes offered by Genesys University, go
to:
• http://www.genesyslab.com/about/training/
Register for these and other sessions on the Tech Tutorials page
of the Genesys Tech Support Website.
http://genesyslab.com/support/tutorials/
Question
Question time
time