Fax detection won't work

Here’s my setup:

Asterisk 11
FreePBX 2.11
Fax Configuration 2.10.0.6

Here’s what I’m trying to do:
I don’t have a dedicated FAX line, I just want the system to detect incoming fax, then receive it, then send an email with it.

So up to now, here’s what I’ve been doing.

  1. In the inbound route.
    Set “Detect Faxes” to YES
    Set “Fax Detection type” to SIP
    (I think this might be the problem)
    Set “Fax Destination” to an extension (ex 12345)

  2. Create extension 12345
    In the “Fax” section
    Check the "Enabled?"
    set the “Fax email” to a valid email

When I send a fax to the phone number associated with the inbound route, it doesn’t detect it at all.

What am I doing wrong?

THANKS !

Is there anything I need to set in the ASTERISK SIP CONFIG or anywhere else?
Because I haven’t done it.

Check out the tooltip on “Fax Detection Type” and I think that will answer this question!

I’ll give you a hint: the answer is yes :slight_smile:

Hi and thanks you for answering.

So I did check the tooltip and it describes the three options, which are

  • DAHDI
  • NVFax
  • SIP

So NVFax is greyed out to start with
Then if I understand correction, DAHDI is for when you use DIGIUM or legacy telephony interface cards, which I don’t.
I only use SIP trunks.

So, that’s why I chose SIP.

However, I just tried DAHDI and it still won’t work.

So what should I do?

So I installed the “DAHDI config” module.

Then in general settings I set FAX DETECTION to YES.

Then went back to my INCOMING ROUTE

Then set Fax Detection Type to DAHDI, and the detection time to the maximum (10)

Tried again, and still it won’t work.

I don’t know what to do :frowning:

You said: “Is there anything I need to set in the ASTERISK SIP CONFIG or anywhere else? Because I haven’t done it.”

I said “Check the tooltip.”

The tooltip says SIP “requires Asterisk 1.6.2 or greater and ‘faxdetect=yes’ in the SIP config files”

Sorry for that but is that one of the situation where I should go ahead and edit the sip.conf file via terminal?

Because I thought this was something to avoid when using a GUI such as FreePBX, as the configuration files might get overwritten!

Otherwise, in the ASTERISK SIP settings tab, I don’t see anything related to fax reception.

Sorry for that but I’ve really been trying to look everywhere in FreePBX and I can’t find what I need to change anywhere…

Thanks!

Look down at the bottom of the SIP Settings module, there is a section to add custom settings.

You’re right!

So I added this:
CloudApp — Not Found

Saved, and rebooted the whole server just to make sure.

Then I checked my INBOUND ROUTE config, which includes this:
CloudApp — Not Found

Checked this Fax Recipient Extension and the email is valid.

Still no fax detection whatsoever…

Now I’m clueless…

Then I’d suggest posting some logs of an incoming call and maybe someone can help.

== Using SIP RTP TOS bits 184
== Using SIP RTP CoS mark 5
– Executing [XXX@from-sip-external:1] NoOp(“SIP/sip.babytel.ca-00000011”, “Received incoming SIP connection from unknown peer to XXX”) in new stack
– Executing [XXX@from-sip-external:2] Set(“SIP/sip.babytel.ca-00000011”, “DID=XXX”) in new stack
– Executing [XXX@from-sip-external:3] Goto(“SIP/sip.babytel.ca-00000011”, “s,1”) in new stack
– Goto (from-sip-external,s,1)
– Executing [s@from-sip-external:1] GotoIf(“SIP/sip.babytel.ca-00000011”, “1?checklang:noanonymous”) in new stack
– Goto (from-sip-external,s,2)
– Executing [s@from-sip-external:2] GotoIf(“SIP/sip.babytel.ca-00000011”, “1?setlanguage:from-trunk,XXX,1”) in new stack
– Goto (from-sip-external,s,3)
– Executing [s@from-sip-external:3] Set(“SIP/sip.babytel.ca-00000011”, “CHANNEL(language)=fr”) in new stack
– Executing [s@from-sip-external:4] Goto(“SIP/sip.babytel.ca-00000011”, “from-trunk,XXX,1”) in new stack
– Goto (from-trunk,XXX,1)
– Executing [XXX@from-trunk:1] Set(“SIP/sip.babytel.ca-00000011”, “__FROM_DID=XXX”) in new stack
– Executing [XXX@from-trunk:2] Set(“SIP/sip.babytel.ca-00000011”, “CHANNEL(language)=fr”) in new stack
– Executing [XXX@from-trunk:3] Set(“SIP/sip.babytel.ca-00000011”, “CDR(did)=XXX”) in new stack
– Executing [XXX@from-trunk:4] ExecIf(“SIP/sip.babytel.ca-00000011”, “0 ?Set(CALLERID(name)=15147222276)”) in new stack
– Executing [XXX@from-trunk:5] Set(“SIP/sip.babytel.ca-00000011”, “__CALLINGPRES_SV=allowed_not_screened”) in new stack
– Executing [XXX@from-trunk:6] Set(“SIP/sip.babytel.ca-00000011”, “CALLERPRES()=allowed_not_screened”) in new stack
– Executing [XXX@from-trunk:7] Set(“SIP/sip.babytel.ca-00000011”, “FAX_DEST=ext-fax^6666^1”) in new stack
– Executing [XXX@from-trunk:8] Answer(“SIP/sip.babytel.ca-00000011”, “”) in new stack
– Executing [XXX@from-trunk:9] Wait(“SIP/sip.babytel.ca-00000011”, “10”) in new stack
== Redirecting ‘SIP/sip.babytel.ca-00000011’ to fax extension due to CNG detection
== Spawn extension (from-trunk, fax, 1) exited non-zero on ‘SIP/sip.babytel.ca-00000011’
– Executing [fax@from-trunk:1] Set(“SIP/sip.babytel.ca-00000011”, “__FROM_DID=fax”) in new stack
– Executing [fax@from-trunk:2] NoOp(“SIP/sip.babytel.ca-00000011”, “Received an unknown call with DID set to fax”) in new stack
– Executing [fax@from-trunk:3] Goto(“SIP/sip.babytel.ca-00000011”, “s,a2”) in new stack
– Goto (from-trunk,s,2)
– Executing [s@from-trunk:2] Answer(“SIP/sip.babytel.ca-00000011”, “”) in new stack
– Executing [s@from-trunk:3] Wait(“SIP/sip.babytel.ca-00000011”, “2”) in new stack
– Executing [s@from-trunk:4] Playback(“SIP/sip.babytel.ca-00000011”, “ss-noservice”) in new stack
– <SIP/sip.babytel.ca-00000011> Playing ‘ss-noservice.gsm’ (language ‘fr’)
– Executing [s@from-trunk:5] SayAlpha(“SIP/sip.babytel.ca-00000011”, “fax”) in new stack
– <SIP/sip.babytel.ca-00000011> Playing ‘letters/f.gsm’ (language ‘fr’)
– <SIP/sip.babytel.ca-00000011> Playing ‘letters/a.gsm’ (language ‘fr’)
– <SIP/sip.babytel.ca-00000011> Playing ‘letters/x.gsm’ (language ‘fr’)
– Executing [s@from-trunk:6] Hangup(“SIP/sip.babytel.ca-00000011”, “”) in new stack
== Spawn extension (from-trunk, s, 6) exited non-zero on ‘SIP/sip.babytel.ca-00000011’
– Executing [h@from-trunk:1] Macro(“SIP/sip.babytel.ca-00000011”, “hangupcall,”) in new stack
– Executing [s@macro-hangupcall:1] GotoIf(“SIP/sip.babytel.ca-00000011”, “1?theend”) in new stack
– Goto (macro-hangupcall,s,3)
– Executing [s@macro-hangupcall:3] ExecIf(“SIP/sip.babytel.ca-00000011”, “0?Set(CDR(recordingfile)=)”) in new stack
– Executing [s@macro-hangupcall:4] Hangup(“SIP/sip.babytel.ca-00000011”, “”) in new stack
== Spawn extension (macro-hangupcall, s, 4) exited non-zero on ‘SIP/sip.babytel.ca-00000011’ in macro ‘hangupcall’
== Spawn extension (from-trunk, h, 1) exited non-zero on ‘SIP/sip.babytel.ca-00000011’

Looks like fax detection works just fine.
“Redirecting ‘SIP/sip.babytel.ca-00000011’ to fax extension due to CNG detection”

I’d suggest you look at this:
“Received incoming SIP connection from unknown peer to XXX”

I still don’t understand why it does not work.

As you pointed out, it seems that FAX DETECTION does work.

I’m trying to read the log that I posted and figure out why, in the end, the fax is not received and sent by email as configured in FreePBX but I cannot figure it out…

Please let me know if you may help