Interface ServiceLevelRatioCalculator
- All Superinterfaces:
com.novomind.ecom.common.api.attribute.Described
,com.novomind.ecom.common.api.attribute.Named
public interface ServiceLevelRatioCalculator
extends com.novomind.ecom.common.api.attribute.Named, com.novomind.ecom.common.api.attribute.Described
A
ServiceLevelRatioCalculator
is an interface that can be used to
override the default algorithm that calculates the individual service
level ratio for an Issue
.
The individual service level ratio is used to determine the order
of the issues in the backlog to be routed to an agent.
Usually the ratio is the quotient of waiting time divided by the
service level target of the Category
of the Issue
.- Since:
- 12.14
-
Method Summary
Modifier and TypeMethodDescriptiongetFunction
(Call call) This more specific method is called to obtain an optionalToDoubleFunction
only to override the calculation of an individual service level ratio for aCall
.getFunction
(Chat chat) This more specific method is called to obtain an optionalToDoubleFunction
only to override the calculation of an individual service level ratio for aChat
.getFunction
(Issue issue) The method allows to override the default algorithm to calculate the service level ratio for anIssue
by returning an optionalToDoubleFunction
that calculates the individual service level ratio for eachIssue
.getFunction
(Ticket ticket) This more specific method is called to obtain an optionalToDoubleFunction
only to override the calculation of an individual service level ratio for aTicket
.Methods inherited from interface com.novomind.ecom.common.api.attribute.Described
getDescription
Methods inherited from interface com.novomind.ecom.common.api.attribute.Named
getName
-
Method Details
-
getFunction
The method allows to override the default algorithm to calculate the service level ratio for anIssue
by returning an optionalToDoubleFunction
that calculates the individual service level ratio for eachIssue
. The method will be called once perIssue
in the backlog and also on major configuration changes having impact on the calculation like change of category or tenant. A service level ratio less than 1.0 means that theIssue
still did not exceed the service level target defined by the category of the issue. A service level ratio of 1.0 and higher means that theIssue
has exceeded the service level target. PLEASE ENSURE NOT TO PERFORM ANY HIGH COST METHOD CALLS, HEAP ALLOCATIONS OR OTHER PERFORMANCE IMPACTING OPERATIONS IN THE IMPLEMENTATION OF THE RETURNED FUNCTION !! The optionally returned function will be called within a loop for eachIssue
in the backlog repeatedly in very short intervals. The implementation of the returned method therefore must be high performant and low heap memory consuming to avoid massive garbage collection. Please note that this method is the default method to be called for all issues. If you would like to provide a function only for aTicket
or aCall
or aChat
, please implement one of the more specific methods.- Parameters:
issue
- theIssue
to return an optional calculator function for- Returns:
- an optional
ToDoubleFunction
to calculate the service level ratio for anIssue
or an empty optional if the default calculation should be used for thisIssue
- Since:
- 12.14
-
getFunction
This more specific method is called to obtain an optionalToDoubleFunction
only to override the calculation of an individual service level ratio for aTicket
. The method will be called once perTicket
in the backlog and also on major configuration changes having impact on the calculation like change of category or tenant. PLEASE ENSURE NOT TO PERFORM ANY HIGH COST METHOD CALLS, HEAP ALLOCATIONS OR OTHER PERFORMANCE IMPACTING OPERATIONS IN THE IMPLEMENTATION OF THE RETURNED FUNCTION !! The optionally returned function will be called within a loop for eachTicket
in the backlog repeatedly in very short intervals. The implementation of the returned method therefore must be high performant and low heap memory consuming to avoid massive garbage collection.- Parameters:
ticket
- theTicket
to return an optional calculator function for- Returns:
- an optional
ToDoubleFunction
to calculate the service level ratio for aTicket
or an empty optional if the default calculation should be used for thisTicket
- Since:
- 12.14
-
getFunction
This more specific method is called to obtain an optionalToDoubleFunction
only to override the calculation of an individual service level ratio for aChat
. The method will be called once perChat
in the backlog and also on major configuration changes having impact on the calculation like change of category or tenant. PLEASE ENSURE NOT TO PERFORM ANY HIGH COST METHOD CALLS, HEAP ALLOCATIONS OR OTHER PERFORMANCE IMPACTING OPERATIONS IN THE IMPLEMENTATION OF THE RETURNED FUNCTION !! The optionally returned function will be called within a loop for eachChat
in the backlog repeatedly in very short intervals. The implementation of the returned method therefore must be high performant and low heap memory consuming to avoid massive garbage collection.- Parameters:
chat
- theChat
to return an optional calculator function for- Returns:
- an optional
ToDoubleFunction
to calculate the service level ratio for aChat
or an empty optional if the default calculation should be used for thisChat
- Since:
- 12.14
-
getFunction
This more specific method is called to obtain an optionalToDoubleFunction
only to override the calculation of an individual service level ratio for aCall
. The method will be called once perCall
in the backlog and also on major configuration changes having impact on the calculation like change of category or tenant. PLEASE ENSURE NOT TO PERFORM ANY HIGH COST METHOD CALLS, HEAP ALLOCATIONS OR OTHER PERFORMANCE IMPACTING OPERATIONS IN THE IMPLEMENTATION OF THE RETURNED FUNCTION !! The optionally returned function will be called within a loop for eachCall
in the backlog repeatedly in very short intervals. The implementation of the returned method therefore must be high performant and low heap memory consuming to avoid massive garbage collection.- Parameters:
call
- theCall
to return an optional calculator function for- Returns:
- an optional
ToDoubleFunction
to calculate the service level ratio for aCall
or an empty optional if the default calculation should be used for thisCall
- Since:
- 12.14
-