Overview | Package | Class | Tree | Deprecated | Index | Help
| ContactCenters V. 0.9.9.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | ENUM CONSTANTS | FIELD | METHOD | DETAIL: ENUM CONSTANTS | FIELD | METHOD

## umontreal.iro.lecuyer.contactcenters.app
Enum RouterPolicyType

    java.lang.Object
      java.lang.Enum<RouterPolicyType>
          umontreal.iro.lecuyer.contactcenters.app.RouterPolicyType

All Implemented Interfaces:
  Serializable, Comparable<RouterPolicyType>

    public enum RouterPolicyType

extends Enum<RouterPolicyType>

Represents the type of router's policies supported by blend/multi-skill call center simulations. This policy determines how the router assigns an agent to incoming calls and how free agents look for queued calls.

Enum Constant Summary
`AGENTSPREF` Agents' preference-based routing policy.
`AGENTSPREFWITHDELAYS` Agents' preference-based routing policy with delays.
`EXPDELAY` Routing policy using expected delay to select agent groups.
`LOCALSPEC` Local-specialist routing policy.
`LONGESTQUEUEFIRST` Longest queue first routing policy.
`LONGESTWEIGHTEDWAITINGTIME` Longest weighted waiting time router policy.
`OVERFLOWANDPRIORITY` Routing policy based on overflow and priority.
`QUEUEATLASTGROUP` Queue at last group routing policy.
`QUEUEPRIORITY` Queue priority routing policy.
`QUEUERATIOOVERFLOW` Overflow routing policy using queue ratio.
`SINGLEFIFOQUEUE` Single FIFO queue router policy.

Method Summary
`String` | `toString()`
`static RouterPolicyType` | `valueOf(String name)` Returns the enum constant of this type with the specified name.
`static RouterPolicyType[]` | `values()` Returns an array containing the constants of this enum type, in the order they are declared.

Methods inherited from class java.lang.Enum
`clone, compareTo, equals, finalize, getDeclaringClass, hashCode, name, ordinal, valueOf`

Methods inherited from class java.lang.Object
`getClass, notify, notifyAll, wait, wait, wait`

Enum Constant Detail

### QUEUEPRIORITY

    public static final RouterPolicyType QUEUEPRIORITY

  Queue priority routing policy. See `QueuePriorityRouter` for more information.
  This routing policy requires a type-to-group and a group-to-type maps.

### QUEUEATLASTGROUP

    public static final RouterPolicyType QUEUEATLASTGROUP

  Queue at last group routing policy. See `QueueAtLastGroupRouter` for more information.
  This routing policy requires a type-to-group map only.

### LONGESTQUEUEFIRST

    public static final RouterPolicyType LONGESTQUEUEFIRST

  Longest queue first routing policy. See `LongestQueueFirstRouter` for more information.
  This routing policy requires a type-to-group and a group-to-type maps. Since the group-to-type map is used as a tie breaker only, it is not as important as with the queue priority routing policy, but it must be specified as well.

### SINGLEFIFOQUEUE

    public static final RouterPolicyType SINGLEFIFOQUEUE

  Single FIFO queue router policy. See `SingleFIFOQueueRouter` for more information.
  This routing policy requires a type-to-group and a group-to-type maps. Since the group-to-type map is used as a tie breaker only, it is not as important as with the queue priority routing policy, but it must be specified as well.

### LONGESTWEIGHTEDWAITINGTIME

    public static final RouterPolicyType LONGESTWEIGHTEDWAITINGTIME

  Longest weighted waiting time router policy. See `LongestWeightedWaitingTimeRouter` for more information.
  This routing policy requires a type-to-group, a group-to-type maps, and an array of weights. Since the group-to-type map is used as a tie breaker only, it is not as important as with the queue priority routing policy, but it must be specified as well.

### AGENTSPREF

    public static final RouterPolicyType AGENTSPREF

  Agents' preference-based routing policy. See `AgentsPrefRouter` for more information.

### AGENTSPREFWITHDELAYS

    public static final RouterPolicyType AGENTSPREFWITHDELAYS

  Agents' preference-based routing policy with delays. See `AgentsPrefRouterWithDelays` for more information.

### LOCALSPEC

    public static final RouterPolicyType LOCALSPEC

  Local-specialist routing policy. See `LocalSpecRouter` for more information.
  To use this router, one must specify contact type and agent group names containing a region name. If available, this router uses the matrices of ranks to select agents and waiting queues.

### QUEUERATIOOVERFLOW

    public static final RouterPolicyType QUEUERATIOOVERFLOW

  Overflow routing policy using queue ratio. See `QueueRatioOverflowRouter` for more information.
  This routing policy requires a contacts-to-agents matrix of ranks.

### EXPDELAY

    public static final RouterPolicyType EXPDELAY

  Routing policy using expected delay to select agent groups. See `ExpDelayRouter` for more information.
  This routing policy requires a contacts-to-agents weights matrix.

### OVERFLOWANDPRIORITY

    public static final RouterPolicyType OVERFLOWANDPRIORITY

  Routing policy based on overflow and priority. See `OverflowAndPriorityRouter` for more information.

  The fk, j and gk, j functions are defined using sequences of triplets (Ck, j, l, Ak, j, l, Qk, j, l), where Ck, j, l represents a condition, and Ak, j, l and Qk, j, l are vectors. First, the condition Ck, j, 0 is checked. If it is true, Ak, j, 0 is used as the vector of ranks for agent groups, and Qk, j, 0 is used to set up priorities for queues. Otherwise, the condition Ck, j, 1 is checked, and the corresponding vectors Ak, j, 1, and Qk, j, 1 are used if the condition is true. This check continues for other conditions Ck, j, 2, Ck, j, 3,…, until a true condition is found, or the list of cases is exhausted. If a condition Ck, j, l applies, and no vectors of ranks are associated with this condition, the last vectors of ranks are preserved, i.e., the jth routing stage has no effect. If the list of cases is exhausted without finding an applicable condition, a default set of vectors of ranks is used. If no such default vectors are given, the routing stage j has no effect.

  A vector of ranks can also be set relatively to the preceding vector. When a relative vector is used, the ranks are summed with the previous ranks, which allows to update ranks rather than overriding them. This can be useful to accumulate the effect of several conditions at different stages of routing, e.g., increase priority at queue 1 depending on its size, decrease priority at queue 2 depending on the number of free agents, etc.

  This policy requires a script for each call type in the parameter file for the call center. Such a script is set up by a `callTypeRouting` element. Such an element contains one ore more `stage` children describing the stages of routing. A `stage` element has an attribute `waitingTime` giving the waiting time wk, j as well as a sequence of `case` elements for the cases, and a `default` element for the default vectors of ranks. See the complex type `CallTypeRoutingParams`, in the HTML documentation of the XML Schema for the complete syntax of routing parameters, including how to encode conditions.

Method Detail

### values

    public static RouterPolicyType[] values()

  Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:

      for (RouterPolicyType c : RouterPolicyType.values())
          System.out.println(c);

  Returns:
    an array containing the constants of this enum type, in the order they are declared

### valueOf

    public static RouterPolicyType valueOf(String name)

  Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (Extraneous whitespace characters are not permitted.)

  Parameters:
    `name` - the name of the enum constant to be returned.
  Returns:
    the enum constant with the specified name
  Throws:
    `IllegalArgumentException` - if this enum type has no constant with the specified name
    `NullPointerException` - if the argument is null

### toString

    public String toString()

  Overrides:
    `toString` in class `Enum<RouterPolicyType>`

Overview | Package | Class | Tree | Deprecated | Index | Help
| ContactCenters V. 0.9.9.
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | ENUM CONSTANTS | FIELD | METHOD | DETAIL: ENUM CONSTANTS | FIELD | METHOD

To submit a bug or ask questions, send an e-mail to Richard Simard.