I am not sure if i will get away with this post as it mentions a competitor of 3CX, but here goes.
I tried getting BT Talk working with 3CX but had similar problems with keeping the registration. However on old colleague of mine had it working on Axon PBX fine.
With this in mind I wondered if I could use Axon to bridge into 3CX.
I will assume anyone wanting to try this has been able to download the "real" sip authority name and password for their BT VoiP connection. The link to do that is http://www.bt.com/bbt
Download Axon PBX (I used 2.21) but I guess other versions work as well. Install Axon on the same server as 3CX is installed. Once installed there are a few annoying wizards to get through. Once they are finished go into the options and network panel in Axon and make the following changes :-
Local Sip Port 4000
Local RTP Port 4100
UN Tick use UPNP
UN Tick use STUN
TICK Use static IP Address and enter the local IP address for your server
External Sip Port 4000
External RTP Port 4100
Now forward the ports 4000 4100 - 4110 to your server IP from your router
Restart Axon and it should now running fine on its new ports without any conflicts with 3CX
Now enter the web administration module for Axon
Under System Settings
UN Tick Enable Agent Server
Select Send directly to other side (work as own SMTP server)
UN Tick Enable integrated Axon voicemail
UN Tick Enable integrated Axon auto-attendant
and then save the changes
Under Extensions & Groups
Remove all the extensions created by the wizard and create one called bttalk with a password of you choice. Under Action if No Answer or Busy select Take no action (ringing will continue until caller hangs up)
Under External Dialing
Remove any external lines created by the wizard and add one for BT Talk as follows :-
Select a line name of "BT Talk"
Select Use Gateway Server
Enter server: btsip.bt.com
Enter SIP Login: 44(plus your bt talk number without the zero)
For Incoming Calls Ring on Extension or Group drop down the box and select bttalk
Then go to Advance Line Settings
Remove the (9) from the caller ID settings
TICK Always relay audio (only use if one direction audio lost)
Tick Enable CID pass through on blind transfers from external numbers
Save Changes and on the next page save changes again.
Under dialing plans edit the entry "Default" so that If none of the above applies, dial on line is set to BT Talk
then close Axon completely
Now make an entry in you hosts file as following :-
62.239.169.132 btsip.bt.com
Restart Axon and the control window should show Registered as sip:
[email protected]
Now in 3CX create a new VoiP Provider to log into Axon on your local IP address, port 4000 and the password you used in Axon when creating the bttalk extension. After creating the VoiP provider edit the entry in the advanced section so that the IP to use in the contact field is "Specified IP" and that is set to the local IP of your server.
Set your dialing plans as required to use the account
You should now be able to both receive and make calls with Axon providing a relay between 3CX and the BT Sip Server. We have had the configuration running for six days and it has been fine (3CX V11). I have to admit I have no idea why 3CX does not hold the registration while Axon can but it does. Its a lot more basic than 3CX so may be it just has less opportunity to conflict with the BT server which I think is a bit strange in its operation.
Axon has very small foot print so it runs in the system tray without any impact on the sever performance proving the relay. The free version of Axon supports 5 extensions and one sip line so once the trial period ends there should be no problem with the configuration continuing to run without the need to purchase Axon as it only uses one extension and one provider.
I hope that helps anyone with a BT Talk account make use of it through 3CX.