Section II – Functional Modules > Functional Modules > Object Model         Bottom of Page
Genesys 8.1
SCXML Technical Reference
                        Functions >

Object Model

This defines the specific objects and their properties for the given interface that are created at runtime by the functional module or platform as ECMAScript objects. These objects can be used from ECMAScript expressions and within the <script> element or any other SCXML executable content section. These objects must be read-only. The goal is to have changes to these objects as a result of the processing associated with functions or action elements. The ownership policies associated with these objects depend on the functionality of the functional module. A recommended default for ownership is that no objects are shared with other sessions except for copies of objects that are passed as a result of an <invoke> or <session:start> action and the appropriate <param> definition. A functional module and its interface could have a model and mechanism which a session could take ownership of entity from another session (for example, for interactions, it is the <ixn:associate> element). For functional module interfaces that do not have strict ownership policies (for example, Context Services), any session can set up access or subscription to the relevant object using a functional module interface–specific function or action element.

Restrictions

The following is a list of restrictions with respect to functional module objects:

Naming Conventions

The following are the naming conventions that we will use for all functional modules for accessing global objects associated with a given session (for example, the interaction that started this session, the Context Services which represents the customer involved in the session, and so on)

A functional module may have other global variables to provide easier access to specific objects and properties associated with object model interfaces that it implements. These global variables must be defined as part of the _genesys root object. See the appropriate functional module interface Object Model section for details.

For example, _genesys.ixn.interactions[]

Genesys Functional Modules

The following is a summary of all the functional module root objects that will be supported by Genesys functional modules:

Functional module

Root Object

Objects Supported

queue

_genesys.queue

Queue Object Model

interaction

_genesys.ixn

Interaction Object Model, Voice Interaction Object Model, Msgbased Interaction Object Model, Chat Interaction Object Model

dialog

_genesys.dialog

Dialog (Treatment) Object Model

resource

_genesys.resource

Resource Object Model

statistic

_genesys.statistic

Statistic Object Model

classification

_genesys.classification

Classification Object Model

session

_genesys.session

SCXML Extensions Object Model

webapi

_genesys.ws

Web API Object Model

Persistence

If a functional module object wants to control persistance behavior by the orchestration platform, it needs to contain the _persist property. If this property is not present on the object, then the object will be automatically persisted by default.

Object Lifecycle

The following are the lifecycle behaviors for different types of objects:




Section II – Functional Modules > Functional Modules > Object Model         Top of Page
Genesys 8.1
SCXML Technical Reference
                        Functions >