Make Zaptel channel outgoing only and ignore incoming

I am trying to configure a 4 port FXO card but need one of the channels to not answer but still be usable as an outbound channel. The reason for this is the phone line is also connected to a fax machine for incoming faxes but we still want to use the line for outbound calls when it is available.

Any suggestions appreciated.

First use “Zap channel DIDs” to assign a DID to that specific channel. Next, add an inbound route for that DID that goes to a “terminate call” destination like “hangup”.

Oh, whoops - sorry, I zoned out and totally misread the question!

What you’re trying to do is actually quite difficult because zap cards do not have any line-in-use detection, or call progress detection.

It’s easy to make the line not answer, just assign the zap channel (in zapata.conf) to a context that doesn’t exist (or does nothing).

The problem is that asterisk will not know if the line is busy/ringing/idle… so when you place an outbound call, it may pick up that line.

If you put it behind the fax machine (so eg, it gets no dial tone while the fax is in use) then when you dial out, it will just pick up and dial and not realize that it didn’t get a dialtone and that the call didn’t succeed - and you’ll be left listening to a dead line.

If you put the fax machine and asterisk in parallel, then it’s even worse - as asterisk may pick up during a fax call and start dialing, which of course will most likely kill the fax transmission.

Granted - I have not tried this for a couple of years, so there may be some kind of dialtone detection now which could alleviate some of these problems. I gave up though, and just use a dedicated fax/interac line, and use voip trunks to give me the extra capacity if I run out of POTS.

Supposedly this can do it: but I figured it wasn’t worth the effort and potential problems. YMMV

I have had success putting the Fax machine on an FXS port on a TDM card and setting the FXO port to ring the FXS extension that the fax machine is on. This is the only reliable way I have found to do what you want to do. It must be an FXS port on the TDM card, I have not been successful using an ATA.

I’m trying to do a similar thing.

I have a piece of equipment that’s intended to connect ‘in line’ with an incoming phone line, so it can pick up an outside call (under certain conditions) and seperately be operated via the local phone - but normally pass incoming & outgoing calls without interference.

I have it connected between an extension and a trunk port on a TDM800. The house phone facility works by ‘calling out’ on the trunk, but I cannot get it to correctly handle an incoming call routed to it’s extension via a ‘real’ trunk, as the dummy trunk sees it as an incoming call.

Ideally the dummy trunk would do something like ring an imaginary extension for ever on an ‘incoming’ call, but still allow outgoing calls when not in use.

The latest FreePBX 2.5.0 Beta 1.2 has an added ‘Delay before answer’ option in the Inbound Route section.

This can be set to a few second to give external equipment chance to recognise the call, or hundreds of seconds to effectively never answer at all.

Thanks to Philippe and everybody on the dev team for the updates.