Fax and IVR

How to transfer a call from the IVR to the system fax?

I can easily transfer the person to an extension if he presses the right digit, but how to transfer him to the system fax?

My customers don’t like the NVFax and Zaptel detection thing, so I’ll just setup an option like “Press 9 for fax” on the IVR. My problem is I don’t have a fax machine so I want to use the system fax.

and some directions.

  1. faxing only works if NO and I mean NO compression codec’s are used. If a codec with compression is used it destorts the signal tone and quality as it compresses to the point where it can’t be detected properly. Also most people will tell you that faxing only works with Digital circuits like PRI, T1, E1. It does work with a good quality analog card (x100 is NOT good quality) but not with a ATA in the look or via a SIP, IAX, etc trunk. A few, very few have gotten it to work over sip and/or IAX if and only if the codec is ulaw or alaw (depends on where you live as to which you use.

For the record I have faxing working in multiple offices on a Digium Tdm400 very nicely and our main office is all digital so we get faxes in on our PRI without a single issue either.

Please realize that a fax is nothing more then a dumb computer with a modem (9600 up to 33kb) in it as you know modems VERY touchy about noise and signal quality. The detection system just like a modem is looking for a specific freqency response plus or minus a very small tolerance and all of the data that is tranmitted is modulated over that frequency. So when compression is involved it shifts things to make it compress and the human ear can’t tell the differance of say 1100 hz and 1110 hz. But the computer and modem can. See http://www.pikatechnologies.com/CMFiles/Technical%20Bulletins/BULL20-AdvancedToneDetectorDesignUtilities.pdf for some very interesting background.

So assuming you have the right stuff in place, do the following: You need to enable incoming faxing on your card. For my Digium cards you need to comment out faxdetect=no, and enable faxdetect=incoming and/or faxdetect=both in /etc/asterisk/zapata.conf. (Each manufacure has a similar process). Once that is done you should reboot as some manufactures require these settings to be set when the drivers are loaded for it to work.

Next go into the general setting area and fill in the information for the fax machine section. Extension of the fax, default e-mail address to send them to, and from address they would be coming from (realize that your mail system may have requirements like that addressactually exist). Apply those settings.

Then for use we created dedicated inbound routes as we have 100 DID’s on our digital side. so set Fax extension to FreePBX default, e-mail to who you want to get it for that DID (it overrides the default), Detection type, match what your card does. i.e. for digium select zaptel, and make sure that the pause after answer is 3 to 5 seconds. Apply those settings and you are off.

For a analog card based one it’s basicly the same, just put the fax line in it’s own group from the rest of the lines and create a inbound route for it the same as above.

If you happen to have a real fax hanging off a analog card you can make a extension for it and then forward the inbound route to it so that if the detection fails it will hit the real fax machine. If you create a extension you can also re-fill in the fax info for detection the same as what I mentioned for the inbound route. That way it will attempt to get detected twice.

We’ve recieved several thousand faxes this way in 20 months and in that whole time we’ve had a total of 4 fail and go through to the real fax system. Three of them came from the same fax machine (which became deaf and died 3 weeks after the last failure we had with it). The forth one was from a real cheep all in one HP fax, scanner, printer unit of a employee’s.

I read your whole reply just to realize that you didnt read my question… =(

Well, thanks anyhow. But I do NOT want to use fax detection. That’s the whole point.

I want the caller to press a digit on the IVR and get transfered to the system fax which will give the fax signal right away instead of waiting for the caller to signal it first.

I believe I’ll have to setup a custom destination, but I have no idea how to do that.

Any help or advice?

Go into Misc Destinations and create it, then point at it ( {core:simu_fax} ). BUT…

If Asterisk while listening can’t hear the initial signal tone while using zaptel or NVFax detection then jumping into the system fax and tricking it into start playing the answer tone will only get you to the next step which is that the otherside hears the answer tone back but the asterisk side will still not hear it’s reply as the audio is already out of spec and not respond.

95 percent of the people who say the detection does not work are not connected in usable way (most common one is via SIP with compression, and x100 users come in second). Which is why I provided the info.

That’s why I know we’ve had 4 faxes total fall through. We’ve tried it. It will do it, but fail, so the far side will try again and fail, and again one more time… Then the remote side prints a message or error saying it can’t send as nothing is answering, etc. The person sending get’s the messag and then after trying it once or twice more get’s ticked off and calls.

Exactly what I needed! Thank you fskrotzki !!

Our fax detection actually works very well, the real problem is to explain it to people.

Where we live (Brazil) it’s a bit unsual to have a fax detection system. Pleople expect to hear a fax noise when trey’re trying to send a fax.

We usually have to explain the whole detection thing and people say they understood. But when they try to send the fax they prove the opposite and keep ringing the phone waiting for a fax signal or for someone to pick up so they can ask for the signal.

It’s a cultural thing and I’m better off just avoing all this headache by using the IRV solution.

As of the hardware we have, it’s a Sangoma with 4FXO ports. I wouldn’t recommend fax trhough voip as well. But now I understand why you mentioned it on your first reply.

Again thank you!