Jump to: navigation, search

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

_urs_ewt_virtual_queue

Section: URS Queueing
Default Value: No default value
Valid Values: string
Changes Take Effect: Immediately
Introduced: 8.5.223.01

Non-configured Virtual Queue name (alias) to which the service request will be added to fetch the Estimated Wait Time. This option's value is used as the _EWT_VQ_TARGET variable in the URS WaitForTarget strategy.

If you configure this option, you must make changes in the URS WaitForTarget strategy. For further details, see Callback documentation.

_urs_ewt_virtual_queue

Section: URS Queueing
Default Value: No default value
Valid Values: string
Changes Take Effect: Immediately
Introduced: 8.5.223.01

Non-configured Virtual Queue name (alias) to which the service request will be added to fetch the Estimated Wait Time. This option's value is used as the _EWT_VQ_TARGET variable in the URS WaitForTarget strategy.

If you configure this option, you must make changes in the URS WaitForTarget strategy. For further details, see Callback documentation.

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

Set up URS Strategy for Queuing

Enable HTTP Interfaces in URS

Create a Listening HTTP Port in URS

URS will listen on this port for incoming HTTP requests. Basically, this steps turns URS into an HTTP server.

1

In Genesys Administrator Extension, edit your URS application.

Add an HTTP listening port with a port ID http in the Ports tab. Make a note of this port number as you will need it later when configuring GMS and ORS-based services.


1

You can also do this by creating the http_port option in the http section of your Application Options tab.

Warning
This HTTP port needs to be created in one place only.

Enable Web HTTP Replies in URS

URS uses the httpbridge module to send target information back to GMS. To make this possible, create a web HTTP port that will be used to reply. URS will be able to perform external HTTP requests, for example, to submit timetodial events to GMS, and so on.

Important
The listening http port created in the previous section and the web port defined below MUST have different values.
1

In Genesys Administrator Extension, edit your URS application. Add an HTTP port with a port ID web in the Ports tab.


1

You can also do this by creating the http_port option in the web section of your Application Options tab.

  • http_port = 5580 (or some other port, used internally)
Warning
This HTTP port needs to be created in one place only.


Configure URS Delay Strategies

You must deploy URS delay strategies. This step is required because when a service request is received by GMS, the request is sent to ORS for execution. ORS then sends a request to URS to create a virtual interaction and to place it in the specified virtual queue. When an agent is available, URS sends an asynchronous response containing the selected target information to GMS, via a URL specified at the time of the creation of the virtual interaction. For samples, you will create a new virtual queue in which to place the interactions, however, for a real-world scenario, the virtual queue must be selected appropriately.


To deploy URS delay strategies, open Genesys Administrator Extension.

Create a dedicated Virtual Queue

1

Navigate to Switching > DNs > Switches > SIP_Switch > DN > Virtual Queue and create a virtual queue GMS_VQ. Save and configure the alias GMS_VQ_SIP_Switch. You will need this alias when you will configure the _urs_virtual_queue option of your Callback service.

Enable ORS to pull interactions and URS to receive routing requests.

1

Edit the Universal Routing Server Application and select the Options tab. Enable ORS to pull interactions by setting the strategy option to ORS in the default section.


Now, you can download the URS Strategies and import them into IRD. See the download section below to manage the downloadable files.

Configure Multiple Targets

The option _target in the URS Queuing section of your callback service allows you to configure one or more URS targets (as detailed in the option's description).

To configure multiple targets, you must create a JSON array of targets (maximum 15) and for each target, you provide a statistic condition that the system will check. This condition specifies when to switch to the next target. If the condition is not matched, the interaction will be queued. Otherwise, the system will test the condition of the next target, as detailed in the diagram below.

CLBCK MultipleTargetsDiagram.jpg

The condition is defined by the parameters stat_to_check, stat_operator (< or >) and stat_value.

For example, if you set:

{ 
        "target": "GMS_AG_Kilfoil@Stat_Server.GA",
        "timeout": "15",
        "clear": false,
        "stat_to_check": "StatAgentsAvailable",
        "stat_operator": "<",
        "stat_value": "1"
}
  • The system will change to the next target in the list if StatAgentsAvailable < 1 (no agent is available).
  • The system will queue the interaction to the target GMS_AG_Kilfoil@Stat_Server.GA only if StatAgentsAvailable >= 1 (which means that at least one agent is available). If the duration specified in the target timeout has passed, and if the agent is not selected, then the statistic condition for the next target is checked before queuing the interaction for the next target. You can also expand to the next target if clear = false.
Important
If you do not set a condition by using stat_to_check, stat_operator, and stat_value, then the tested condition is set by default to no logged in agents. That means that the interaction is queued to a target only if at least one agent belonging to the target is logged in.

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 JSON code below is a sample of value for the _target option and includes 5 different targets.

[
    {
        "target": "GMS_AG_Kilfoil@Stat_Server.GA",
        "timeout": "15",
        "clear": false,
        "stat_to_check": "StatAgentsAvailable",
        "stat_operator": "<",
        "stat_value": "1"
    },
    {
        "target": "GMS_AG_Milburn@Stat_Server.GA",
        "timeout": "10",
        "clear": false,
        "stat_to_check": "StatAgentsAvailable",
        "stat_operator": "<",
        "stat_value": "1"
    },
    {
        "target": "GMS_AG_Monique@Stat_Server.GA",
        "timeout": "30",
        "clear": false,
        "stat_to_check": "StatAgentsAvailable",
        "stat_operator": "<",
        "stat_value": "1"
    },
    {
        "target": "GMS_AG_Oladipo@Stat_Server.GA",
        "timeout": "15",
        "clear": false,
        "stat_to_check": "StatAgentsAvailable",
        "stat_operator": "<",
        "stat_value": "1"
    },
    {
        "target": "GMS_AG_Sippola@Stat_Server.GA",
        "timeout": "15",
        "clear": false,
        "stat_to_check": "StatAgentsAvailable",
        "stat_operator": "<",
        "stat_value": "1"
    }
]

Use of EWT_VQ_TARGET in the WaitForTarget IRD Strategy

In Estimated Wait Time scenarios, you can use the _EWT_VQ_TARGET variable to peg a non-configured Virtual Queue (VQ) to access the URS LVQ function for this VQ from your inbound routing application.

The _EWT_VQ_TARGET parameter is a copy of the _urs_ewt_virtual_queue that you can configure in this purpose.

Important
Since the VQ is not configured, it is internal to URS, no EventQueued or EventDiverted events will be issued.

To peg the VQ, proceed to the following changes:

  1. Configure the _urs_ewt_virtual_queue option with a non-configured virtual queue name.
  2. Download the GMS Callback WaitForTarget strategy available in the URS Strategies for Download section below.
  3. Open Interaction Routing Designer (IRD), select the Routing Design / Strategies tab, then load and compile the GMS Callback WaitForTarget strategy.
  4. Add a function block to the WaitForTarget workflow as following:
    • width=500px
  5. Edit the function block:
    • Under Select expression, enter a new expression name.
    • Under Data > Name, select SelectDN.
    • In the parameters' table, configure:
      • Virtual Queue Name = _EWT_VQ_TARGET
      • Priority = 0
      • SelectionFlag = StatSelectMin
      • Target = LOSTFOREVER@.Q
        Note: In this example, LOST_FOREVER is the name of the non-configured VQ.
        GMS-WFTstrategy-editFunctio.png
    • Save and compile the block. The WaitForTarget block is now available and ready in the Strategies tab.

Of course, if you do not use the block, it does not affect the existing WaitForTarget strategy.

Important
  • These changes can be lost when you upgrade GMS to a newer version. You will have to redo the steps above if you install a new version of the URS WaitForTarget strategy.
  • You can also rename your modified URS strategy and use the _urs_prioritization_strategy callback service option to select your URS strategy name instead of using the WaitForTarget default one.

EWT Usage

This configuration ensures that you can use the lvq URS HTTP request using the connid parameter of your callback as max to get the URS calculation results for the Estimated Waiting Time and the position in the Virtual Queue.

curl -v http://<URS_host>:<URS_http_port>/urs/call/max/lvq?<parameters>

To get detailed information about this query, check the following URL: http://<URS_host>:<URS_http_port>/urs/help/call/lvq


URS Strategies for Download

Important
When you upgrade GMS, you need to import the Callback Template from your GMS installation directory. Start the Service Management UI, upload the <GMS Installation Directory>/service_templates/callback.zip file, and restart ORS.
GMS version ZIP Instructions
8.5.200.09 and higher

GMS_URS_Strategy_85200_v2.64.1.zip

  1. Download and unzip the zip file containing the URS strategies.
  2. Open Interaction Routing Designer (IRD).
  3. Import the strategy WaitForTarget.zcf, and subroutine SetRouteDelay.zcf, using File > Import From File on the respective tabs.
  4. Open the strategy and subroutine.
  5. Compile and save.
8.5.207.05 and higher

GMS_URS_Strategy_85200_v2.66.zip

8.5.208.09 and higher

GMS_URS_Strategy_85208_v2.72.zip

8.5.230.06 and higher

GMS_URS_Strategy_85230_v2.73.zip

  • Starting in 8.5.109.08, the URS Dial Success Rate is set to 85% when new callbacks are created to improve the callback performance.
  • Starting in 2.64.1, the DialOutSuccessRate function of the WaitForTarget strategy is no longer invoked to allow the enhanced VCB algorithm within Universal Routing Server to work properly. If your application requires the legacy VCB algorithm to work, change the strategy to invoke the DialOutSuccessRate function as in earlier versions of the strategy.
Important
You do not need to load the strategy in ORS because ORS will request it when needed. See the Interaction Routing Designer help file for information about using IRD.

Additional Deployment Steps

Prerequisites:

If you are upgrading Callback from GMS 8.5.004.xx and earlier, make sure that you have the following components and versions installed:

  • Interaction Routing Designer (IRD) 8.1.400.26
  • Universal Routing Server (URS) 8.1.400.39

Deployment Changes

  1. Uninstall your existing IRD.
  2. Install IRD 8.1.400.26.
  3. Delete the existing WaitForTarget strategy.
  4. Delete the existing SetRouteDelay subroutine.
  5. Download the strategies for GMS versions 8.5.114.09 and higher.
  6. Import into IRD.
  7. Compile both strategy and subroutine.
  8. Uninstall your existing URS.
  9. Install URS 8.1.400.39.
Important
Do not skip step 7. This step is mandatory to ensure that the strategy and subroutine are properly saved and loaded into IRD.
This page was last edited on May 10, 2023, at 14:10.
Comments or questions about this documentation? Contact us for support!