|
Note: You cannot use this component after an Account Event Refill component in the Refill Logic or after an Event-Based Trigger component in the Allowance Logic. |
The Allowance Event Sender Operator allows to send an allowance event to allowances that:
Belong to the same provider contract or to its parent contract
Are active at the date of the allowance event
Listen for the allowance events of the related Allowance Event Class (for more information on the Allowance Event Class, refer to the primary help of Core Tool)
Can be filtered using selection criteria based on the values of properties
|
Notes:
|
You can use the Allowance Event Sender Operator for sending events to allowances from the price plan, the refill logic, or the allowance logic.
An operator sets up the Allowance Event Sender Operator in a price plan to consume the allowances related to the duration of a videoconference. The Allowance Event Sender Operator sends an allowance event from the allowance event class "ALLOW_VIDEO_MINUTES” whose property is the duration of the videoconference in minutes.
The operator models the Allowance Logic through the “ALLOW_VIDEO_MINUTES” Allowance Event Class (the type of the Event Allowance):
To authorize part of the duration based on the persistent counters of the allowances
To update the allowance event based on the authorized part
An allowance is created through a refill plan. The allowance is valid six months and is part of a group of allowances named 'SAMPLE_GROUP'. The allowances of the group have the same parameter value and extend their validity period each time a new allowance is added to the group.
When an allowance is created for the group, the new allowance must inform the allowances of its group with an event of the type 'NEW_ALLOWANCE_CREATED' including the following fields:
The allowance group id
The creation date
Its validity period start date
Its validity period end date
The other allowances of the group can then perform actions when receiving the events.
Name: Type the name of the component (mandatory).
Description: Allows you to type the description of the component (optional).
Allowance Event Class: Provides the list of allowance event classes. If necessary, click
to open the selected allowance event class. Select an allowance event class, set up the values of the properties of the allowance event class, and then define the new output property if necessary:
Property Name: Displays the property name
Type: Displays the property type
Value: Provides the list of available properties or allows you to type a value
Output Property Name: Type the name of the new property
Stop sending when the monitored property is lower than or equal to 0: Select this option if you want to trigger the sending of the event depending on the value of a monitored property.
Monitored Property: Provides the list of numerical properties of the selected allowance event class. Select a numerical property to monitor.
Revert allowance changes if condition is not fulfilled: Click this option to apply the allowance modifications only when the condition is fulfilled.
|
Note: The definition of output properties and the control of the sending of the event require that the allowance logic modifies the event. |
This table defines the conditions for selecting the allowances that will receive the allowance event.
: Adds a row to the table
: Deletes a row from the table
Property Name: Select the name of the allowance property, which can be:
A parameter of the Allowance Interface
A counter of the Allowance Interface
A default allowance property such as:
The unique identifier of the allowance
The allowance activation date (Validity Start Date)
The allowance expiration date (Validity End Date)
Type: Displays the type of the allowance property (Date, Number, or String)
Operator: Provides the list of comparison operators. Select an operator:
Date (Equals, Before, After, Before or Equals, After or Equals)
Number (Equals, Greater Than, Lower Than, Greater Than or Equals)
String (Equals, Starts With, Ends With, Contains)
Comparison Value: Type a value or select a rating context property (a parameter or a counter).
|
Notes:
|
On the Sorting tab of the Allowance Event Sender Operator component, you define the two-level rules for sorting the allowances:
The first level consists in ordering the criteria depending on their position in the table
The second level consists in defining the ascending or descending order of each criterion
The criteria are the following:
The parameters defined in the Allowance Interface (for more information on the Allowance Interface, refer to the primary help of Core Tool)
The counters defined in the Allowance Interface
The Allowance default properties:
The unique identifier of the allowance
The activation date of the allowance (Validity Period Start)
The expiration date of the allowance (Validity Period End)
|
Notes:
|
On the Sorting tab of the Allowance Event Sender Operator component, the table represents a set of rules for sorting allowances. Each row of the table represents a rule, and the first column (#) of the table represents the priority order of the rules.
If we consider a set of allowances a1, a2,…, an, and the following rules for sorting the allowances:
|
# |
Name |
Type |
Order |
|
1 |
Property 1 |
number |
Descending |
|
2 |
Property 2 |
date |
Descending |
|
3 |
Property 3 |
number |
Descending |
The set of allowances is sorted according to the order of the following properties:
Property 1: From the greatest number to the smallest number.
Property 2: From the earliest date to the oldest date.
Property 3: From the greatest number to the smallest number.
For example, if we sort the following set of allowances according to the previous rules:
|
|
Property 1 |
Property 2 |
Property 3 |
|
Allowance 1 |
4 |
26\09\2013 |
2 |
|
Allowance 2 |
4 |
26\09\2013 |
28 |
|
Allowance 3 |
4 |
26\09\2013 |
4 |
The sort result is the following:
|
|
Property 1 |
Property 2 |
Property 3 |
|
Allowance 2 |
4 |
26\09\2013 |
28 |
|
Allowance 3 |
4 |
26\09\2013 |
4 |
|
Allowance 1 |
4 |
26\09\2013 |
2 |
The system first sorts the allowances according to this order: Property 1, Property 2, and Property 3 (position in the table). But if the values of the properties (Property 1 and Property 2) are equal like in this example, the system sorts the allowances according to the different values of Property 3 (in the descending order of the criterion).
If we keep the same rules as in the previous example and if the set of allowances is the following:
|
|
Property 1 |
Property 2 |
Property 3 |
|
Allowance 1 |
4 |
26\09\2013 |
9 |
|
Allowance 2 |
8 |
26\09\2013 |
6 |
|
Allowance 3 |
12 |
26\09\2013 |
1 |
The sort result is the following:
|
|
Property 1 |
Property 2 |
Property 3 |
|
Allowance 3 |
12 |
26\09\2013 |
1 |
|
Allowance 2 |
8 |
26\09\2013 |
6 |
|
Allowance 1 |
4 |
26\09\2013 |
9 |
Because the values of Property 1 are not equal, the system first sorts the allowances according to Property 1 (position in the table) and according to the different values of Property 1 (in the descending order of the criterion). And the system ignores Property 2 and Property 3.
: Adds a row to the table.
: Deletes a row from the table.
: Moves a row up in the table.
: Moves a row down in the table.
#: Displays the sort order of allowances.
Name: Provides the list of properties, parameters, and counters to sort the allowances. Select a property, a parameter, or a counter.
Type: Displays the property, the parameter, or the counter type.
Order: Provides the list of sort orders. Select a sort order: Ascending or Descending.
Extend the scope to the parent contract allowances: If you select this option, the allowance event is sent to the allowances of the current provider contract and the allowances of the parent provider contract; otherwise, the allowance event is only sent to the allowances of the current provider contract.