Hello! Questions surrounding this have been asked previously, I have not found a direct reply.
Can FreePBX check for a dialtone before dialing out, and if there is not one, move on to the next line?
Here’s the background / problem I’m trying to solve:
Our setup uses one phone line from the cable company which converts to copper wire at the modem in the building as well as three other coper wire lines from the telephone company. Copper wire is more reliable than internet in my area, so I’m stuck with that for now.
We use the cable company line for our outbound calls, as it’s the newest and the line our clients are least likely to phone in on. Every once in a while (like today), the line is dead for 30-60 minutes. The cable company has is happy to comp us the time (about 3 bucks each time it happens), but since it’s such a small amount of time, they can’t figure out what the problem is. I want the phone system to find a dialtone before it dials out, or in some other way, test the line before attempting to dial. Do you have any other way we can accomplish this?
The cards and analog telephony in general uses voltages for call control. Dialtone is mostly for humans and is generally unnecessary from a technical perspective.
On the cards if the line is providing > 9vDC it will probably be seen as valid.
Or just listen to the earpiece , if you have ‘battery’ you should hear DTMF tones as you press buttons, also as you ‘hook-flash’ with your finger will make an audible click.
Well it’s working now. Next time it happens, I will try the DTMF tone thing. It doesn’t really get me to where I need to be as far as selecting an outgoing line, but maybe the results will help us continue to troubleshoot the problem. Thank you for your help!
@dicko
Interesting. So I can put a little script together that tells FreePBX to “answer” the line and listen for the buzz, then dial out if there is something there. If not, go on to the next line in the dialing plan? Did I get that right?
should (maybe) exit with 0 as soon as it detects any sound on the receive channel of dahdi channel 1, hopefully the ‘dial-tone’ , and with 255 if there is not sound within 5 seconds. You can call it perhaps with asterisk’s system() command in your dialplan