om-max-in-memory
Section: callconcentrator
Default Value: 100
Valid Values: 1-2000 (in units of one thousand)
Changes Take Effect: After restart
Specifies the maximum number of keep-in-memory interactions that were placed in queues or interaction workbins (in units of one thousand).
Warning: An incorrect value for this option can affect ICON performance, or cause ICON to stop processing interactions. Keep the default value unless you are advised otherwise by Genesys Customer Care.
om-memory-clean
Section: callconcentrator
Default Value: 0
Valid Values: 1, 0
Changes Take Effect: After restart
Dependencies: om-memory-optimization, om-max-in-memory
Applies to objects of type interaction queue. Specifies whether ICON immediately removes an interaction from memory when the interaction is placed in the interaction queue.
Valid values:
- 0 - ICON does not take any special action to remove an interaction when it is placed in the interaction queue.
- 1 - ICON immediately removes an interaction when it is placed in the interaction queue.
Important: The Application-level om-memory-optimization option must be set to true for the om-memory-clean option to work.
Regardless of the value of this option, the removal of an interaction from ICON memory can be triggered by the value set for the Application-level om-max-in-memory option.
om-max-in-memory
Section: callconcentrator
Default Value: 100
Valid Values: 1-2000 (in units of one thousand)
Changes Take Effect: After restart
Specifies the maximum number of keep-in-memory interactions that were placed in queues or interaction workbins (in units of one thousand).
Warning: An incorrect value for this option can affect ICON performance, or cause ICON to stop processing interactions. Keep the default value unless you are advised otherwise by Genesys Customer Care.
om-memory-optimization
Section: callconcentrator
Default Value: 0
Valid Values: 0, 1
Changes Take Effect: After restart
Dependencies: om-max-in-memory, om-memory-clean
Specifies whether memory usage is optimized.
Valid Values:
- 1 - ICON optimizes memory usage according to the values that are set for the om-max-in-memory option and the Script-level om-memory-clean option.
- 0 - Preserves legacy behavior (prior to ICON release 7.6.1).
Note: The values true and false are also valid.
Integrating with Multimedia
Genesys eServices (formerly known as Multimedia) refers to those parts of the Genesys Customer Interaction Management (CIM) platform that work together to manage interactions that involve nontraditional, non-voice media (for example, e-mail and chat) and open (custom-designed) media (for example, fax and web forms).
This page describes how Interaction Concentrator (ICON) processes data about eServices and 3rd Party Media (formerly referred to as Open Media) interactions.
- Multimedia Objects
- Populating Multimedia Interaction Data
- Handling Active Multimedia Interactions
- isOnline Chat Attribute
- Chat Session Attributes that Indicate Who Ended the Session
For information about ICON configuration and other Configuration Layer settings that make data about multimedia interactions available in Interaction Database (IDB), see the Configuring for Multimedia Data in the Interaction Concentrator Deployment Guide.
Terminology Note
In this document, the term multimedia refers generically to both Genesys eServices and 3rd Party Media objects and activities. When it is necessary to distinguish between the two types of multimedia, the terms eServices and 3rd Party Media are used, as applicable.
Multimedia Objects
This section introduces the terminology and elements (objects) that pertain to Interaction Concentrator data about multimedia activities. This section contains information about the following:
- Endpoints
- DNs
Endpoints
ICON stores reporting data about the following logical endpoints:
- Interaction Queue—Configured in the Configuration Layer as a Script object (of type Interaction Queue).
- Interaction Workbin—Configured in the Configuration Layer as a Script object (of type Interaction Work Bin).
- Routing Strategy—Configured in the Configuration Layer as a Script object (of type Simple Routing or Enhanced Routing).
- Agent’s Place—Configured in the Configuration Layer as a Place object.
ICON stores configuration-related information about Script objects in the GC_SCRIPT table and about Place objects in the GC_PLACE table.
DNs
The Interaction Server uses a Switch configuration object of type Multimedia Switch. ICON stores information about DNs that are configured under the switch associated with the Interaction Server switch in the same way that it stores information about DNs that are configured under any other type of switch.
ICON stores configuration-related information about DN configuration objects in the GC_ENDPOINT table and about the association between DNs and places in the GCX_ENDPOINT_PLACE table.
Populating Multimedia Interaction Data
ICON stores detailed information about multimedia interaction processing and agent activities that are related to this processing. This section contains information about the following:
For information about the way in which ICON handles attached data for multimedia interactions, see Attached Data Processing for Multimedia.
For information about how to capture information about agent states and login sessions for multimedia interactions, see Agent States and Login Sessions.
For detailed information about the tables in IDB in which ICON stores multimedia data, see the Interaction Concentrator Physical Data Model document for your particular RDBMS.
Multimedia Reporting Protocol Events
ICON connects to Interaction Server, and it receives notifications, in the form of Multimedia Reporting Protocol events, about multimedia interaction processing.
ICON processes the following Multimedia Reporting Protocol events for interactions:
- EventInteractionSubmitted
- EventProcessingStopped
- EventPlacedInQueue
- EventTakenFromQueue
- EventPlacedInWorkbin
- EventTakenFromWorkbin
- EventPartyAdded
- EventPartyRemoved
- EventPropertiesChanged
- EventAgentInvited
- EventRejected
- EventRevoked
- Multimedia Reporting custom message (envelope for virtual queue–related TEvents)
For more information about Multimedia Reporting Protocol events, see the Genesys Events and Models Reference Manual.
Multimedia Interactions
Each interaction received from Interaction Server contains a media type name that is defined in Configuration Server. When ICON processes reporting events, such as EventInteractionSubmitted, it extracts the media type name from the interaction and maps this string to an integer value.
ICON stores the details about eServices and 3rd Party Media interactions in the same tables in IDB in which it stores voice records.
Core Tables
- G_CALL—Each interaction with a multimedia media type (e-mail, chat, or open media) is represented as a single record. ICON creates the record when it receives EventInteractionSubmitted. ICON updates the record (marks the record as terminated) when it receives EventProcessingStopped. ICON sets the value of the GSYS_EXT_INT1 field to 1 when the record is for a multimedia interaction (in other words, if the interaction record was created as a result of Interaction Server event processing).
- For 3rd Party Media interactions, ICON also sets the value of the GSYS_EXT_VCH1 field to a string value containing the name of the media type.
- G_PARTY—Contains information about the parties who participate in a multimedia interaction. ICON creates a new record when Interaction Server reports that a relationship has been established between an endpoint and a multimedia interaction.
- ImportantNo records are stored for external parties who participate in a multimedia interaction.
- G_IR—Contains information about the data that is common to all of the interactions in a particular scenario. ICON sets the value of the GSYS_EXT_INT1 field to 1 when the record is for a multimedia interaction (in other words, if the interaction record was created as a result of Interaction Server event processing). A new record for a multimedia interaction is created if either of the following conditions is met:
- The interaction is not associated with an existing parent interaction.
- The interaction is associated with an existing parent interaction, but the information about the associated G_IR parent record is not available. In this case, ICON stores the ID information that Interaction Server provides for the parent record in the GSYS_EXT_VCH1 field.
- G_ROUTE_RESULT—Refers to the record created in the G_PARTY table for the strategy and contains information about the results of routing for the interaction.
- No multimedia interaction data is written to the G_IS_LINK table.
History Tables
- G_CALL_HISTORY, G_PARTY_HISTORY, and G_IR_HISTORY—Contain intermediary (history) states of the data that was previously stored in the core tables.
Statistical Tables
- G_CALL_STAT and G_PARTY_STAT—Contain metrics about multimedia interactions and parties, respectively. For information about the available precalculated metrics, see the available Interaction Metrics and Available Party Metrics tables in Interaction-Related and Party-Related Tables.
Agent Activity Tables
ICON stores the details about agents that are involved in multimedia interaction activity in the same tables in IDB in which it stores voice records. For information about the tables, see Agent State and Login Session Tables.
In all the agent-related tables except G_LOGIN_SESSION and G_DND_HISTORY, ICON sets the value of the GSYS_EXT_INT1 field to 1 when the record is for a multimedia interaction (in other words, if the interaction record was created as a result of Interaction Server event processing). For 3rd Party Media interactions, ICON also sets the value of the GSYS_EXT_VCH1 field to a string value containing the name of the media type.
Supported Scenarios
Interaction Concentrator supports the following scenarios for multimedia interactions:
- Interaction submission
- Interaction distribution
- Transfer
- Conference
- Auto-acknowledgement
- Autoresponse
- Abandonment without handling (for chat only)
Handling Active Multimedia Interactions
The major difference between voice and multimedia interactions is the duration of the interaction—the lifetime of a multimedia interaction might be measured in months, whereas voice calls are measured in minutes or hours. Therefore, unlike voice interactions, ICON processes multimedia interactions as each step occurs, and immediately stores all available data related to the interaction in IDB. Multimedia interactions have a relatively simple state model, and this enables ICON to start processing multimedia interactions at almost any point in the lifecycle.
ICON can handle millions of active multimedia interactions over a sustained period of time without failing because of insufficient memory.
To make this possible, ICON does the following:
- Removes interactions from operational memory (see Removing Interactions from Memory).
- Reconstructs interaction data later for further processing (see Reconstructing Interaction Data).
- Tracks user data changes (see Tracking User Data Changes).
- Filters out strategy data not required for reporting (see Strategy Activity Data).
Removing Interactions from Memory
When ICON receives an EventPlacedInQueue and/or EventPlacedInWorkbin reporting event from Interaction Server, it considers this the signal to remove the corresponding multimedia interaction from memory, provided that certain user-defined options have been set:
- The global om-memory-optimization option must be set to true to allow ICON to optimize memory according to the user-defined values of the other memory options. If this option is set to false, no memory optimization will occur regardless of the values of the other options.
- The om-max-in-memory option defines the maximum number of keep-in-memory interactions that concurrently reside in an interaction queue or interaction workbin. When this maximum is reached, ICON removes the oldest interaction.
- If the om-memory-clean option, which is configured on Script objects of type Interaction Queue, is set to true, ICON immediately removes interactions from operational memory as soon as they arrive; it does not wait until the value of the om-max-in-memory option is reached before removing interactions.
For more information about these and other options, see the Interaction Concentrator Options Reference.
Reconstructing Interaction Data
When ICON receives an EventTakenFromQueue and/or EventTakenFromWorkbin reporting event from Interaction Server, it considers this the signal to reconstruct the corresponding multimedia interaction if the interaction was previously removed from memory.
To reconstruct the interaction, ICON restores the following key data:
- CALLID of the interaction
- PARTYID of the party for the last interaction in the queue and/or the last interaction in the workbin
- User data
Once the interaction is reconstructed, ICON processes it as a regular multimedia interaction. See Populating Multimedia Interaction Data.
isOnline Chat Attribute
The isOnline attribute supports reporting on non-SIP chat interactions. Genesys Chat Server can notify Interaction Server when a chat session is active by giving the isOnline attribute a value of on. When a chat session is terminated—that is, the last person leaves the chat session—the value of the isOnline attribute changes to off, and Chat Server sends notification of this attribute change to Interaction Server.
Chat Server is responsible for monitoring and changing the value of the isOnline attribute. If Chat Server disconnects or shuts down, Interaction Server does not send any notification regarding the status of the chat interaction to Interaction Concentrator. The figure below illustrates the possible transmissions and states of the isOnline chat attribute.
Processing the isOnline Attribute
ICON monitors changes to the isOnline attribute in all interaction reporting events (EventInteractionSubmitted, EventPropertiesChanged, and EventProcessingStopped). Using the same mechanism to store the isOnline attribute as it does to process attached data, ICON creates a new record in the G_USERDATA_HISTORY table to store the value of the isOnline attribute. The table below describes the key fields in the G_USERDATA_HISTORY table and the possible values for chat interactions.
Field Name | Value | Comment |
---|---|---|
KeyName | _attr_is_online | This value does not change. |
ChangeType | 1|2|3|4|5 | The reason the value of the key was recorded:
|
Type | 1|2|3|4|5 | The type of the data source—extensions, reasons, or attached data (userdata)— represented by the following values:
|
KeyID | 9995 | This is a hard-coded value. |
Value | NULL|0|1 |
The value is taken from the event. |
Added | Timestamp value | This is the time corresponding to when the record was modified. |
Chat Session Attributes that Indicate Who Ended the Session
ICON release 8.1.507.06 and higher, with the gud role set, can store data provided by Chat Server in the EventPropertiesChanged or EventProcessingStopped event that identifies which party ended a chat interaction. A chat session ends when a party closes their chat window or the agent ends the chat interaction by clicking the End Chat button. In conference chat scenarios, one agent clicking End Chat does not end the session as long as another agent remains on the chat session with the customer.
ICON stores the following two attributes that enable you to report on who ended the chat session and when:
- ChatServerSessionClientLeftAt—The timestamp when the customer left the chat session.
- ChatServerSessionClosedAt—The timestamp when the chat session was actually closed.
By default, once ICON receives either or both of these attributes, it writes records into the G_USERDATA_HISTORY table using the key(s) ChatServerSessionClientLeftAt and ChatServerSessionClosedAt, with the values taken from the event (UTC datetime string). Only one value for each key is written per chat interaction; by default, this is the first value.
You can configure ICON to write these attributes to a different table or to disregard them entirely using the attached data specification XML file. You can also specify whether ICON writes the first value or the final value depending on how you configure the history parameter in the attached data specification XML file.
- Chat Server 8.5.103.22 or later is required for this functionality.
- The information from Chat Server does not include Place or Party data. As a result, the PARTYID and ENDPOINTDN fields in the G_USERDATA_HISTORY table will contain a NULL value for records with the ChatServerSessionClientLeftAt and ChatServerSessionClosedAt keys.
- If by chance you have already been using keys named ChatServerSessionClientLeftAt and ChatServerSessionClosedAt, rename your keys. The keys ChatServerSessionClientLeftAt and ChatServerSessionClosedAt are now reserved.