|
Genesys 8.1 SCXML Technical Reference |
||
< Anchor Elements Expressions > |
The event model will be fully supported. It will support both internal session events and external events.
Internal Events
These events are published and consumed by the same SCXML session. The following are the methods of managing them:
<event>
or <send>
element can be used. The SCXML engine will put the event into the session's event queue. When using <send>
, you can put the event on either the external event queue or the internal event queue, based on the value of the target attribute. (If the special value '_internal
' is specified, the event is added to the internal event queue of the current session. If no value is specified, the event is added to the external event queue of the current session.).<transition>
element. If the event has properties, the _event
system variable will contain the event's properties at the following location: "_event.data
". The orchestration platform will support wildcards ("*") in the event names. See the SCXML specification for details.External Events
These events are published and consumed by the given SCXML session and the corresponding external entity. The following is the list of external entities that will be supported:
The following are the methods of managing events from an SCXML-session standpoint:
<send>
element with the appropriate targettype attribute value:In addition to the <send>
element, a given functional module may have an action element to send events, as well.
<transition>
element. If the event has properties, the _event
system variable will contain the event's properties at the following location: "_event.data
". The orchestration platform will support wildcards ("*") in event names. See the SCXML specification for details. In general, overall external event subscription is implicit: The following are the methods of managing events from an external system standpoint:
<send>
element is used. The following common properties are present in all events, whether internal or external:
<transition>
. Note that transitions can carry out additional tests by using the value of this field inside boolean expressions in the 'cond' attribute.<event>
), and "external" (for all other events, including those that the state machine sends to itself via <send>
).<send>
element. Otherwise it will be blank.<invoke invokeid="..." or id="...">
) that triggered the child process or in the case of error events triggered by a failed attempt to invoke another process, this field will contain the invokeid or id of the invoking <invoke>
element. Otherwise it will be blank.The following fields are logically present in all events, but will be filled in only in external events:
<send>
element. The combination of this field with the 'origintype' field SHOULD allow the receiver of the event to <send>
a response back to the entity that originated this event. <send>
. The combination of this field with the 'origin' field SHOULD allow the receiver of the event to <
send> a response back to the entity that originated this event.The following is the list of events that are supported by SCXML.
Event Name |
Description |
Where used |
---|---|---|
error.illegalcond.errortype |
If a conditional expression does not evaluate to a boolean value ('true' or 'false'), this event is raised. The optional errortype element indicates the ECMAScript error type, as specified in Section 15.11.6 of [ECMASCRIPT-262]. |
Any element that has a "cond" attribute, such as |
error.illegalloc.errortype |
If a location expression does not evaluate to a legal location, this event is raised. The optional errortype element indicates the ECMAScript error type, as specified in Section 15.11.6 of [ECMASCRIPT-262]. This event is also raised under the following conditions:
|
Any element that has an attribute that is a location expression, such as |
error.illegalvalue.errortype Note: same as error.invaliddata |
If a value expression does not return a legal data value, this event is raised. The optional errortype element indicates the ECMAScript error type, as specified in Section 15.11.6 of [ECMASCRIPT-262]. |
Any element that has an attribute that is a value expression, such as |
error.illegaldata.errortype Note: same as error.invaliddata |
Any errors which arise during initialization must be mapped into this event, where the optional errortype element indicates the ECMAScript error type, as specified in Section 15.11.6 of [ECMASCRIPT-262]. |
Any element that is processed at load time, such as |
error.script.errortype |
Any errors which arise during processing of |
The |
error.unsupported.element |
The platform will raise this event when an element is not supported. The element element identifies the name of the element which is not supported. |
For example, we do not support the |
Note: same as |
The platform will raise this event when it cannot fetch the data from its source. Note: If the |
Any element that is fetching data from some source (source-related attributes, src, srcexpr), such as |
error.receive.datamismatch |
If a sent event passes validation in the sending session, but the receiving session cannot handle the data format contained in the event, the receiving session should raise this event in the session for which the event was intended and should also notify the sending session of the error. This event will then be ignored. |
The |
error.send.nosuchsession |
If the sending session specifies a sessionid in the target attribute that does not exist on the receiving platform, this event should be raised. |
The |
error.send.datamismatch |
If the sending session specifies a data format that the receiving session does not support, this event should be raised. |
The |
error.send.ioprocessorerror |
This event is raised if any platform- and connectivity-related errors are encountered. |
The |
error.send.failed |
If the receiving platform returns any HTTP response code other than 204, the platform will raise this error. |
The |
Note: same as |
If the |
The |
error.send.typeinvalid.stateid Note: same as send.failed. typenotsupported |
If the |
The |
error.send.noeventspecified |
If neither the |
The |
error.cancel.notallowed Note: same as error.notallowed |
This event is raised when the |
The |
error.validate.validationfailure |
This event is raised at document load time if no schema is specified in this element. |
The |
error.illegalassign |
This event is raised when the application attempts to change the value of a read only–protected variable or data item. |
Any element that could change a variable or data item, such as |
done.state.stateid |
This event is raised when a state has completed its onexit processing, where the id element is the state's id. |
The |
done.invoke.invokeid |
This event is raised when an invoked session has completed its processing, where the id element is the |
The |
cancel.done |
This event is raised when the cancel action has been successfully completed. |
The |
error.invoke.invokeid |
This event indicates that there was an error trying to start the session associated with the |
The |
|
Genesys 8.1 SCXML Technical Reference |
||
< Anchor Elements Expressions > |