_treatment_call_failure_answering_machine
Section: Voice Treatment
Default Value:
Valid Values: String or as a JSON-formatted string
Changes Take Effect: Immediately
URI of the music file to play when a call is not answered by the customer and is forwarded to the answering machine.
JSON-formatted strings can be used to specify hints to the RequestApplyTreatment.
The following example makes the music start playing after the answering machine beep is detected: { "file": "file_url", "hints":{ "am-beep-detection":"on"} }
By default, the value of this option is empty and Callback uses the <GMS installation>/../Resources/SampleTreatments/call_fail_ans_machine.wav file from the Callback template.
To deactivate the play treatment, set the value of this option to { }.
_treatment_customer_connect
Section: Voice Treatment
Default Value:
Valid Values: String or as a JSON-formatted string
Changes Take Effect: Immediately
URI of the music file to play when the customer answers the callback.
The JSON-formatted strings can be used to specify hints to the RequestApplyTreatment. For example:
{ "file": "file_url", "hints": {"hint1":"value"}}
_treatment_waiting_for_agent
Section: Voice Treatment
Default Value:
Valid Values: String or JSON-formatted string
Changes Take Effect: Immediately
Music file to play when the customer is waiting for an agent. This parameter accepts a URI as a string or as a JSON-formatted string. If you do not set this option, Callback will use the default <GMS installation>/Resources/SampleTreatments/next_customer_rep.wav file of the callback template.
_treatment_find_agent_fail
Section: Voice Treatment
Default Value:
Valid Values: String or JSON-formatted string
Changes Take Effect: Immediately
Music file to be played when the service fails to find the agent in the time specified by the Max Time To Wait For Agent on the Call parameter. This parameter accepts a URI as a string or as a JSON-formatted string. See also _treatment_waiting_for_agent. By default, this option has an empty value and Callback will use the <GMS installation>/Resources/SampleTreatments/all_agents_busy.wav file available in the callback template.
_prefix_dial_out
Section: Voice - User Terminated
Default Value: 9
Valid Values: Integer
Changes Take Effect: Immediately
Prefix required to perform a user-terminated (outbound) call from the system.
_urs_strategy_update_sub_routine
Section: URS Queueing
Default Value: SetRouteDelay
Valid Values: String
Changes Take Effect: Immediately
Subroutine in URS that changes the RouteDelay parameter of the virtual interaction representing the service instance. This option informs URS to reserve this interaction's target when it becomes available. The default value shown here matches the name of the URS subroutine that you imported into IRD. If you changed the name of the subroutine, update this value to reflect the correct name.
_urs_prioritization_strategy
Section: URS Queueing
Default Value: WaitForTarget
Valid Values: String
Changes Take Effect: Immediately
Universal Routing Server strategy to be used for the service instance prioritization. The default value shown here matches the name of the URS strategy that you imported into IRD. If you changed the name of the strategy, update this value to reflect the correct name.
_target
Section: URS Queueing
Default Value: {specify your target here}
Valid Values: String
Changes Take Effect: Immediately
Modified: 8.5.108.02, 8.5.109.05, 8.5.109.08, 8.5.114.09
Routing target that specifies the agent/queue resource that will process this request.
- Starting in 8.5.108.02, you can set multiple targets in this option, limited to 5.
- Starting in 8.5.114.09, the limit is increased to 15.
Single Target
For a single target, format the string according to the URS target specification: <Target String>@<StatServer name>.<Target Type> where Target Type is one of the following:
- A (Agent)
- AP (Agent Place)
- GA (Group of Agents)
- GP (Group of Places)
- GC (Campaign Group)
<Target String> can be a skill expression. In that case, <Target String> must start with '?:'.
For example:
- Billing@StatServer.GA—Routes to Agent Group "Billing".
- ?:English=20&;Loans=2@StatServer.GA—Routes to any agent matching the skill expression.
See the Universal Routing Server (URS) documentation for additional information about URS targets.
Multiple Targets
To set multiple targets, create a JSON-formatted string array of maximum 15 elements as follows:
[
{
"target": "<Target String>@<StatServer name>.<Target Type>",
"timeout": "<integer>",
"clear":<true/false>,
"stat_to_check": "<stat name>",
"stat_operator": "< or >",
"stat_value": "1"
}
]
- The timeout property specifies how long to wait in seconds before switching of targets.
- The stat_to_check property can be set to any of the values supported by the Statistics parameter passed to the IRD function SData(Target, Statistics), unless target is a skill expression. If target is a skill expression, you must choose one of the following values:
- RStatAgentsReadyvoice—agents ready for voice media.
- RStatAgentsReady—agents ready for any media.
- RStatAgentsTotal—agents logged in.
- The stat_value property specifies the threshold for the statistic passed in stat_to_check. If the condition set by the combination of stat_to_check, stat_operator, and stat_value is met, the current target is skipped, except if it is the last target of the list.
- If clear=true, the target will be overridden when switching to the next target; if clear=false, the target will be expanded with the next target.
_urs_virtual_queue
Section: URS Queueing
Default Value: {Specify virtual queue to be used by strategy}
Valid Values: string
Changes Take Effect: Immediately
Virtual queue (alias) to which the service request will be added.
_resource_group
Section: Voice - User Originated
Default Value: DNIS
Valid Values: resource_group
Changes Take Effect: Immediately
Resource group from which access number is to be allocated.
This option is mandatory.
_route_point
Section: Voice - User Terminated
Default Value:
Valid Values: String
Changes Take Effect: Immediately
Route point from which the system can create a user-terminated (outbound) call.
This option is mandatory.
_use_debug_push_certificate
Section: Notification
Default Value:
Valid Values: boolean
Changes Take Effect: Immediately
Use debug certificates for the push notification provider
_provide_code
Section: Voice - User Originated
Default Value: false
Valid Values: boolean
Changes Take Effect: Immediately
If true, returns a randomly generated code to be used for the authentication of the user originated (inbound) call.
This option is mandatory.
_type
Section: no category
Default Value:
Valid Values: builtin,ors
Changes Take Effect: Immediately
This option is mandatory.
- For Genesys Mobile Services-based services: builtin
- For Orchestration Server-based services: ors
_ttl
Section: General
Default Value: 86400
Valid Values: integer
Changes Take Effect: Immediately
Modified: 8.5.107.15, 8.5.109.05
Duration (in seconds) for which the service will be kept in storage after the Desired Time is passed (Time To Live). Once expired, the service is removed from the system. For example, if you want the callbacks to be visible in the Service Management UI for one week past the execution time, then you should set 7 days of Time To Live, which means _ttl=604800.
This option is mandatory.
_userterminated_first_connect_party
Section: Voice - User Terminated
Default Value: CUSTOMER
Valid Values: CUSTOMER, AGENT
Changes Take Effect: Immediately
First party to connect when _call_direction is set to USERTERMINATED. Set this option to CUSTOMER to call the customer first; set this option to AGENT to call the agent first.
This option is mandatory.
_call_direction
Section: General
Default Value: USERORIGINATED
Valid Values: USERORIGINATED, USERTERMINATED
Changes Take Effect: Immediately
This is a default value, automatically populated when using the predefined User-Terminated scenario. You do not need to change this value.
- If this option is set to USERORIGINATED, the customer's device will initiate the call to get connected to the agent.
- If this option is set to USERTERMINATED, the agent or the system will initiate the call to contact the customer.
_max_transfer_to_agent_attempts
Section: General
Default Value: 5
Valid Values: integer
Changes Take Effect: Immediately
This option is mandatory.
Maximum number of attempts to transfer the call to the agent. If greater than 1, set the URS option on_route_error=try_other.
_wait_for_user_confirm
Section: General
Default Value: false
Valid Values: Boolean
Changes Take Effect: Immediately
True to wait for confirmation of the customer's availability. If this option is set to true, the service sends a push notification to the customer's device to get confirmation that the customer is ready to have a conversation with the agent. This scenario is possible only if the _wait_for_agent option is set to true.
_wait_for_agent
Section: General
Default Value: true
Valid Values: Boolean
Changes Take Effect: Immediately
True to wait for an agent to connect. If this option is set to true,
the service will wait for the agent to initiate the interaction and to send the notification to the customer. If the option is set to false, the interaction can start right after the creation of the service instance. In voice scenarios,
the access information will be returned immediately with the service ID.
This option is mandatory.
_media_type
Section: General
Default Value: voice
Valid Values: String
Changes Take Effect: Immediately
Media type of the interaction that the service is expected to handle. This option enables URS to select an agent who has the appropriate media capabilities. This is a default value, automatically populated when using the predefined User-Terminated scenario. You do not need to change this value.
This option is mandatory.
User Terminated Immediate
Call flow
In this scenario, the customer requests an immediate callback, that is, as soon as the agent is available. This Callback scenario is an outbound voice service that goes through the following stages:
Start Callback
- Callback service: Returns a message to expect a call, immediately to the mobile device.
- Callback service: Calls the mobile device.
- Mobile device: Accepts the call.
- Callback service: Identifies that a human has answered the call.
Connect to Agent
- Callback service: Plays treatment until the target is available.
- Callback service: Reserves target to route call.
- Callback service: Routes the call to the target agent.
- Callback service terminates.
Create your Scenario
In the Admin UI > Services > Configured Services tab, add a Callback service with User-Terminated-Immediate as the Common Default Configuration (see Adding a Service for details).
Enter a service name. This name is the callback execution name of your service and will be used in URLs to access this service. For example, if you set this name to voice-userterm-immediate, your service URL will be:
http://host:port/{base-web-application}/service/callback/voice-userterm-immediate
When you add this service and default configuration, many options are automatically populated with the appropriate default values.
Configuration Options
The table below lists the key options applicable to this scenario. Some options, however, will require you to enter your own values. See the Description column in the following table for these details.
Predefined Values
These are the default values, which are automatically populated when using the pre-defined User-Terminated-Immediate service. You do not need to change these values.
Option | Description |
---|---|
_media_type=voice | Media type of the interaction that the service is expected to handle. This option enables URS to select an agent who has the appropriate media capabilities. This is a default value, automatically populated when using the predefined User-Terminated scenario. You do not need to change this value.
This option is mandatory.
|
_wait_for_agent = false | True to wait for an agent to connect. If this option is set to true,
the service will wait for the agent to initiate the interaction and to send the notification to the customer. If the option is set to false, the interaction can start right after the creation of the service instance. In voice scenarios, the access information will be returned immediately with the service ID.
|
_wait_for_user_confirm = false | True to wait for confirmation of the customer's availability. If this option is set to true, the service sends a push notification to the customer's device to get confirmation that the customer is ready to have a conversation with the agent. This scenario is possible only if the _wait_for_agent option is set to true.
|
_max_transfer_to_agent_attempts = 5 | Maximum number of attempts to transfer the call to the agent. If greater than 1, set the URS option on_route_error=try_other.
|
_call_direction = USERTERMINATED | This is a default value, automatically populated when using the predefined User-Terminated scenario. You do not need to change this value.
|
_userterminated_first_connect_party = CUSTOMER | First party to connect when _call_direction is set to USERTERMINATED. Set this option to CUSTOMER to call the customer first; set this option to AGENT to call the agent first.
This option is mandatory.
|
_ttl = 86400 | Duration (in seconds) for which the service will be kept in storage after the Desired Time is passed (Time To Live).
Once expired, the service is removed from the system. For example, if you want the callbacks to be visible in the Service Management UI for one week past the execution time, then you should set 7 days of Time To Live, which means _ttl=604800. This option is mandatory.
|
_type = ors |
|
_provide_code= false | If true, returns a randomly generated code to be used for the authentication of the user originated (inbound) call.
|
_use_debug_push_certificate = false | Use debug certificates for the push notification provider
|
Additional Required Options
You must enter a string value for the following options:
Option | Description |
---|---|
_route_point= "{Route Point}@{Telephony Switch}" | Route point from which the system can create a user-terminated (outbound) call.
This option is mandatory.
|
_resource_group="{name of the resource pool configured under Transactions/GMS_Resources/Annex}" | Resource group from which access number is to be allocated.
|
_urs_virtual_queue = "MyVirtualQueue" | Virtual queue (alias) to which the service request will be added.
|
_target = "MyTarget@StatServer.GA" | Routing target that specifies the agent/queue resource that will process this request.
Single TargetFor a single target, format the string according to the URS target specification: <Target String>@<StatServer name>.<Target Type> where Target Type is one of the following:
<Target String> can be a skill expression. In that case, <Target String> must start with '?:'.
See the Universal Routing Server (URS) documentation for additional information about URS targets. Multiple TargetsTo set multiple targets, create a JSON-formatted string array of maximum 15 elements as follows: [
{
"target": "<Target String>@<StatServer name>.<Target Type>",
"timeout": "<integer>",
"clear":<true/false>,
"stat_to_check": "<stat name>",
"stat_operator": "< or >",
"stat_value": "1"
}
]
Important If you set multiple targets in this option, then _urs_queued_ttl should be set to the total queue time across all targets.
|
_urs_prioritization_strategy = WaitForTarget _urs_strategy_update_sub_routine = SetRouteDelay |
By default, these options respectively match the names of the URS strategy and subroutine that you imported into IRD. If you changed one of these names, update the corresponding option to reflect the correct name. |
Customization
All of the options in the Voice-User Terminated section are applicable. You can use the default values, or you can set your own values. For the route point option, you must select a value from the drop-down list.
Option | Description |
---|---|
Section: Voice-User Terminated | |
_prefix_dial_out = 91 | Prefix required to perform a user-terminated (outbound) call from the system.
|
Section: Voice Treatment | |
_treatment_find_agent_fail = GMSApplications/<treatmentfile1> | Music file to be played when the service fails to find the agent in the time specified by the Max Time To Wait For Agent on the Call parameter. This parameter accepts a URI as a string or as a JSON-formatted string. See also _treatment_waiting_for_agent. By default, this option has an empty value and Callback will use the <GMS installation>/Resources/SampleTreatments/all_agents_busy.wav file available in the callback template.
|
_treatment_waiting_for_agent = GMSApplications/<treatmentfile2> | Music file to play when the customer is waiting for an agent. This parameter accepts a URI as a string or as a JSON-formatted string. If you do not set this option, Callback will use the default <GMS installation>/Resources/SampleTreatments/next_customer_rep.wav file of the callback template.
|
_treatment_customer_connect = GMSApplications/<treatmentfile3> | URI of the music file to play when the customer answers the callback.
The JSON-formatted strings can be used to specify hints to the RequestApplyTreatment. For example: { "file": "file_url", "hints": {"hint1":"value"}}
|
_treatment_call_failure_answering_machine = GMSApplications/<treatmentfile4> | URI of the music file to play when a call is not answered by the customer and is forwarded to the answering machine.
JSON-formatted strings can be used to specify hints to the RequestApplyTreatment. The following example makes the music start playing after the answering machine beep is detected: { "file": "file_url", "hints":{ "am-beep-detection":"on"} } By default, the value of this option is empty and Callback uses the <GMS installation>/../Resources/SampleTreatments/call_fail_ans_machine.wav file from the Callback template. To deactivate the play treatment, set the value of this option to { }.
|
Sample Request and Response Sequence
Create outbound immediate service
For instance, if your callback service is named voice-userterm-immediate, create the following POST request:
Request URL:http://localhost:8080/genesys/1/service/callback/voice-userterm-immediate
Request Method:POST
Status Code:200 OK
Request Headersview source
Accept:*/*
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Connection:keep-alive
Content-Length:660
Content-Type:multipart/form-data; boundary=----WebKitFormBoundaryIWtKHpA86nG3FsWy
Cookie:JSESSIONID=4xjf734hb3pcnh5wd515j6f4; BAYEUX_BROWSER=86721orubxagcqhw0hj14cpyaqk2
gms_user:b16416334828b1d26ef14f329628b55b5a8c631d8928a371a5584722dd7fb673
Host:localhost:8080
Origin:http://localhost:8080
Referer:http://localhost:8080/gmstester/chat.html
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.110 Safari/537.36
Request Payload
------WebKitFormBoundaryIWtKHpA86nG3FsWy
Content-Disposition: form-data; name="_customer_number"
916504661232
------WebKitFormBoundaryIWtKHpA86nG3FsWy
Content-Disposition: form-data; name="usr_customer_name"
Bob Markel
------WebKitFormBoundaryIWtKHpA86nG3FsWy
Content-Disposition: form-data; name="usr_reason"
billing question
------WebKitFormBoundaryIWtKHpA86nG3FsWy
Content-Disposition: form-data; name="_device_notification_id"
b16416334828b1d26ef14f329628b55b5a8c631d8928a371a5584722dd7fb673
------WebKitFormBoundaryIWtKHpA86nG3FsWy
Content-Disposition: form-data; name="_device_os"
iOS
------WebKitFormBoundaryIWtKHpA86nG3FsWy--
Response Headersview source
Cache-Control:no-cache
Cache-Control:no-store
Content-Type:application/json;charset=UTF-8
Content-Type:application/json;charset=UTF-8
Date:Tue, 30 Jul 2013 07:02:36 GMT
Expires:Thu, 01 Jan 1970 00:00:00 GMT
Pragma:no-cache
Set-Cookie:JSESSIONID=4ieeqn8sa8ni1o2u2nd1br8a4;Path=/genesys
Transfer-Encoding:chunked
Response Body:
{
"_dialog_id": "0",
"_action": "ConfirmationDialog",
"_text": "You will receive the call shortly",
"_ok_title": "Ok",
"_id": "369-f5d50ce1-488e-4db1-a472-8c1560b621b6"
}
Sequence Diagram
Click the diagram to access full resolution.