Difference between revisions of "LCR"

From Kolmisoft Wiki
Jump to navigationJump to search
 
(12 intermediate revisions by 5 users not shown)
Line 1: Line 1:
=Description=
=Description=


LCR (Least Cost Routing) is a set of Providers that should be used to send a call when trying to dial any destination - for example, by the cheapest rate.  
LCR (Least Cost Routing) is a set of Providers that should be used to send a call when trying to dial any destination - for example, by the cheapest rate.  


The correct name for such a function is a Routing Table, because the function supports other ways of routing, not just finding the cheapest route.
The correct name for such a function is a Routing Table because the function supports other ways of routing, not just finding the cheapest route.


By default LCR supports fail-over. That is, if one provider fails, the next one is dialed. This is completely invisible for the caller and lets you increase the chances of the user reaching his destination. If one Provider is not capable of delivering a call, the system will try to use the remaining [[How_to_add_Provider_to_LCR | Providers]].
By default LCR supports fail-over. That is, if one provider fails, the next one is dialed. This is completely invisible for the caller and lets you increase the chances of the user reaching his destination. If one Provider is not capable of delivering a call, the system will try to use the remaining [[How_to_add_Provider_to_LCR | Providers]].
<br><br>
<br><br>
==Fail-over explanation==
==Fail-over explanation==
=== Use only first Provider in the row ===
This option can allow/deny failover for LCR.
When it is enabled it only allows the first Provider in the Routing Table/LCR to be used.
Please note that when using ANI Authentication, a second query is made to get LCR info.
If this option is set to "Yes" on the first query, the second query will not change it.
In other words - if the first LCR denies Failover, the second ANI LCR can't enable Failover.
This is by design to avoid situations where the misconfiguration can create loops in the call flow.
=== Examples ===
With such configuration:
With such configuration:
 
<br><br>
[[image:lcr_fo_case1.png]]
[[image:lcr_fo_case1.png]]
 
<br><br>
System will do following:
System will do following:


Line 21: Line 37:
<br><br>
<br><br>
With such configuration:
With such configuration:
 
<br><br>
[[image:lcr_fo_case2.png]]
[[image:lcr_fo_case2.png]]
 
<br><br>
System will do following:
System will do following:
* system tries to use "Kolmisoft PREMIUM";
* system tries to use "Kolmisoft PREMIUM";


* end.
* end.
NOTE: if the original User is being changed by ANI, and if the original User has "Use only first Provider in the row" set to YES on its LCR, then even if resulting User LCR has "Use only first Provider in the row" set to NO, the system will act as it is set to YES. (See description above why it is so)
<br><br>
<br><br>
With such configuration:
With such configuration:
 
<br><br>
[[image:lcr_fo_case3.png]]
[[image:lcr_fo_case3.png]]
 
<br><br>
System will do following:
The system will do the following:
* system tries to use "Kolmisoft PREMIUM";
* system tries to use "Kolmisoft PREMIUM";


* if above fails, system tries to use "Kolmisoft STANDARD";
* if above fails, the system tries to use "Kolmisoft STANDARD";


* if above fails, system tries to use provider "112" even if its rate is higher than User rate;
* if above fails, the system tries to use provider "112" even if its rate is higher than User rate;


* end.
* end.
It is possible to change User's tariff when the Failover provider is used. By default, the current User's tariff is used.
<br><br>
<br><br>
[[File:failover_provider_user_tariff.png]]
<br><br>
=Usage=
=Usage=


Line 60: Line 83:
* LCR copy – press on icon to make LCR copy.
* LCR copy – press on icon to make LCR copy.
<br><br>
<br><br>
Press [[Image:icon_add.png]]'''New LCR''' to create LCR.
==Supported routing modes==


* [[Call Routing by price|By Price]] - cheapest first (Least Cost Routing).
* [[Call Routing by priority (Manual LCR) | By priority]].
* [[Routing by Percent| By percent]] or Weight-based routing.


The user has one base LCR, so that all his calls are routed by some preset rule.


It is possible to route different destinations for a User using [[Call routing per destination basis]].
<br><br>
<br><br>
==Creation==
Press [[Image:icon_add.png]]'''New LCR''' to create LCR.
<br><br>
=== VIDEO: How to create LCR ===


=== VIDEO: How to create LCR ===
<html>
<html>
  <iframe width="640" height="360" src="http://www.youtube.com/embed/7sCaBH35hXc" frameborder="0"></iframe>  
  <iframe width="640" height="360" src="https://www.youtube.com/embed/7sCaBH35hXc" frameborder="0"></iframe>  
</html>
</html>


<br><br>
==Additional Configuration==


Go to LCRs list and press [[image:icon_edit.png]] icon.
<br><br>
[[File:lcr_time_periods.png]]
<br><br>
<br><br>
===Supported routing modes===
'''First Providers percent limit''' - visible when order by Price is selected. If the following Providers will have higher prices by this percent compared to the first Provider, these Providers will be skipped. 0 value disables the use of this setting.<br>
 
'''Minimal Rate Margin Percent''' - use only those Providers which generate profit (per minute) equal or higher than defined percentage value in this field. For example, if you pay to your Provider 1 EUR/min and your Minimal Rate Margin Percent is set to 50%, then only calls with a user rate equal to or higher than 1.5 EUR/min are allowed to call. After 1 min of call, you will pay 1 EUR to your provider, and the user will pay you 1.5 EUR. Your profit will be 0.5 EUR which is 50% more of what you paid to your Provider. If your Minimal Rate Margin is -30%, then you allow some losses in your calls. If you pay 1 EUR to your Provider after 1 minute of call, then the user should pay you 0.7 EUR or more. You will pay 1 EUR and you will get 0.7 EUR which is 30% less than what you paid.
* [[Call Routing by price|By Price]] - cheapest first (Least Cost Routing).
* [[Call Routing by priority (Manual LCR) | By priority]].
* [[Routing by Percent| By percent]] or Weight-based routing.
 
The user has one base LCR, so that all his calls are routed by some preset rule.
 
It is possible to route different destinations for a User using [[Call routing per destination basis]].
<br><br>
<br><br>
==LCR Time Periods==
===LCR Time Periods===
<!---This functionality is available from MOR X4--->
<!---This functionality is available from MOR X4--->
Sometimes there is such demand to change LCR for some time period. This functionality gives you an ability to do that. Go to LCRs list and press [[image:icon_edit.png]] icon. Here time periods can be set.
Sometimes there is such demand to change LCR for some time period. This functionality gives you the ability to do that. In the LCR Edit page time periods can be set.
 
The time period defines the exact time period LCR will be active. There is a limit of five periods in one LCR. The rest of the time will be used the main LCR.
<br><br>
<br><br>
[[File:lcr_time_periods.png]]
'''Examples'''
<br><br>
 
Time period defines the exact time period LCR will be active. There is a limit of five periods in one LCR. Rest of the time will be used main LCR.
===Examples===
# Select '''Date''' from 1 of January to 28 of February and choose '''Hour : Minute''' from 09:00 to 18:59. Selected LCR will be used from 1 of January till 28 of February at time from 09:00 till 18:59.
# Select '''Date''' from 1 of January to 28 of February and choose '''Hour : Minute''' from 09:00 to 18:59. Selected LCR will be used from 1 of January till 28 of February at time from 09:00 till 18:59.
# Select just '''Hour : Minute''' from 19:00 to 08:59 and selected LCR will be used every day at time from 19:00 till 08:59.
# Select just '''Hour : Minute''' from 19:00 to 08:59 and selected LCR will be used every day at time from 19:00 till 08:59.
# Select '''Weekday''' from Monday to Friday and choose '''Hour : Minute''' from 13:00 to 15:59. Selected LCR will be used  every week from Monday till Friday at time from 13:00 till 15:59.
# Select '''Weekday''' from Monday to Friday and choose '''Hour : Minute''' from 13:00 to 15:59. Selected LCR will be used  every week from Monday till Friday at time from 13:00 till 15:59.
<br><br>
<br><br>
===LCR Loss Calls===
It is possible to enable Loss Calls per LCR. The default setting - unchecked.
<br><br>
[[File:LCR_loss_calls.png]]
<br><br>
This setting allows you to decide whether you want to allow users a provider if the provider's rate to a destination is higher than the user's rate.
By allowing such a call, you will pay more to the provider than the user pays to you for it, which means that you will take a loss on the call.


==Copying LCRs between resellers==
==Copying LCRs between resellers==
Line 112: Line 149:
Please note that LCR will not be allowed to copy if reseller B is not allowed to use Providers which are used by Reseller A.
Please note that LCR will not be allowed to copy if reseller B is not allowed to use Providers which are used by Reseller A.
<br><br>
<br><br>
=See also=
=See also=



Latest revision as of 08:28, 14 June 2023

Description

LCR (Least Cost Routing) is a set of Providers that should be used to send a call when trying to dial any destination - for example, by the cheapest rate.

The correct name for such a function is a Routing Table because the function supports other ways of routing, not just finding the cheapest route.

By default LCR supports fail-over. That is, if one provider fails, the next one is dialed. This is completely invisible for the caller and lets you increase the chances of the user reaching his destination. If one Provider is not capable of delivering a call, the system will try to use the remaining Providers.

Fail-over explanation

Use only first Provider in the row

This option can allow/deny failover for LCR.

When it is enabled it only allows the first Provider in the Routing Table/LCR to be used.

Please note that when using ANI Authentication, a second query is made to get LCR info. If this option is set to "Yes" on the first query, the second query will not change it.

In other words - if the first LCR denies Failover, the second ANI LCR can't enable Failover.

This is by design to avoid situations where the misconfiguration can create loops in the call flow.

Examples

With such configuration:

Lcr fo case1.png

System will do following:

  • system tries to use "Kolmisoft PREMIUM";
  • if above fails, system tries to use "Kolmisoft STANDARD";
  • end.



With such configuration:

Lcr fo case2.png

System will do following:

  • system tries to use "Kolmisoft PREMIUM";
  • end.

NOTE: if the original User is being changed by ANI, and if the original User has "Use only first Provider in the row" set to YES on its LCR, then even if resulting User LCR has "Use only first Provider in the row" set to NO, the system will act as it is set to YES. (See description above why it is so)

With such configuration:

Lcr fo case3.png

The system will do the following:

  • system tries to use "Kolmisoft PREMIUM";
  • if above fails, the system tries to use "Kolmisoft STANDARD";
  • if above fails, the system tries to use provider "112" even if its rate is higher than User rate;
  • end.

It is possible to change User's tariff when the Failover provider is used. By default, the current User's tariff is used.

Failover provider user tariff.png

Usage

Go to SETTINGS –> Billing –> LCR

Lcr path.png

Here you can see the list off all LCRs

Lcr main.png

  • Name – name of LCR.
  • Order – type of routing mode.
  • Providers – quantity of providers in LCR. Click on it to Add Providers to LCR
  • By destination
  • Usage Details – the list of Users and Card Groups where this LCR is used.
  • Make Tariff from LCR Providers to CSV – feature that gets you a CSV with the MIN/MAX prices selected from the list of Providers in LCR. Click on the Excel.png icon and the download should start automatically. (De-activated provider will be taken into CSV. "by Destination" will not be taken into CSV)
  • LCR copy – press on icon to make LCR copy.



Supported routing modes

The user has one base LCR, so that all his calls are routed by some preset rule.

It is possible to route different destinations for a User using Call routing per destination basis.

Creation

Press Icon add.pngNew LCR to create LCR.

VIDEO: How to create LCR



Additional Configuration

Go to LCRs list and press Icon edit.png icon.

Lcr time periods.png

First Providers percent limit - visible when order by Price is selected. If the following Providers will have higher prices by this percent compared to the first Provider, these Providers will be skipped. 0 value disables the use of this setting.
Minimal Rate Margin Percent - use only those Providers which generate profit (per minute) equal or higher than defined percentage value in this field. For example, if you pay to your Provider 1 EUR/min and your Minimal Rate Margin Percent is set to 50%, then only calls with a user rate equal to or higher than 1.5 EUR/min are allowed to call. After 1 min of call, you will pay 1 EUR to your provider, and the user will pay you 1.5 EUR. Your profit will be 0.5 EUR which is 50% more of what you paid to your Provider. If your Minimal Rate Margin is -30%, then you allow some losses in your calls. If you pay 1 EUR to your Provider after 1 minute of call, then the user should pay you 0.7 EUR or more. You will pay 1 EUR and you will get 0.7 EUR which is 30% less than what you paid.

LCR Time Periods

Sometimes there is such demand to change LCR for some time period. This functionality gives you the ability to do that. In the LCR Edit page time periods can be set.

The time period defines the exact time period LCR will be active. There is a limit of five periods in one LCR. The rest of the time will be used the main LCR.

Examples

  1. Select Date from 1 of January to 28 of February and choose Hour : Minute from 09:00 to 18:59. Selected LCR will be used from 1 of January till 28 of February at time from 09:00 till 18:59.
  2. Select just Hour : Minute from 19:00 to 08:59 and selected LCR will be used every day at time from 19:00 till 08:59.
  3. Select Weekday from Monday to Friday and choose Hour : Minute from 13:00 to 15:59. Selected LCR will be used every week from Monday till Friday at time from 13:00 till 15:59.



LCR Loss Calls

It is possible to enable Loss Calls per LCR. The default setting - unchecked.

LCR loss calls.png

This setting allows you to decide whether you want to allow users a provider if the provider's rate to a destination is higher than the user's rate.

By allowing such a call, you will pay more to the provider than the user pays to you for it, which means that you will take a loss on the call.

Copying LCRs between resellers

Sometimes you need to make a LCR which takes quite a long time to make. If you have made a similar one before you can just copy it and change appropriate details.

Go to SETTINGS -> Billing -> LCR -> Copy LCR

Lcr copy path.png

You will see this window:

Lcr copy.png

Choose Original LCR reseller and Cloned LCR reseller and click Clone button.

Please note that LCR will not be allowed to copy if reseller B is not allowed to use Providers which are used by Reseller A.

See also