Académique Documents
Professionnel Documents
Culture Documents
V11.X
Document Revision 1.4
y
nl
O
se
U
al
rn
te
In
y
Any third party technology that may be appropriate or necessary
7,913,063; USPN 7,920,482; USPN 7,925,889; USPN
nl
for use with the Verint Product is licensed to you only for use
7,930,314; USPN 7,949,552; USPN 7,953,621; USPN
with the Verint Product under the terms of the third party license
7,953,719; USPN 7,953,750; USPN 7,965,828; USPN
O
agreement specified in the Documentation, the Software or as
7,966,397; USPN 7,991,613; USPN 7,995,612; USPN
provided online at http://verint.com/thirdpartylicense. You may
8,000,465; USPN 8,005,676; USPN 8,015,042; USPN D606,983;
not take any action that would separate the third party
se
200520118287.4; USPN D606,983; USPN RE40,634; USPN POWERING ACTIONABLE INTELLIGENCE, INTELLIGENCE IN
RE41,534; USPN RE41,608; AU 2003214926; CA 2,474,735; CA ACTION, ACTIONABLE INTELLIGENCE FOR A SMARTER
WORKFORCE, VERINT VERIFIED, ENTERPRISE INTELLIGENCE
te
1 Recorder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Recorder Controlled TDM Recording . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6
Recording a Contact - Start Segment (CTI is detected before audio) . . . . . . . . . . . . . .7
Segment and Contact Information Tagging . . . . . . . . . . . . . . . . . . . . . . . . . 10
Recording a Contact - Start Segment (Audio is detected before CTI) . . . . . . . . . . . . . 13
Recording a CTI Contact - Update Data . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Recording a CTI Contact - End Segment . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Recorder Controlled TDM Recording Logs . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Recorder Controlled VoIP Interception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Recording a Contact - Start Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Recording a Contact - Update Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Recording a Contact - End Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Recorder Controlled VoIP Interception Logs . . . . . . . . . . . . . . . . . . . . . . . . . 33
CTI Controlled VoIP Interception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Recording a Contact - Start Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Recording a Contact - Update Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
Recording a Contact - End Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
CTI Controlled VoIP Interception Logs . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
VoIP Delivery with Avaya DMCC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Softphone Registration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Recording using Service Observe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Recording using Single-Step Conference . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Recording a Contact - Start Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
y
Segment and Contact Information Tagging . . . . . . . . . . . . . . . . . . . . . . . . . 62
Recording a Contact - Update Data Segment . . . . . . . . . . . . . . . . . .
nl
. . . . . . 64
O
Recording a Contact - End Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
VoIP Delivery with Avaya DMCC Process Logs . . . . . . . . . . . . . . . . . . . . . . . . 68
se
2 WebLogic Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
U
3 User Management . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
te
4 Speech Analytics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
Speech Transcription . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Speech Transcription Log File Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
Prepare Files for Transcription . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
Retrieve Files for Transcription . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
Transcribe Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Transcription Logs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Transcription Data and Folders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
Speech Indexing. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Speech Indexing Log File Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Prepare Files for the Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Full (Main) Index Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Incremental Index Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Indexing Logs. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Index Components and Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
y
nl
O
se
U
al
rn
te
In
Recorder
y
nl
O
se
U
al
rn
te
In
Chapter 1 - Recorder Recorder Controlled TDM Recording
y
nl
O
se
U
al
rn
te
In
Integration
Switch/CTI Server CTI Adaptor TDM Recorder Screen Recorder Consolidator MDL
Service
SEENAUDIO
+Channel
STARTED + Channel
+ Audio INUM
START + Workstation
y
Allocate Screen INUM
nl
Create INUM.scn file for screen
and INUM.xml for metadata
O
STARTED + Workstation + Screen INUM
se
y
000000001. For instance, if Recorder Serial Number is 934065 the first INUM will
nl
be 934065000000001 O
NOTE If the Recorder detected VOX activity for more than five seconds before the CTI
se
event was received, these five seconds will be included in the segment, and the
VOX start time will be used for naming the file and marking the contact.
U
If the Recorder detected VOX activity started more than 5 seconds before the CTI
event, the audio before the CTI event will be broken off as separate recording
(with an INUM). This segment will start at CTI start.
al
Screen Recording
The Integration Service identifies the agent workstation IP associated with the
recorded extension, as well as the agent and PBX ID.
The agent workstation IP to be recorded is identified as a result of the seating
arrangement for the phone and screen data sources. For details, see the
Recorder Agent Associations Guide.
If the segment qualifies for a screen recording:
i. The Integration Service sends a START message to the Screen Recorder. The
START message contains the required agent workstation IP.
ii. The Screen Recorder allocates an INUM for the screen recording and saves
the screens in the INUM.scn file.
All screen recording information is saved in the Screen INUM.xml file.
iii. The Screen Recorder activates recording on the requested agent workstation
IP using the Screen Capture Service running on the workstation.
iv. The Integration Service associates the Screen INUM with the segment.
6 Integration Service sends PRPTAG, TAG, SESSION and CONTACT messages to TDM
Recorder in order to tag segment and contact information to the audio recording
INUM. For detailed flow see Segment and Contact Information Tagging,page 10.
7 Integration Service sends PRPTAG, TAG, SESSION and CONTACT messages to
Screen Recorder in order to tag segment and contact information to the screen
recording INUM. For detailed flow see Segment and Contact Information
Tagging,page 10.
y
nl
O
se
U
al
rn
te
In
Integration
Switch/CTI Server CTI Adaptor IP Recorder Screen Recorder Consolidator MDL
Service
y
CONTACT + Screen INUM +
nl
CONTACTID
8 O
Save to Screen INUM.XML
1 The Integration Service decides whether the audio recording is consolidated to the
Database or not. The decision is based on system and extension configuration
parameters, such as Recording mode, as well as real-time data. The Integration
Service sends a PRPTAG message to the TDM Recorder, indicating whether to keep
the audio recording. The Keep flag is updated in the Audio INUM.xml file. If the
Keep Flag is zero, the Consolidator skips this recording while transferring the
information to the Database.
2 The Start Call event contains standard segment attributes such as ANI, DNIS, etc.
as well as custom data attributes. These attributes are tagged to the segment. The
Integration Service sends the TAG message containing the attributes to the TDM
Recorder.
The TDM Recorder updates the attributes in the Audio INUM.xml file.
3 The Integration Service sends a SESSION message to the TDM Recorder to signify
that a segment was created for the INUM.
The TDM Recorder updates the segment number in the Audio INUM.xml file.
The SESSIONINUM is the INUM of the primary recording in the specific segment.
Typically the first audio recording is considered the primary recording of the
segment. If no audio was recorded (for example a business rule has fired only for
screen recording) the first screen recording is the primary recording of the segment.
If there is more than one recording that belongs to the segment, the SESSION
message specifies a list of children recordings, including Start time and End time
of each recording. This enables the stitching of several recordings during playback
of the segment's audio.
4 The Integration Service sends a CONTACT message to the TDM Recorder to signify
that the recording belongs to a contact.
The TDM Recorder updates the information in the Audio INUM.xml file.
5 The Integration Service decides whether the screen recording is consolidated to the
Database or not. The Integration Service sends a PRPTAG message to Screen
Recorder indicating whether to keep the screen recording. The Keep flag is
updated in the Screen INUM.xml file. If the Keep flag is zero, the Consolidator
skips this recording while transferring the information to the Database.
y
nl
6 The Integration Service sends the TAG message containing the segment attributes
to the Screen Recorder.
O
The Screen Recorder updates the attributes in the Screen INUM.xml file.
se
The Screen Recorder updates the segment number in the Screen INUM.xml file.
al
The SESSIONINUM is the INUM of the primary recording in the specific segment.
Typically the first audio recording is considered the primary recording of the
rn
segment. If no audio was recorded (for example a business rule has fired only for
screen recording) the first screen recording is the primary recording of the segment.
te
In
y
nl
O
se
U
al
rn
te
In
Integration
Switch/CTI Server CTI Adaptor TDM Recorder Screen Recorder Consolidator MDL
Service
SEENAUDIO
+Channel
STARTED + Channel
+ Audio INUM
Identify workspace
for Extension
START + Workstation
y
nl
STARTED + Workstation + Screen INUM
1 Audio Recording
In
i. The TDM Recorder identifies VOX on the channel and sends a SEENAUDIO
message to the Integration Service.
ii. The TDM recorder allocates an INUM for the audio recording and saves the
audio as a INUM.wav file. All contact, segment and audio recording
information is saved in the Audio INUM.xml file.
The INUM identifier is a unique number allocated by the Recorder (that is,
screen and audio).
iii. If the beginning of the audio recording is successful, the TDM recorder sends
a STARTED message back to the Integration Service. The message includes a
recording INUM and channel.
If the audio recording is not successful, an alarm is generated.
2 The Integration Service saves the Audio INUM to be later associated with a segment
once a segment is created
3 When a contact is initiated or a new segment is initiated (for example, when a
contact is transferred), the CTI server sends a Start Call event to the CTI Adapter.
The Start Call event identifies the recorded extension (and trunk if available), plus
additional CTI attributes (for example, CLI, Call Direction, Custom Data, etc.).
4 The CTI Adapter transfers the event to the Integration Service.
5 The Integration Service creates a segment.The saved Audio INUM is associated with
the segment.
If this is the first segment, a contact is created.
6 The Integration Service refers to its Business Rules to verify whether or not this
segment qualifies for audio or screen recording.
As part of the Business Rules evaluation mechanism, the Integration Service also
calculates the Conditional Custom Data fields (CCD).
7 Screen Recording
The Integration Service identifies the agent workstation IP associated with the
recorded extension, as well as the agent and PBX ID.
The agent workstation IP to be recorded is identified as a result of the seating
arrangement for the phone and screen data sources. For details, see the
Recorder Agent Associations Guide.
y
nl
If the segment qualifies for a screen recording: O
i. The Integration Service sends a START message to the Screen Recorder. The
START message contains the required agent workstation IP.
se
ii. The Screen Recorder allocates an INUM for the screen recording and saves
the screens in the INUM.scn file.
U
iii. The Screen Recorder activates recording on the requested agent workstation
IP using the Screen Capture Service running on the workstation.
rn
iv. The Integration Service associates the Screen INUM with the segment.
te
8 Integration Service sends PRPTAG, TAG, SESSION and CONTACT messages to TDM
In
Recorder in order to tag segment and contact information to the audio recording
INUM. For detailed flow see Segment and Contact Information Tagging,page 10.
y
nl
O
se
U
al
rn
te
In
TAG + INUM
4 + Custom Attributes
5 Save to INUM.xml
1 The CTI Server or switch sends an Update event to the CTI Adapter.
Typically, this event contains the recorded extension and several custom data
attributes.
2 The CTI Adapter transfers the event to the Integration Service.
3 The Integration Service refers to the Business Rules to verify whether or not this
segment qualifies for an audio or screen recording.
y
nl
4 Attributes are tagged to the recorded segment, according to the custom data
mapping configuration. The Integration Service sends attributes tagged to the
O
recorded segment as a TAG message to the TDM Recorder.
The TDM Recorder saves this information in the INUM.XML file.
se
NOTE The TAG message can provide updates for custom attributes as well as for
U
segment and contact attributes (for example, ANI, DNIS, Number of holds,
Contact Duration, etc.).
al
When the segment and/or contact is created or closed, the TAG message is sent to
rn
Integration
Switch/CTI Server CTI Adaptor TDM Recorder Screen Recorder Consolidator MDL
Service
3 Close segment
ENDAUDIO
+ Channel
Close INUM.wav
6
STOPPED + Channel
+ INUM
STOP + Workstation
7
STOPPED + Workstation
FINALIZE + INUM
y
FINALIZE + INUM
nl
Screen INUM.XML is ready to be
O
marked in DBS
9 Screen INUM.XMLs
in Central DBS
U
al
rn
te
In
1 The CTI Server or switch sends an End Call event to the CTI Adapter.
Typically, this event contains the recorded extension and several custom data
attributes.
2 The CTI Adapter transfers the event to the Integration Service.
3 The Integration Service checks if it is currently recording this segment.
If the segment is being recorded, the Integration Service closes the segment. If this
is the last contact segment, the contact is closed.
4 Integration Service sends PRPTAG, TAG, SESSION and CONTACT messages to TDM
Recorder in order to tag segment and contact information to the audio recording
INUM. For detailed flow see Segment and Contact Information Tagging,page 10.
5 Integration Service sends PRPTAG, TAG, SESSION and CONTACT messages to
Screen Recorder in order to tag segment and contact information to the screen
recording INUM. For detailed flow see Segment and Contact Information
Tagging,page 10.
6 The TDM recorder identifies the VOX ended on the channel and sends an ENDAUDIO
message to the Integration Service. The TDM recorder closes the audio file and
sends a STOPPED message to the Integration Service that provides the recording
INUM.
It is possible that audio end will be detected before the end of the CTI call. In such
cases, step 5 will occur prior to step 1 and the rest of the flow remains the same.
NOTE The Integration Service ensures that the recording stopped, by waiting 6 seconds
for the STOPPED acknowledgement. The 6 seconds are added to the recorded
audio.
7 When the Integration Service closes the segment, a STOP message is sent to the
Screen recorder. The Screen Recorder terminates the Screen Capture's activity on
the agents workstation and sends a STOPPED acknowledgement for the STOP
request.
8 The Audio/Screen INUM.xml is ready to be marked in the database. The Integration
Service sends the FINALIZE message to the TDM and Screen recorders. The
y
FINALIZE message is generated only when all recordings of the contact are closed
and After Call Work is complete.
nl
O
9 This step represents the segment and contact marking dataflow and is triggered by
the FINALIZE message. The Consolidator updates the segment and the contact
se
information in the Central Database using the MDL infrastructure. The Consolidator
converts XML metadata to SOAP using XSLT. It uses the MDL web service to write
U
data to the database in SOAP format. For details, see the Marking Data Flow which
will be provided in a future version of this Document.
al
rn
te
In
y
Start Segment logs are produced by the Integration Service.
nl
O
The following is a list of the most common log lines created during the Start Segment
data flow.
se
The CTI Adapter sends CTI events to the Integration Service. The CTI events are
handled by the Call Tracker. Typically, there is more than one CTI event that indicates a
al
The following is an example of a Siemens CSTA tracker that adds and updates a CTI call
in the Call Model when the call starts:
te
y
The following is an example of a log that is created when the rule is evaluated as true:
[RequestedC|1434|D] 2012/06/27 17:50:38.826 Business Rule <1, Enterprise Audio
nl
and Screen Recording, RecordingAction<RecordAll, 100, 60, false, , >> fired
O
content type <Audio> on Contact<9114169183880000161>
se
The above log will not appear in cases where the specific business rule did not fire for
the segment or contact.
U
In the following log example, the TDM recorder detected an audio on the channel,
rn
As shown in the following log, the Integration Service associates the recording with the
segment:
[Session |17F0|D] 2012/06/27 17:50:39.346 Session<9114169183880000161>
State<Running> has new Parent<Recording<464001000995896>>, replacing (NULL).
New StitchId<464001000995896>
In the following log example, the Integration Service requests the Screen Recorder to
start recording. The Screen Recorder responds with a STARTED message when recording
is started.
[NGAConnect|1434|H] 2012/06/27 17:50:44.066 NGA<SCREENCAPTURE, USCHI2K8REC,
10.31.250.32, 29503> Sending <2 START CMDID:USWDD2K8REC SCREENID 1765:
PC:10.31.242.154: DATAPORTGROUP:82:?>
[NGAConnect|17F0|H] 2012/06/27 17:50:44.066 NGA<SCREENCAPTURE, USCHI2K8REC,
10.31.250.32, 29503> Received message <2 STARTED CMDID:USWDD2K8REC SCREENID
1765: PC:10.31.242.154: INUM:314001000105372:>
In the following log example, the Integration Service associates a new screen recording
with the segment:
[SingleRole|17F0|I] 2012/06/27 17:50:44.066 Matched new <SC Video>
Recording<314001000105372> to Contact<9114169184400000161>
Session<9114169184400000161> State<Running>
y
nl
[Call |1434|D] 2012/06/27 17:50:38.826 Generic<Siemens>:
CallAdded<Ringing, 1340828205673> Configured Lines: [Extension<1, 550484>,
O
Trunk<1, 134235976>]
[Call |1434|D] 2012/06/27 17:50:39.056 Generic<Siemens>:
se
The latter logs reflect the changes associated with the call participants and the state of
the call. Active state indicates that a call is established and the call participants are
al
talking. Additional states that reflect the CTI events received for that extension, like
OnHold, can appear with CallUpdate.
rn
When the call ends, the CallRemove message appears as shown in the following log:
te
y
[NGAConnect|17F0|H] 2012/06/27 17:50:39.346 NGA<TDMCAPTURE, USWDD2K8REC,
nl
169.254.95.210, 29502> Received message <3 SEENAUDIO MC:459:>
[NGAConnect|17F0|H] 2012/06/27 17:50:39.346 NGA<TDMCAPTURE, USWDD2K8REC,
O
169.254.95.210, 29502> Received message <3 STARTED CMDID:: MC:459:
INUM:464001000995896:>
se
As shown in the following log, the Integration Service associates the recording with the
segment:
U
New StitchId<464001000995896>
rn
In the following log example, the Integration Service requests the Screen Recorder to
start recording. The Screen Recorder responds with a STARTED message when recording
te
is started.
In
y
nl
[Call |1434|D] 2012/06/27 17:52:49.799 Generic<Siemens>: CallRemove<Idle,
1340828205549> Configured Lines: [Trunk<1, 134235980>, Extension<1, 50232>]
O
Step 3: Close Segment
se
The following log is created when the call is closed and there are no more participants:
U
Step 8: FINALIZE
If there are more than one recording associated with the closed segment, all recordings
are finalized. The following is an example of the finalize audio recording log:
[NGAConnect|1024|H] 2012/06/27 17:53:01.799 NGA<TDMCAPTURE, USWDD2K8REC,
169.254.95.210, 29502> Sending <6 FINALIZE CMDID:FRAMEWORK/52571:
INUM:464001000995936:?>
y
The following is an example of the finalize screen recording log:
[NGAConnect|1024|H] 2012/06/27 17:53:01.799 NGA<SCREENCAPTURE, USCHI2K8REC,
nl
10.31.250.32, 29503> Sending <6 FINALIZE CMDID:USWDD2K8REC SCREENID 1782:
O
INUM:314001000105377:?>
se
y
05%003a00,464001000995894;2012-06-27T17%003a50%003a49.646-
05%003a00,464001000995901;2012-06-27T17%003a51%003a09.527-
nl
05%003a00,464001000995912: WRAPUPTIME:45: HOLDS:0: TIMEOFFSET:-300: ?>
O
Step 4: CONTACT + INUM + CONTACTID
se
The following is an example of when an audio INUM.xml file is updated with a contacts
U
contactid.
[NGAConnect|17F0|H] 2012/06/27 17:50:39.346 NGA<TDMCAPTURE, USWDD2K8REC,
al
y
In this case, the IP recorder can only identify the source and destination IP addresses of
the participants, but not the participants themselves. Therefore the switch has to
nl
O
provide the IP address of an extension in CTI events, in order to match the transmission
captured by the Recorder, with the CTI events received for the call.
se
This second scenario, where signaling is not available for the recorded call, will be
covered in a separate chapter CTI Controlled VoIP Interception, which will be provided in
U
4
Verify Business Rules
SEENAUDIO + INUM
START + Workstation
y
segment
nl
TAG + INUM
6
+ Session attributes
O
Save to Audio INUM.XML
se
SESSION + INUM +
7
SESSIONINUM
CONTACT + INUM +
8
CONTACTID
al
SESSION + INUM +
9
SESSIONINUM
te
NOTE The INUM is a unique 15 digit recording identifier. The first 6 digits represent the
Recorder Serial Number, as appears in the Recorder Settings page in Enterprise
Manager. The last 9 digits are the Recording Serial Number, starting with
000000001. For instance, if Recorder Serial Number is 934065 the first INUM will
be 934065000000001.
iii. If the beginning of the audio recording is successful, the IP Recorder sends a
y
STARTED message back to the integration service. The message includes a
nl
recording INUM, extension, source and destination IP addresses for this call. O
If the audio recording is not successful, an alarm is generated.
iv. The Integration Service associates the Audio INUM with the segment based
se
NOTE If the Recorder detected RTP activity for more than five seconds before the CTI
event was received, these five seconds will be included in the segment, and the
RTP start time will be used for naming the file and marking the contact.
al
If the Recorder detected RTP activity started more than 5 seconds before the CTI
rn
event, the audio before the CTI event will be broken off as separate recording
(with an INUM). This segment will start at CTI start.
te
Screen Recording
The Integration Service identifies the agent workstation IP associated with the
recorded extension, as well as the agent and PBX ID.
The agent workstation IP to be recorded is identified as a result of the seating
arrangement for the phone and screen data sources. For details, see the
Recorder Agent Associations Guide.
If the segment qualifies for a screen recording:
i. The Integration Service sends a START message to the Screen Recorder. The
START message contains the required agent workstation IP.
ii. The Screen Recorder allocates an INUM for the screen recording and saves
the screens in the INUM.scn file.
All screen recording information is saved in the Screen INUM.xml file.
iii. The Screen Recorder activates recording on the requested agent workstation
IP using the Screen Capture Service running on the workstation.
iv. The Integration Service associates the Screen INUM with the segment.
6 The Start Call event contains standard segment attributes (for example, ANI, DNIS,
etc.) and custom data attributes. These attributes are tagged to the segment. The
Integration Service sends the TAG message containing the attributes to the IP
Recorder.
The IP Recorder updates the attributes in the Audio INUM.xml file.
7 The Integration Service sends a SESSION message to the IP Recorder to signify that
a segment was created for the INUM.
The IP Recorder updates the segment number in the Audio INUM.xml file.
The SESSIONINUM is the INUM of the first recording in the specific segment.
8 The Integration Service sends a CONTACT message to the IP Recorder to signify
that the recording belongs to a contact.
The IP Recorder updates the information in the Audio INUM.xml file.
y
9 The Integration Service sends a SESSION message to the Screen Recorder to
nl
signify that a segment was created for the INUM. O
The Screen Recorder updates the segment number in the Screen INUM.xml file.
The SESSIONINUM is the INUM of the first recording in the specific segment.
se
The Screen Recorder updates the information in the Screen INUM.xml file.
al
rn
te
In
TAG + INUM
4 + Custom Attributes
5 Save to INUM.xml
1 The CTI Server or switch sends an Update event to the CTI Adapter.
Typically this event contains the recorded extension and several custom data
attributes.
2 The CTI Adapter transfers the event to the Integration Service.
3 The Integration Service refers to its Business Rules to verify whether or not this
segment qualifies for an audio or screen recording:
y
nl
4 Attributes are tagged to the recorded segment, according to the custom data
mapping configuration. The Integration Service sends attributes tagged to the
O
recorded segment as a TAG message to the IP Recorder.
The IP Recorder saves this information in the INUM.XML file.
se
NOTE The TAG message can provide updates for custom attributes as well as for
U
segment and contact attributes (for example, ANI, DNIS, Number of holds,
Contact Duration, etc.).
al
When the segment and/or contact is created or closed, the TAG message is sent to
rn
3 Close segment
SESSION + INUM
+ SESSIONINUM
+ Session Statistics
CONTACT + INUM +
CONTACTID
+ Contact Statistics
CONTACT + INUM +
CONTACTID + Contact Statistics
5
Close INUM.wav
STOPPED + INUM
STOP + Workstation
y
Close INUM.scn file
6
nl
STOPPED + Workstation
O
FINALIZE + INUM
se
8
in Central DBS
rn
te
In
1 The CTI Server or switch sends an End Call event to the CTI Adapter.
Typically this event contains the recorded extension and several custom data
attributes.
2 The CTI Adapter transfers the event to the Integration Service.
3 The Integration Service checks if it is currently recording this segment.
If the segment is being recorded, the Integration Service closes the segment. If this
is the last contact segment the contact is closed.
4 The Integration Service sends a SESSION message to the IP Recorder to update
segment statistics (for example, the number of holds and duration) and a CONTACT
message to the IP Recorder to update contact statistics (for example, number of
transfers).
If the segment is an Audio recording, the IP Recorder updates the information in the
Audio INUM.xml file.
If the segment is a Screen recording, the IP Recorder updates the information in the
Screen INUM.xml file.
5 The IP Recorder identifies that the call has ended based on signaling, closes the
audio file and sends a STOPPED message to the Integration Service that provides
the recording INUM.
NOTE The Integration Service ensures that the recording has stopped, by waiting 6
seconds for the STOPPED acknowledgement. The 6 seconds are added to the
recorded audio.
6 When the Integration Service closes the segment a STOP message is sent to the
Screen recorder. The Screen Recorder terminates the Screen Capture's activity on
the agents workstation and sends a STOPPED acknowledgement for the STOP
request.
7 The Audio/Screen INUM.xml is ready to be marked in the database. The Integration
Service sends the FINALIZE message to the IP and Screen recorders.
This step represents the segment and contact marking dataflow and is triggered by the
y
FINALIZE message. The Consolidator updates the segment and the contact information
nl
in the Central Database using the MDL infrastructure. The Consolidator converts XML
metadata to SOAP using XSLT. It uses the MDL web service to write data to the database
O
in SOAP format. For details, see the Marking Data Flow which will be provided in a future
version of this Document.
se
U
al
rn
te
In
y
talking. Additional states that reflect the CTI events received for that extension, like
nl
OnHold, can appear with CallUpdate. O
When the call ends the CallRemove message appears as shown in the following log:
[Call |1434|D] 2012/06/27 17:52:28.038 Generic<Siemens>: CallRemove<Idle,
se
in new Contact<9114465302230000201>
In
If the call is a new agent call when the agent is already participating in a contact (for
instance, a customer is put on hold while the agent places a new consultation call to a
supervisor), a new segment is created and associated with an existing contact as shown
in the following log example:
[Session |12A8|I] 2012/08/01 08:23:42.404 Setting Connection <2860633904051>
<Extension<2, 2310>, 33026> to new Session<9114465302230000201> State<Running>
in Contact<9114465302230000201>
y
nl
[NGAConnect|0DD4|H] 2012/08/01 08:23:44.911 NGA<IPCapture, TLWSV11NG4AL,
10.161.207.112, 29504> Received message <1 SEENAUDIO INUM:713002000046520:
O
RTPTYPE:8:>
As shown in the following log, the Integration Service associates the recording with the
se
segment:
[Session |0DD4|D] 2012/08/01 08:23:44.911 Session<9114465302230000201>
U
CTI attributes are tagged to the audio INUM. The following is an example of the multiple
TAG messages sent during recording:
In
y
nl
The following example shows the TAG message that is sent to the recorder to tag
updated custom data fields. Custom data fields appear as key:value: pairs where the
O
key is the custom attribute name.
se
y
The following is an example of when the audio INUM.xml file is updated with contact
information (for example, number of transfers, contact duration, total hold time, etc.).
nl
O
[NGAConnect|1434|H] 2012/06/27 17:52:49.799 NGA<TDMCAPTURE, USWDD2K8REC,
169.254.95.210, 29502> Sending <6 CONTACT CMDID:FRAMEWORK/52514:
se
Step 7: FINALIZE
If there are more than one recording associated with the closed segment, all recordings
are finalized. The following is an example of the finalize audio recording log:
[NGAConnect|1024|H] 2012/06/27 17:53:01.799 NGA<TDMCAPTURE, USWDD2K8REC,
169.254.95.210, 29502> Sending <6 FINALIZE CMDID:FRAMEWORK/52571:
INUM:464001000995936:?>
The following is an example of the finalize screen recording log:
[NGAConnect|1024|H] 2012/06/27 17:53:01.799 NGA<SCREENCAPTURE, USCHI2K8REC,
10.31.250.32, 29503> Sending <6 FINALIZE CMDID:USWDD2K8REC SCREENID 1782:
INUM:314001000105377:?>
y
nl
O
se
U
al
rn
te
In
y
In this case, the IP recorder controls the recording. The call is recorded based on
signaling and the Integration Service is notified about the participants of the calls. This
nl
O
information can be matched by the Integration Service to the CTI events received from
the switch. This second scenario, where signaling is available for the recorded call, is not
se
y
TAG + INUM
6
nl
+ Session attributes
CONTACT + INUM +
8
CONTACTID
U
SESSION + INUM +
9
SESSIONINUM
rn
y
screen and audio recordings).
NOTE
nl
The INUM is a unique 15 digit recording identifier. The first 6 digits represent the
O
Recorder Serial Number, as appears in the Recorder Settings page in Enterprise
Manager. The last 9 digits are the Recording Serial Number, starting with
se
000000001. For instance, if Recorder Serial Number is 934065 the first INUM will
be 934065000000001.
U
vi. If the beginning of the audio recording is successful, the IP Recorder sends a
al
vii. The Integration Service associates the Audio INUM with the segment based
on extension provided in the STARTED message.
In
NOTE If the Recorder detected RTP activity for more than five seconds before the CTI
event was received, these five seconds will be included in the segment, and the
RTP start time will be used for naming the file and marking the contact.
If the Recorder detected RTP activity started more than 5 seconds before the CTI
event, the audio before the CTI event will be broken off as separate recording
(with an INUM). This segment will start at CTI start.
The 5 seconds overlay is configurable per Data Source.
Screen Recording
The Integration Service identifies the agent workstation IP associated with the
recorded extension, as well as the agent and PBX ID.
The agent workstation IP to be recorded is identified as a result of the seating
arrangement for the phone and screen data sources. For details, see the
Recorder Agent Associations Guide.
If the segment qualifies for a screen recording:
i. The Integration Service sends a START message to the Screen Recorder. The
START message contains the required agent workstation IP.
ii. The Screen Recorder allocates an INUM for the screen recording and saves
the screens in the INUM.scn file.
All screen recording information is saved in the Screen INUM.xml file.
iii. The Screen Recorder activates recording on the requested agent workstation
IP using the Screen Capture Service running on the workstation.
iv. The Integration Service associates the Screen INUM with the segment.
6 The Start Call event contains standard segment attributes (for example, ANI, DNIS,
etc.) and custom data attributes. These attributes are tagged to the segment. The
Integration Service sends the TAG message containing the attributes to the IP
Recorder.
The IP Recorder updates the attributes in the Audio INUM.xml file.
7 The Integration Service sends a SESSION message to the IP Recorder to signify that
y
a segment was created for the INUM. The IP Recorder updates the segment number
in the Audio INUM.xml file.
nl
O
The SESSIONINUM is the INUM of the first recording in the specific session.
8 The Integration Service sends a CONTACT message to the IP Recorder to signify
se
that the recording belongs to a contact. The IP Recorder updates the information in
the Audio INUM.xml file.
U
signify that a segment was created for the INUM. The Screen Recorder updates the
segment number in the Screen INUM.xml file.
rn
The SESSIONINUM is the INUM of the first recording in the specific session.
te
The Screen Recorder updates the information in the Screen INUM.xml file.
TAG + INUM
4 + Custom Attributes
5 Save to INUM.xml
1 The CTI Server or switch sends an Update event to the CTI Adapter.
Typically this event contains the recorded extension and several custom data
attributes.
2 The CTI Adapter transfers the event to the Integration Service.
3 The Integration Service refers to its Business Rules to verify whether or not this
segment qualifies for an audio or screen recording:
y
nl
4 Attributes are tagged to the recorded segment, according to the custom data
mapping configuration. The Integration Service sends attributes tagged to the
O
recorded segment as a TAG message to the IP Recorder.
The IP Recorder saves this information in the INUM.XML file.
se
NOTE The TAG message can provide updates for custom attributes as well as for
U
segment and contact attributes (for example, ANI, DNIS, Number of holds,
Contact Duration, etc.).
al
When the segment and/or contact is created or closed, the TAG message is sent to
rn
3 Close segment
SESSION + INUM
+ SESSIONINUM
+ Session Statistics
CONTACT + INUM +
CONTACTID
+ Contact Statistics
CONTACT + INUM +
CONTACTID + Contact Statistics
STOPCALL+ CALLID
5
Close INUM.wav
STOPPED + INUM
STOP + Workstation
y
nl
Close INUM.scn file
6 O
STOPPED + Workstation
se
FINALIZE + INUM
in DBS
7
FINALIZE + INUM
al
in Central DBS
te
In
1 The CTI Server or switch sends an End Call event to the CTI Adapter.
Typically this event contains the recorded extension and several custom data
attributes.
2 The CTI Adapter transfers the event to the Integration Service.
3 The Integration Service checks if it is currently recording this segment.
If the segment is being recorded, the Integration Service closes the segment. If this
is the last contact segment the contact is closed.
4 The Integration Service sends a SESSION message to the IP Recorder to update
segment statistics (for example, the number of holds and duration) and a CONTACT
message to the IP Recorder to update contact statistics (for example, number of
transfers).
If the segment is an Audio recording, the IP Recorder updates the information in the
Audio INUM.xml file.
If the segment is a Screen recording, the IP Recorder updates the information in the
Screen INUM.xml file.
5 The Integration Service sends a STOPCALL request to the IP Recorder, in order to
stop the recording of a call identified by CALLID. The IP Recorder closes the audio
file and sends a STOPPED message to the Integration Service that provides the
recording INUM.
NOTE The Integration Service ensures that the recording has stopped, by waiting 6
seconds for the STOPPED acknowledgement. The 6 seconds are added to the
recorded audio.
6 When the Integration Service closes the segment a STOP message is sent to the
Screen recorder. The Screen Recorder terminates the Screen Capture's activity on
the agents workstation and sends a STOPPED acknowledgement for the STOP
request.
7 The Audio/Screen INUM.xml is ready to be marked in the database. The Integration
Service sends the FINALIZE message to the IP and Screen recorders.
y
8 This step represents the session and contact marking dataflow and is triggered by
nl
the FINALIZE message. The Consolidator updates the segment and the contact
information in the Central Database using the MDL infrastructure. The Consolidator
O
converts XML metadata to SOAP using XSLT. It uses the MDL web service to write
data to the database in SOAP format.
se
For details, see the Marking Data Flow which will be provided in a future version of
this Document.
U
al
rn
te
In
y
OnHold, can appear with CallUpdate.
When the call ends the CallRemove message appears as shown in the following log:
nl
O
[Call |169C|D] 2012/08/01 10:54:16.822 CiscoCM<Anna - Cisco IP DS>:
CallRemove<Idle, 17726935> Configured Lines: [Extension<12, 8049>]
se
If the call is a new agent call, a new session and contact are created. The following is an
al
Contact<9114466200010000311>
In
If the call is a new agent call when the agent is already participating in a contact (for
instance, a customer is put on hold while the agent places a new consultation call to a
supervisor), a new session is created and associated with an existing contact as shown
in the following log example:
[Session |12A8|I] 2012/08/01 08:23:42.404 Setting Connection <2860633904051>
<Extension<2, 2310>, 33026> to new Session<9114465302230000201> State<Running>
in Contact<9114465302230000201>
y
183460604722142:?>
y
SCREENUNIT:380003: ANI:8049: DATASOURCEULTRAID:380000012: AGENTNAME:danny
nl
user: AGENTID:: WORKSTATION:tlwsannadsk2: EXTENSION:8049:
CALLDIRECTION:Outbound: FIREDBUSINESSRULES:,Anna BR: CALLID:17726935:
O
DATASOURCENAME:Anna - Cisco IP DS: DEVICENAME:SEP00016c4a9430:
NUMBERDIALED:6002: CALLEDPARTYNAME:6002: CHANNELNUMBER:000000222: ?>
se
The following is an example of when an audio INUM.xml file is updated with session
al
INUM with standard session attributes such us, duration, hold time, number of holds,
etc.
rn
y
associated with a step in the flow.
Service that indicate call ends. Events are handled by the call tracker.
[Call |169C|D] 2012/08/01 10:54:16.822 CiscoCM<Anna - Cisco IP DS>:
U
The following log is created when the call is closed and there are no more participants:
te
y
recording on a specific workstation IP. Screen recording is stopped and responds with a
nl
STOPPED message containing the screen recording INUM. O
[NGAConnect|169C|H] 2012/08/01 10:57:41.423 NGA<SCREENCAPTURE, TLWSV11NGRIA,
169.254.10.63, 29503> Sending <2 STOP CMDID:TLWSV11NGRIA SCREENID 135:
PC:tlwsannadsk2: CONNECTSTRING:10.161.62.40: DATAPORTGROUP:30:?>
se
Step 7: FINALIZE
rn
If there are more than one recording associated with the closed session, all recordings
te
are finalized. The following is an example of the finalize audio recording log:
In
y
nl
O
se
U
al
rn
te
In
Softphone Registration
Service Observe (SO) and Single-Step Conference (SSC) recording methods use
softphones registered on the IP Recorder to obtain record the agents' audio. Softphone
registration occurs during Integration service startup, before the system records any
calls. It is applicable for both selective and full recording solutions.
y
from the extension. This feature enables the recorder to record calls on these
nl
extensions. O
In DMCC Environment, Integration Service is configured with a DMCC Adapter which
communicates with the DMCC connector and is responsible for registration of softphones
se
as follows:
U
DMCC application can monitor an agent's extension using Service Observe. The DMCC
rn
service establishes a softphone on the switch for each extension on the system that
needs to record. Using this softphone extension, the DMCC application dials a predefined
te
As with Service Observe, the DMCC service establishes a softphone on the switch for
each extension on the system that needs to be recorded. Integration Service's CTI
adapter uses a CTI client software to register extensions and softphones with the
switch. The CTI adapter also has a call control over extensions and softphones.
In order to record a call on extension, the CTI adapter joins a softphone to the call using
Single-Step Conference. The switch sends the audio of the call to a redefined IP
address and port on the IP Recorder. The specific IP and port are defined during the
softphone set-up. Single-Step Conference needs to be initiated on per-call basis.
y
nl
O
se
U
al
rn
te
In
Softphone Registration
Softphone Registration Logs,page 68
External Switch
Integration
Avaya AES DMCC Adapter IP Recorder
Service
Server
Service startup
1
UDP port is opened
GetDeviceId + softphone
y
Softphone is allocated to a CLAN board
nl
O
MonitorStart + softphone
2
se
NOTE Integration Service has a DMCC Adapter which communicates with Avaya
AES Server and is responsible for registration and Service Observe of
y
softphones. An additional CTI Adapter communicates with Avaya
nl
Communication Manager for CTI events. O
se
U
al
rn
te
In
Softphone registration is
1
complete
Allocate available
registered softphone for
agent extension recording
y
Agent extension audio is
nl
delivered to the Recorder
O
se
U
al
rn
te
In
y
nl
O
se
U
al
rn
te
In
Softphone registration is
1
complete
Allocate available
registered softphone for
agent extension recording
SSC request
Softphone is in call
y
Conference + softphone
nl
Agent extension audio is
O
delivered to the Recorder
se
U
in a call.
2 Integration Service uses a registered softphone to record agent extension by
te
y
nl
O
se
U
al
rn
te
In
Avaya
Communication Avaya AES Integration Screen
CTI Adapter IP Recorder Consolidator MDL
Manager Server Service Recorder
4 Verify Business
Rules
y
with segment
nl
Identify workspace
for Extension
O
START + Workstation
se
Allocate Screen
INUM
U
y
call that agent extension becomes active in.
ii. The Integration Service requests IP Recorder to start a recording of the call,
nl
O
by sending STARTCALL, EXTTAG and STARTSTREAM messages that provide
CALLID, the source and destination IP addresses of the transmission, as well
se
NOTE In VoIP delivery, the source IP address is the address of the media board on Avaya
Communication Manager that transmits the audio of the call to the softphone
al
iii. The IP Recorder matches the VoIP transmission with the STARTSTREAM
In
v. The IP Recorder allocates an INUM for the audio recording and saves the
audio as a INUM.wav file. All contact, segment and audio recording
information is saved in the Audio INUM.xml file. The INUM identifier is a
unique number allocated by the Recorder (that is, screen and audio
recordings).
NOTE The INUM is a unique 15 digit recording identifier. The first 6 digits represent the
Recorder Serial Number, as appears in the Recorder Settings page in Enterprise
Manager. The last 9 digits are the Recording Serial Number, starting with
000000001. For instance, if Recorder Serial Number is 934065 the first INUM will
be 934065000000001.
vi. If the beginning of the audio recording is successful, the IP Recorder sends a
STARTED message back to the Integration Service. The message includes a
recording INUM and extension. If the audio recording is not successful, an
alarm is generated.
NOTE If the Recorder detected RTP activity for more than five seconds before the CTI
event was received, these five seconds will be included in the segment, and the
RTP start time will be used for naming the file and marking the contact.
If the Recorder detected RTP activity started more than 5 seconds before the CTI
event, the audio before the CTI event will be broken off as separate recording
(with an INUM). This segment will start at CTI start.
Screen Recording
The Integration Service identifies the agent workstation IP associated with the
recorded extension, as well as the agent and PBX ID.
The agent workstation IP to be recorded is identified as a result of the seating
arrangement for the phone and screen data sources. For details, see the
Recorder Agent Associations Guide.
If the segment qualifies for a screen recording:
i. The Integration Service sends a START message to the Screen Recorder. The
START message contains the required agent workstation IP.
y
ii. The Screen Recorder allocates an INUM for the screen recording and saves
the screens in the INUM.scn file.
nl
O
All screen recording information is saved in the Screen INUM.xml file.
iii. The Screen Recorder activates recording on the requested agent workstation
se
iv. The Integration Service associates the Screen INUM with the segment.
al
INUM. For detailed flow see Segment and Contact Information Tagging,page 62.
te
recording INUM. For detailed flow see Segment and Contact Information
Tagging,page 62.
Integration
Switch/CTI Server CTI Adaptor IP Recorder Screen Recorder Consolidator MDL
Service
y
CONTACT + Screen INUM +
CONTACTID
nl
8
1 The Integration Service decides whether the audio recording is consolidated to the
Database or not. The decision is based on system and extension configuration
parameters, such as Recording mode, as well as real-time data. The Integration
Service sends a PRPTAG message to the IP Recorder, indicating whether to keep
the audio recording. The Keep flag is updated in the Audio INUM.xml file. If the
Keep Flag is zero, the Consolidator skips this recording while transferring the
information to the Database.
2 The Start Call event contains standard segment attributes such as ANI, DNIS, etc.
as well as custom data attributes. These attributes are tagged to the segment. The
Integration Service sends the TAG message containing the attributes to the TDM
Recorder.
The TDM Recorder updates the attributes in the Audio INUM.xml file.
3 The Integration Service sends a SESSION message to the TDM Recorder to signify
that a segment was created for the INUM.
The TDM Recorder updates the segment number in the Audio INUM.xml file.
The SESSIONINUM is the INUM of the primary recording in the specific segment.
Typically the first audio recording is considered the primary recording of the
segment. If no audio was recorded (for example a business rule has fired only for
screen recording) the first screen recording is the primary recording of the segment.
If there is more than one recording that belongs to the segment, the SESSION
message specifies a list of children recordings, including Start time and End time
of each recording. This enables the stitching of several recordings during playback
of the segment's audio.
4 The Integration Service sends a CONTACT message to the TDM Recorder to signify
that the recording belongs to a contact.
The TDM Recorder updates the information in the Audio INUM.xml file.
5 The Integration Service decides whether the screen recording is consolidated to the
Database or not. The Integration Service sends a PRPTAG message to Screen
Recorder indicating whether to keep the screen recording. The Keep flag is
updated in the Screen INUM.xml file. If the Keep flag is zero, the Consolidator
skips this recording while transferring the information to the Database.
y
nl
6 The Integration Service sends the TAG message containing the segment attributes
to the Screen Recorder.
O
The Screen Recorder updates the attributes in the Screen INUM.xml file.
se
The Screen Recorder updates the segment number in the Screen INUM.xml file.
al
The SESSIONINUM is the INUM of the primary recording in the specific segment.
Typically the first audio recording is considered the primary recording of the
rn
segment. If no audio was recorded (for example a business rule has fired only for
screen recording) the first screen recording is the primary recording of the segment.
te
In
TAG + INUM
4 + Custom Attributes
y
nl
5 Save to INUM.xml
O
se
1 The CTI Server or switch sends an Update event to the CTI Adapter.
U
Typically this event contains the recorded extension and several custom data
attributes.
al
3 The Integration Service refers to its Business Rules to verify whether or not this
segment qualifies for an audio or screen recording:
te
In
4 Attributes are tagged to the recorded segment, according to the custom data
mapping configuration. The Integration Service sends attributes tagged to the
recorded segment as a TAG message to the IP Recorder.
The IP Recorder saves this information in the INUM.XML file.
NOTE The TAG message can provide updates for custom attributes as well as for
segment and contact attributes (for example, ANI, DNIS, Number of holds,
Contact Duration, etc.).
When the segment and/or contact is created or closed, the TAG message is sent to
update the segment and the contact attributes.
y
nl
O
se
U
al
rn
te
In
Integration
Switch/CTI Server CTI Adaptor IP recorder Screen Recorder Consolidator MDL
Service
3 Close segment
RTP transmission
ends
STOPCALL + CALLID
6
Close INUM.wav
STOPPED + INUM
STOP + Workstation
FINALIZE + INUM
y
FINALIZE + INUM
nl
Screen INUM.XML is ready to be
marked in DBS
O
Mark Audio and
9 Screen INUM.XMLs
se
in Central DBS
U
al
rn
te
In
1 The CTI Server or switch sends an End Call event to the CTI Adapter.
Typically this event contains the recorded extension and several custom data
attributes.
2 The CTI Adapter transfers the event to the Integration Service.
3 The Integration Service checks if it is currently recording this segment.
If the segment is being recorded, the Integration Service closes the segment. If this
is the last contact segment the contact is closed.
4 Integration Service sends PRPTAG, TAG, SESSION and CONTACT messages to IP
Recorder in order to tag the segment and contact information to the audio recording
INUM. For detailed flow see Segment and Contact Information Tagging,page 62.
5 Integration Service sends PRPTAG, TAG, SESSION and CONTACT messages to
Screen Recorder in order to tag segment and contact information to the screen
recording INUM. For detailed flow see Segment and Contact Information
Tagging,page 62.
6 The Integration Service sends a STOPCALL request to the IP Recorder, in order to
stop the recording of a call identified by CALLID. The IP Recorder closes the audio
file and sends a STOPPED message to the Integration Service that provides the
recording INUM.
NOTE The Integration Service ensures that the recording has stopped, by waiting 6
seconds for the STOPPED acknowledgement. The 6 seconds are added to the
recorded audio.
7 When the Integration Service closes the segment a STOP message is sent to the
Screen recorder. The Screen Recorder terminates the Screen Capture's activity on
the agents workstation and sends a STOPPED acknowledgement for the STOP
request.
8 The Audio/Screen INUM.xml is ready to be marked in the database. The Integration
Service sends the FINALIZE message to the IP and Screen recorders.
9 This step represents the session and contact marking dataflow and is triggered by
the FINALIZE message. The Consolidator updates the segment and the contact
y
information in the Central Database using the MDL infrastructure. The Consolidator
converts XML metadata to SOAP using XSLT. It uses the MDL web service to write
nl
data to the database in SOAP format.
O
For details, see the Marking Data Flow which will be provided in a future version of
se
this Document.
U
al
rn
te
In
y
170.65.178.220, 29504> Sending <4 LISTENON IP:170.65.178.220: Ports:30000-
39999:?>
LISTENON_SUCCESS + Recorder IP + Port_N
nl
O
IP Recorder opens the ports for listening one-by-one, and acknowledges every
port successfully opened:
se
Port:30100:>
[NGAConnect|1F98|H] 2012/09/27 11:27:44.918 NGA<IPCapture, WSAPP3930,
al
y
Observe code and commands IP Recorder to start the recording
[SoftPhone |1BFC|I] 2012/10/10 12:55:11.730 SoftPhone<304, 798508> Service
nl
Observing<162098>
O
[SoftPhone |1BFC|I] 2012/10/10 12:55:11.730 SoftPhone<304, 798508>
Dialing<162098> using line<267>
se
1349825841590/17>
[NGAConnect|1BB4|H] 2012/10/10 12:55:13.280 NGA<IPCapture, WSAPP3519,
te
y
[AvayaLineR|0918|H] 2012/12/17 11:26:15.942 AvayaLineResource<Extension<6,
nl
2106>> Resource <null> Content<Extension<6, 2106>, Audio,
9115659076770000601,Active> trying to allocate soft phone
O
The softphone was successfully allocated:
se
conference:
rn
Adaptor's logs will show more information about the single-step conference command
sent to the switch/middle-ware.
The example below shows a Genesys SDK adaptor logs. Note that a C++ adaptor logs
will be in a separate file.
[GenesysSDK|16B4|I] 2012/12/17 11:26:15.972 Sending request to Single Step
Conference SoftPhone<2873> on ConnId<29275701877858082>
Step 3: Single Step Conference is established
If single-step conference is successful, the DMCC adaptor receives notification that the
softphone is now in a call, and audio delivery has started.
[SoftPhone |0BBC|D] 2012/12/17 11:26:15.992 SoftPhone<6, 2873> is off-
hook<true>...
[SoftPhone |0BBC|H] 2012/12/17 11:26:16.002 SoftPhone<6, 2873> Media Started
IPEndpoint<10.161.135.10:2050> Codec<g711U> PacketSize<20>
[AutoAnswer|0BBC|I] 2012/12/17 11:26:16.002 SoftPhone<6, 2873> has a call
The CTI Adaptor will receive a sequence of CTI events indicating that the softphone has
joined the agent's call in a conference.
Integration Service commands the IP Recorder to start recording the call:
[PortIPReco|0BBC|D] 2012/12/17 11:26:16.002 Adding stream. Call<CMAPI/2873/
1355316393375/3>
[NGAConnect|0BBC|H] 2012/12/17 11:26:16.002 NGA<IPCapture, TLWSV11NG4AL,
10.161.202.181, 29504> Sending <1 STARTCALL SYSTEM:SIPProxy: CALLID:CMAPI/
2873/1355316393375/3: TIMEOUT:60: MODE:active: MONO:true:?>
[NGAConnect|0BBC|H] 2012/12/17 11:26:16.002 NGA<IPCapture, TLWSV11NG4AL,
10.161.202.181, 29504> Sending <1 EXTTAG CALLID:CMAPI/2873/1355316393375/3:
EXT:2106:?>
[NGAConnect|0BBC|H] 2012/12/17 11:26:16.002 NGA<IPCapture, TLWSV11NG4AL,
10.161.202.181, 29504> Sending <1 STARTSTREAM CALLID:CMAPI/2873/1355316393375/
3: SRC:10.161.135.10:0: DST:10.161.202.181:9004: HANDLER:RTP: ?>
When agent's call ends, single-step conference ends automatically, therefore Integration
Service does not need to request the switch/middle-ware to end the recording.
Integration Service commands the IP Recorder to stop recording the call:
[AutoAnswer|0BBC|I] 2012/12/17 11:26:34.532 SoftPhone<6, 2873> is no longer on
a call
y
[PortIPReco|0BBC|D] 2012/12/17 11:26:34.532 Stopping the recording.
Call<CMAPI/2873/1355316393375/3>
nl
[NGAConnect|0BBC|H] 2012/12/17 11:26:34.532 NGA<IPCapture, TLWSV11NG4AL,
O
10.161.202.181, 29504> Sending <1 STOPCALL CALLID:CMAPI/2873/1355316393375/
3:?>
se
U
al
rn
te
In
WebLogic Authentication
The Impact 360 system supports two application authentication methods, System
Authentication and Windows Authentication.
WebLogic Authentication Overview, page 72
WebLogic Authentication with SSO, page 74
WebLogic Authentication Process Logs, page 75
y
System Authentication (DB Realm): This is the default authentication method
nl
installed with the system. Authenticates the user with a username and password
that is maintained within the system database. This section describes the DB Realm
O
authentication method, including the system administration account that needs to
be defined and the password policies supported by the DB Realm authentication
se
method.
Windows LDAP Authentication (Active Directory): Supports Microsoft's
U
Windows integrated authentication mechanisms. This authentication method uses
the security features of Windows clients and servers, and uses the existing Windows
al
Directory). This section describes the Windows authentication method, the forest
te
In
Chapter 2 - WebLogic Authentication
y
nl
O
se
U
al
rn
te
In
Key Distribution
Browser WebLogic LDAP Server Framework Database
Center (KDC)
(Application Server) (Active Domain) (BPMAIN)
(Active Domain)
GET
AUTH Required
Service Ticket
GET + Service Ticket
3
LDAPSearch of end-user
5a
End-user found
End-user found
Token Creation 6
Token
GET + Token
y
Token Validation
nl
Secondary 8
7
calls
Handle Request
O
se
Result
U
al
This requires a valid setup of SPN (Service Principal Name), Principal Name and
In
Encryption Type.
3 The Request including the End-User Identification, is sent to the Server together
with the Ticket.
4 The Ticket is validated against the SSOKeyTab file.
5 After validating the Ticket, the server decrypts the End-User Identification from the
Request and validates that the User is entitled to access the application.
a. The validation is carried out on the Active Domain.
b. The validation is also carried out on the Framework Database (BPMainDB).
6 A token representing the User is created and returned to the End-User.
The token is saved in the WebLogic Coherence cache.
7 All secondary requests to the application are done with the token.
The token is stored in a cookie, and when the SSL is applied, the transport is
encrypted.
8 If the token is valid, the application handles the request.
y
The ticket can be cached. To see the message clean the cache: klist purge
To see the ticket: klist tickets
nl
O
#1> Client: emmadmin@SUSDOMAIN.COM
Server: HTTP/tlwveacons59.SUSDomain.com @ SUSDOMAIN.COM
se
3 Access.log file
te
4 Productionserver.log file
y
'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1354107996552>
nl
<BEA-000000> <GSS name is emmadmin@SUSDOMAIN.COM>
####<Nov 28, 2012 1:06:36 PM GMT> <Debug> <SecurityAtn> <LMAPP>
O
<ProductionServer> <[ACTIVE] ExecuteThread: '8' for queue:
'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1354107996552>
se
<BEA-000000>
<com.bea.common.security.internal.service.IdentityCacheServiceImpl.getCachedId
In
entity(emmadmin@SUSDOMAIN.COM)>
####<Nov 28, 2012 1:06:36 PM GMT> <Debug> <SecurityAtn> <LMAPP>
<ProductionServer> <[ACTIVE] ExecuteThread: '8' for queue:
y
emmadmin@SUSDOMAIN.COM)(objectclass=user))(&(sAMAccountName=
nl
emmadmin@SUSDOMAIN.COM)(objectclass=user)))(!(userAccountControl:1.2.840.11355
6.1.4.803:=2)))", base DN & below)>
O
<1354107996567> <BEA-000000> <oneShotGroupMembershipLookup called for
se
emmadmin@SUSDOMAIN.COM>
####<Nov 28, 2012 1:06:36 PM GMT> <Debug> <SecurityAtn> <LMAPP>
<ProductionServer> <[ACTIVE] ExecuteThread: '8' for queue:
U
emmadmin@SUSDOMAIN.COM)(objectclass=user))(&(sAMAccountName=
emmadmin@SUSDOMAIN.COM)(objectclass=user)))", base DN & below)>
te
In
y
nl
O
se
U
al
rn
te
In
User Management
The User Management application within the Enterprise Suite portal is used to enable
administrators to carry out the functions of assigning privileges to Enterprise Suite
users, modifying user profiles, and creating hierarchical user organizations and groups.
User Management Overview, page 80
User Management Synchronization Components, page 80
User Management Synchronization, page 82
User Management Process Logs, page 83
y
nl
O
se
U
al
rn
te
In
Chapter 3 - User Management
Component Description
User Management Module This is the application module that contains the relevant pages
that facilitate the management of employees, organization, group,
roles, etc. This module is part of the main portal application, and is
hosted on Web Logic as part of the application server.
Integration Server This server is a generic scheduler, capable of running various pre-
defined packages of integration tasks. While the Integration
Server can be deployed for more than one instance on a single
enterprise system, the instance responsible for running the User
Management package is the one deployed on the Interaction
Database Platform.
y
adapter is a separate and independent executable that is
nl
called by the Integration Server when needed. The ADAM
Transformer is responsible for most of that logical
O
transformation that is done during the synchronization
operation.
se
Database.
rn
te
In
Component Description
MDAL WS This Web Service serves as an interface for both query and update
operations over the ADAM Database. MDAL WS is hosted on IIS on
the application server.
y
nl
O
se
U
al
rn
te
In
Make changes to
User Management
Data
Make changes to
1 User Management
Data
Trigger
2 incremental
Sync
Query result 4
Success code
Success code
Success code
Execute ADAM Transformer Adapter
7
Query recently
made changes
Query result 8
ADAM Transformer
Adapter Apply
(2nd adapter in UUM 9 Transformation
y
Package) Logic
nl
Save transformed
object to DB O
Query result 10
se
Success code
11
Query recently
made changes
al
12
Query result
rn
QM DB Sync Adapter
(3rd adapter in UUM
Commit change
Package)
To DB
te
13
Success code
In
Success code
1 User continuously make changes to user management data via the User
Management Module, and these changes are saved to the Framework
Database.
2 Every minute, an internal timer in the Integration Server triggers the User
Management package to start an incremental synchronization.
3 Integration Server executes the User Sync Adapter.
4 The User Sync Adapter queries the Framework Database to retrieve a list of
changes that were added since the previous adapter run.
5 User Sync Adapter aggregate the changes into batches and makes a call to the
MDAL WS with the first batch of update message. This web service call is
authenticated using a Foundation Authentication Token and is routed via the
load balancer.
6 MDAL WS processes the batch of messages and saves the required changes to the
ADAM Database.
Step 5 and 6 are repeated to process additional message batches until complete.
7 Integration Server executes the ADAM Transformer.
8 The ADAM Transformer queries ADAM Database to retrieve the changes that were
made since previous adapter run.
9 The ADAM Transformer performs the necessary logic to transform the objects that
were changed.
10 The ADAM Transformer saves the transformed objects back to the ADAM
Database.
11 Integration Server executes DB Sync adapter.
12 DB Sync queries the ADAM Database for the changes that were done since the
previous adapter run.
13 DB Sync updates the required tables in the Common Database, based on the
changes. If there is more than one instance of the Common Database, the update of
the tables is done in parallel to all instances.
y
User Management Process Logs
nl
O
During the User Management synchronization procedure, the following process logs are
generated.
se
"BatchExtender18" -extenderfilename
"D:\IMPACT~1\Software\INTEGR~1\FusionExchange\BPXServer.ConnectionInfo" -
servername "PTXServervm-v11-nimrod" -ORBNamingAddr "inet:vm-v11-nimrod:38693"
y
Log snippet (from IServer.txt) :
nl
####[Integration-Server]-[qaadmin] [2012-12-17 19:30:04,092] [DEBUG]
[BatchExtender1-Process] [BatchExtender1 ] <##[{user=qaadmin}]##> - The
O
working directory specified was blank. Setting working directory to servers
working directory: D:\IMPACT~1\Software\INTEGR~1\FusionExchange
se
"D:\IMPACT~1\Software\INTEGR~1\FusionExchange\BPXServer.ConnectionInfo" -
rn
DIR:D:\IMPACT~1\Software\INTEGR~1\FusionExchange;MAX RUNTIME:3600000;MAX
RETRIES:0;POLL INTERVAL:1000
In
y
"BatchExtender2" -extendername "BatchExtender2" -extenderfilename
nl
"D:\IMPACT~1\Software\INTEGR~1\FusionExchange\BPXServer.ConnectionInfo" -
servername "PTXServervm-v11-nimrod" -ORBNamingAddr "inet:vm-v11-nimrod:38693"
O
-maxretrycount 5 -adaptertype "TYPE_IMPLEMENTS_DO_COMMAND";WORKING
DIR:D:\IMPACT~1\Software\INTEGR~1\FusionExchange;MAX RUNTIME:3600000;MAX
se
RETRIES:0;POLL INTERVAL:1000
U
Dir]\Logs\DatabaseDirectorySync\DatabaseDirectorySync_CF.ltf)
rn
y
Ended
12/16/12 15:02:09.204 (-07) ExecutionFlow1 Informational 0 AddFoldersDefs
nl
Started
O
12/16/12 15:02:09.208 (-07) ExecutionFlow1 Informational 0 AddFoldersDefs
Ended
se
y
nl
O
se
U
al
rn
te
In
Speech Analytics
Speech Transcription,page 89
Speech Indexing,page 100
y
nl
O
se
U
al
rn
te
In
Chapter 4 - Speech Analytics Speech Transcription
Speech Transcription
Transcription is the process of converting audio data into text.
The transcription process is divided into the following main stages:
1 Prepare Files for Transcription,page 90: The user defines transcription rules, which
are saved in the database. Based on these rules, the system retrieves metadata for
the relevant recorded interactions. The Primary transcription server then processes
the rules and metadata and creates XML mission files for each interaction.
2 Retrieve Files for Transcription,page 91: All secondary transcription servers retrieve
the XML mission files from the Primary transcription server, and the relevant audio
files from the Content Server for transcription.
3 Transcribe Files,page 92: The transcription servers process and transcribe the files,
and create two different types of data:
Transcribed Data (.inf file): Contains the text of the recorded conversation
between the agent and the customer.
Metadata of the Transcribed Data (.met file): Contains some information
about the recorded conversation (about five fields), including speaker separation
and silence information.
For details on the two main folders used in different stages of the transcription process,
see Transcription Data and Folders,page 99.
y
Retrieve Files for ITS log located in:
nl
Transcription,page 91 %DataDir%\Logs\SpeechTranscriptionService\Speech Transcription Service - CF
Informational.txt
O
Transcribe ITS log located in:
se
NOTE To view the final result of each log (success or failure), access the Process Tracking
al
For detailed information about the logs generated during the transcription process, see
Transcription Logs,page 93.
In
Storage Manager QM DB
Users Desktop Contact DB Storage Manager
Rule Editor (CentralApp)
Configure Rules
1
Store Rules
2
Process Rules
3
Retrieve Metadata
4
1 Using the Storage Manager Rule Editor (Interaction Application), the user configures
transcription rules on the enterprise level.
The rule includes language and specific vocabulary, which forms the basis of the
cluster definition used by the Speech Transcription Service. Each rule is applied to a
specific instance, which is associated with a specific Speech Application Server.
2 The Storage Manager Rule Editor saves the rule definitions to the QM database
(CentralApp).
3 The Storage Manager, on the Primary Transcription Server, periodically retrieves and
processes the stored transcription rules from the QM Database (CentralApp).
4 Based on the transcription rules, the Storage Manager retrieves the metadata of the
relevant interactions for transcription from the Contact Database.
y
The Storage Manager will not pull interactions from the Contact Database that have
not yet been included in the User Synchronization process.
nl
O
5 The Storage Manager:
a. Compiles a list of interactions that meet the transcription rules
se
c. Saves the mission files according to transcription clusters, which are groups of
servers categorized according to language
al
One server in each cluster is designated as the Primary server (via the Enterprise
rn
Sites
Populates
Transcription Missions
1
Get XML Mission Files
2
Get Audio URL
3
NOTE This flow is only used for locating the URL of the audio file for transcription. The
actual audio file retrieval is described in Transcribe Files,page 92.
y
(Contact Data shared folder on the Primary Transcription Server), which indicates
the sequence in which the mission files need to be processed.
nl
O
2 The Transcriber service on all transcription servers in the site retrieve the XML
mission files from the Transcription Queue.
se
3 The Transcriber Service on each transcription server sends a message to the Locator
to get the URL of the audio file indicated by the mission file data.
U
If Speaker Separation is enabled, the Locator gets the URL of the VAD file (in
addition to the URL of the audio file).
al
4 The Locator requests to receive the relevant URL of the audio file from the Content
rn
Server.
te
Transcribe Files
Transcribe File Logs,page 98
Sites
Transcription Servers
3 Decompress/Decrypts
Audio File
y
nl
NOTE
O
This flow describes retrieving the actual audio file using the retrieved URL by the
Locator.
se
1 The Transcriber sends a message to the Playback component to retrieve the audio
U
file.
al
2 The Playback component downloads the file at the specific URL from the Content
Server.
rn
If Speaker Separation is enabled, the Locator downloads the VAD file (in addition to
te
transcribed.
4 The Playback component sends a message to the Transcriber that the audio file is
processed and ready to be transcribed.
5 The Transcriber transcribes the audio file.
The output of the transcription process includes two text files that describe the
interaction in text:
Transcribed Data (.inf file): Contains the text of the recorded conversation
between the agent and the customer.
Metadata of the Transcribed Data (.met file): Contains some information
about the recorded conversation (about five fields), including speaker separation
and silence information.
6 The Transcriber saves the files in the Products folder, according to the relevant
Speech Analytics Application Service instance.
Transcription Logs
During the transcription process, the following logs are generated:
Prepare Files for Transcription,page 90
Retrieve Files for Transcription Logs,page 95
Transcribe File Logs,page 98
You can use the phrases (marked in blue) to search for a specific log line. For example,
to find the log associated with retrieving metadata from the Contact Database, search
for Querying CentralContact.
y
nl
Log File Location:
%DataDir%\Logs\StorageManager\StorageManager_CF_MESSAGES.txt
O
Transcription rules are created via the Rule Editor (Organization
Management>Interactions and Analytics>Storage Manager Rules).
se
The following log is created when the Storage Manager retrieves and processes the
U
y
';') as _secondary_inums, (isnull(s.pbx_login_id,'')) as Agent,
nl
(isnull(s.ani,'')) as ANI, (case spd.p1_id WHEN 1 THEN isnull(spd.p1_value,'')
EL
O
11/28/12 07:40:12.624 (+02) Storage Manager Event Factory Verbose
DatabaseQueryMaker.cpp 222 [part 18 of 18] Performing query:
se
The following log indicates the end of retrieving metadata for a specific set of
interactions that adhere to the transcription rules:
11/28/12 07:45:13.995 (+02) Storage Manager Event Factory Informational
DbsQueryWithConnectionWrapper.cpp 295 Records retrieved: 0
11/28/12 07:45:13.995 (+02) Storage Manager Event Factory Verbose
DbsQueryWithConnectionWrapper.cpp 77 Succeeded to close connection to database
11/28/12 07:45:13.995 (+02) Storage Manager Event Factory Informational
SMEventGenerator.cpp 9229 UUM: no more unprocessed sessions left in DB
11/28/12 07:45:13.995 (+02) Storage Manager Event Factory Noncritical
SMEventGenerator.cpp 9237 ~~~~~~~~~~~~~~~ Finished to process unprocessed
sessions with age 0 ~~~~~~~~~~~~~~~~~
y
2012\Priority_25\467001_23645\467001_23645_09.52.33.000.XML to
nl
K:\Impact360\Data\ContactData\Handler 1\\467001_23645_09.52.33.000.XML
Informational Speech Transcription Service STTServer 01/01/13 05:18:59.146
(+03) XMLProvider.cpp pocuser 141 0x12F70 0x47DC
O
Handler 1: Update sessions from XML file \\127.0.0.1\ContactData$\18-Feb-
se
2012\Priority_25\467001_23645\467001_23645_09.52.33.000.XML succeeded
Informational Speech Transcription Service STTServer 01/01/13 05:18:59.201
(+03) STTHandler.cpp pocuser 1311 0x12F70 0x47DC
U
y
Log File Location: ITS log in: %DataDir%\Logs\SpeechTranscriptionService\
nl
Speech Transcription Service - CF Informational.txt O
The following log is created when the Content Server finds the URL and sends it back to
the Locator:
se
?><sessionResponse><fileResponse fileType="Audio"><requestStatus>0</
requestStatus><statusDetails></statusDetails><foundOnServer
al
isOriginalRecorder="true">TLWVT3CONS55</foundOnServer><sessionURL>http://TL
VT3CONS55:29500/retriever/
rn
replay?audioinums=467001000023645&encrypted=Ultra&type=audio&searcharchiver=fa
lse&searchbuffer=true&token=994A5FDCBED46ADE994A5FDCBED46ADE80FF97FCAFB6DC3A2D
te
4C176B99FE9AA4ABDB716859434486D936579ACC128184317399C14
79B44F511E89020CCE2D8405BEBFDA3586E7DCBB211A65886CB912F5B70C814F4A1440BDA98F23
In
6B6A51A1B3C26B2BBB578A02DBB89BCB16528A3D&ext=.wav</
sessionURL><sessionRecordingStartTime>2012-02-18T09:52:33.000</
sessionRecordingStartTime></fileResponse><fileResponse fileTy
IMPORTANT If an error occurs while retrieving the audio URL, the root cause can be found in
one of the following logs:
Content Server Log file:
%DataDir%\Logs\contentserver\contentserver_yyyy_mm_dd_0001.log
Locator Log file:
%DataDir%\Logs\transcriber\transcriber_yyyy_mm_dd_0001.log
y
05:19:01.164 (+03)
nl
HandleMissionXmlValue method: Element path '/CAudioFile/VadLocalFilePath' was
created inside the file 'K:\Impact360\Data\ContactData\Handler
O
1\467001_23645_09.52.33.000.XML' with the value ''.
Verbose Speech Transcription Service TranscriptionEngineBase 01/01/13
se
05:19:01.175 (+03)
HandleMissionXmlValue: The element path '/CAudioFile/VadLocalFilePath' inside
U
y
Verbose Speech Transcription Service TranscriptionEngineBase 01/01/13
nl
05:19:04.713 (+03) TEngineBase.cs pocuser 117 0x12F70 0x47DC
Engine 1: Beginning engine transcription.
audio : K:\Impact360\Data\Products\467001_23645_2012-02-
O
18T09_52_33.0000000.pcm.wav cri K:\Impact360\Data\ContactData\Handler
se
1\467001_23645_09.52.33.000.XML.
At the end of the transcription process, the following log is created:
U
The following logs indicate that the .inf and .met files (transcribed data and metadata,
respectively) have been saved in the Products directory on the transcription server:
Contact Data Incoming transcription mission queue, which Located on the Primary Transcription
indicates the sequence in which the mission Server only
files need to be processed. Default location:
All secondary transcription servers (all %IMPACT360DATADIR%contactdata
transcription servers on different sites other
than the Primary Transcription Server)
retrieve the XML mission files and process
them according to the sequence defined in
the Contact Data shared folder.
y
after the transcription is completed
nl
O
se
U
al
rn
te
In
Speech Indexing
After recorded interactions are transcribed into text, the transcriptions are processed
into a complete semantic index. Once content has been included in the index, it can be
used and integrated into the system for analytics purposes.
For example, searching for terms, categories and trends is based on indexed data, as
well as other analytics tools and features.
There are two main types of indexing flows:
Full (Main) Index Flow,page 105: The full or main index is built once a day, and
includes new transcripts, added to the transcripts from the previous build. When the
full index is built, the process also creates a sub-index, which is a smaller sample of
the full index, used for specialized applications and analytics features. In addition,
the process builds an updated trends list based on the data in the full index.
Incremental Index Flow,page 108: The incremental index is built once an hour,
starting with the first hour in which there are new transcripts after the full index
build. Each incremental index build contains all new transcripts since the last Full
index build. In addition, in the incremental index flow, no sub-index is created, and
no updated trends list is built.
Two independent threads that are activated by the Index Builder or scheduler (which is
also responsible for activating the building flows) relate to copying the transcription files
(.inf and .met) from the Speech Transcription Server and converting them to database
files to be used for the index (see Prepare Files for Transcription,page 90).
For descriptions of the components used in both types of index processes, and a
comparison of the properties or characteristics of each type of index, see Index
Components and Properties,page 130.
y
For example: IBuild_sclog_0_0.log, where sclog_0 is the thread\core 0 and the log
cycle is 0.
nl
O
Refer to the following files:
se
iBuild_mgr_0.log %impact360softwaredir%\Enhanced_Speech\IndexBuilder\Bin\
iBuild_0_0.log %impact360softwaredir%\Enhanced_Speech\IndexBuilder\Bin\
al
iBuild_sub_0.log %impact360softwaredir%\Enhanced_Speech\IndexBuilder\Bin\
rn
iBuild_sclog_0_0.log %impact360softwaredir%\SpeechCatTomcat64\log\speechcat
te
iBuild_Trends_0_0.log %impact360softwaredir%\Enhanced_Speech\SpeechCategorization\Bin\
In
For detailed information about the logs generated during the indexing process, see
Indexing Logs,page 110.
y
nl
O
se
U
al
rn
te
In
2 Store Products
y
nl
O
se
U
al
rn
te
In
Copy Products
Copy Products Log,page 110
Products>Incoming
Products Directory Copy Products Folder
Copies .inf & .met files
1
4
Repeats
Copy/Delete Saves files in Incoming
File Cycle 2
1 The Copy Products component on the Speech Application Server copies each
transcription file (.inf and .met) saved in the Products directory on the Speech
Transcription Servers.
2 Copy Products saves the files to the Products>Incoming folder on the Speech
Application Server.
3 Copy Products deletes the files on the Speech Transcription Server that it copied to
the Speech Application Server.
4 This same copy/delete file cycle is repeated until all relevant files (based on various
parameters) for the current thread are copied to the Speech Application Server.
y
nl
O
se
U
al
rn
te
In
Store Products
Store Products Log,page 112
Data Center
Products>Incoming PRODUCTS_FILES_
Folder DATABASE
Moves files to DB
1
3
Repeats
Move/Delete
File Cycle Deletes moved files
2
1 The Store Products process moves the transcription files saved in the
Products>Incoming folder to the Products File Database.
During this process, it converts the transcription files (saved as text files.inf and
.met) to SQL Lite Database files.
2 The Store Products process deletes the files from the Products>Incoming folder
that it copied to the Products File Database.
3 This same move/delete file cycle is repeated until all relevant files (based on various
parameters) for the current thread are copied to the Products File Database.
y
nl
O
se
U
al
rn
te
In
Data Center
Stop
1
Define Index
3
(Periods to Build)
y
10
nl
O
11 Build Trends
12
U
Start
13
al
rn
14 Load Index
te
In
1 Once a day, during a scheduled maintenance window (usually at night), the Index
Builder starts the process of building a Full (or Main) index.
To begin this process, it stops the SpeechCat service, which provides Speech Portal
services for users (searching for terms, analyzing trends and categories, etc.). This
means that analytics activity via the Portal cannot be performed during this time.
2 The Index Builder activates the IBuild Manager to start preparing the Full index.
3 The IBuild Manager defines the scope of the index based on the following
parameters:
How many transcripts need to be indexed, based on the number of new
transcripts that have been added to the database from the previous Full index
build to the current date
Total length of all of the new transcripts, in relation to the maximum size
constraints of the index
New transcripts dates, in order to determine which index partitions should be
created or updated.
Based on these factors, the IBuild Manager determines how many index builds need
to be created, and the date range or time period for each index build. A maximum
of three index builds can be created simultaneously.
To verify the index will not exceed its limitations, the manager scans the product
directory for new documents that should be indexed, starting from the last date,
backwards.
For each date, it counts how many documents in the index belong to this date and
how many new documents are still in the Products directory, waiting to be indexed.
It also checks the total duration of all documents in the index from this date and
adds the total duration of the new documents from the Products directory (the
duration of new documents is estimated according to the average duration of
documents already in the index).
After each day is scanned, the total number of documents and documents duration
is updated and checked against the limitations. If one of the limitations exceeds, the
scan is stopped and the starting date range is updated to the previous day. If all
y
dates were scanned and there are no limitation issues, the index will be built
nl
according to the original dates. O
To determine the number of index builds, the IBuild Manager reviews all of the new
documents in the Products directory and adds the time period that contains it to a
build list.
se
4 The IBuild Manager triggers the IBuild (Full) index process to start building the
U
index, based on the defined scope (number of index builds, per specific time
periods, etc.).
al
5 The IBuild (Full) index process creates up to three index builds, within the defined
rn
time periods.
Each index build writes to a separate IBuild.log file. Therefore, as the IBuild
te
process can perform up to three index builds, there can be up to three separate
IBuild.log files created at one time.
In
7 When the Full index has been built, the IBuild Manager activates the IBuild (Sub)
process to start creating the sub-index, which is a smaller sample of the full index,
used for specialized applications and analytics features.
8 The IBuild (Sub) process builds the sub-index.
9 The IBuild Manager waits for the IBuild (Sub) process to end.
10 When the Sub index has been built, the IBuild Manager activates the Trends
Building process to start rebuilding or updated the trends list, based on the updated
Full index.
11 The Trends Building process builds the trends list.
12 The IBuild Manager waits for the Trends Building process to end.
13 Once the Full and Sub indexes are built and the trends list has been updated, the
Index Builder restarts the SpeechCat process.
14 The SpeechCat process loads the updated index.
Once the index has been loaded, users perform analytics activities based on the
updated data (trends, categories, searching for terms, etc.).
y
nl
O
se
U
al
rn
te
In
Data Center
Define Index
2
(Periods to Build)
Reload Index
5
6 Reload Index
Index Build Done
7
y
Build Incremental Index
nl
9
(For One Period)
Reload Index
O
10
se
U
11 Reload Index
Index Build Done
al
12
rn
1 Once an hour, the Index Builder starts the process of building an incremental index,
which includes new transcripts that have been added to the database from the
previous hour.
NOTE The hour after the Full Index has been built, usually at night, the
incremental index will usually be empty. It will include new transcripts the
next hour that new transcripts have been added to the database.
To begin this process, the Index Builder activates the IBuild Manager to start
preparing the incremental index.
2 The IBuild Manager defines the scope of the index, including:
Number of time periods that should be built according to the dates of the new
transcripts inserted into the database
Date range of the periods
Based on these factors, the IBuild Manager determines how many index builds need
to be created, and the date range or time period for each index build. The indexes
are built sequentially.
3 The IBuild Manager triggers the IBuild (Inc) index process to start creating the first
index build, which includes transcripts for a specific time period.
4 The IBuild (Inc) index process creates the first index build, within the defined time
period.
5 The IBuild (Inc) index process sends a Reload message to the SpeechCat process,
indicating to reload the incremental index to include the new transcripts added in
the build.
6 The SpeechCat process reloads the incremental index.
7 The IBuild Manager waits for the incremental build process to end.
8 The IBuild Manager activates a new IBuild (Inc) index process to start creating the
second index build, which includes transcripts for a different time period.
Each index build writes to a separate IBuild.log file. Therefore, as the IBuild
process can perform up to three index builds, there can be up to three separate
y
IBuild.log files created.
9 The IBuild (Inc) index process creates the second index build, within the defined
nl
O
time period.
10 The IBuild (Inc) index process sends a Reload message to the SpeechCat process,
se
12 When all incremental builds end, the IBuild Manager process terminates.
al
13 The Index Builder waits until the IBuild Manager process ends.
rn
te
In
Indexing Logs
During the indexing process, the following logs are generated:
Copy Products Log,page 110
Store Products Log,page 112
Full Index Log,page 113
Incremental Index Log,page 125
You can use the phrases (marked in blue) to search for a specific log line. For example,
to find the log associated with the Keep date parameter, search for Keep date.
y
Connection timeout (in milliseconds): 20000
The following log shows the Speech Application Server copying the .inf and .met
transcription files from the Products directory on the Speech Transcription Server, and
U
saving the transcription files in the Incoming folder on the Speech Application Server:
al
successfully to [G:\Impact360\SpeechData\Products\Incoming\TempProducts\30-
Nov-2012\261001_36943370_17.06.44.047.met]
te
In
y
successfully
At the end of the Copy Products process, the log shows a summary of the process,
including the number of files copied to the Speech Application Server, and the number of
U
G:\Impact360\SpeechData\Products\Incoming\TempProducts to
G:\Impact360\SpeechData\Products\Incoming
y
End Store Products Process
Log File: iBuild_sclog_0_0.log
nl
O
The following log shows the end of the current Store Products session, indicating the
total number of records stored as database files, and the duration of this process (Time
se
to Process):
U
y
There are three important dates in the index building process:
nl
Scan Start: The first date for scanning the Products directory for new transcripts
O
Scan End: The last date for scanning the Products directory for new transcripts
se
Keep Date: The first date of the corpus, meaning that all transcripts of this date
and older will be included in the index
U
In the following example log, the Keep date is Dec. 29, 2011, and the scan dates are
Aug. 30-Dec. 28, 2012. This means that the system should scan for all new transcripts
al
between Aug. 30-Dec. 28, 2012 for building the index, and to keep all transcriptions
rn
from Dec. 29, 2011 and older. Therefore, no transcriptions will be deleted from the index
for this time period.
te
29-Dec-2012 00:00:13.500 main INFO: Index Builder Manager will use the
In
The IBuild Manager reviews all periods included in the build range (from Keep Date to
Scan End) and sums up the total number of documents and the duration of documents
for all periods.
Based on this data, the IBuild Manager determines the number of index builds that will
be created (according to time periods), and the corresponding size of the index:
29-Dec-2012 00:00:13.620 main INFO: About to execute 2 index builds; Maximum 2
simultaneously
29-Dec-2012 00:00:13.620 main INFO: About to start corpus build with 13000 MB
memory on index 2012-11-16 - 2012-11-30
y
29-Dec-2012 00:00:13.830 main INFO: Args amount = 14
nl
29-Dec-2012 00:00:13.830 main INFO: Arg 0= -b O
The corpus text in this log indicates that it is building a Full index (as opposed to an
incremental or sub-index):
se
G:\Impact360\SpeechData\SpeechCatData
rn
G:\Impact360\SpeechData\SpeechCatData\SpannedIndex\2012-11-16 - 2012-11-30
29-Dec-2012 00:00:13.830 main INFO: Arg 8= -t
In
y
30-Dec-2012 00:00:26.066 main INFO: Loading CD19 DB
The IBuild processes the new transcripts in two phases (passes). The log shows the
nl
O
progress of each pass:
30-Dec-2012 00:06:25.191 main INFO: Fetched 105425 new call identifiers from
se
y
file ...
nl
30-Dec-2012 00:12:47.998 main FINE: Processed 17000 files
30-Dec-2012 00:12:49.938 main WARNING: The contact 29-Nov-
2012\261001_36758460_14.45.09.727 Info is corrupted. word num
O
=0 skipping this
file ...
30-Dec-2012 00:12:50.188 main FINE: Processed 17500 files
se
At this stage, the IBuild process adds the indexed data of the new transcripts to the
te
indexed data of the previous built index, combines them and writes the index files to the
disk. It then renames the index directory to a new name in the SpeechCatData
In
directory:
30-Dec-2012 09:03:38.198 main INFO: Saving terms lexicon (bloxx2.icd)
y
MAX-DOCS-AMOUNT=20000000, LANGUAGE=ENGLISH, NUM-DAYS=365, SUFFIX=info , SCAN-
nl
DAYS=120, SOURCE=G:\Impact360\SpeechData\Products}
30-Dec-2012 00:26:53.767 main INFO: >> IBuild 11.1.1.201_Int start
O
30-Dec-2012 00:26:53.767 main INFO: Maximum memory: 17777M
30-Dec-2012 00:26:53.767 main INFO: Args amount = 12
se
The IBuild process indicates the time periods for which it is building the Sub index:
te
y
30-Dec-2012 00:30:10.551 main FINE: Processed 13 files
30-Dec-2012 00:30:11.391 main FINE: Processed 513 files
nl
30-Dec-2012 00:30:12.131 main FINE: Processed 1013 files
O
30-Dec-2012 00:30:12.721 main FINE: Processed 1513 files
30-Dec-2012 00:30:13.231 main WARNING: File 261001_36738236_13.24.42.867. is
se
y
30-Dec-2012 00:42:30.433 main INFO: Starting Build history Trends build with
nl
20000 MB memory
30-Dec-2012 00:42:30.433 main INFO: Command:
O
E:\Impact360\Software\JRE64\bin\java.exe -Xmx20000m -
Djava.util.logging.config.class=speechcat.trends.TrendsLogProperties -
se
The Trends Building process starts building the trends list, by first loading various
te
configuration files:
In
y
12-Sep-2012 00:01:22.787 main INFO: Median of NumDocs in recent days of term-
usage index: 0
nl
12-Sep-2012 00:01:22.787 main INFO: Using the following configuration
O
parameters in TermUsageNormalizer.calcNumDocsLowerBounds:
TRENDS_MIN_CALLS_PER_DAY = 750;TRENDS_MIN_CALLS_PER_DAY_FOR_TODAY =
se
250;TRENDS_MIN_CALLS_PER_DAY_FRACTION =
0.2;TRENDS_MIN_CALLS_PER_DAY_FRACTION_FOR_TODAY = 0.1
U
The Trends Building process loads the parameters that define how different types of
trends (for example, daily and weekly) are calculated and processed:
al
15;DAILY_TRENDS_MIN_VALUABLE_BACKGROUND_AVG =
0.0050;DAILY_TRENDS_MIN_VALUABLE_REF_VALUE = 0.01;DAILY_TRENDS_MIN_DAY_STD =
In
5.0
12-Sep-2012 00:01:22.906 main INFO: Using DAILY_TRENDS_BACKGROUND_PERIOD = 21
for daily trends calculations
y
5.0
nl
12-Sep-2012 00:01:22.974 main INFO: Using WEEKLY_TRENDS_BACKGROUND_PERIOD = 28
for weekly trends calculations
12-Sep-2012 00:01:22.975 main INFO: Using the following configuration
O
parameters for new PeriodTrendsCalculator object:
se
PERIOD_TRENDS_MIN_VALUABLE_BACKGROUND_AVG =
0.0050;PERIOD_TRENDS_MIN_VALUABLE_REF_VALUE =
0.01;PERIOD_TRENDS_SMOOTHING_RATIO =
U
10;PERIOD_TRENDS_BACKGROUND_LEVEL_PERCENTILE = 40
12-Sep-2012 00:01:22.975 main INFO: Created PeriodTrendsCalculator object for
al
0.0050;PERIOD_TRENDS_MIN_VALUABLE_REF_VALUE =
In
0.01;PERIOD_TRENDS_SMOOTHING_RATIO =
10;PERIOD_TRENDS_BACKGROUND_LEVEL_PERCENTILE = 40
y
12-Oct-2012 00:00:57.317 main INFO: Using the following configuration
nl
parameters in TermUsageHistoryNormalizer.calcNumDocsLowerBounds:
TRENDS_MIN_CALLS_PER_DAY = 750;TRENDS_MIN_CALLS_PER_DAY_FOR_TODAY =
250;TRENDS_MIN_CALLS_PER_DAY_FRACTION =
O
0.2;TRENDS_MIN_CALLS_PER_DAY_FRACTION_FOR_TODAY = 0.1
se
12-Oct-2012 00:00:57.317 main INFO: Lower bound of NumDocs for including day in
trends calculations: 750
12-Oct-2012 00:00:57.317 main INFO: Lower bound of NumDocs for including last
U
15;DAILY_TRENDS_MIN_VALUABLE_BACKGROUND_AVG =
0.0050;DAILY_TRENDS_MIN_VALUABLE_REF_VALUE = 0.01;DAILY_TRENDS_MIN_DAY_STD =
te
5.0
In
y
10;PERIOD_TRENDS_BACKGROUND_LEVEL_PERCENTILE = 40
nl
12-Oct-2012 00:00:57.320 main INFO: Created PeriodTrendsCalculator object for
period length of 270 days
12-Oct-2012 00:00:57.321 main INFO: Using the following configuration
O
parameters for new PeriodTrendsCalculator object:
PERIOD_TRENDS_MIN_VALUABLE_BACKGROUND_AVG =
se
0.0050;PERIOD_TRENDS_MIN_VALUABLE_REF_VALUE =
0.01;PERIOD_TRENDS_SMOOTHING_RATIO =
U
10;PERIOD_TRENDS_BACKGROUND_LEVEL_PERCENTILE = 40
12-Oct-2012 00:00:57.321 main INFO: Created PeriodTrendsCalculator object for
al
historical time periods have been completed for the specified dates (in this case, Oct.
te
02-Oct. 08):
12-Oct-2012 00:00:58.704 main INFO: Build Term and Categories History Trends
In
Finish Successfully for dates Mon Oct 08 17:00:00 PDT 2012 to Tue Oct 02
17:00:00 PDT 2012
y
Source dir: G:\Impact360\SpeechData\SpeechCatData\SpannedIndex\2012-01-06 -
nl
2012-01-20\07-Jan-2013 00.00.12
Number of documents: 0
Corpus build date: 01/06/2013 22:00:14
O
7-Jan-2013 00:45:22.233 main INFO: Index was loaded successfully from folder
se
G:\Impact360\SpeechData\SpeechCatData\SpannedIndex\2012-01-06 - 2012-01-20\07-
Jan-2013 00.00.12
U
After the SpeechCat service loads the index, the Full index process is complete. The
IBuild Manager writes the following messages, indicating this status:
te
y
Nov-2012 whose insertion date is after Fri Dec 21 03:00:10 GMT+02:00 2012
nl
After verifying the number of new transcripts in Products, the IBuild Manager searches
for new calls within a specified date range (Scan start and Scan end).
O
The Keep date parameter indicates to keep all transcriptions that are older than the
keep date.
se
In the following example log, the Keep date is Dec. 22, 2011, and the scan dates are
Aug. 23-Dec. 21, 2012. This means that the system should scan for all new transcripts
U
between Aug. 23-Dec. 21, 2012 for building the index, and to keep all transcriptions
from Dec. 22, 2011 and older. Therefore, no transcriptions will be deleted from the index
al
21-Dec-2012 04:00:02.035 main INFO: Index Builder Manager will use the
following parameters for the current buildings: Keep date = 12/22/2011
te
Based on this data, the IBuild Manager determines the number of index builds that will
be created (according to time periods), and the corresponding size of the index:
y
DAYS=120, SOURCE=G:\Impact360\SpeechData\Products}
nl
21-Dec-2012 04:00:02.435 main INFO: >> IBuild 11.1.1.201_Int start
21-Dec-2012 04:00:02.435 main INFO: Maximum memory: 245M
O
The inc_corpus text in this log indicates that it is building an Incremental index (as
opposed to a Full or Sub- ndex):
se
G:\Impact360\SpeechData\SpeechCatData
21-Dec-2012 04:00:02.435 main INFO: Arg 6= -m
In
y
file
nl
21-Dec-2012 04:00:03.795 main INFO: Rewriting existing values of AgentPBXID dat
file
O
21-Dec-2012 04:00:03.795 main INFO: Rewriting and sorting existing values of
AgentPBXID DB file
se
21-Dec-2012 04:00:03.795 main INFO: Rewriting existing values of CD1 dat file
21-Dec-2012 04:00:03.795 main INFO: Rewriting and sorting existing values of
U
CD1 DB file
21-Dec-2012 04:00:03.895 main INFO: Rewriting existing values of CD10 dat file
al
21-Dec-2012 04:00:03.915 main INFO: Rewriting existing values of CD11 dat file
21-Dec-2012 04:00:03.915 main INFO: Rewriting and sorting existing values of
te
CD11 DB file
21-Dec-2012 04:00:03.955 main INFO: Rewriting existing values of CD12 dat file
In
The IBuild processes the new transcripts in two phases (passes). The log shows the
progress of each pass:
21-Dec-2012 04:00:04.925 main INFO: Process new files from products DB
21-Dec-2012 04:00:04.925 main INFO: Processing files (pass 1)
21-Dec-2012 04:00:04.925 main INFO: Products db for current day does not exist:
path=G:\Impact360\SpeechData\Products\16-Nov-2012
21-Dec-2012 04:00:04.925 main INFO: Processing files (pass 1 - 16-Nov-2012)
21-Dec-2012 04:00:04.925 main INFO: Products db for current day does not exist:
path=G:\Impact360\SpeechData\Products\17-Nov-2012
21-Dec-2012 04:00:04.935 main INFO: Loading properties from ibuild.prop
21-Dec-2012 04:00:04.935 main INFO: Fetched 7 new call identifiers from
products dir G:\Impact360\SpeechData\Products\20-Nov-2012
21-Dec-2012 04:00:04.935 main INFO: Processing files (pass 1 - 20-Nov-2012)
21-Dec-2012 04:00:05.275 main INFO: Fetched 13 new call identifiers from
products dir G:\Impact360\SpeechData\Products\21-Nov-2012
21-Dec-2012 04:00:05.275 main INFO: Processing files (pass 1 - 21-Nov-2012)
21-Dec-2012 04:00:05.335 main INFO: Fetched 3 new call identifiers from
products dir G:\Impact360\SpeechData\Products\22-Nov-2012
21-Dec-2012 04:00:05.335 main INFO: Processing files (pass 1 - 22-Nov-2012)
21-Dec-2012 04:00:05.345 main INFO: Fetched 8 new call identifiers from
products dir G:\Impact360\SpeechData\Products\23-Nov-2012
21-Dec-2012 04:00:05.355 main INFO: Processing files (pass 1 - 23-Nov-2012)
21-Dec-2012 04:00:05.375 main INFO: Fetched 14 new call identifiers from
products dir G:\Impact360\SpeechData\Products\24-Nov-2012
21-Dec-2012 04:00:05.375 main INFO: Processing files (pass 1 - 24-Nov-2012)
21-Dec-2012 04:00:05.495 main INFO: Products db for current day does not exist:
path=G:\Impact360\SpeechData\Products\25-Nov-2012
y
Step 6: SpeechCat Reloads Index
nl
O
Log File: iBuild_sclog_0_0.log
se
When the index is created, the IBuild process saves the terms, index properties and
renames the index directory to a new name in the SpeechCatData directory:
U
G:\Impact360\SpeechData\SpeechCatData\SpannedIndex\2012-12-01 - 2012-12-15\07-
Jan-2013 00.00.12
rn
G:\Impact360\SpeechData\SpeechCatData\SpannedIndex\2012-12-01 - 2012-12-15\07-
Jan-2013 00.00.12
In
y
nl
O
se
U
al
rn
te
In
Index Builder Manages the entire process of building the index, Full and Incremental
including:
Stops/restarts the SpeechCat service (for Full Index)
Triggers the IBuild Manager to start the scheduled
index process
Triggers the sub-index process (for Full Index)
Triggers rebuilding of the trends list (for Full Index)
Loads the SpeechCat with the updated index (for Full
Index)
Reloads the SpeechCat with the updated index (for
Incremental Index)
SpeechCat Provides Speech Portal services for users (searching for Full and Incremental
terms, analyzing trends and categories, etc.).
Full Index: SpeechCat is stopped during the index
build, and restarted when the index is complete. It is
then loaded with the updated index.
Incremental Index: SpeechCat is not stopped during
y
the index build, and is reloaded after every index build.
IBuild Manager Acts as a scheduler for both types of index flows, and
nl
Full and Incremental
O
defines the parameters of the index build, including the
number of calls that need to be indexed and the number of
se
IBuild (Full) Builds the index itself once a day, based on the parameters Full
U
IBuild (Incremental) Builds the index itself once an hour, based on the Incremental
parameters defined by the IBuild Manager.
rn
te
In
Trends Building Rebuilds or updates the trends list, which is used by Full
SpeechCat for analytics.
The Index Builder triggers the Trends Building process to
build the trends list after the sub-index is built.
y
nl
O
se
U
al
rn
te
In
info@verint.com
1-800-4VERINT
www.verint.com
y
nl
O
se
U
al
rn
te
In
The contents of this material are confidential and proprietary to Verint Systems Inc.
and may not be reproduced, published, or disclosed to others without express
authorization of Verint Systems Inc.