News:

On Tuesday September 6th the forum will be down for maintenance from 9:30 PM to 11:59 PM PDT

Main Menu

Outbound call routing doesn't appear to be working properly

Started by jadog, December 08, 2018, 09:39:52 AM

Previous topic - Next topic

azrobert

Quote from: jadog on December 15, 2018, 04:43:04 PM
I tried your recommended configuration without the Trunk configuration as I wanted to see if it would work without that additional variable.

Trunk groups use a different method for routing calls, so you can't test my suggested configuration without the Trunk Group definition. Try again with the TG1 definition.

The following config should reduce the delay by 2 seconds.

You can test the failover by changing the SP1 password, so it won't register. Now place a call. It should get routed to SP3.

ITSP A: (*xx|1xxxxxxxxxx|911|933|<1260>[2-9]xxxxxx|<1>[2-9]xxxxxxxxx|011xx.S3|*21|*50xxxx|*51xxxx|*52xxxx|*53xxxx|*54|*6[013569]|*6[27]xx.|*77|*[789]2xx.|*73|*74[0-1][0-9]*xxxxxxxxxx|*75[0-1][0-9]|*8[137]|90xxxx|*93|*96)

ITSP B: (01136[237]0xx.)

ITSP C: (<8:1>xxxxxxxxxx|<8:1260>xxxxxxx|1xxxxxxxxxx|<1>[2-9]xxxxxxxxx|<1260>[2-9]xxxxxx|011xx.)

ITSP D: (<9:1>xxxxxxxxxx|<9:1260>xxxxxxx|1xxxxxxxxxx|<1>[2-9]xxxxxxxxx|<1260>[2-9]xxxxxx|011xx.)

Phone Port DigitMap: ([1-9]S9|[1-9][0-9]S9|911|**0|***|#|##|**70(Mli)|**8(Mbt)|**81(Mbt)|**82(Mbt2)|**1(Msp1)|**2(Msp2)|**3(Msp3)|**4(Msp4)|**9(Mpp)|(Mpli))

OutboundCallRoute: {(Msp2):sp2},{([19]900xxxxxxx):},{(<##:>):li},{(<#:>):ph2},{(<**70:>(Mli)):li},{(<**82:>(Mbt2)):bt2},{(<**81:>(Mbt)):bt},{(<**8:>(Mbt)):bt},{**0:aa},{***:aa2},{(<**1:>(Msp1)):sp1},{(<**2:>(Msp2)):sp2},{(<**3:>(Msp3)):sp3},{(<**4:>(Msp4)):sp4},{(<**9:>(Mpp)):pp},{(Mpli):pli}

Voice Services -> SP1 Service -> X_NoRegNoCall: Checked

Voice Services -> SP3 Service -> X_NoRegNoCall: Checked

Physical Interfaces -> Phone1 Port -> PrimaryLine: Trunk Group 1

Voice Service -> Gateways and Trunk Groups -> Trunk Group 1
TrunkList: sp1,sp3,sp4
DigitMap: ((Msp1)|8xxxxxxxxxx|8xxxxxxx|9xxxxxxxxxx|9xxxxxxx)

jadog

Ok, so I took your advice and I configured everything exactly as you listed. With the Trunk Group 1 enabled for the Primary Line, I get no dial tone. I push the talk button on my handset and I only hear a faint click on the line. I even tried rebooting the OBi a few times but still nothing. As soon as I change the Primary Line setting back to "SP1 Service", I get a dial tone. Maybe I don't understand completely how the Trunk Group works, but I thought that as long as SP1 is the first value in the TrunkList, it should look there first. Maybe we can start fresh with smaller steps and then add as we go?

Having the phone setup to use Trunks for a failover is certainly not a requirement. It would be cool, but I don't have to have it. You have already helped me so much and I have everything that I originally requested.

azrobert

I never heard of a problem like this. You should get dial tone even if there are errors in the config. Maybe this is a firmware bug.

Try changing the Trunk Group 1 DigitMap to the following just to see if you get dial tone:
(1xxxxxxxxxx)

jadog

I changed the DigitMap to your recommendation and there was still no dial tone. I think you are likely correct and that it is related to the firmware. Of note, I am currently using firmware version 3.2.2 (Build: 5921EX). I know there is a later version (I believe 5998), but because I use PhonePower as my primary SP, I have decided not to update. I've read others having issues with the later version and having to roll back.

Unless you know of another way, I think I will just sit tight for now and wait for a future firmware that plays nice with PhonePwer before I try again. By the way, if I create a backup of all my settings, then update the firmware, when I restore will it restore the previous firmware? I would assume not.

drgeoff

Quote from: jadog on December 24, 2018, 05:33:24 AM
I changed the DigitMap to your recommendation and there was still no dial tone. I think you are likely correct and that it is related to the firmware. Of note, I am currently using firmware version 3.2.2 (Build: 5921EX). I know there is a later version (I believe 5998), but because I use PhonePower as my primary SP, I have decided not to update. I've read others having issues with the later version and having to roll back.

Unless you know of another way, I think I will just sit tight for now and wait for a future firmware that plays nice with PhonePwer before I try again. By the way, if I create a backup of all my settings, then update the firmware, when I restore will it restore the previous firmware? I would assume not.
1. I think you are confused between 5898 and 5998.

2. Restoring settings from a backup file does not change the firmware.

jadog

Ah. You're right. So I am on the latest firmware version then. So apparently there is a bug with the trunks. I guess I'll just have to wait for a future release before trying again.

azrobert

I'm guessing it doesn't like the Primary Line set to TG1.
Using my last posted config change following:

Physical Interfaces -> Phone1 Port -> PrimaryLine: SP1 Service

The last rule in the OutboundCallRoute change it from: {(Mpli):pli} To: {(Mpli):tg1}

If this fixes the dial tone then everything should work except 8 and 9 prefix numbers.

To fix 8 and 9 do this:

Change the last rule in the Phone DigitMap to: (Mtg1)
Change the last rule in the OutboundCallRoute to: {(Mtg1):tg1}

jadog

Sorry for the delay, the holidays were crazy  :o. Changing the OutboundCallRoute from: {(Mpli):pli} To: {(Mpli):tg1} gave me dialtone! And I was able to successfully place a call. What a rock star!

I'm unclear on the additional instructions though for the 8 and 9 prefix numbers.

QuoteTo fix 8 and 9 do this:

Change the last rule in the Phone DigitMap to: (Mtg1)
Change the last rule in the OutboundCallRoute to: {(Mtg1):tg1}

Can you confirm I need to make this change under the Phone 1 interface? I already changed the last rule in the OutboundCallRoute to {(Mpli):tg1}. Are you saying I should change it again to {(Mtg1):tg1}?

azrobert

Your problem is probably caused by corrupted memory in the OBi202. I had you make a minimal change to see if my theory was correct. You now need to make a couple more changes to fix the 8 and 9 prefixes.

Phone1 Port DigitMap: ([1-9]S9|[1-9][0-9]S9|911|**0|***|#|##|**70(Mli)|**8(Mbt)|**81(Mbt)|**82(Mbt2)|**1(Msp1)|**2(Msp2)|**3(Msp3)|**4(Msp4)|**9(Mpp)|(Mtg1))

Phone1 Port OutboundCallRoute: {(Msp2):sp2},{([19]900xxxxxxx):},{(<##:>):li},{(<#:>):ph2},{(<**70:>(Mli)):li},{(<**82:>(Mbt2)):bt2},{(<**81:>(Mbt)):bt},{(<**8:>(Mbt)):bt},{**0:aa},{***:aa2},{(<**1:>(Msp1)):sp1},{(<**2:>(Msp2)):sp2},{(<**3:>(Msp3)):sp3},{(<**4:>(Msp4)):sp4},{(<**9:>(Mpp)):pp},{(Mtg1):tg1}

If everything seems to be working, you can test failover by disabling SP1 or change the password so registration fails. Now make a call and it should failover to SP3.

Voice Services -> SP1 Service -> Enable: unchecked

jadog

Bingo! I am very stoked! This is working just as you said after I made the recommended changes. With SP1 disabled, it rolls to SP3. Note, I updated the OutboundCallRoute to the below, otherwise I was unable to complete a call when I dialed the 8 or 9 prefix to get out to SP3 and SP4 respectively. I also updated to force 800 toll free calls to go to SP4.

{(Msp2):sp2},{911:sp1},{933:sp1},{([19]900xxxxxxx):},{(<9:1>xxxxxxxxxx|<9:1260>xxxxxxx|18(00|88|77|66|55|44)xxxxxxx|<1>8(00|88|77|66|55|44)xxxxxxx):sp4},{(<8:1>xxxxxxxxxx|<8:1260>xxxxxxx):sp3},{([1-9]x?*(Mpli)):pp},{(<##:>):li},{(<#:>):ph2},{(<**70:>(Mli)):li},{(<**82:>(Mbt2)):bt2},{(<**81:>(Mbt)):bt},{(<**8:>(Mbt)):bt},{**0:aa},{***:aa2},{(<**1:>(Msp1)):sp1},{(<**2:>(Msp2)):sp2},{(<**3:>(Msp3)):sp3},{(<**4:>(Msp4)):sp4},{(<**9:>(Mpp)):pp},{(Mpli):tg1}

Let me know if I should make any tweaks to the changes I made. It takes several seconds to connect to SP4, but I can live with that.

azrobert

Try:

{(Msp2):sp2},{911:sp1},{933:sp1},{([19]900xxxxxxx):},{(18(00|88|77|66|55|44)xxxxxxx):sp4},{([1-9]x?*(Mpli)):pp},{(<##:>):li},{(<#:>):ph2},{(<**70:>(Mli)):li},{(<**82:>(Mbt2)):bt2},{(<**81:>(Mbt)):bt},{(<**8:>(Mbt)):bt},{**0:aa},{***:aa2},{(<**1:>(Msp1)):sp1},{(<**2:>(Msp2)):sp2},{(<**3:>(Msp3)):sp3},{(<**4:>(Msp4)):sp4},{(<**9:>(Mpp)):pp},{(Mtg1):tg1}

You missed changing Mpli to Mtg1. This caused 8 & 9 prefixes to fail.

This is how a Trunk Group works:

(Mtg1):tg1 will route any number matching the TG1 digit map to TG1
When the Trunk Group gets control it processes the Trunk List left to right trying to route the call.
If the call fails OR the number doesn't match the trunk digit map the trunk is bypassed and processing skips to the next trunk in the list.

If you dial an 8 prefix number, it doesn't match the SP1 digit map and processing skips to SP3.
The number matches the SP3 digit map and is then routed to SP3.

You had (Mpli):tg1
(Mpli) doesn't contain a rule for 8 or 9 prefixes, so the call wasn't routed to TG1.
________________

The Phone digit map validates the dialed number.
The TG1 and SP1 digit maps are included by (Mtg1) and (Msp1)
When you dial a 10 digit number, rule <1>[2-9]xxxxxxxxx in (Msp1) validates it and adds a "1" prefix.
The outbound call route will see an 11 digit number.
The 10 digit 800 rule was redundant and removed.
_________________

I don't see anything that will cause a delay on SP4. I'm guessing it's the GV account.
________________

You can define a free tollfree provider as a Voice Gateway for 800 numbers.
VGs share an SP trunk with another provider.
You must use a non-GV SP for the VG.

Voice Service -> Gateways and Trunk Groups -> Voice Gateway1
Name: Tollfree
AccessNumber: sp1(tollfree.alcazarnetworks.com)
DigitMap: (18(00|88|77|66|55|44)xxxxxxx)
AuthUserID: 8005551212

AuthUserID Will be used for the outbound CallerID
You are sharing SP1 with Phonepower.
This might eliminate the delay for tollfree numbers.

{(Msp2):sp2},{911:sp1},{933:sp1},{([19]900xxxxxxx):},{(Mvg1):vg1},{([1-9]x?*(Mpli)):pp},{(<##:>):li},{(<#:>):ph2},{(<**70:>(Mli)):li},{(<**82:>(Mbt2)):bt2},{(<**81:>(Mbt)):bt},{(<**8:>(Mbt)):bt},{**0:aa},{***:aa2},{(<**1:>(Msp1)):sp1},{(<**2:>(Msp2)):sp2},{(<**3:>(Msp3)):sp3},{(<**4:>(Msp4)):sp4},{(<**9:>(Mpp)):pp},{(Mtg1):tg1}
________________

You can take this one step further and setup a Trunk Group for tollfree numbers.

Service Providers -> ITSP Profile A SIP -> TimerB: 8000

Voice Service -> Gateways and Trunk Groups -> Trunk Group 2
TrunkList: vg1,sp4
DigitMap: (18(00|88|77|66|55|44)xxxxxxx)

{(Msp2):sp2},{911:sp1},{933:sp1},{([19]900xxxxxxx):},{(Mtg2):tg2},{([1-9]x?*(Mpli)):pp},{(<##:>):li},{(<#:>):ph2},{(<**70:>(Mli)):li},{(<**82:>(Mbt2)):bt2},{(<**81:>(Mbt)):bt},{(<**8:>(Mbt)):bt},{**0:aa},{***:aa2},{(<**1:>(Msp1)):sp1},{(<**2:>(Msp2)):sp2},{(<**3:>(Msp3)):sp3},{(<**4:>(Msp4)):sp4},{(<**9:>(Mpp)):pp},{(Mtg1):tg1}

If a tollfree call fails on VG1, it will failover to SP4.

If a call isn't completed within the value of TimerB it will failover.
The default is 32 seconds.
I changed it to 8 seconds.
You don't want to make this value too small, you might get false failovers.

After you get this working, you can test failover by making this change:
Voice Service -> Gateways and Trunk Groups -> Voice Gateway1
Name: Tollfree
AccessNumber: sp1(192.168.1.199)

Dial a tollfree number and it will failover to SP4 after 8 seconds.

jadog

Thanks for the incredibly detailed explanation! I replaced the Mpli with Mtg1 as you suggested. However, removing the line you stated as redundant prevented me from making 800 calls without the 1. So I added back again.

<1>8(00|88|77|66|55|44)xxxxxxx

Let me know if I misunderstood anything. Otherwise, I think I'm going to let perfect alone!  ;D

Thanks so much for all your help and time. You are a true asset to this forum!