URS Strategy Execution Flashcards
What is SData
Functions that URS uses to wait for from Stat Server response or DBServer. request_timeout allows the maximum wait time.
What are Big VQ
A queue created by the URS where calls to be evaluated until a available agent can take the call. Each queue has a system generated GUID and based on the target selection object.
What are connectors
They are small vq connected to the Big VQ with their own properties regarding the calls associated with them. The calls wait for a target that is a member of the Big VQ. When target is available the Big VQ will pick the one with the highest priority and earlier timestamp(millisecond). The higher the id means the later the small vq was connected. If two small vq have the same priority and time then the one created first will be picked.
What is a statobject
Represent the agent or agent group
Low level format(DN)
Indicated the target DN and the switch it belongs to. Format: DN@Switch. URS does not normally use this format in the strategy with exception such as being used on Force or TRoute functions to force the call to a DN regardless of state.
PBX->T-Server->URS
High Level Formatting
Specified in the target selection option, TargetName@StatServerName.ObjectType. URS and Stat Server communicate about status of object through this format.
URS-> StatServer
What is StatAgentLoading in general
There is no statistic with this name so URS calculates it itself and use to target an agent within the Agent Group by. It is hard-coded() and value is from the CurrentState statistics that the URS calculates which isn’t updated often so there is performance benefits. Normally URS object statistics such as ‘StatTimeInReadyState’ for example applies directly to the meta-object(Groups) and not their underlying level and will use StatAgentLoading to target individual agents after select criteria selects the group.
State Value
When SS receives the value from State Server then the URS display in the log will end with a (S) for the agent current state with the cost(First) and busy DN(Second). Third number is the time that the agent has been in its current state. Fourth number is a random one assigned by the URS that allows it to choose from multiple targets with the same statistical value. URS picks the the agent with the least busy dn (StateAgentLoading) as it is hard coded.
target_order
Option in URS that assign a random value as default.
what does URS do when selection criteria is empty?
If statistic is empty then the URS can either pick the target with the lowest or highest randomly generated number.
What does the Pulse message mean?
URS Message shows a periodic check for target availability when waiting for targe. HERE IS WAIT will be indicated in the logs for the target that the URS will attempt to route to. URS check the list of calls waiting for the target after updates from the Stat Server is received. Each PULSE message has a timestamp of 2 second more than the last and can determine if any delays.
2(2)=3+0-1
3 means target call previously handle, +0 said 0 calls have been added to handle and -1 indicates that one calls has finished being handled.
Treatment types while waiting for target
Mandatory(applied unconditionally) and Busy(waiting for ready target). Applied to call waiting on a route point or being moved to a treatment device.
What are Non Routeable Calls
Calls waiting on a target may not always be available for routing.
state=0 delivery=0 treatment=0 reserving=0 ivr=0
delivery 0 means the call can be routed while any other value indicates it cannot
held(if 1) means call cannot be moved because of EventHeld
reserving(if 1) no answered agent reservation request ob behfl of a call
ivr(if 1) means the current target is IVR
What is Agent Reservation?
Required when multiple URS working with the same target. URS option to control it is agent_reservation.
What is the Location Attribute?
emoteIf Destination DN is at another site then the attribute provides the switch name of the r site
What is the Extension Attribute?
Provides information about the switch in key pairs.
What is a meta-object
Group of agent and place with that the URS routing object normally looks at instead of expanding to the underlying level
How StatAgentLoading works to select agent?
URS always uses this to select agent within a group and compared to other selection criteria it is hard coded to target agent with the least amount of busy DN and select them randomly if they have the same amount. If the agent has no busy DN then the URS selects the one with the longest ready time. Same even when a selection criteria isn’t present.
Message Ordering in URS
Assign messages, attach data, and database lookup can appear anywhere in the log depending on how the strategy is set. Execution of Strategy after a route request from T-server is always followed by system generated ASSIGN variables.
What does AttributeOtherDN from RequestRouteCall mean in the URS logs
It usually shows the target DN the call is to be routed to and matches the DN key pair in the Attribute Extension for that specific event.
What happen when strategy for the first time arrive at target agent group?
It selects the first available target with the ready state information to route call to.
How StatAgentLoading works for choosing target
It select the targets with the least busy DN, and will pick one randomly if the DN have the same amount. Secondly, if multiple agents have 0 busy DN than it will select the one with the longest ready time.
Keyword that indicate the URS has selected the target
SELECTED is they keyword that tells the target agent the URS picked to route call to
What does EventRouteRequest do when URS receives it?
The event from T-server tells the URS to execute the strategy and provide routing instruction.
What if there is no strategy for the URS?
Uploaded_cdn defines the URS action for it. Default value will send it to the default destination. If no number defined then the switch will determine what to do with it.
Where are system variable normally seen?
System variable are always seen being assigned in the beginning of the strategy. Assign variable message is seen when the strategy executes an assign.
What is Database messaging?
The URS logs will display that strategy encounter a DB object ‘HERE IS XDATA’ and formulates a select query or store procedure as a request for the DB Server to send to the DB. DB messaging can be found anywhere in the logs.
How does Attaching Data appears in the URS log?
The URS will send RequestUpdateUserData attached with the AttributeUserData with the key pair that contain the results received from querying the DB. max_loading option limit how many request sent to DB server. The function(callData/UpdateCallData) that use attach data also has no limit when it comes to sized attached.
How do does AttributeUserData appear in URS log?
AttributeUserData is part of the attribute belonging to RequestUpdateUserData. The first value in bracket indicate the size of the attached data and the third is number of key pairs in the list. The key pairs will contain the data below the attribute.
How does the URS get target current state
It sends a OpenStat request to T-server follow by a Peekstat() to find the target current statistics. It will use the best statistics to select the best target.
Target Selection for URS in the logs
All possible candidate target are listed in the URS logs and the first of several messages that specific the target contains display the HERE IS TARGET words in High Level Format. The URS will get the state statistics which is not explicitly required in the strategy to use it and the URS will find the state information for each component after it gets the content of the group first.
If there is more than one target being used than what does URS do?
It uses statistical criteria to select the best target that is available in case more than one is available.
How does URS indicate candidate in logs?
HERE IS TARGET indicate the candidate target to route call to
Target Selection Communication
PBX T-Server URS communicate about call location using low level format and they are not aware of the statobject. URS and Stat Server communicate in high level format about target status. Remember that the statserver tracks agent by linking the the place with the agent.
UseAgentStatistics
Function that override Over ride StatAgentLoading
Find User define Variable in logs
Variable is generally local
on_route_erro(Handle EventError)
defines what to when attempt to route call results in error . Default - Route to default destination, Ignore - Ignore the error, Delete - delete call from URS Memroy, rerourt - repeat the request, try_other - find another target
OtherDN in URS EventRouteRequest logs
Indicates the caller ani
ThisDN in URS EventRouteRequest logs
Indicate the route point
unloaded_cdn
Define URS action when there is no strategy such as route to number defined in CME or if empty let the switch handle it. Happens when default value is defaultignore.
force function
Instructs URS to perform force call routing regardless of target state.
RequestRouteCall RTR key value
123 indicated it has been routed by a URS and if no value appears than its by the switch probably
Statistics Status URS Logs
Example STATOBJECT(01b42c00 1 0) 01B42C00 is the unique number for the object and the first value indicates the id of the request while the second number is the statistic status. URS determine the target availability.
0 - No request has been made
1- The URS is waiting for confirmation from Stat Server after request
2 - The statistic is opened and the Stat Server has provided the value
3 - Statistic cannot be obtained.
Timeout parameters
URS wait for target based on the timeout. HERE IS WAIT that the URS will display timeout.