Contents
Dialog Interface
Overview
The dialog interface defines the functionality that allows the orchestration logic to do the following:
- Run a particular dialog application (VXML, HTML, and so on) on a specific interaction and by a specific resource/device.
- Collect the results of the dialog application that was run.
A dialog application represents the logic and presentation forms needed by the resources to have a media-specific conversation with a customer (for example, voice script, agent application (CRM, custom, and so on)). Dialog applications drive the behavior of resources in interacting with customers. The dialog application *always* operates on resources/devices. The actual presentation or communication (audio or visual) of the dialog application is media channel-specific. These dialog applications are actually communicated through the associated interactions and the resource's media device. These dialog applications drive the communication of the resources with the customer. This communication can be done directly by the resource itself, for example, by way of an IVR or a website. Or it can be done indirectly through a proxy, for example, the resource is the system's representation of the agent, the dialog application is the agent application, and the proxy is the actual agent. In this last case, the agent reads information from the agent application to the customer, collects information from the customer, and puts it into the agent application. The following are the types of dialog applications:
- Voice Script (VXML) - Directly - Voice interactions
- Agent Application (CRM, custom, agent script, and so on) - Indirectly - Can be used with any type of interaction, because it is indirectly communicated to the customer via a human business resource
- Web Application - Directly - Web interactions
- Legacy voice applications - Voice interactions
- Legacy voice treatments - Voice interactions
The granularity of a dialog application depends on how much interaction is needed with the orchestration logic layers. In some cases, the orchestration logic can actually be part of a dialog application.
Treatments are a specific type of dialog application. They are voice interaction related dialogs that are used to communicate with the customer while the orchestration logic is trying to find a resource or some other processing to help the customer (that is, while the customer is queued waiting). There will be a set of treatment-specific elements to cover this specific functionality. The treatment actions or elements can be used in combination with elements from the Queue functional module interface
The following is a sequence diagram to show the basic call flow the <start> action element which is generally the same for all the other treatments.
Media Resource Addressing
The media resource device addresses that are used in in the dialog action elements must be known to the dialog functional module and must be configured in the Genesys configuration layer. These addresses vary based on the type of media by means of which they communicate with the dialog application. For example, voice interaction related dialog resource device addresses are directory or phone numbers. In an orchestration application, these resource device addresses will be represented in the following formats:
- String or Resource Object for Voice-related media dialog application with a format the same as the voice interaction FM Action element resource attributes. See Addressing Resources for details.
Extension Data
As of 8.1.2 when using the Dialog actions, extension data may be provided to influence the operation of the action and is passed using the hints attribute with a property named extensions containing the information that is required to be sent with the request. Also response events both error and normal done events may optionally carry extension data if returned from the device performing the operation. If extension data is available in such events it shall be found in the extensions property of the returned event.
Parameter Elements
We will have parameter elements for the following action elements to be used as input attributes.
<collect>
<play>
<playandcollect>
<playandverify>
<runtreatments>
<prompts>
This is the top-level element which defines the set of prompts which are to be used under certain conditions associated with the treatment dialog.
Attributes
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
type |
false |
NMTOKEN |
ann |
tts, ann, iretry, ifailure, isuccess, itimeout, MSG_type |
This specifies the type of condition that these prompts will be used for:
|
Children
<prompt>
- Occurs 1 to 10 times. Each instance defines a given announcement to be played to the caller.
<prompt>
This defines a given announcement to play to a caller.
Attributes
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
intid |
false |
value expression |
none |
Any expression that returns a valid integer |
This represents a string ID for the announcement. This is mutually exclusive with the following attributes:
See SCXML Legal Data Values and Value Expressions for details. |
number |
false |
value expression |
none |
Any expression that returns a valid string |
This represents the number to announce. The first digit defines how the number should be announced:
This is mutually exclusive with the following attributes:
See SCXML Legal Data Values and Value Expressions for details. |
userannid |
false |
value expression |
none |
Any expression that returns a valid string |
This represents the user announcement ID as returned after a successful recording of a user announcement request. This is mutually exclusive with the following attributes:
See SCXML Legal Data Values and Value Expressions for details. |
userid | false | value expression | none | Any expression that returns a valid string | Used in conjuction with userannid to provide context in which userannid will be interpreted. This is often then the tenant name. (since 8.1.2) |
text |
false |
value expression |
none |
Any expression that returns a valid string |
This represents the ASCII text to be announced using text-to-speech technology (if supported by the IP equipment). This is mutually exclusive with the following attributes:
See SCXML Legal Data Values and Value Expressions for details. |
interrupt |
false |
boolean expression |
true |
Any expression that returns a boolean (true, false) |
This indicates whether the caller can interrupt the announcement. See SCXML Conditional Expressions for details. |
Children
None
<input>
This is the top-level element which defines the characteristics needed to collect digits from a caller in association with the treatment dialog.
Attributes
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
max_digits |
false |
value expression |
none |
Any expression that returns a valid integer |
The maximum number of digits to be collected (up to 31). Note: max_digits may be equal to 0. In this case, no time is spent waiting for caller input digits, and a response is returned indicating 0 digits were collected. See SCXML Legal Data Values and Value Expressions for details. |
abort_digits |
false |
value expression |
none |
Any expression that returns a valid string |
This sequence of up to two keys aborts the digit-collection operation. If this sequence appears, the intelligent peripheral considers this to be a failed digit-collection attempt. See SCXML Legal Data Values and Value Expressions for details. |
ignore_digits |
false |
value expression |
none |
Any expression that returns a valid string |
This sequence of up to two keys is treated as though the keys have not been pressed. See SCXML Legal Data Values and Value Expressions for details. |
backspace_digits |
false |
value expression |
none |
Any expression that returns a valid string |
This sequence of up to two keys causes the previous keystroke to be discarded. See SCXML Legal Data Values and Value Expressions for details. |
term_digits |
false |
value expression |
none |
Any expression that returns a valid string |
This sequence of up to two keys causes all the digits, not including the term_digits, to be returned to the service logic as collected digits. See SCXML Legal Data Values and Value Expressions for details. |
reset_digits |
false |
value expression |
none |
Any expression that returns a valid string |
This sequence of up to two keys causes all the previous keystrokes to be discarded. The digit collection resumes. See SCXML Legal Data Values and Value Expressions for details. |
clear |
false |
boolean |
false |
true, false |
Indicates whether any information that has been input should be cleared before digit collection starts. Not supported in GR-1129-CORE protocol implementation. |
start_timeout |
false |
value expression |
none |
Any expression that returns a valid integer |
The number of seconds the resource should wait for the caller to begin DTMF input. See SCXML Legal Data Values and Value Expressions for details. |
digit_timeout |
false |
value expression |
none |
Any expression that returns a valid integer |
The number of seconds the resource should wait between DTMF digits. See SCXML Legal Data Values and Value Expressions for details. |
total_timeout |
false |
value expression |
none |
Any expression that returns a valid integer |
The total number of seconds the resource should wait for the caller to provide the requested DTMF input See SCXML Legal Data Values and Value Expressions for details. |
Children
None
<compare>
This defines what needs to be compared to the digits collected from the caller.
Attributes
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
digits |
false |
value expression |
none |
Any expression that returns a valid string |
This represents the actual digits the caller input should be compared against. This is mutually exclusive with the following attributes:
See SCXML Legal Data Values and Value Expressions for details. |
userid |
false |
value expression |
none |
Any expression that returns a valid string |
This represents the user ID string that the resource should use to index into a local table for verification. This is mutually exclusive with the following attributes:
See SCXML Legal Data Values and Value Expressions for details. |
planid |
false |
value expression |
none |
Any expression that returns a valid integer |
This represents an index into a resource's table of dialing plans. The input is checked for general format compliance with the dialing plan selected by this ID. This is mutually exclusive with the following attributes:
See SCXML Legal Data Values and Value Expressions for details. |
attempts |
false |
value expression |
0 |
Any expression that returns a valid integer |
This indicates the number of attempts the caller is allowed to make before failing the verification. See SCXML Legal Data Values and Value Expressions for details. |
timeout | false | value expression | 0 | Any expression that returns a valid integer |
The total number of seconds the resource should wait for the comparison to be made before timing out See SCXML Legal Data Values and Value Expressions for details. |
Children
None
<pause>
This is the top-level element which defines the duration of a pause to be used between dialog treatments for the <runtreatments>
element.
Attributes
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
duration |
false |
value expression |
0 |
Any expression that returns a valid integer |
A value expression which returns the duration in seconds that the treatment processing should pause. See SCXML Legal Data Values and Value Expressions for details. |
Children
None
Action Elements
<runtreatments>
This action performs a series of treatments in the order specified. This action can only be a child of the Queue FM's <submit>
action element.
Attribute Details
None
The following are action limitations:
- The
<stop>
action can not be used to cancel this series of treatments. - This action can only be a child of the
<queue:submit>
action. - No events will be generated for all treatment actions that are defined.
The following are examples:
<state id="Skills-Based-with-Treatments"> <datamodel> <data id="reqid"/> </datamodel> <onentry> <queue:submit queue="'VQ1'" requestid="_data.reqid" ordertype="'min'" orderstat="'StatExpectedWaitingTime'" timeout="100"> <queue:targets type="agentgroup" statserver="'www.genesyslab.stserver1.com'"> <queue:target name="'agtgrp2'"/> </queue:targets> <dialog:runtreatments> <dialog:play language="'English(US)'"> <dialog:prompts type="ann"> <dialog:prompt interrupt="true" intid="1111"/> <dialog:prompt interrupt="true" number="'2222'"/> </dialog:prompts> </dialog:play> <dialog:collect> <dialog:input max_digits="6" abort_digits="'1'" term_digits="'9'" total_timeout="20"/> </dialog:collect> <dialog:playsound type="'music'" resource="'EMusicDN'" duration="100"/> </dialog:runtreatments> </queue:submit> </onentry> <transition event="queue.submit.done" target="next-state"/> <transition event="error.queue.submit" target="error-state"/> </state>
Children
<collect>
- Occurs 0 to N. This action collects digits from a caller.<play>
- Occurs 0 to N. This action plays announcements to a caller.<playandcollect>
- Occurs 0 to N. This action plays announcements to a caller and then collects digits from a caller.<playandverify>
- Occurs 0 to N. This action plays announcements to a caller, collects digits from the caller and then verifies that the digits are appropriate.<playsound>
- Occurs 0 to N. This action plays sounds to a caller.<start>
- Occurs 0 to N. This action executes a dialog application with which the caller will interact.<pause>
- Occurs 0 to N. This action executes a pause in treatment processing. This is to be used in between the other treatments.<remote>
- Occurs 0 to N. This action executes a dialog application with which the caller will interact by way of a new remote resource.<setdialogdefaultdest>
- Occurs 0 to 1. This action informs the dialog application what the default destination of the interaction should be if a failure occurs between the orchestration platform and the dialog application resource.
Events
Events associated with the <runtreatments> action and the child action elements will not be generated.
<collect>
This action simply collects a set of digits from a caller. It is equivalent to the IRD function block "Collect Digits".
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestid |
false |
location expression |
none |
Any valid location expression |
This is the location for the request ID that is returned as part of this request. Any data model expression evaluating to a data model location. See SCXML Location Expressions for details. The location's value will be set to an internally generated unique string identifier to be associated with the action being sent. This value will only be valid when the dialog.collect.requestid event is received. If this attribute is not specified, the event identifier is dropped. This identifier can be tested by the completion event handler to distinguish among several outstanding requests. If this attribute is not specified, the identifier can be acquired from the action completion event. Every request must receive a unique identifier. |
interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression which returns the interaction ID from which the digits will be collected. There is a special value that can be returned:
See SCXML Legal Data Values and Value Expressions for details. |
device | false | value expression | none | Any expression that returns a valid string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. (Since 8.1.2)
The following are action limitations:
- The
<stop>
action can not be used to cancel this treatment. - If this action element is a child of the
<runtreatments>
element then the following attributes are not evaluated and should not be used. The similar attributes in the associated Queue FM's<submit>
and<update>
action elements will be used instead.- requestid
- interactionid
The following is an example:
<state id="Collect-Digits"> <onentry> <dialog:collect device="'dn1001'"> <dialog:input max_digits="6" abort_digits="'1'" term_digits="'9'" total_timeout="20"/> </dialog:collect> </onentry> <transition event="dialog.collect.done" target="next-state"/> <transition event="error.dialog.collect" target="error-state"/> </state>
Children
<input>
- Occurs 1 time. This instance defines the characteristics needed to collect the digits.
Events
The following events can be generated as part of this action:
dialog.collect.done
- This event will be sent when the digits have been collected.dialog.collect.requestid
- This event will be sent when the collect treatment has started.error.dialog.collect
- This event will be sent as a result of problems with the request itself.
<play>
This action simply plays a set of announcements to a caller. It is equivalent to the IRD function block "Play Announcement" and "Text to Speech".
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestid |
false |
location expression |
none |
Any valid location expression |
This is the location for the request ID that is returned as part of this request. Any data model expression evaluating to a data model location. See SCXML Location Expressions for details. The location's value will be set to an internally generated unique string identifier to be associated with the action being sent. This value will only be valid when the dialog.play.requestid event is received. If this attribute is not specified, the event identifier is dropped. This identifier can be tested by the completion event handler to distinguish among several outstanding requests. If this attribute is not specified, the identifier can be acquired from the action completion event. Every request must receive a unique identifier. |
Interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression which returns the interaction ID on which the announcements will be played. There is a special value that can be returned:
See SCXML Legal Data Values and Value Expressions for details. |
language |
false |
value expression |
English(US) |
Any expression that returns a string with one of the following values: English (US), Spanish, Mandarin, Cantonese, Vietnamese, French, French (Canada), German, Italian, Japanese, Korean, Russian |
A value expression which returns a string specifying a language in which the announcements should be made. See SCXML Legal Data Values and Value Expressions for details. |
device | false | value expression | none | Any expression that returns a valid string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. (Since 8.1.2)
The following are action limitations:
- The
<stop>
action can not be used to cancel this treatment. - If this action element is a child of the
<runtreatments>
element then the following attributes are not evaluated and should not be used. The similar attributes in the associated Queue FM's<submit>
and<update>
action elements will be used instead.- requestid
- interactionid
The following is an example:
<state id="Play-Message"> <onentry> <dialog:play language="'English(US)'"> <dialog:prompts type="ann"> <dialog:prompt interrupt="true" intid="1111"/> <dialog:prompt interrupt="true" number="'2222'"/> </dialog:prompts> </dialog:play> </onentry> <transition event="dialog.play.done" target="next-state"/> <transition event="error.dialog.play" target="error-state"/> </state>
Children
<prompts>
- Occurs 1 time. This instance defines the set of announcements to be played to the caller. The<prompts>
's type attribute can only be set to "ann" or "tts"
Events
The following events can be generated as part of this action:
dialog.play.done
- This event will be sent when the message has been played.dialog.play.requestid
- This event will be sent when the play treatment has started.error.dialog.play
- This event will be sent as a result of problems with the request itself.
<playandcollect>
This action plays a set of announcements to a caller and then collects digits. In addition, you can specify the appropriate attributes to verify the digits collected against a defined set of digits. It is equivalent to the IRD function blocks "Play Announcement and Collect Digits" and "Text to Speech and Collect Digits".
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestid |
false |
location expression |
none |
Any valid location expression |
This is the location for the request ID that is returned as part of this request. Any data model expression evaluating to a data model location. See SCXML Location Expressions for details. The location's value will be set to an internally generated unique string identifier to be associated with the action being sent. This value will only be valid when the dialog.playandcollect.requestid event is received.If this attribute is not specified, the event identifier is dropped. This identifier can be tested by the completion event handler to distinguish among several outstanding requests. If this attribute is not specified, the identifier can be acquired from the action completion event. Every request must receive a unique identifier. |
interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression which returns the interaction ID on which the announcements will be played and the digits collected. There is a special value that can be returned:
See SCXML Legal Data Values and Value Expressions for details. |
language |
false |
value expression |
English (US) |
Any expression that returns a string with one of the following values: English (US), Spanish, Mandarin, Cantonese, Vietnamese, French, French (Canada), German, Italian, Japanese, Korean, Russian |
A value expression which returns a string specifying a language in which the announcements should be made. See SCXML Legal Data Values and Value Expressions for details. |
device | false | value expression | none | Any expression that returns string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. (Since 8.1.2)
The following are action limitations:
- The
<stop>
action can not be used to cancel this treatment. - If this action element is a child of the
<runtreatments>
element, then the following attributes are not evaluated and should not be used. The similar attributes in the associated Queue FM's<submit>
and<update>
action elements will be used instead.- requestid
- Interactionid
The following is an example:
<state id="Play-and-Collect"> <onentry> <dialog:playandcollect language="'English(US)'"> <dialog:prompts type="ann"> <dialog:prompt interrupt="true" intid="1111"/> <dialog:prompt interrupt="true" number="'2222'"/> </dialog:prompts> <dialog:input max_digits="4" abort_digits="'1'" term_digits="'9'" total_timeout="20"/> </dialog:playandcollect> </onentry> <transition event="dialog.playandcollect.done" target="next-state"/> <transition event="error.dialog.playandcollect" target="error-state"/> </state>
Children
<prompts>
- Occurs 1 time. This instance defines the set of announcements to be played to the caller. The<prompts>
's type attribute can only be set to "ann" or "tts".<input>
- Occurs 1 time. This instance defines the characteristics needed to collect the digits.
Events
The following events can be generated as part of this action:
dialog.playandcollect.done
- This event will be sent when the messages have been played and the associated digits have been collected.dialog.playandcollect.requestid
- This event will be sent when the playandcollect treatment has started.error.dialog.playandcollect
- This event will be sent as a result of problems with the request itself.
<playandverify>
This action plays a set of announcements to a caller, collects digits, and verifies the digits against a defined set of digits. It is equivalent to the IRD function block "Verify Digits".
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestid |
false |
location expression |
none |
Any valid location expression |
This is the location for the request ID that is returned as part of this request. Any data model expression evaluating to a data model location. See SCXML Location Expressions for details. The location's value will be set to an internally generated unique string identifier to be associated with the action being sent. This value will only be valid when the dialog.playandverify.requestid event is received. If this attribute is not specified, the event identifier is dropped. This identifier can be tested by the completion event handler to distinguish among several outstanding requests. If this attribute is not specified, the identifier can be acquired from the action completion event. Every request must receive a unique identifier. |
interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression which returns the interaction ID on which the announcements will be played and the digits will be collected and verified. There is a special value that can be returned:
See SCXML Legal Data Values and Value Expressions for details. |
language |
false |
value expression |
English (US) |
Any expression that returns a string with one of the following values: English (US), Spanish, Mandarin, Cantonese, Vietnamese, French, French (Canada), German, Italian, Japanese, Korean, Russian |
A value expression which returns a string specifying a language in which the announcements should be made. See SCXML Legal Data Values and Value Expressions for details. |
device | false | value expression | none | Any expression that returns string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. (Since 8.1.2)
The following are action limitations:
- The
<stop>
action can not be used to cancel this treatment. - With this action you cannot use a
<prompts>
type attribute of "tts". - If this action element is a child of the
<runtreatments>
element, then the following attributes are not evaluated and should not be used. The similar attributes in the associated Queue FM's<submit>
and<update>
action elements will be used instead.- requestid
- interactionid
The following is an example:
<state id="Play-and-Verify"> <onentry> <dialog:playandverify language="'English(US)'"> <dialog:prompts type="ann"> <dialog:prompt interrupt="true" intid="1111"/> <dialog:prompt interrupt="true" number="'2222'"/> </dialog:prompts> <dialog:prompts type="iretry"> <dialog:prompt interrupt="true" intid ="3333"/> </dialog:prompts> <dialog:prompts type="isuccess"> <dialog:prompt intid="4444"/> <dialog:prompt interrupt="true" text="'hi'"/> </dialog:prompts> <dialog:prompts type="ifailure"> <dialog:prompt interrupt="true" intid="1111"/> <dialog:prompt interrupt="true" userannid="10"/> </dialog:prompts> <dialog:prompts type="itimeout"> <dialog:prompt text="'timeout'"/> </dialog:prompts> <dialog:input max_digits="10" abort_digits="'1'" term_digits="'9'" total_timeout="20"/> <dialog:compare digits="'12426'" attempts="3"/> </dialog:playandverify> </onentry> <transition event="dialog.playandverify.done" target="next-state"/> <transition event="error.dialog.playandverify" target="error-state"/> </state>
Children
<prompts>
- Must occur at least once and up to 5 times in total, each instance must have a unique type attribute of either 'ann', 'iretry', 'isuccess', 'ifailure' or 'itimeout', where a prompt type attribute of 'ann' being declared to be mandatory and MUST be provided in all<dialog:playandverify>
. All other prompt types remain optional. You may only have a maximum of one type attribute within the series of<dialog:prompts>
within<dialog:playandverify>
given that they are required to be unique, defining multiple "iretry" types for example or "ann" within the same<dialog:playandverify>
is not supported and the behavior is undetermined. These instances define the different sets of announcements to be played to the caller based on the verification process.<input>
- Occurs 1 time. This instance defines the characteristics needed to collect the digits.<compare>
- Occurs 1 time. This instance defines what needs to be compared to the digits collected from the caller.
Events
The following events can be generated as part of this action:
dialog.playandverify.done
- This event will be sent when the messages are played, the digits have been collected and verified.dialog.playandverify.requestid
- This event will be sent when the playandverfy treatment has started.error.dialog.playandverify
- This event will be sent as a result of problems with the request itself.
<playsound>
This action plays a given voice-related sound to a caller. It is a voice-specific treatment. It is equivalent to the following IRD function blocks
- "Busy"
- "Fast Busy"
- "Music"
- "Ringback"
- "Silence"
- "RAN"
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestid |
false |
location expression |
none |
Any valid location expression |
This is the location for the request ID that is returned as part of this request. Any data model expression evaluating to a data model location. See SCXML Location Expressions for details. The location's value will be set to an internally generated unique string identifier to be associated with the action being sent. This value will only be valid when the dialog.playsound.requestid event is received. If this attribute is not specified, the event identifier is dropped. This identifier can be tested by the completion event handler to distinguish among several outstanding requests. If this attribute is not specified, the identifier can be acquired from the action completion event. Every request must receive a unique identifier. |
interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression which returns the interaction ID on which to play the sound. There is a special value that can be returned:
See SCXML Legal Data Values and Value Expressions for details. |
type | true | value expression | none |
busy, fastbusy, music, ringback, silence, ran |
A value expression which returns a string specifying the type of sound to play to the caller. See SCXML Legal Data Values and Value Expressions for details. |
resource² |
false |
value expression |
none |
Any valid string or Resource Object |
For type equal to "music", this will be the source of the music (that is, MUSIC_DN), and is a required attribute unless SIP Server has been configured with a default file¹.
To specify the number of repetitions, the parameter
¹ The |
duration² |
false |
value expression |
0 |
Any expression that returns a valid integer |
A value expression which returns the duration in seconds that the sound should be played. See SCXML Legal Data Values and Value Expressions for details. |
device | false | value expression | none | Any expression that returns string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
² For playing music, if both repeat (in resource) and duration are specified, repeat takes priority. Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. (Since 8.1.2)
The following are action limitations:
- The
<stop>
action can not be used to cancel this treatment. - The following types of sounds are hard coded to be not interruptible:
- busy, fastbusy, ran
- The following types of sounds are hard coded to be interruptible:
- music, ringback, silence
- If this action element is a child of the
<runtreatments>
element, then the following attributes are not evaluated and should not be used. The similar attributes in the associated Queue FM's<submit>
and<update>
action elements will be used instead.- requestid
- Interactionid
The following are some examples:
<state id="Play-Sound-Busy"> <onentry> <dialog:playsound type="'busy'" duration="100" device="'dn1001'"/> </onentry> <transition event="dialog.playsound.done" target="next-state"/> <transition event="error.dialog.playsound" target="error-state"/> </state> <state id="Play-Sound-Music-30sec"> <onentry> <dialog:playsound type="'music'" resource="'path_to/ElevatorMusicDN'" duration="30"/> </onentry> <transition event="dialog.playsound.done" target="next-state"/> <transition event="error.dialog.playsound" target="error-state"/> </state> <state id="Play-Sound-Music-Once"> <onentry> <dialog:playsound type="'music'" resource="'path_to/ElevatorMusicDN;repeat=1'"/> </onentry> <transition event="dialog.playsound.done" target="next-state"/> <transition event="error.dialog.playsound" target="error-state"/> </state>
Children
None
Events
The following events can be generated as part of this action:
dialog.playsound.done
- This event will be sent when the sound has been played.dialog.playsound.requestid
- This event will be sent when the play sound treatment has started.error.dialog.playsound
- This event will be sent as a result of problems with the request itself.error.dialog.playsound.timeout
- This event is sent by URS after the number of seconds specified in the 'duration' attribute has elapsed, and URS has not received the treatment.done event for playing the sound from Tserver.
<createann>
This action creates and records an announcement from a user. It is equivalent to the IRD function block "Record User Announcement". This is primarily used to collect a message from a customer.
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestid |
false |
location expression |
none |
Any valid location expression |
This is the location for the request ID that is returned as part of this request. Any data model expression evaluating to a data model location. See SCXML Location Expressions for details. The location's value will be set to an internally generated unique string identifier to be associated with the action being sent. This value will only be valid when the dialog.createann.requestid event is received. If this attribute is not specified, the event identifier is dropped. This identifier can be tested by the completion event handler to distinguish among several outstanding requests. If this attribute is not specified, the identifier can be acquired from the action completion event. Every request must receive a unique identifier. |
interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression which returns the interaction ID on which to create or record the announcement. There is a special value that can be returned:
See SCXML Legal Data Values and Value Expressions for details. |
userid |
true |
value expression |
none |
Any expression that returns a valid string |
A value expression which returns a string specifying the user ID associated with this recording announcement. See SCXML Legal Data Values and Value Expressions for details. |
abort_digits |
false |
value expression |
none |
Any expression that returns a valid string |
A value expression which returns the sequence of up to two keys that the caller can enter to abort the recording process. The IP is to consider this as a failed recording attempt. See SCXML Legal Data Values and Value Expressions for details. |
term_digits |
false |
value expression |
none |
Any expression that returns a valid string |
A value expression which returns the sequence of up to two keys that the caller can enter to indicate that the caller has finished recording the announcement. See SCXML Legal Data Values and Value Expressions for details. |
reset_digits |
false |
value expression |
none |
Any expression that returns a valid string |
A value expression which returns the sequence of up to two keys that the caller can enter to restart the recording announcement. Any announcement recorded up to the point of these keystrokes will be discarded. See SCXML Legal Data Values and Value Expressions for details. |
start_timeout |
false |
value expression |
none |
Any expression that returns a valid integer |
A value expression which returns the number of seconds the resource should wait for the callers to begin recording their announcements. See SCXML Legal Data Values and Value Expressions for details. |
total_timeout |
false |
value expression |
300 |
Any expression that returns a valid integer |
A value expression which returns the total number of seconds the resource should wait for the callers to finish recording their announcements. (since 8.1.200.43, ORS will set a default value of 300 seconds for total_timeout) See SCXML Legal Data Values and Value Expressions for details. |
device | false | value expression | none | Any expression that returns string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. (Since 8.1.2)
The following are action limitations:
- The
<stop>
action can not be used to cancel this treatment.
The following is an example:
<state id="Create-Announcement"> <onentry> <dialog:createann userid="'12334567'" abort_digits="'1'" term_digits="'9'" total_timeout="20" device="'dn1001'"> <dialog:prompts type="ann"> <dialog:prompt interrupt="true" intid="1111"/> <dialog:prompt interrupt="true" number="'2222'"/> </dialog:prompts> </dialog:createann> </onentry> <transition event="dialog.createann.done" target="next-state"/> <transition event="error.dialog.createann" target="error-state"/> </state>
Children
<prompts>
- Occurs 1 time. This instance defines the set of announcements to be played to the caller. The<prompts>
's type attribute can only be set to "ann".
Events
The following events can be generated as part of this action:
dialog.createann.done
- This event will be sent when the announcement has been created.dialog.createann.requestid
- This event will be sent when the create announcement treatment has started.error.dialog.createann
- This event will be sent as a result of problems with the request itself.
<deleteann>
This action creates and records an announcement from a user. It is equivalent to the IRD function block "Delete User Announcement"
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestIid |
false |
location expression |
none |
Any valid location expression |
This is the location for the request ID that is returned as part of this request. Any data model expression evaluating to a data model location. See SCXML Location Expressions for details. The location's value will be set to an internally generated unique string identifier to be associated with the action being sent. This value will only be valid when the dialog.deleteann.requestid event is received. If this attribute is not specified, the event identifier is dropped. This identifier can be tested by the completion event handler to distinguish among several outstanding requests. If this attribute is not specified, the identifier can be acquired from the action completion event. Every request must receive a unique identifier. |
interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression which returns the interaction ID on which to create or record the announcement. There is a special value that can be returned:
See SCXML Legal Data Values and Value Expressions for details. |
userid |
true |
value expression |
none |
Any expression that returns a valid string |
A value expression which returns a string specifying the user ID associated with the announcement to be deleted. See SCXML Legal Data Values and Value Expressions for details. |
annid |
true |
value expression |
none |
Any expression that returns a valid integer |
A value expression which returns the user announcement ID as returned in the dialog.createann.done event. See SCXML Legal Data Values and Value Expressions for details. |
device | false | value expression | none | Any expression that returns string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. (Since 8.1.2)
The following are action limitations:
- The
<stop>
action can not be used to cancel this treatment. - The action is hard coded to be not interruptible.
The following is an example:
<state id="Delete-Announcement"> <onentry> <dialog:deleteann userid="'12334567'" annid="464646464"/> </onentry> <transition event="dialog.deleteann.done" target="next-state"/> <transition event="error.dialog.deleteann" target="error-state"/> </state>
Children
None
Events
The following events can be generated as part of this action:
dialog.deleteann.done
- This event will be sent when the announcement have been deleted.dialog.deleteann.requestid
- This event will be sent when the delete announcement treatment has started.error.dialog.deleteann
- This event will be sent as a result of problems with the request itself.
<start>
This action requests that a specific dialog be started on a specific interaction and by a specific resource. This is used for all different types of media. This action is equivalent to the IRD function block "Play Application".
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestid |
false |
location expression |
none |
Any valid location expression |
This is the location for the request ID that is returned as part of this request. Any data model expression evaluating to a data model location. See SCXML Location Expressions for details. The location's value will be set to an internally generated unique string identifier to be associated with the action being sent. This value will only be valid when the dialog.start.requestid event is received. If this attribute is not specified, the event identifier is dropped. This identifier can be tested by the completion event handler to distinguish among several outstanding requests. If this attribute is not specified, the identifier can be acquired from the action completion event. Every request must receive a unique identifier. |
interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression which returns the interaction ID for which the dialog is to be started. There is a special value that can be returned:
See SCXML Legal Data Values and Value Expressions for details. |
type |
true |
value expression |
none |
vxml, applid |
A value expression which returns the type of application that is to be started. The following are the different types that will be supported:
See SCXML Legal Data Values and Value Expressions for details. |
application |
false |
value expression |
Any expression that returns a valid integer (for applid) or string (for vxml) |
A value expression which returns the identifier of a new application which is to be started by the resource in association with the interaction. The format of the application reference is specific to each dialog type:
If this attribute is not specified, then the functional module will use the associated | |
device | false | value expression | none | Any expression that returns string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. (Since 8.1.2)
The following are action limitations:
- This action can be cancelled using the
<stop>
action. - For dialog type of "applid", the timeout attribute will be ignored.
- For dialog type of "applid" the parameters supplied in the name list can only be of simple types.
- All
<param>
name attribute values must match the case of the parameter name of the underlying dialog system (for all Genesys treatments, parameters are in upper case - "LANGUAGE"). - The following is the data model for the dialog type of "appid" (that is, the "Play Application" function block action)
<param name="LANGUAGE"/>
- The "Play Application" function block's LANGUAGE parameter<param name="parameterN"/>
- Any custom parameter of the "Play Application" function block - You can add any parameter you want, but this function block functionality only supports strings and integer parameters.
Note: the application attribute will be used for the "Play Application" function block's APP_ID parameter.
- If this action element is a child of the
<runtreatments>
element, then the following attributes are not evaluated and should not be used. The similar attributes in the associated Queue FM's<submit>
and<update>
action elements will be used instead.- requestid
- Interactionid
Children
<param>
Occurs 0 to N. See SCXML<param>
for details. These parameters will be submitted to the processing resource, based on the functional module's underlying protocol (for example, it will be via key/value pairs for T-Server).
Events
The following events can be generated as part of this action:
dialog.start.done
- This event will be sent when the started dialog application is complete.dialog.start.requestid
- This event will be sent when the dialog application has started.error.dialog.start
- This event will be sent as a result of a timeout of the request with an error attribute value of timeout, as well as due to problems with the request itself.
Examples
The following is an example of using the IRD Play Application function block:
<state id="Play-Application"> <onentry> <dialog:start type="'applid'" application="464646464"> <param name="APP_URL" expr="'www.bigplanes.com\bestinworld'"/> </dialog:start> </onentry> <transition event="dialog.start.done" target="next-state"/> <transition event="error.dialog.start" target="error-state"/> </state>
The following is an example of using VoiceXML as a treatment:
<state id="Play-Application"> <onentry> <dialog:start type="'vxml'" > <param name="APP_URI" expr="'http://gvphost/treatment.vxml'"/> </dialog:start> </onentry> <transition event="dialog.start.done" target="next-state"/> <transition event="error.dialog.start" target="error-state"/> </state>
<stop>
This action will terminate call, referenced by interactionid attribute. However, it is supported by very few TServers, so it is better to use "terminate" action from "interaction" extension for that purpose. This action is equivalent to the IRD function block "Cancel Call".
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestid |
true |
value expression |
none |
Any valid location expression |
A value expression which returns the ID of the previously started dialog-related action. Legal Data Values and Value Expressions for details. |
interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression which returns the interaction ID for which the dialog is to be started. There is a special value that can be returned:
This attribute is only valid if the compatible attribute is true. See SCXML Legal Data Values and Value Expressions for details. |
compatible |
false |
boolean |
false |
true, false |
This value indicates whether the action is compatible with older capabilities. If true, then this will do the "IRD Cancel Call" function. If false, then this will just stop or terminate the dialog and the actual interaction. |
device | false | value expression | none | Any expression that returns string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. (Since 8.1.2)
The following are action limitations:
- Only supports a compatible attribute value of true.
The following is an example for IRD "Cancel Call":
<state id="Stop-Application"> <datamodel> <data id="reqid"/> </datamodel> <onentry> <dialog:stop requestid="_data.reqid" compatible="true"/> </onentry> <transition event="dialog.stop.done" target="next-state"/> <transition event="error.dialog.stop" target="error-state"/> </state>
Children
None
Events
The following events can be generated as part of this action:
dialog.stop.done
- This event will be sent when the dialog application stop action has completed.error.dialog.
stop
- This event will be sent as a result of problems with the request itself.error.dialog.start
- This event is sent for the dialog action that was started. Note: The error.dialog.start events will be sent before the queue.stop.done.
<remote>
This action requests that a specific dialog be started on a specific interaction and by a new remote resource. This is used for voice media only. This action is equivalent to the IRD function block "IVR".
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestid |
false |
location expression |
none |
Any valid location expression |
This is the location for the request ID that is returned as part of this request. Any data model expression evaluating to a data model location. See SCXML Location Expressions for details. The location's value will be set to an internally generated unique string identifier to be associated with the action being sent. This value will only be valid when the dialog.remote.requestid event is received. If this attribute is not specified, the event identifier is dropped. This identifier can be tested by the completion event handler to distinguish among several outstanding requests. If this attribute is not specified, the identifier can be acquired from the action completion event. Every request must receive a unique identifier. |
interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression that returns the interaction ID for which the dialog is to be started. There is a special value that can be returned:
See SCXML Legal Data Values and Value Expressions for details. |
application |
false |
value expression |
none |
Any expression that returns a valid string |
A value expression which returns the identifier of a new application that is to be started by the new resource in association with the interaction. See SCXML Legal Data Values and Value Expressions for details. |
duration |
false |
value expression |
0 |
A value expression which returns an integer |
A value expression which returns an integer that represents the number of seconds to wait. See SCXML Legal Data Values and Value Expressions for details. The character string returned must be interpreted as a time interval. This interval begins when |
destination |
true |
value expression |
none |
Any value expression that returns a valid string |
A value expression which returns the address name of a new remote resource which will be added to provide the treatment on the interaction. See SCXML Legal Data Values and Value Expressions for details. |
default |
false |
value expression |
Any value expression that returns a valid string |
A value expression which returns the destination that should be used if there are problems transferring the interaction to the destination for treatment. See SCXML Legal Data Values and Value Expressions for details. | |
compatible |
false |
boolean |
false |
false, true |
This value indicates whether the action is compatible with an attribute signature. If true, the following are the valid attributes:
If false, the following are the valid attributes:
|
device | false | value expression | none | Any expression that returns string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. Will be ignored if compatible is set to true. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. Applicable only if compatible is false. (Since 8.1.2)
The following are action limitations:
- The
<stop>
action can not be used to cancel this treatment. - If the compatible attribute is true, the following are the valid attributes:
- application - SCRIPT
- destination - TARGET
- duration - DURATION
- If the compatible attribute is false, the following are the valid attributes:
- destination - LABEL
- default - DNIS
- If this action element is a child of the
<runtreatments>
element then the following attributes are not evaluated and should not be used. The similar attributes in the associated Queue FM's<submit>
and<update>
action elements will be used instead.- requestid
- interactionid
The following is an example for compatible = false:
<state id="Remote-compatible-false"> <onentry> <dialog:remote destination="'123456'" default="'2334'"/> </onentry> <transition event="dialog.remote.done" target="next-state"/> <transition event="error.dialog.remote" target="error-state"/> </state>
The following is an example for compatible = true:
<state id="Remote-compatible-true"> <onentry> <dialog:remote compatible="true" destination="'2323@www.genesys.com\server1.AG'" application="'mortgage'"/> </onentry> <transition event="dialog.remote.done" target="next-state"/> <transition event="error.dialog.remote" target="error-state"/> </state>
Children
None
Events
The following events can be generated as part of this action:
dialog.remote.done
- This event will be sent when the remote dialog application is complete.dialog.remote.requestid
- This event will be sent when the remote dialog treatment has started.error.dialog.remote
- This event will be sent as a result of a timeout of the request with an error attribute value of timeout, as well as due to problems with the request itself.
<setdialogdefaultdest>
This action requests a Genesys-specific treatment action. This action is equivalent to the IRD function block ""Set Default Destination".
Attribute Details
Name |
Required |
Type |
Default Value |
Valid Values |
Description |
---|---|---|---|---|---|
requestid |
false |
location expression |
none |
Any valid location expression |
This is the location for the request ID that is returned as part of this request. Any data model expression evaluating to a data model location. See SCXML Location Expressions for details. The location's value will be set to an internally generated unique string identifier to be associated with the action being sent. This value will only be valid when the dialog.setdialogdefaultdest.requestid event is received. If this attribute is not specified, the event identifier is dropped. This identifier can be tested by the completion event handler to distinguish among several outstanding requests. If this attribute is not specified, the identifier can be acquired from the action completion event. Every request must receive a unique identifier. |
interactionid |
false |
value expression |
"0" |
Any expression that returns a valid string |
A value expression which returns the interaction ID for which the action is to be done. There is a special value that can be returned:
See SCXML Legal Data Values and Value Expressions for details. |
destination |
true |
value expression |
none |
Any value expression that returns a valid string |
A value expression which returns the address name of the new remote resource that will be added to provide the treatment on the interaction. See SCXML Legal Data Values and Value Expressions for details. |
device | false | value expression | none | Any expression that returns string or object |
If specified ORS will play treatments itself, otherwise, treatment playing is delegated to URS. The device should specify the DN where the call is currently located. If the call is on multiple DNs, specify the DN for which the treatment will be applied. (since 8.1.2) |
hints |
false |
value expression |
none |
Any valid ECMAScript object |
A value expression which returns the ECMAScript object containing information which may be used by the implementing functional module when applying dialog action to interaction. This information may consist of protocol-specific parameters, protocol selection guidelines, and so on. Note: The meaning of these hints is specific to the implementing functional module. See SCXML Legal Data Values and Value Expressions for details. (since 8.1.2) |
Attribute hints considerations
- Property extensions of hints object allow to specify content of AttributeExtension of resulted RequestRouteCall. Valid value for property extensions is ECMAScript object. (Since 8.1.2)
The following are action limitations:
- The
<setdialogdefaultdest>
action can not be used to cancel this treatment. - If this action element is a child of the
<runtreatments>
element then the following attributes are not evaluated and should not be used. The similar attributes in the associated Queue FM's<submit>
and<update>
action elements will be used instead.- requestid
- interactionid
The following is an example:
<state id="Set-Default-Destination"> <onentry> <dialog:setdialogdefaultdest destination="'12345'"/> </onentry> <transition event="dialog.setdialogdefaultdest.done" target="next-state"/> <transition event="error.dialog.setdialogdefaultdest" target="error-state"/> </state>
Children
None
Events
The following events can be generated as part of this action:
dialog.setdialogdefaultdest.done
- This event will be sent when the default destination is set.dialog.setdialogdefaultdest.requestid
- This event will be sent when the set default destination treatment has started.error.dialog.setdialogdefaultdest
- This event will be sent as a result of a timeout of the request with an error attribute value of timeout, as well as due to problems with the request itself.
Events
The following are the dialog action result events.
Event |
Attributes |
Description |
---|---|---|
dialog.start.done |
This event indicates the successful completion of the starting of an application. This can be sent in conjunction with the | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.start.requestid |
This event provides the application with request ID for the given request that was invoked. | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
error.dialog.start |
This indicates that an abnormal condition occurred while trying to perform the start request. This event will be sent as a result of a timeout of the request as well as problems with the request itself. | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.stop.done |
This event indicates the success of the stop request and that the request has stopped the dialog application. | |
requestid |
This is the ID of the | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
error.dialog.stop |
This indicates that an error occurred while trying to perform the | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
requestid |
This is the ID of the | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.collect.done |
This event indicates the success of the collect request and collects the digits. | |
requestid |
This is the ID of the | |
digits |
These are the digits that were collected. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.collect.requestid |
This event provides the application with request ID for the given request that was invoked. | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
error.dialog.collect |
This indicates that an error occurred while trying to perform the | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.play.done |
This event indicates the success of the play request and that the announcements were played. | |
requestid |
This is the ID of the | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.play.requestid |
This event provides the application with request ID for the given request that was invoked. | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
error.dialog.play |
This indicates that an error occurred while trying to perform the | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.playandcollect.done |
This event indicates the success of the playandcollect request and that the announcements were played and the digits collected. | |
requestid |
This is the ID of the | |
digits |
These are the digits that were collected. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.playandcollect.requestid |
This event provides the application with request ID for the given request that was invoked. | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
error.dialog.playandcollect |
This indicates that an error occurred while trying to perform the | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.playandverify.done |
This event indicates the success of the playandverify request and that the announcements were played and the digits were collected and verified. | |
requestid |
This is the ID of the | |
digits |
These are the digits that were collected. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.playandverify.requestid |
This event provides the application with request ID for the given request that was invoked. | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
error.dialog.playandverify |
This indicates that an error occurred while trying to perform the | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.playsound.done |
This event indicates the success of the playsound request and that the sound was played. | |
requestid |
This is the ID of the | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.playsound.requestid |
This event provides the application with request ID for the given request that was invoked. | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
error.dialog.playsound |
This indicates that an error occurred while trying to perform the | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.createann.done |
This event indicates the success of the createann request and that the announcement for the user was recorded. | |
requestid |
This is the ID of the | |
userannid |
This is the ID of the announcement that was recorded for the user. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.createann.requestid |
This event provides the application with request ID for the given request that was invoked. | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
error.dialog.createann |
This indicates that an error occurred while trying to perform the | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.deleteann.done |
This event indicates the success of the deleteann request and that the announcement was deleted. | |
requestid |
This is the ID of the | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.deleteann.requestid |
This event provides the application with request ID for the given request that was invoked. | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
error.dialog.deleteann |
This indicates that an error occurred while trying to perform the | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.remote.done |
This event indicates the success of the remote request and that the remote resource has executed the dialog application. | |
requestid |
This is the ID of the | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.remote.requestid |
This event provides the application with request ID for the given request that was invoked. | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
error.dialog.remote |
This indicates that an error occurred while trying to perform the | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.setdialogdefaultdest.done |
This event indicates the success of the setdialogdefaultdest request and that the resource has accepted the default destination. | |
requestid |
This is the ID of the | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) | |
dialog.setdialogdefaultdest.requestid |
This event provides the application with request ID for the given request that was invoked. | |
requestid |
This is the ID associated with the request from the orchestration application or the resource. | |
error.dialog.setdialogdefaultdest |
This indicates that an error occurred while trying to perform the | |
requestid |
This is the ID associated with the request. | |
error |
This is the type of error that occurred. The following are the possible values:
| |
description |
This is a more detailed description of the error. | |
extensions | If present may provide addition information sent as extension data from the source performing the dialog operation(Since 8.1.2) |