Difference between revisions of "Advanced Rates"
(35 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
= Description = | = Description = | ||
Advanced Rates are used ONLY for Retail [[Tariffs]]. | |||
<br> | |||
Please see the [[Advanced_Rates#Where_to_find_advanced_rates | video]] below where to find and edit advanced rates. | |||
In order to manage rates for destinations | In order to manage rates for destinations more easily, destinations are grouped, so that one rate applies for a group of destinations, not for one destination separately. (A Group can contain only one destination if necessary.) Destinations groups are for users, not providers, because providers need to have very exact rates for every destination. | ||
destination. | |||
Each group of destinations consists of several destinations described by prefixes. | Each group of destinations consists of several destinations described by prefixes. As an example, let's take Albania MOB. | ||
Here we have three destinations described by prefixes: 35538, 35568 and 35569. Each of these destinations is Albania MOB. Usually users do not care which MOB network they are calling, and for the less popular countries providers usually put one price on all destinations in that direction. It's the same here: We can put one price on all these three destinations grouped as "group Albania MOB". | |||
Each rate for | Each rate for a destination group may have many rate details. This means: a destination group may have one rate, but this rate has many rate details (sub-rates). Each rate detail describes one interval of the call. If the first rate detail is RD1, the second is RD2, and so on, all calls can be expressed as RD1 + RD2 + .. + RDn. The number is finite. The rate detail can be seen as the time intervals for all call durations. The time interval could also be zero length. It is explained further below. | ||
Each rate detail consists of | Each rate detail consists of the following parts: | ||
* FROM – from which second rate detail starts | * FROM – from which second the rate detail starts. | ||
* DURATION – | * DURATION – the length of this rate detail (interval). | ||
* TYPE - minute or event | * TYPE - minute or event. | ||
* ROUND BY – in what intervals round time | * ROUND BY – in what intervals to round the time. | ||
* RATE – price | * RATE – the price per minute in this rate interval. | ||
The type 'minute' describes interval | The type 'minute' describes an interval that lasts some time. This time is billed by rate and rounded accordingly. | ||
Interval starts at FROM and lasts for DURATION seconds. | An Interval starts at FROM and lasts for DURATION seconds. | ||
The type 'event' describes | The type 'event' describes a zero-length interval, which we call EVENT. This might, for example, be a connection | ||
fee. If type is 'event' rate detail has no DURATION ( | fee. If the type is 'event', the rate detail has no DURATION (it's always zero) or ROUND BY fields. | ||
<br> | |||
<br> | |||
NOTE: The same rules apply to [[Custom Rates]] for users. | |||
<br><br> | |||
= Examples = | = Examples = | ||
Line 28: | Line 37: | ||
== Example #1 == | == Example #1 == | ||
The call should have 0.2 connection fee (currency | The call should have 0.2 connection fee (regardless of the currency) and all other time must be billed by 6-second intervals with a rate of 0.1 per minute. | ||
Such a rate should be described like this: | |||
Such rate should be described like this: | |||
{| border="1" cellpadding="5" cellspacing="0" | {| border="1" cellpadding="5" cellspacing="0" | ||
Line 40: | Line 48: | ||
|- | |- | ||
|} | |} | ||
== Example #2 == | == Example #2 == | ||
The first 30 seconds of the call cost 0.1, the next time till 5 minutes is billed at rate 0.05 rounded by 30 seconds and remaining time is billed by rate 0.02 and rounded by 1 second. | The first 30 seconds of the call cost 0.1, the next time till 5 minutes is billed at rate 0.05 rounded by 30 seconds, and the remaining time is billed by rate 0.02 and rounded by 1 second. | ||
{| border="1" cellpadding="5" cellspacing="0" | {| border="1" cellpadding="5" cellspacing="0" | ||
Line 58: | Line 65: | ||
The same example can also be described like this: | |||
{| border="1" cellpadding="5" cellspacing="0" | {| border="1" cellpadding="5" cellspacing="0" | ||
Line 72: | Line 79: | ||
|- | |- | ||
|} | |} | ||
== Example #3 == | == Example #3 == | ||
The rate for call is 0.01 per minute rounded by 1s. The | The rate for the call is 0.01 per minute rounded by 1s. The maximum price for call is 0.1. | ||
Line 82: | Line 88: | ||
| '''FROM''' || '''DURATION''' || '''TYPE''' || '''ROUND BY''' || '''RATE''' | | '''FROM''' || '''DURATION''' || '''TYPE''' || '''ROUND BY''' || '''RATE''' | ||
|- | |- | ||
| 1 || 600 || minute || 1 || 0. | | 1 || 600 || minute || 1 || 0.01 | ||
|- | |- | ||
| 601 || ∞ || minute || 1 || 0 | | 601 || ∞ || minute || 1 || 0 | ||
|- | |- | ||
|} | |} | ||
== Example #4 == | == Example #4 == | ||
The rate for call is 0.01 per minute rounded by 1s. | The rate for the call is 0.01 per minute rounded by 1s. The first 15 seconds of the call are not billed. | ||
Line 103: | Line 107: | ||
|- | |- | ||
|} | |} | ||
== Example #5 == | |||
[[image:adv_rates_ex5.png]] | |||
When call duration is between 10 and 30 seconds, following formula is used to calculate price: | |||
Period 1: 3/60*2=0.1 | |||
Period 2: 2/60*10=0.333 | |||
Period 3: 1/60*30=0.5 | |||
Total call price: 0.933 | |||
== Example #6 == | |||
Charge call only longer then 8 seconds, with rate 0.1, increment 1s : | |||
{| border="1" cellpadding="5" cellspacing="0" | |||
| '''FROM''' || '''DURATION''' || '''TYPE''' || '''ROUND BY''' || '''RATE''' | |||
|- | |||
| 1 || 8|| minute || 1 || 0 | |||
|- | |||
| 9|| ∞ || minute || 1 || 0.1 | |||
|- | |||
|} | |||
NOTE: Same can be done with [[Grace time]] | |||
<br><br> | <br><br> | ||
= Import from CSV file = | |||
'''It is not possible to import (upload) Advanced rates from the CSV file directly.''' | |||
But if you need to upload Rates for which you are planning to apply Advanced Rates: | |||
# Create Wholesale Tariff. | |||
# [[Rate import from CSV | Import Wholesale rates]] to the newly created Wholesale Tariff. | |||
# [[Tariff Transformation | Transform]] Wholesale Tariff to Retail Tariff. | |||
# Delete Wholesale Tariff. | |||
# Apply Advanced Rates for Retail Rates | |||
<br><br> | |||
== Where to find advanced rates == | |||
http://wiki.kolmisoft.com/videos/mor_advanced_rates.gif | |||
<br><br> | |||
==Additional Notes== | |||
[[Configuration_from_GUI#Functionality_2|Allow users]] to see advanced rates | |||
= See also = | |||
* [[MOR_Manual#Tariffs | Tariffs]] | |||
* [[Destinations Groups]] |
Latest revision as of 09:49, 29 January 2021
Description
Advanced Rates are used ONLY for Retail Tariffs.
Please see the video below where to find and edit advanced rates.
In order to manage rates for destinations more easily, destinations are grouped, so that one rate applies for a group of destinations, not for one destination separately. (A Group can contain only one destination if necessary.) Destinations groups are for users, not providers, because providers need to have very exact rates for every destination.
Each group of destinations consists of several destinations described by prefixes. As an example, let's take Albania MOB. Here we have three destinations described by prefixes: 35538, 35568 and 35569. Each of these destinations is Albania MOB. Usually users do not care which MOB network they are calling, and for the less popular countries providers usually put one price on all destinations in that direction. It's the same here: We can put one price on all these three destinations grouped as "group Albania MOB".
Each rate for a destination group may have many rate details. This means: a destination group may have one rate, but this rate has many rate details (sub-rates). Each rate detail describes one interval of the call. If the first rate detail is RD1, the second is RD2, and so on, all calls can be expressed as RD1 + RD2 + .. + RDn. The number is finite. The rate detail can be seen as the time intervals for all call durations. The time interval could also be zero length. It is explained further below.
Each rate detail consists of the following parts:
- FROM – from which second the rate detail starts.
- DURATION – the length of this rate detail (interval).
- TYPE - minute or event.
- ROUND BY – in what intervals to round the time.
- RATE – the price per minute in this rate interval.
The type 'minute' describes an interval that lasts some time. This time is billed by rate and rounded accordingly. An Interval starts at FROM and lasts for DURATION seconds. The type 'event' describes a zero-length interval, which we call EVENT. This might, for example, be a connection fee. If the type is 'event', the rate detail has no DURATION (it's always zero) or ROUND BY fields.
NOTE: The same rules apply to Custom Rates for users.
Examples
Example #1
The call should have 0.2 connection fee (regardless of the currency) and all other time must be billed by 6-second intervals with a rate of 0.1 per minute. Such a rate should be described like this:
FROM | DURATION | TYPE | ROUND BY | RATE |
1 | 0 | event | 0.2 | |
1 | ∞ | minute | 6 | 0.1 |
Example #2
The first 30 seconds of the call cost 0.1, the next time till 5 minutes is billed at rate 0.05 rounded by 30 seconds, and the remaining time is billed by rate 0.02 and rounded by 1 second.
FROM | DURATION | TYPE | ROUND BY | RATE |
1 | 30 | minute | 30 | 0.2 |
31 | 300 | minute | 30 | 0.05 |
301 | ∞ | minute | 1 | 0.01 |
The same example can also be described like this:
FROM | DURATION | TYPE | ROUND BY | RATE |
1 | 0 | event | 0.1 | |
1 | 30 | minute | 30 | 0 |
31 | 300 | minute | 30 | 0.05 |
301 | ∞ | minute | 1 | 0.01 |
Example #3
The rate for the call is 0.01 per minute rounded by 1s. The maximum price for call is 0.1.
FROM | DURATION | TYPE | ROUND BY | RATE |
1 | 600 | minute | 1 | 0.01 |
601 | ∞ | minute | 1 | 0 |
Example #4
The rate for the call is 0.01 per minute rounded by 1s. The first 15 seconds of the call are not billed.
FROM | DURATION | TYPE | ROUND BY | RATE |
1 | 15 | minute | 1 | 0 |
16 | ∞ | minute | 1 | 0.01 |
Example #5
When call duration is between 10 and 30 seconds, following formula is used to calculate price:
Period 1: 3/60*2=0.1
Period 2: 2/60*10=0.333
Period 3: 1/60*30=0.5
Total call price: 0.933
Example #6
Charge call only longer then 8 seconds, with rate 0.1, increment 1s :
FROM | DURATION | TYPE | ROUND BY | RATE |
1 | 8 | minute | 1 | 0 |
9 | ∞ | minute | 1 | 0.1 |
NOTE: Same can be done with Grace time
Import from CSV file
It is not possible to import (upload) Advanced rates from the CSV file directly.
But if you need to upload Rates for which you are planning to apply Advanced Rates:
- Create Wholesale Tariff.
- Import Wholesale rates to the newly created Wholesale Tariff.
- Transform Wholesale Tariff to Retail Tariff.
- Delete Wholesale Tariff.
- Apply Advanced Rates for Retail Rates
Where to find advanced rates
Additional Notes
Allow users to see advanced rates