Summary: This guide describes the Open Media Interaction Application Blocks for Java, based on the Media and Queued Interaction Java APIs.
Application blocks are components that use industry best practices to provide functionality needed by a broad range of Genesys customers. This particular application block set should be used when your application requires:
For more information on the application blocks that ship with the Genesys SDKs, consult Introduction to the Genesys SDKs.
Note: This document may not be the latest version of the API Reference. Please see the Genesys Technical Support website, the Technical Documentation website and the SDK Documentation CD for the latest versions of all SDK documents.
Who
Should Read This Guide
Prerequisites
What Is in This Guide
Application Blocks Overview
Design Patterns
Copyright
This guide is written for:
This guide, primarily intended for programmers developing Java-based applications for contact center agents, assumes that you have a basic understanding of:
You should also be familiar with:
This guide describes the design and features of the Open Media Application Block and demonstrates how you can use the block to add open capabilities to your agent applications.
Chapter 1:
Installing the Open Media Interaction Application Blocks
Chapter 1 details the process for building the blocks and modifying your
application to use it.
Chapter 2: The Connector
Application Block
Chapter 2 examines the Connector Application Block features, architecture,
design, and use, as well as its relationship to other components that
support it.
Chapter 3: The Media Server
Application Block
Chapter 3 examines the Media Server Application Block features, architecture,
design, and use, as well as its relationship to other components that
support it.
Chapter 4: The Monitoring
Application Block
Chapter 4 examines the Monitoring Application Block features, architecture,
design, and use, as well as its relationship to other components that
support it.
Application Block Name |
Description |
Connector |
Demonstrates the connection to the Genesys Framework. |
Media Server |
Manages agent action on the media of a place. |
Simple Open Media Interaction Handling |
Manages simple actions on open media interactions. |
Table 1.1. The Open Media Interaction Application Blocks
The design of the Open Media Interaction Application Blocks makes it possible to use each application block independently, or to use them all together, according to the initialisation that you choose.
This section presents the Design Patterns used to design the Open Media Interaction Application Blocks.
Observer Pattern defines a one-to-many dependency between a subject
object and any number of observer objects. If the subject object's state
changes, all the associated observer objects are notified and updated.
The Observer pattern is also known as Dependents and Publish-Subscribe.
In Open Media Interaction Application Blocks, the implemented LCAListener, the MyQILInteractionListener,
and the MyQILQueueListener
listeners receive events when the subscribed subjects are modified (handleLCAEvent(),
handleInteractionEvent()
, handleQueueEvent()
).
Figure 1.2. Observer Pattern for Open Media Application Blocks
Facade Pattern defines a higher-level interface that makes the subsystem easier to use. For example, to hide Open Media Interaction (Java API) complexity, the AdHocManagement interface simplifies the retrieval of a queue by SQL queries. You do not have to fill in all parameters, to send the request, and to analyze the returned result or errors. You only provide the SQL query and the Queue ID.
Figure 1.4. Facade Pattern for Open Media Application Blocks
Singleton Pattern ensures that a single instance exists and provides a single entry point of access to the instance. Open Media Application Blocks use Singleton Pattern for QILFactory and MILFactory get methods.
Figure 1.5. Singleton Pattern for Open Media Application Blocks
Command Pattern ensures the code execution determined by external events which happen in external code. In Open Media Application Blocks, it can be found in AdHocManagement.findInteractionsSQLAsync().
Figure 1.6. Command Pattern for Open Media Application Blocks