Call Tracing
Overview
This function is for checking the setup of MOR in order to be sure a user will be able to dial out. To set MOR up isn't simple, but we are trying to make it easier with this manual and with improvements to GUI. It often happens that users miss some important detail while trying to make everything work. Call Tracing will save a lot of head-scratching, and we hope it will be helpful for beginners.
Important! This function is for testing Dialing OUT. DID testing is not implemented yet.
This function can be found in SETTINGS – Billing – Function – Call Tracing. It can be quickly accessed in the Users menu (SETTINGS – Users) as well. Just click on the icon for a user.
In the first window, we have to select which user we want to check:
User testing
The next window shows us whether we have configured everything properly for the selected user. Let's look at each section separately.
The first section shows information special to the user:
Here we see four errors that prevent the user from operating. Let's say we want to allow a user to make calls. We will go through each of the errors and fix them.
1. This error tells us that the user is Blocked and so unable to make calls. We should go to User Details and unblock him.
2. Balance and Credit for this user are empty, and the user type is Prepaid. That means he has no funds to cover the call fees. There are several ways to go about fixing this:
- If the user is postpaid, he should use some payment method to increase his balance. PayPal and Manual Payment, among others, are good ways to do this.
- We can change the user type to postpaid and then we should adjust his credit. Maybe it is unlimited, maybe some limit exists. But that will allow user to dial out.
3. We see that the user has assigned a tariff and a type of tariff. The type of tariff is just for informational purposes. Here 'Explanation' tells us that Tariff is empty. That is the reason why user is not able to dial out. The user can dial out only to those destinations which have rates. Currently none of them has. You need to put some rates to the existing tariff or assign a non-empty tariff to this user.
4. The user has no devices. A Device is necessary in order to dial out. Just create one for this user.
After solving all these issues, we should see:
We can proceed with next section, which is about LCR:
It tells us that the LCR we assigned to the user has no Providers. We should fix it. When at least one Provider is in the LCR assigned to the User, we should see:
This error happens when all providers in LCR are disabled. We need to have at least one active provider for the user to be able to dial out:
Now none of our active providers has any rates. We should add rates to the provider's tariff. We can click directly on the Tariff to go to its rates and add some of them. After that, we should see:
To summarize this whole section, you should check for and read the error descriptions. After fixing the errors, you should see . That means the problem is solved and you can proceed. If at the bottom of the page, you see:
... that means you still have unresolved issues. After all the issues are resolved, you should see:
When you see this green message, you know that your user is configured properly. He is not blocked, he has enough money in his balance to pay for the call, his tariff has rates for some destinations (so only these destinations are available to dial), and he has some devices to use for dialing. Also, his LCR has active providers with tariffs that are not empty.
You can proceed.
Device testing
The following section lets us choose a device and a call date, and enter the destination we want to test. For example:
This data means that we are testing a virtual call from device SIP/1004 to number 863042438 on 2009 August 26th 00:00.
When we click Press this button to continue, we will go to the next page and we will see something like:
The Details section shows us just routine information. We already knew this information, so it is not important.
If you see direction as Unknown, it means your number is not in E.164-compatible format. Edit Localization rules to transform your number to E.164 number format.
The Localization section is much more important.
Here we see the device's Location and Applied rule, and the result after localization.
IMPORTANT! Software can't read a user's mind, so it can't know where a user is dialing.
This can be illustrated by this example:
A User dials 863042438. After Localization, we see that number is still 863042438 - which means it's somewhere in China. But it's wrong, because the user dialed a Lithuanian number in local format! What does it mean? It means that Localization is not configured properly. MOR can't show you an error here because there's no way to tell whether it's okay or not.
You should decide for yourself. All MOR can do is show you all information it can get from the call, and it does that.
So in order to proceed with the example, we have to set a correct Localization rule for this number format. After doing this, we will see:
Now everything is okay. The localized destination is E.164 compatible. Now MOR understands that it's Lithuania.
If we get the following window:
... it means we do not have rates or custom rates for the dialed destination. After adding them, we should see:
This window also shows us that we do not have a custom rate for this destination. But it's enough to have a simple rate for a destination to be able to dial out or vice versa.
We can proceed to the providers:
We can see that our provider does not have a rate for this destination. After fixing it we should see:
That's it. Now a real call should go out without problems.
Conclusion
To summarize Call Tracing, it is very important to configure Localization properly.
You will see using Call Tracing what is happening and where the call is going.
When rates for user and provider are checked using localized destination, and when all data are in place, there's no obstacle to prevent the call from being sent to the provider.
IMPORTANT! The green message at the end of Call Tracing does not mean the call will be successful! It only means that MOR will send the call to the provider. The last table shows what string it will send to the provider. Applied Provider Rule parameters (Cut and Add) are also visible in the table.
MOR can't know whether the provider accepts your dial string or not. That depends on how you configured Provider Rules. Call Tracing shows you the formatted number which is sent to the provider, but you should decide whether or not it is correct.
If a call fails, check Users Calls or Providers Calls and check Hangupcause Codes to find the reason.