This ended up taking me a few more hours than it should have due to the lack of a decent guide ANYWHERE. I thought I’d spare the next person the same problem.
In FreePBX create a new SIP Trunk. (You could create one and round robin the numbers, but because I want to be able to send each line to a different spot, I setup four trunks, 6000, 6001, 6002, 6003)
In this guide, if I don’t mention something, don’t touch the setting.
Trunk Name: NXXNXXXXX (Your phone number eg. 8885551212)
Outbound Caller ID: NXXNXXXXXX
Trunk Name: 6000
Empty out incoming settings. You DO NOT need a registration string.
Create an inbound route.
Set the DID to NXXNXXXXXX (the did that comes from the FXO port). You don’t need to define anything else.
Create an outbound route.
Name your route.
Create a dial plan.
Define the trunk sequence (the order you want to use the lines)
On the web interface of the GXW-4104:
TAB Basic Settings:
Setup a static ip.
Go back into the web interface with the new IP.
TAB Advanced Settings:
Create a password.
TAB FXO Lines:
Channel Dialing to PSTN:
- Wait for dial tone: ch1-4:N;
- Stage Method: ch1-4:1;
Channel Dialing to VOIP: (BE SURE EACH CHANNEL HAS THE CORRECT PHONE NUMBER TYPED IN!)
- User ID: ch1:NXXNXXXXXX;ch2:NXXNXXXXXX;ch3:NXXNXXXXXX;ch4:NXXNXXXXXX;
- Sip Server: ch1-4:YOUR_FREEPBX_INSTALLS_IP;
PSTN to VOIP Caller ID Setting: (I needed 2 rings before ATT transmitted caller ID info)
- Number of Rings Before Pickup: ch1-4:2;
Port Number Settings, Fill it in as follows:
SIP User ID: 6000
Authenticate ID: 6000
Authen Password: THE_STRONG_PASSWORD_YOU_DEFINED_ON_THE_TRUNK
Profile ID: Profile 1
Channel Voice Setting:
Feel free to play with the RX and TX gains here, My tx was fine but I had to amp up my RX to 2. DO NOT go crazy here. You will introduce echo and hissing.
Channel Specific Setting:
- DTMF Methods(1-7): ch1-4:2;
TAB Profile 1:
SIP Server: YOUR_FREEPBX_INSTALLS_IP
NAT Traversal (STUN): NO
Force INVITE: YES
Do you have to update and reboot after every tab? Probably not.
The above directions got it work for me with no echo, caller ID, and directed routes to each fxo port. Keep in mind, you need to setup an inbound route, and add/setup each number to an outbound route.