Friday, October 10, 2014

Hah! Never trust the E1 provider

Here is a little problem I ran into after deploying a Sonus 1000 SBA/SBC at customers branch office in Singapore.

The customer had a couple of faxes connected to the old PBX, but instead keeping the analog equipment, they went for a fax service "in the cloud". This is simply done by redirecting incoming calls to the faxes to a number at the provider, the fax is received and forwarded as an email to the destination.

We tested the service by calling from internal lines to the service. This all seemed to be going well (we heard fax tones in the other end, when calling). I set up a redirecting rule in the SBC (A transformation rule) and started testing. But the call never got through. it was immediately dropped after leaving the SBC. According to the logs, we received the following cause code: "Cause No. 28 - invalid number format (address incomplete)"


I immediately tried calling the external provider from a user attached to the SBA, and got through. Quite puzzling.

That's when it was time to dig out the LX tool, and start comparing the working and the non-working calls. And true enough, there was a slight difference between the calls.

Here is what I found on the working calls:


I compared this to the non-working redirected calls:


Now wait a minute, I never told the Sonus to add a numbering type or plan. This called for an investigation of the originating incoming call:


Lo and behold; The incoming call has the type and plan set. And when the call was returned back to the PSTN, these values were all wrong. To solve this situation, I simply manipulated the plan and type in my original transformation rule:


The carrier didn't care about the calling plan and type, as long as the called plan and type was "unknown" they excepted all calls.

The moral of this blogpost? Never trust the trunk provider, and always invest in equipment capable of tweaking all aspects of a call setup ;)