Difference between revisions of "Advanced Rates"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(36 intermediate revisions by 6 users not shown)
Line 1: Line 1:
In order to manage rates for destinations easier, destinations are grouped. And one rate applies for a group of destinations not for one destination separately. (Group can contain one destination also if it is necessary.) Destinations groups are used by users, not by providers because providers need to have very exact rates for every
= Description =
destination.


Each group of destinations consists of several destinations described by prefixes. Let‟s take for example Albania MOB:
Advanced Rates are used ONLY for Retail [[Tariffs]].
here we have 3 destinations described by prefixes: 35538, 35568 and 35569. Each of these destinations is Albania MOB. Usually users do not care to which MOB network they are calling and usually for not popular countries providers put one price for all destinations to that direction. Same here. We can put one price for all these 3 destinations grouped to group Albania MOB.
<br>
Please see the [[Advanced_Rates#Where_to_find_advanced_rates | video]] below where to find and edit advanced rates.


Each rate for some destination group can have many rate details. Which means: destination group has one rate, but this rate has many rate details (sub-rates). Each rate detail describes one interval of the call. If first rate detail is RD1, second: RD2, and so on, so all call is RD1 + RD2 + .. + RDn. Number is finite. Rate detail can be seen as time
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.
interval for all duration of the call. This interval could be zero length also. It is explained further.


Each rate detail consists of such parts:
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".


* FROM – from which second rate detail starts
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.
* DURATION – what is the length of this rate detail (interval)
* TYPE - minute or event
* ROUND BY – in what intervals round time
* RATE – price for minute in this rate interval


The type 'minute' describes interval which last some time. This time is billed by rate and rounded accordingly.
Each rate detail consists of the following parts:
Interval starts at FROM and lasts for DURATION seconds.
The type 'event' describes some kind of zero-length interval which we call EVENT. As example it could be connection
fee. If type is 'event' rate detail has no DURATION (it‟s always zero) and ROUND BY fields.


Examples:
* 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.


1. The call should have 0.2 connection fee (currency does not matter here) and all other time must be billed by 6 second intervals with rate 0.1 per minute.
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.


Such rate should be described like this:
<br>
<br>
 
NOTE: The same rules apply to [[Custom Rates]] for users.
 
 
<br><br>
 
= 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:


{| border="1" cellpadding="5" cellspacing="0"  
{| border="1" cellpadding="5" cellspacing="0"  
Line 36: Line 49:
|}
|}


== 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.
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.


{| border="1" cellpadding="5" cellspacing="0"  
{| border="1" cellpadding="5" cellspacing="0"  
Line 52: Line 65:




Same example can be described like this also:
The same example can also be described like this:


{| border="1" cellpadding="5" cellspacing="0"  
{| border="1" cellpadding="5" cellspacing="0"  
Line 67: Line 80:
|}
|}


== Example #3 ==


3. The rate for call is 0.01 per minute rounded by 1s. The max price for call can be 0.1.
The rate for the call is 0.01 per minute rounded by 1s. The maximum price for call is 0.1.




Line 74: Line 88:
| '''FROM''' || '''DURATION''' || '''TYPE'''  || '''ROUND BY'''  || '''RATE'''
| '''FROM''' || '''DURATION''' || '''TYPE'''  || '''ROUND BY'''  || '''RATE'''
|-  
|-  
| 1 || 600 || minute || 1  || 0.1
| 1 || 600 || minute || 1  || 0.01
|-
|-
| 601 || ∞ || minute || 1  || 0
| 601 || ∞ || minute || 1  || 0
Line 80: Line 94:
|}
|}


== 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.
4. The rate for call is 0.01 per minute rounded by 1s. First 15 seconds of the call are not billed.




Line 93: 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>


NOTE: The same rules apply to [[Custom Rates]] for users.
= 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

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 :

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:

  1. Create Wholesale Tariff.
  2. Import Wholesale rates to the newly created Wholesale Tariff.
  3. Transform Wholesale Tariff to Retail Tariff.
  4. Delete Wholesale Tariff.
  5. Apply Advanced Rates for Retail Rates



Where to find advanced rates

mor_advanced_rates.gif

Additional Notes

Allow users to see advanced rates

See also