Jump to: navigation, search

_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.

_userorig_connect_limit

Section: Voice - User Originated
Default Value: 3
Valid Values: integer
Changes Take Effect: Immediately


Maximum number of times that the customer can request a connection or a reconnection.

_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.

_booking_expiration_timeout

Section: Voice - User Originated
Default Value: 30
Valid Values: integer
Changes Take Effect: Immediately


Used to book the access number resource for a period of time. The customer needs to make the call within the specified timeout to ensure a successful match.

This option is mandatory.

_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.
Important
If you set multiple targets in this option, then _urs_queued_ttl should be set to the total queue time across all targets.
more...

_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.

_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.

_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.

User Originated Delayed

Type: ors / inbound voice service

Scenario

The customer wishes to contact the Call Center and accepts to wait for an agent. The Callback service notifies the mobile when an agent is ready, then provides an access number and an access code (optional) that the customer can dial. Then, the customer's inbound call is processed and routed to an agent.

This Callback scenario is an inbound voice service that goes through the following stages:

Start Callback

  • Callback service: Returns session id to the user.
  • Callback service: Waits for an agent to be available.
  • Callback service: When an agent is available, notifies the mobile device that agent is available.
  • Next: the Mobile device is expected to send connect request to confirm the user's availability.

Connect

  • Callback service: Returns access information immediately to the mobile device.
  • Callback service: Waits for the voice call to arrive.
  • Next: the Mobile device is expected to dial the access number.

Dial Access Number

  • Inbound service: Locates the GMS service associated with the arrived voice call.
  • Inbound service: Delegates the call to be processed by the Callback service.
  • Callback service: Reserves target to route call.
  • Callback service: Routes the call to the target.
  • Callback service terminates.

How to Configure this Scenario

The sections below list the key options applicable to this scenario. Use the GMS Service Management UI to set the User Originated Delay service and configure options. On the Services > Configured Services tab, add a Callback service with User-Originated-Delayed as the Common Default Configuration (see Configured Service). When you add this service and default configuration, many options are automatically populated with the appropriate default values. Some options, however, will require you to enter your own values. See the Comments column in the following table for these details.

Default Values for User Originated Delay

These are the default values, which are automatically populated when using the pre-defined User-Originated-Immediate service. You do not need to change these values.

Option Description
_wait_for_agent = true 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.

_wait_for_user_confirm = true 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.

_call_direction = USERORIGINATED 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.

_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
  • For Genesys Mobile Services-based services: builtin
  • For Orchestration Server-based services: ors

_provide_code = false If true, returns a randomly generated code to be used for the authentication of the user originated (inbound) call.


This option is mandatory.

_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
_resource_group="DNIS" Resource group from which access number is to be allocated.


This option is mandatory.

_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.
  • 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.
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

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 section are applicable. You can use the default values, or you can set your own values.

Option Description
Voice-User Originated
_booking_expiration_timeout = 30 Used to book the access number resource for a period of time. The customer needs to make the call within the specified timeout to ensure a successful match.

This option is mandatory.

_provide_code= false If true, returns a randomly generated code to be used for the authentication of the user originated (inbound) call.


This option is mandatory.

_userorig_connect_limit=3 Maximum number of times that the customer can request a connection or a reconnection.

Voice Treatment section
_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.


Important
In the Voice Treatment section, the GMSApplications/<treatmentfile> path is applicable if you are using the treatments builtin to the Callback strategy. If you are not using the builtin treatments, enter the path where you have placed your voice treatment files. This path may or may not point to files on a Genesys Media Server.

Sample Request and Response Sequence

Create inbound delay service

Request URL:http://localhost:8080/genesys/1/service/callback/voice-userorig-delay
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:753
Content-Type:multipart/form-data; boundary=----WebKitFormBoundary4KngrF26eEEFKIu5
Cookie:JSESSIONID=5lpxopl7oanu50iexlwaqrvg; 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
------WebKitFormBoundary4KngrF26eEEFKIu5
Content-Disposition: form-data; name="type"

Gold
------WebKitFormBoundary4KngrF26eEEFKIu5
Content-Disposition: form-data; name="_customer_number"

6504661232
------WebKitFormBoundary4KngrF26eEEFKIu5
Content-Disposition: form-data; name="usr_customer_name"

Bob Markel
------WebKitFormBoundary4KngrF26eEEFKIu5
Content-Disposition: form-data; name="usr_reason"

billing question
------WebKitFormBoundary4KngrF26eEEFKIu5
Content-Disposition: form-data; name="_device_notification_id"

b16416334828b1d26ef14f329628b55b5a8c631d8928a371a5584722dd7fb673
------WebKitFormBoundary4KngrF26eEEFKIu5
Content-Disposition: form-data; name="_device_os"

iOS
------WebKitFormBoundary4KngrF26eEEFKIu5--
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 06:51:31 GMT
Expires:Thu, 01 Jan 1970 00:00:00 GMT
Pragma:no-cache
Set-Cookie:JSESSIONID=fbnacjg4ginj1xlbzkcv5j7wq;Path=/genesys
Transfer-Encoding:chunked

Response Body:
{
    "_id": "369-90f389cf-ae63-46ec-a3f7-7b76c0522e2f",
    "_text": "We will notify you when agent is available"
}

Push notification data:
{
    "id": "db508720258611e300006072543ed1ff",
    "message": {
        "_action": "get-dialog-user-confirmation-provide_code-false",
        "_id": "369-90f389cf-ae63-46ec-a3f7-7b76c0522e2f"
    },
    "tag": "service.agentavailable.369-90f389cf-ae63-46ec-a3f7-7b76c0522e2f"
}

Connect (user confirmation/request access info)

Request URL:http://localhost:8080/genesys/1/service/369-90f389cf-ae63-46ec-a3f7-7b76c0522e2f/connect
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:44
Content-Type:multipart/form-data; boundary=----WebKitFormBoundarylgOFYFBusYz5okcj
Cookie:JSESSIONID=febiiafprxso1n7bokxbrqwqv; 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
------WebKitFormBoundarylgOFYFBusYz5okcj--
Response Headersview source
Cache-Control:no-cache
Cache-Control:no-store
Content-Length:312
Content-Type:application/json;charset=UTF-8
Content-Type:application/json;charset=UTF-8
Date:Tue, 30 Jul 2013 06:54:21 GMT
Expires:Thu, 01 Jan 1970 00:00:00 GMT
Pragma:no-cache
Set-Cookie:JSESSIONID=1t65gbvy9mrwdwysh123gpb0f;Path=/genesys

Response Body:
{
    "_dialog_id": "0",
    "_label": "Connecting ...",
    "_action": "DialNumber",
    "_tel_url": "tel:6504663205",
    "_access_code": "n/a",
    "_access_number": "6504663205",
    "_expiration_time": "29",
    "_id": "369-90f389cf-ae63-46ec-a3f7-7b76c0522e2f"
}

Sequence Diagram

Click the diagram to access full resolution. Voice user orig delay.png

Feedback

Comment on this article:

blog comments powered by Disqus
This page was last modified on 17 April 2018, at 07:29.