Jump to: navigation, search

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

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

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

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

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

_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 Terminated Scheduled Scenarios

Overview

This page describes two Callback scenarios:

  • User Terminated Scheduled, also known as User Terminated at Desired Time.
  • User Terminated Delayed Scheduled, also known as User Terminated Delayed at Desired Time.

The _wait_for_agent option selects between Delayed (_wait_for_agent=true) and Not Delayed (_wait_for_agent=false). The scenarios go through the following stages:

Find Available Slot

  • Mobile device: Request for availability at the desired time.
  • Availability API: Provides available time slots during the open business hours encompassing the desired time.
  • Mobile device: Starts Callback with user selected available time slot.

Start Callback

Start Callback Not Delayed

_wait_for_agent = false

Start Callback Delayed

_wait_for_agent = true

  • Callback service: Returns session id to the user.
  • Callback service: Starts execution at a time determined by the scheduled time minus the current EWT
  • Callback service: Initiates the outbound call after execution starts.
  • Callback service: Returns session id to the user.
  • Callback service: Starts execution at a time determined by the scheduled time minus the current EWT
  • Callback service: Waits for an agent to be available.
  • Callback service: When an agent is available, notifies mobile device that agent is available.

Confirm user's availability and Connect

  • Callback service: Returns a message to expect a call, 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.
  • Callback service: Reserves target to route call.
  • Callback service: Routes the call to the target.
  • Callback service terminates.

Create your Scenario

In the Service Management UI, select Callback and Mobile Engagement"' and in the Configured Services tab, add a Callback service with User-Terminated (Immediate or Delayed) as the Common Default Configuration (see Adding a Service for details).

Enter a service name. This is the callback execution name of your service that will be used in URLs to access this service. For example, if you set this name to user-scheduled, your service URL will be:
http://host:port/genesys/1/service/callback/user-scheduled

Configuration

When you add a service and default configuration, many options are automatically populated with the appropriate default values. Refer to the User Terminated Delayed and the User Terminated Immediate scenarios for further details. You will also need to create and configure an Office Hours service that you will use to configure the _business_hours_service option in your callback scenario: No results

The _wait_for_agent option selects between Delayed (_wait_for_agent=true) and not Delayed (_wait_for_agent=false). If you choose a User Terminated Delayed scenario, the outbound call will not occur until an agent is available.

  • User Terminated Scheduled scenario:
    1. Start the callback service at the scheduled time minus the current EWT defined for the _target.
    2. The outbound call occurs immediately after starting the service.
  • User Terminated Delayed Scheduled
    1. Start the callback service at the scheduled time minus the current EWT defined for the _target.
    2. Wait for the time dial notification from URS before making the outbound call.

User Terminated Scheduled scenarios might create a longer delay between the time of the outbound call and being connected to an agent if the EWT is not accurate.

Sample Request and Response Sequence

Get timeslots

Request URL:http://192.168.184.128:8080/genesys/1/service/callback/user-scheduled/availability?timestamp=2014-07-30T14:00:00.000Z&_=1406647599350
Request Method:GET
Status Code:200 OK
Request Headersview source
Accept:application/json, text/javascript, */*; q=0.01
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Cache-Control:no-cache
Connection:keep-alive
Cookie:JSESSIONID=1mmvrc06utu9l1s9azezm677ns; BAYEUX_BROWSER=db7a1s13ad7b0xvghy78iy6y17cq
Host:192.168.184.128:8080
Pragma:no-cache
Referer:http://192.168.184.128:8080/genesys/admin/js/sample/cb/index.html
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.57 Safari/537.36
Query String Parametersview sourceview URL encoded
timestamp:2014-07-30T14:00:00.000Z
_:1406647599350
Response Headersview source
Cache-Control:no-cache
Cache-Control:no-store
Content-Type:application/json;charset=UTF-8
Date:Wed, 30 Jul 2014 14:36:01 GMT
Pragma:no-cache
Transfer-Encoding:chunked
 
Response Body:
{
    "2014-07-30T06:00:00.000Z": 100,
    "2014-07-30T07:00:00.000Z": 100,
    "2014-07-30T08:00:00.000Z": 100,
    "2014-07-30T09:00:00.000Z": 100,
    "2014-07-30T10:00:00.000Z": 100,
    "2014-07-30T11:00:00.000Z": 100,
    "2014-07-30T12:00:00.000Z": 100,
}

Create outbound scheduled delay service

Request URL:http://192.168.184.128:8080/genesys/1/service/callback/user-scheduled
Request Method:POST
Status Code:200 OK
Request Headersview source
Accept:application/json, text/javascript, */*; q=0.01
Accept-Encoding:gzip,deflate,sdch
Accept-Language:en-US,en;q=0.8
Cache-Control:no-cache
Connection:keep-alive
Content-Length:915
Content-Type:multipart/form-data;boundary=AaB03x;charset=UTF-8
Cookie:JSESSIONID=1mmvrc06utu9l1s9azezm677ns; BAYEUX_BROWSER=db7a1s13ad7b0xvghy78iy6y17cq
gms_user:jdoe_desktop
Host:192.168.184.128:8080
Origin:http://192.168.184.128:8080
Pragma:no-cache
Referer:http://192.168.184.128:8080/genesys/admin/js/sample/cb/index.html
User-Agent:Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.57 Safari/537.36
Request Payload
--AaB03x
Content-Disposition: form-data; name="first_name"
 
John
--AaB03x
Content-Disposition: form-data; name="last_name"
 
Doe
--AaB03x
Content-Disposition: form-data; name="_provide_code"
 
false
--AaB03x
Content-Disposition: form-data; name="_desired_time"
 
2014-07-30T15:00:00.000Z
--AaB03x
Content-Disposition: form-data; name="_customer_number"
 
5115
--AaB03x
Content-Disposition: form-data; name="location_lat"
 
37.8197
--AaB03x
Content-Disposition: form-data; name="location_long"
 
-122.4786
--AaB03x
Content-Disposition: form-data; name="_device_os"
 
comet
--AaB03x
Content-Disposition: form-data; name="_call_direction"
 
USERTERMINATED
--AaB03x
Content-Disposition: form-data; name="_wait_for_agent"
 
true
--AaB03x
Content-Disposition: form-data; name="_wait_for_user_confirm"
 
true
--AaB03x
Content-Disposition: form-data; name="_media_type"
 
voice
--AaB03x
Response Headersview source
Access-Control-Allow-Credentials:true
Access-Control-Allow-Origin:http://192.168.184.128:8080
Access-Control-Expose-Headers:
Cache-Control:no-cache
Cache-Control:no-store
Content-Type:application/json;charset=UTF-8
Date:Wed, 30 Jul 2014 14:36:16 GMT
Pragma:no-cache
Transfer-Encoding:chunked
 
Response Body:
{"_id":"440-96984577-a614-4f18-b80e-aaf91e78b178"}
 
Push notification data:
{
    "_dialog_id": "0",
    "_action": "ConfirmationDialog",
    "_text": "You will receive the call shortly",
    "_ok_title": "Ok",
    "_id":"440-96984577-a614-4f18-b80e-aaf91e78b178"
}

Connect (user confirmation)

Request URL:http://localhost:8080/genesys/1/service/440-96984577-a614-4f18-b80e-aaf91e78b178/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=----WebKitFormBoundaryNY84ld7wm7oHB9fp
Cookie:JSESSIONID=1b81btxjbrb1wybz5a93i24io; 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
------WebKitFormBoundaryNY84ld7wm7oHB9fp--
Response Headersview source
Cache-Control:no-cache
Cache-Control:no-store
Content-Length:26
Content-Type:application/json;charset=UTF-8
Content-Type:application/json;charset=UTF-8
Date:Tue, 30 Jul 2013 07:04:35 GMT
Expires:Thu, 01 Jan 1970 00:00:00 GMT
Pragma:no-cache
Set-Cookie:JSESSIONID=mjjvtphwb8lpce7io23ggxcu;Path=/genesys
 
Response Body:
{
    "_dialog_id": "0",
    "_action": "ConfirmationDialog",
    "_text": "You will receive the call shortly",
    "_ok_title": "Ok",
    "_id": "440-96984577-a614-4f18-b80e-aaf91e78b178"
}

Sequence Diagram

Click on the diagram to access full resolution.


Clbck-user term sched.png

Feedback

Comment on this article:

blog comments powered by Disqus
This page was last modified on 3 July 2018, at 02:37.