Connect 3CX V18 to our Power-T.38 SIP trunks for reliable direct incoming fax reception (fax to email) and T.38 pass-through for T.38-capable gateways and ATAs.
The 3CX Phone System is a software-based private branch exchange phone system. It is a complete communications solution that’s easy to sell, deploy, and support which allows for seamless bundling with existing IT services.
3CX supports faxing in multiple shapes and forms. In regards to faxing over IP, 3CX has:
- T.38 pass-through support for connected ATAs, gateways and fax servers (or any other device that supports T.38 FoIP)
- A built-in fax server module that converts received faxes into PDFs which are then e-mailed
Related Links:
Known Limitations
3XC includes a fax server that allows you to receive faxes in PDF format and forward them to one or more extensions. Unfortunately, 3CX’s T.38 stack does not include support for the fax protocol’s Error Correction Mode (ECM), which means that fax transmissions will not be able to use ECM and thus may contain imperfections and distortions, especially if the audio quality is not ideal. We believe ECM should be available on every T.38 transmission, and therefore we recommend using the built-in fax server with caution.
Outbound faxing directly from 3CX is not supported
This guide was written using 3CX Version 18, Update 7, March 2023.
Prerequisites
This article assumes:
- You have signed up for a free trial of our Power-T.38 SIP trunking service
- You have access to our customer self-care portal with an assigned role that allows you to add and delete SIP trunks.
- You have used the T38Fax self-care portal to create a SIP trunk that you now wish to connect to 3CX.
Step 1: Add a Power-T.38 SIP trunk in 3CX
1. Log into the 3CX Admin management console / M.Console
2. Select SIP Trunks
3. Select Add SIP Trunk
4. Select your Country, choose a provider template, and enter the DID of your T38Fax SIP Trunk in the Main Trunk No box and click OK.
Note: there is not a default provider template and the default settings within the trunk configuration can change depending on which provider you choose from the list. We recommend selecting one of the Supported or 3rd party supported templates to start with.
5. Set the name for Trunk to T38Fax (or something meaningful to you)
6. Set the Registrar/Server/Gateway Hostname or IP to sip.t38fax.com
7. Set the Outbound Proxy to sip.t38fax.com and the port to 5080 (learn why)
8. Set the Type of Authentication to match the SIP Connection Type of your T38Fax SIP Trunk. T38Fax SIP Trunks can leverage one of two types of authentication:
-
Username/Password
-
IP Authentication
- Set the Type of Authentication to Do Not require - IP Based
Note: For IP Authentication, please make sure that the public IP you are connecting to our service with is a static IP and is entered correctly in your T38Fax SIP Trunk.
9. Update the Route to section based on your needs/preference
10. Navigate to the Options tab and set the following parameters:
- Allow inbound calls
- Allow outbound calls
- Disallow video calls
- PBX Delivers Audio
- Supports Re-Invite
- SRTP Mode: Disabled
- Re-Register Timeout: 300
- Select which IP to use in 'Contact' (SIP) and 'Connection'(SDP) fields: Use Default Settings
- Transport Protocol: UDP
- IP Mode: Any
- Codec Priority: G.711 U-law
11. Both the Inbound Parameters and Outbound Parameters tabs should have all values set to:
- Leave Default Value
Step 2: Decide which form of T.38 is needed
An IP-PBX is capable of doing two modes of T.38:
- Pass-through: In this scenario, a T.38 capable device (endpoint) such as a gateway, ATA or fax server is connected to an IP-PBX and sends and receives faxes by routing those transmissions through the Power-T.38 SIP trunk. The IP-PBX is only an observer in this situation, and passes T.38 packets back and forth between T38Fax and the T.38 endpoint behind the IP-PBX without interfering with them in any way.
- Endpoint: In this scenario the IP-PBX is itself a T.38 endpoint, capable of sending and receiving faxes directly by speaking T.38 to T38Fax. This is often referred to as a ‘built in’ fax server and can be found in most, but not all IP-PBX products on the market today.
3CX is capable of doing bi-directional pass-through, and can receive faxes directly in endpoint mode but only supports incoming fax reception in endpoint mode, not outbound transmission. The choice of which of these you choose to configure will depend on your use case, but most users start with pass-through and then move on to experimenting with direct sending in endpoint mode only if needed.
Step 3: Configure T.38 Pass-Through
Most IP-PBX products, including 3CX, support T.38 pass-through by default. If a device on either side of the transmission signals that it would like to use T.38 and both sides are configured to allow that, 3CX will get out of the way and shuttle those SIP packets back and forth just as it would during an audio call. It may be in the middle of the call path, but it’s not interfering with the data in any way. In most cases, then, doing T.38 pass-through is simply a matter of making sure the transmissions are selectively routed through your Power-T.38 SIP trunk, which can be done using 3CX’s call routing rules.
Outbound Routing via T38Fax SIP Trunk (Pass-through)
We will first add a generic outbound rule which will route any 11-digit number starting with 1 through the T38Fax SIP trunk. If your 3CX is also handling voice calls, you will need to adjust this rule to best match your own use case. We offer a few ideas near the end of this section.
1. Log into the 3CX Admin management console / M.Console
2. Select Outbound Rules and then select Add
3. Give the rule an appropriate name such as T38Fax
4. For send capabilities with 1+10-digit dials, set the following parameters:
-
General
- Calls to numbers starting with prefix: 1
- Calls to Numbers with a length of: 11
-
Make outbound calls on
- Route 1: Your T38Fax SIP trunk in 3CX
- Strip digits: 1
- Outbound Caller ID: Any valid 1+10 or 10-digit number
As you can see, outbound routing is pretty simple when you’re only using 3CX for fax and you don’t have any other SIP trunks connected.
Outbound routing becomes a bit harder when 3CX needs to handle voice calls and needs to direct those to a different (non T38Fax) outbound SIP trunk, but two methods are commonly used:
- Tech Prefix: Implementation will vary by device, but the basic idea here is to configure any device that needs to send outbound faxes to prepend a fixed string of numbers to the beginning of the dialed number. Most gateways and ATAs have the ability to manipulate their dialplan, so when provisioning them you could configure them to add something like “444444” to the beginning of the dialed number, so that 12158258720 becomes 44444412158258720. Then, have a rule that matches 444444 when it comes at the beginning of a dial string, removes that prefix and routes the call out the T38Fax SIP trunk.
- Extension Groups: Create an extension group, add any extensions with fax devices to that group, and create an outbound rule that matches calls from that extension group and routes the call out the T38Fax SIP trunk.
Inbound Routing from T38Fax SIP Trunk (Pass-Through)
T38Fax will deliver inbound calls with the called number in E.164 format. A fax number may have a maximum of 15 digits, separated as the first one to three digits as a country code and the remaining digits corresponding to the subscriber’s telephone number. We do not include a ‘+’ at the beginning, only digits. In North America, for example, an incoming call to 2155551212 would be signaled as 12155551212 in the SIP packets.
For inbound pass-thru routing we recommend using 3CX's guides they've created specifically for their list of ATAs they support. You can find the list of ATAs they support here:
https://www.3cx.com/sip-phones/
We officially support all Grandstream FXS devices and one Patton FXS device, the 4141 ATA. Other devices may work but are untested and therefore not officially supported.
If you aren't integrating an ATA with your 3CX setup then here is a general outline of how to setup inbound routing:
- Select Inbound Rules and then select Add
- Give the rule an appropriate name such as T38Fax-<Insert DID Here>
- Choose the DID/DDI of your fax number provided by T38Fax
-
Choose an extension to route the inbound calls to.
Note: If you have multiple fax DIDs you will need to create multiple user extensions in 3CX depending on your setup
Step 4: Configure T.38 Endpoint (Native Fax Server)
Inbound Routing (Fax To Email)
3CX’s built-in fax module is capable of receiving faxes, converting the received fax to PDF and emailing that PDF to a specific email address. To configure the built-in fax module:
- In the 3CX Admin Console, go to Advanced > FAX Server
- Assign a dedicated DID number to it.
- Enter an email address to forward the faxes received on this number.
- Click OK to save. Your fax server is now configured!
If you don’t want all faxes coming to the same email address, it should also be possible to create 3 new extensions (for instance) just like normal phones, give them the email address of the fax destination and select at the trunk ‘send fax to’ this extension.
A few things to remember when using 3CX’s native fax server:
- It only supports incoming faxes, it has no send capability whatsoever
- The T.38 implementation they use does not support T.30 ECM error correction, so faxes may be received with a variety of distortions of the image.
More information here:
https://www.3cx.com/docs/manual/fax-server/
Step 5: Test, Test and Test Again
Early and extensive testing will ensure a successful deployment and high rates of user adoption and satisfaction over the long term. We encourage you, therefore, to establish a baseline of successful faxing by testing everything you may have configured above, fixing any errors you find, and escalating any problems you can’t solve yourself to our support team.
Not quite sure how to test? Don’t worry, we’ve got your back. We outline our recommended process in this testing support article.
Support and Additional Resources
Customers looking for technical support can open a case via our customer self-care portal, or by using the ‘Submit a request’ button at the bottom of most knowledge base articles.
We talk a bit about our fax-optimized SIP trunks and explain why T38Fax is the best choice for companies who rely on fax transmissions to conduct business in these articles:
Comments
0 comments
Please sign in to leave a comment.