uses Ext.comment /* From: David Barts Subject: Tell telemarketers to SIT on it! Date: Wed, 21 Jun 2000 06:04:06 +0000 Organization: Posted via Supernews, http://www.supernews.com Newsgroups: comp.lang.forth Lines: 227 Message-ID: <39505AD6.C455F71E@ricochet.net> X-Complaints-To: newsabuse@supernews.com X-Mailer: Mozilla 4.51 [en] (X11; U; Linux 2.0.36 i686) X-Accept-Language: en MIME-Version: 1.0 If you're like me, you hate to get calls from telemarketers attempting to sell you crap you have no need for. And did you ever notice the irritating feature that they so disrespect your time that there's an annoying pause between when you answer (saying "hello? hello? hello?" to a dead line) and when they finally start talking? (I often use this as the cue to hang up on the bastards; a real person I'm interested in talking to always responds instantenously to my first "hello".) And neither that, nor letting your answering machine really helps, because the a**holes keep calling back until you answer personally and tell them to bug off. Don't try leaving a message on your machine that you don't take marketing calls; that doesn't work either, since they just hang up on answering machines without answering. Wait a minute, you're saying. What on earth does this have to do with Forth? I've long surmised (correctly) that the reason for this annoying delay is that the scumbags use autodialers and don't particularly care about staffing their call centers well enough so that one gets connected from the autodialer to a felon serving five-to-ten for credit card fraud[1] promptly. Hence, the pause while you sit in the queue briefly and until the a phone rings and is answered. One thing that _does_ interest telemarketers is the desire not to waste outbound lines dialing disconnected or invalid numbers. The CCITT (an international telecom standards group) has defined a set of three tones (called special information tones, or SIT for short) that are to appear at the start of any recorded message indicating a call that cannot be completed. No doubt you're familiar with the "do-dah-deee" that such recorded messages all start with. That's SIT. I recently had someone mention to me that many autodialers used by telemarketers not only detect SIT and disconnect immediately, they also flag the number in question as invalid and purge it from the list. "Forth!" you say, "This is comp.lang.forth, not alt.telemarketers.die.die.die, you nitwit!" I'm getting to that. A little work with a search engine comes up with the page http://www.teltone.com/telecom_ics/support/datasheets.html, which contains a PDF document describing their Part No. M-984-02, Special Information Tone Detector. From this, we learn that the magic tones are 950, 1400, and 1800 hertz. Nothing on the timing of the tones, however. Now, it just so happens that a few weeks ago I was playing around with gForth and the sound card on my Linux box (see audioout.fs and sine.fs, attached). Hmmm, let's see: */ \ include sine.fs uses Audio.sine 0 value tonelen 0 value restlen : sit open-audio to restlen to tonelen 950 hertz tonelen msec play restlen msec rest 1400 hertz tonelen msec play restlen msec rest 1800 hertz tonelen msec play close-audio ; /* A little experimentation reveals that a tone length 750 ms and a rest length of 50 ms sounds pretty realistic. So I take the answering machine over to the computer table, place the side with the condenser mic up against the speakers connected to the computer, enter: 750 50 sit hit the "record new message button", push the return key after the machine beeps, and record my new message. I'll keep anyone interested posted on the results. Feel free to join in the experiment yourself; you have nothing to lose but your junk phone calls and a whole world of privacy to gain! [1] I'm not making that up, either. Many outbound telemarketing firms in the US have contracts with prison industries in various states. -- David W. Barts (davidb@scn.org) / http://www.scn.org/~davidb Oakland, CA, USA */ /* : test 750 50 sit ; */