Računalna audio sučelje wire-based telefonska mreža
Colin Fahey

A računalo može dati glas telefonskih poziva koristeći bilo koji modem i jednostavan sklop.
1. Uvod
Ovaj dokument opisuje korištenje bilo kojeg konvencionalnog modem i jednostavan sklop dati bilo koje osobno računalo (PC), sa bilo kojeg operativnog sustava, mogućnost mjesto telefonskih poziva koji svibanj uključivati glas interakcije.
Običan modem se koristi za aktiviranje telefonski žice odlaskom "off kuka," a kasnije u objavljivanju telefonski žice odlaskom "na kuka" ( ""smrznut će se)."
A jednostavan električni krug se koristi da bilo koji audio uređaj, kao što je zvučna kartica ili zvuk sučelje za osobno računalo (PC), pristup audio signala na telefonskom žicom.
Ovako, osobno računalo (PC) mogu inicirati vezu na telefonski broj, a zatim čekati za ljudska ili automatizirani sustav za odgovor, a zatim započeti razgovor na temelju govora ili drugih zvukova.
Ovaj dokument namijenjen je hobbyists zainteresirani za učenje nekoliko stvari o elektro i protokol za interakcijom s Central Office (CO) od žice povezan telefonska mreža u Sjedinjenim Državama (US).
Postoje mnoge tehnologije za omogućujući ljudima da u interakciji s glasom based systems putem telefona.
Postoji mnogo komercijalnih proizvoda i usluga ponuđenih na obrađuju sve povezane s telefonom interakcija s korporacijskom bazom podataka.
To je vrlo jednostavno pronaći hardver za obradu mnogo telefonskih poziva na jedan broj.
Telefonija je prošireno na Internet, s protokolima kao što su "Voice over Internet Protocol" (VoIP).
Računala bilo gdje na internetu može biti konfiguriran za interakciju s VoIP kroz prepoznavanje govora i sinteza govora.
Ove računala može, opcionalno, slijedite glas flowcharts izrazio je u razgovoru XML tekst datoteke (Voice XML).
Ovaj dokument je ništa za napraviti sa bilo koje od tih praktičnih rješenja problema automatski glas interakcija s poslovnim ili organizacije.
Ovaj dokument namijenjen je za zabavu, hobbyists sa malim proračunima.
2. Odricanje od odgovornosti
Izgradnjom jedan elektronički sklop, i povezuje u jedan telefonska mreža, uključuje brojne rizike.
Vi ste odgovorni za učenje o svim zakonima, opasnosti i rizika koje se primjenjuju svibanj.
Slijedi popis nekih od pitanja koja morate uzeti u obzir ako ste zainteresirani za gradnju i testiranje sklopa sličan onome koji sadržanu u ovom članku:
1. Sve informacije o električne specifikacije od telefonskih usluga je važeće samo u United States (US).
2. Zvonjenja napon na telefonski žice (90 Volts) može štetiti ljudima.
Lightning ili je pala vlast žice može dovesti do napona na telefonski žice koje mogu povrijediti ljude.
3. Vi ste odgovorni za bilo kakvu štetu na telefon tvrtke sklopove uzrokovane Vašim neovlašteno korištenje uređaja u vašem domu ili uredu.
4. Snimanje telefonskog razgovora bez izričitog odobrenja od strane uključene sve je protiv zakona.
(... Osim ako ste na vlasti! Inače, kako kažu, a ne kao oni!)
5. Vi ste odgovorni za bilo kakvu štetu na Vašem računalu uzrokovane povezuje vlastite strujni krugovi na vašem računalu.
6. Ne možete prodati bilo koji proizvod namijenjen za uporabu s telefonska mreža bez odobrenja iz FCC.
Ovaj dokument je samo jedan opis mog osobnog iskustva.
Vi ste odgovorni za učenje o zakonima i rizici od autoritativni izvori.
3. Telefon audio interface circuit
Cilj je sklop opisan u ovom poglavlju je dopustiti konvencionalnog audio snimanje i reprodukcija oprema, kao što je zvučna kartica ili audio port na osobnom računalu (PC), za slanje i primanje audio preko konvencionalne zemlji žica (žičani) telefonski priključak.
Telefonski žice i audio oprema nisu direktno povezani, spoj je samo kroz transformatore.
Obje strane sučelja su zaštićena od prekomjerne napona.
The signali su ograničena na raspon frekvencija (širina pojasa) na koje se odnosi na telefon audio (300 Hz da 3500 Hz).
U krug je samo "pasivne" komponente; sve vožnje prenaponi su vanjske.
U krug moraju se koristiti u sprezi sa modem, telefon, ili drugim circuit sposoban ide "off kuka" (donosi otpora od žice dovoljno niska da ukazuju na Central Office (CO) da je žica je u upotrebi).
Bilo bi trivijalan dodati jedan "od kuka" aspekt na ovu krug, ali vlasništvo krug sve je to već velika prepreka za mnoge hobbyists.

Izgled sklop sastavljen od

Izgled i sklopovska pločica

Shematski na telefon audio interface circuit
Možete izgraditi uređaj gotovo točno onako kako se pojavljuje gore ako je učinite sljedeće investicije:
1. Provjerite da li imate osnovnih alata: Odvijači, lemilo, nož;
2. Posjetite Radio koliba, kupovina stavke navedene u nastavku, za $ 29 nakon poreza;
3. Posjetite bilo koji hardver trgovina, kupovina dva nuts, bolts, podlošci, za $ 1.
4. Utrošiti oko četiri sata gradnje u krug prema shematski;
Ako nemate iskustva zgrade elektroničke sklopove, lemljenje, bušenje rupa i izradu električnih mjerenja, ne čine ovo Vaš prvi projekt!
Jedina osoba koji bi trebao pokušavati izgraditi ovaj je sklop osoba koji već zna za sigurni da on ili ona može graditi ga!
4. Radio Shack: svudašnji elektronike trgovine
Radio Shack je potrošačke elektronike tvrtka s trgovinama širom svijeta. Slijedi link na njihove Internet stranice:
Na njihovim stranicama možete pronaći osobu link pod nazivom "Electronic Components", koji vodi do njihovih Katalog elektronskih komponenti i odgovarajuću dokumentaciju.
A osoba može pronaći cijene za dijelove.
A osobe mogu dobiti popis od najbliže trgovine lokacijama, a karte.
Dijelovi mogu biti naređeno online.
Ja sam odlučio sagraditi moje jednostavan sklop pomoću Radio Shack dijelova, jer to znači da bilo tko drugi u svijetu se može lako reproducirati moje djelo.
Također, bilo koji dio nudi Radio Shack je gotovo zajamčeno da će dostupni za dugi niz godina na nisku cijenu.
Ovdje je popis Radio Shack dijelovima sam se graditi u krug, s katalogom brojevi:
| Qty | Description | Serial # | Price | Total |
| 1 | Project Enclosure (6"x3"x2") | #270-1805 | $ 3.79 | $ 3.79 |
| 1 | Surface Mount Modular Jack (RJ11/RJ14) | #279-0202 | $ 4.99 | $ 4.99 |
| 1 | 3-Conductor Stereo 1/8th" Phone Jack (Pkg.2) | #274-0249 | $ 2.99 | $ 2.99 |
| 1 | Component PC Board (71x94mm), 750 holes | #276-0158 | $ 2.99 | $ 2.99 |
| 2 | Audio Isolation Transformer (1:1) | #273-1374 | $ 3.99 | $ 5.98 |
| 2 | Metalized-Film Capacitor 1.0uF, 250WVDC | #272-1055 | $ 1.49 | $ 2.98 |
| 1 | 2.2K ohm 1/2W 5% Carbon Film Resistor (Pkg.5) | #271-1121 | $ 0.99 | $ 0.99 |
| 2 | 1N4733A, 5.1V, 1.0W Zener Diode (Pkg.2) | #276-0565 | $ 0.99 | $ 1.98 |
SUBTOTAL: $26.69
TAX: $ 2.07 (California 7.75% sales tax)
TOTAL: $28.76
5. Ace Hardware: ne-tako-svudašnji hardvera trgovine
JA koji je potreban bolts, podlošci, i nuts svezati na jednom telefonska utičnica u plastične slučaju moj krug.
JA je otišao to Ace Hardware, ali mogao sam se popeo na Home Depot, ili možda čak i jedan supermarket, kako bi pronašli slične dijelove.
| Qty | Description | Price | Total |
| 2 | Bolt No.8-32 4.2mm-32 | $ 0.17 | $ 0.34 |
| 2 | Washer No.8 | $ 0.10 | $ 0.20 |
| 2 | Nuts No.8-32 2" | $ 0.10 | $ 0.20 |
SUBTOTAL: $0.74
TAX: $0.06 (California 7.75% sales tax)
TOTAL: $0.80
6. Alati i pribor
U sljedećoj tablici navedene neke od predmeta JA koji je potreban za izgradnju i korištenje u krug:
| Soldering iron | $ 5.00 (approx) |
| Solder | $ 3.00 (approx) |
| Precision knife | $ 3.99 |
| Wires | $ 1.00 (approx) |
| Telephone extension cord #279-0374 | $ 5.79 |
| Male-Male mini-phono 6' extension cord (qty.2) | $ 3.00 (approx) |
| Four-wire 3-way coupler (RJ11/RJ14) #279-0447 | $ 4.99 |
7. Komentari na sklop
Ja sam ne jednom elektrotehničar.
Sam studirao različite sklopove telefon (vidi reference navedene u blizini kraju ovog članka), i ekstrakti različitih elemenata koji bi potporu svoje ciljeve dizajn.
Ako je stvarno očajan, i na svoj rizik PC nije faktor, mogli biste se povezali telefonski žice na svoj zvuk luci koristeći samo par capacitors!
To je vrlo loš ideja, jer zvonjenja napon, a moguće slučajne voltage spikes na telefonski žice, mogu oštetiti uređaji nezaštićeni.
The otporna dioda diodes u moje circuit kratki spoj prekomjerne napona.
Obavijest da su gledala na suprotnim smjerovima, tako da za određenu primijenjen napon s obzirom polarity, jedan otporna dioda dioda je ravnoteža na trenutnu normalno ponašanje, a druga je ravnoteža za reverzni-breakdown voltage bi premašiti svojim rating (npr., 5.1 V) .
Samo kada je napon prelazi naličju-probojni napon jedne od otporna dioda diodes će para u konačnici omogućiti da current flow, short-time spoja u žice koje su par diodes je povezana.
Imajte na umu da ova djela, bez obzira gdje se signali potječu.
Izmjenične struje (AC) signali iz telefonske žice koje su veće od 5,8 Volts ( 5.1 V + 0.7 V ) nakon što prođete kroz transformator će biti clipped.
(DC) Direct Current ili izmjenične struje (AC) audio signale iz audio izvora, a ne telefonski žice, također će biti clipped at 5.8 Volts.
Dakle, svaka stranka, telefonske kompanije i audio oprema, je zaštićena od prekomjerne prenaponi koji dolaze iz druge stranke.
Uređaj je stvarno par identičan sklopove. Ili audio dodatak može se koristiti za input i output.
U osnovi, oba audio signali su vezani na jednu telefonski signal.
8. Korištenje modema ići "off kuka"
8.1 Cilj je modem
Cilj je modem u ovaj sustav je stvoriti električni uvjet da telefonskih kompanija će prepoznati kao zahtjev da postane aktivni sudionik u telefonska mreža.
Ovaj zahtjev se zove "ide off kuka," referencu na telefon originalnim nacrtima koje je potrebno da korisnik lift jedan zvučnik ili mikrotelefonska kombinacija od jednog kuka.
Zahtjev za aktivaciju je gotovo odmah odobren, u djeliću sekunde.
Nakon što se žica postaje aktivan, sve druge aspekte telefonije može biti provedeno kroz audio signala.
Iako prijenosa telefonske brojeve "(biranje)" se može obaviti putem sviranja audio datoteke ( *.WAV, *.MP3 ), snimljenim audio (DAT, audio CD, traka), ili softver audio sinteza (sin() funkcije), modem je pravi sposobnost za obavljanje ove funkcije.
Međutim, treba razumjeti da je jedina svrha je modem je sa zahtjevom za aktivaciju od telefonskih žica.
Ako osoba ima neki drugi način simulacijom u off kuka uvjet (tj., jednostavno smanjiti otpor preko telefonske žice), modem nije potreban.
Međutim, modem je vrlo jeftin, uobičajena, i prikladan uređaj za obavljanje ove funkcije.
Sustav opisan u ovom članku ne zahtijevaju modem s audio snimanje ili reprodukciju mogućnosti, ponekad zvan "glas modem."
Međutim, u drugi dio ovog članka sam raspraviti mogućnost korištenja glas modem kao alternativa koristeći prilagođeni električni krug.
8.2 Tipične modem
Sam izabrao da koristite vanjski modem proizvođača Hayes zove "Accura", V.92 fax-modem s govornu poštu mogućnosti.
Bilo koju modem može se koristiti za sustav opisan u ovom članku.
I ja sam htjela vanjski modem jednostavno jer je jednostavno pridaju bilo kojeg računala, a mogu ga dovesti do prijatelja kuće za korištenje sa svojim laptop ili stolno računalo.
Iako je teško važno, ja također se smatraju mogućnost da možda Basic Stamp 2 računalo moglo koristiti RS-232 modem.
Oprez: serijski portovi (RS-232) lukama, kao PS/2 lukama, se phased out, i USB je novi standard.
Vanjski modem USB često mogu biti pozvane preko softvera kao i ako su naslijeđene "COM" port uređaja od strane drivere koji dolazi s modemom.
Tu je malo USB/RS-232 adapter (~$30) da se može koristiti za povezivanje suvremenih laptop i desktop računala na RS-232 uređaja.
Takav adapter ima odgovarajuće driver za oponašati stariju serijski port sučelje (npr., "COM" uređaj).

Hayes vanjski modem: okvir

Hayes vanjski modem
8.3 Modem naredbe
Kada je prvi modem uključen, on ulazi u državnom zove "naredbeni mod."
Ako se modem uspješno spaja na modem ili daljinsko daljinsko fax uređaj preko telefonske žice, ona ulazi u državnom zove "način rada s podatcima."
Međutim, u sustavu opisane u ovom dokumentu ne koristite modem uspostaviti "način rada s podatcima" vezi s udaljenog uređaja, tako da je modem će uvijek biti u "command modu."
Kada u naredbenom modu, modem prima naredbe u obliku običnog ASCII znakova.
Likovi su razmijenjena između modem i računalo preko serijskog kabela, ili preko driver koji omogućuje interna kartica (npr., PCI kartice) dostupan kao serijski uređaj.
U oba slučaja, programe koristiti API poziva za pristup serijske uređaje (npr., "COM1" ili "/dev/modem").
Jedan od glavnih podskup modem komandi zove "AT" (ay-tee) naredbe, i ove naredbe sve početi sa znakova "at" (ili "AT").
Kao i modemi evoluirala, popis naredbi prošireno, nudeći sve više ezoteričan značajke. Sustav opisan u ovom članku samo zahtijeva sposobnost da preuzmu s modemom "off kuka," a kasnije se vratiti na modem kako bi se "kuka o" drzave. Mogućnost biranjem znamenki, te, opcionalno, skrenite na zvučnik za praćenje poziva, su korisne osobine, ali nisu neophodni. U sljedećoj tablici navedene su modem komandi vjerojatno da će biti korišten sa sustava opisanog u ovom članku:
| Action | Command |
| On-Hook ("Hang Up") | ATH [zero] [return] |
| Off-Hook ("Pick Up") | ATH [one] [return] |
| "Dial" Digits | ATDT [digits,#,*] ; [return] |
| "Dial" Digit | ATDT [digit,#,*] ; [return] |
| Speaker Off | ATM [zero] [return] |
| Speaker On | ATM [two] [return] |
Sljedeća tablica pokazuje zamišljena slijed naredbi koristi se za mjesto telefonski poziv, u interakciji s automatizirani sustav koji koristi "touch" (DTMF) "tonovi," a zatim prekinuti poziv ( ""smrznut će se):"
| Command | Action |
| ATM 2 [return] | Speaker On |
| ATH 1 [return] | Off-Hook ("Pick Up") |
| ATDT 5551212 ; [return] | "Dial" 5551212 |
| ATDT 3 ; [return] | "Press" 3 |
| ATDT # ; [return] | "Press" Pound (#) |
| ATDT * ; [return] | "Press" Star (*) |
| ATH 0 [return] | On-Hook ("Hang Up") |
| ATM 0 [return] | Speaker Off |
8.4 AT skup naredbi
The "AT skup naredbi provodi gotovo sve modemi u postojanje.
Ovaj skup naredbi je izvorno provodi Hayes modemi.
Većina modemi su klasificirani kao "Hayes kompatibilni jer su provele skupa AT naredbe.
Sve AT naredbi mora početi s AT prefiks, a zatim naredbu pismo, i završio s ENTER(*) ključ.
(*...ENTER, CARRIAGE RETURN, CR, RETURN, '\r', 13, 0xd, Control-M, ^M)
Spaces su dozvoljeni u naredbeni string povećati command line čitljivost, ali su zanemareni od strane modem tijekom naredbu izvršenja.
Sve naredbe svibanj se upisali u gornjem slučaju bilo ili malim slovima, ali nikad miješana.
Izdao naredbu bez parametara smatra se kao izrijekom isti naredbu s parametrom od 0 (nula).
Sljedeći je smanjena popis AT naredbe.
A kompletan i detaljan popis može lako naći na Internetu putem pretraživanja koristeći ključne riječi "at modem komandi.
| Cmd | Action |
| A | Answer incoming call |
| D | 0-9, A-D, # and * (e.g., AT T D 5551212*#) |
| P | Pulse dial |
| T | Tone dial |
| W | Wait for second dial tone |
| , | Pause |
| @ | Wait for 5 secs of silence |
| ! | Flash (very brief on-hook) |
| ; | Return to command mode after dialing |
| E0 | Command echo disabled |
| E1 | Command echo enabled |
| F0 | Autoscan mode |
| F1 | 300 bps connection only |
| F3 | V.23 connection only |
| F4 | 1200 bps connection only |
| F5 | 2400 bps connection only |
| F6 | 4800 bps connection only |
| F7 | 7200 bps connection only |
| F8 | 9600 bps connection only |
| F9 | 12000 bps connection only |
| F10 | 14400 bps connection only |
| H0 | Modem on-hook (hang up) |
| H1 | Modem off-hook (pick up) |
| I0 | Product code |
| I1 | Checksum code |
| I2 | ROM test |
| I3 | Firmware and device ID |
| L0 | Low speaker volume |
| L1 | Low speaker volume |
| L2 | Medium speaker volume |
| L3 | High speaker volume |
| M0 | Speaker off |
| M1 | Speaker on until carrier detect |
| M2 | Speaker on |
| M3 | Speaker off during dialing, on until carrier detected |
| N0 | Connect only at DTE rate |
| N1 | Auto rate negotiation |
| O0 | Return to data mode |
| O1 | Initiate an equalizer retrain and return to data mode |
| P | Pulse dial |
| Q0 | Result codes enabled |
| Q1 | Result codes disabled |
| T | Tone dial |
| V0 | Numeric responses |
| V1 | Text responses |
| W0 | Report DTE speed only |
| W1 | Report wire speed, error correction protocol, and DTE speed |
| W2 | Report DCE speed only |
| X0 | Hayes Smartmodem 300 compatible responses/blind dialing |
| X1 | Same as X0 plus all CONNECT responses/blind dialing |
| X2 | Same as X1 plus dial tone detection |
| X3 | Same as X1 plus busy signal detection/blind dialing |
| X4 | All responses and dial tone and busy signal detection |
| Y0 | Long space disconnect disabled |
| Y1 | Long space disconnect enabled |
| Z0 | Reset and recall user profile 0 |
8.5 Testiranje modema
Ovo poglavlje opisuje metode za brzo potvrdi mogućnost kontrole na modem spojen na računalo.
Prva metoda je pogodna za Windows 98/NT/Me/2K/XP.
Osnovna ideja je da se početi "serijski komunikacijski" softver koji se može naći u gotovo bilo koje tipično instalaciju operativnog sustava i Windows: "HyperTerminal".
Windows 98 : "C:\Program Files\Accessories\HyperTerminal\Hypertrm.exe"
Windows 2000\XP: "C:\Program Files\Windows NT\hypertrm.exe"
(Duplo-citati gore su potrebne kada se stvaranje prečaca ili kada izvršavanju iz naredbenog retka, jer datoteku staze sadržavati razmake.)
HyperTerminal može biti pokrenut iz naredbenog retka ili putujete menia.
Pod Windows 2000\XP, na primjer, softver se mogu naći link na kraju sljedeći put menia:
Start -> Programs -> Accessories -> Communications -> HyperTerminal -> HyperTerminal
Menu hijerarhiji od vodećih Start izbornika HyperTerminal
Kada pokrenete HyperTerminal, nekoliko dijaloški okviri se pojavljuju:
HyperTerminal dialogs:
1. Connection Description: Unesite proizvoljni naziv;
2. Connect To: Odaberite luku s modemom (npr., COM1);
3. COM1 Properties: brzina bita za komunikaciju između PC i modem, itd.
Ja naveden niske bit rate (2400 bita u sekundi) između PC i modem jednostavno, jer ovo je vjerojatno da rade za svaki modem koji nije službeno antičkog.
To je zajednička za moderni modemi da komuniciraju s PC stope na oko 115200 bita u sekundi, čak i kada je brzina prijenosa podataka na telefonski žice kao što je nizak kao 9600 bita u sekundi.
Sljedeća slika prikazuje jednostavan modem sesije pomoću HyperTerminal:

Korištenje HyperTerminal da pokušate koristiti razne naredbe modem
Ova napomene iznad prikazati jednostavan način testirali modem s Windows operacijski sustav.
Postoje brojne druge "serijske komunikacije" programi za Windows i Linux.
Za Linux (ili UNIX varijanti) da biste mogli raditi nešto slično "echo atm2 > /dev/modem" na naredbeni redak, ili fp = fopen( "/dev/modem", "w" ); slijede izjave kao što su fprintf( fp, "atm2" ); na jednostavan C program.
8.6 Source code za upravljanje modem
The C/C++ računalo kod prikazan u nastavku teksta pokazuje prenošenje naredbi na modem.
Iako računalo kod prikazan u nastavku je za Windows operacijski sustav, ideje su jednostavno generalizirani za druge operativne sustave.
#include < windows.h >
HANDLE hCom = ((HANDLE)(0));
int main()
{
DCB dcb;
unsigned long int n = 0;
char * str = "COM1";
hCom = CreateFile( str, (GENERIC_READ ¦ GENERIC_WRITE),
0, NULL, OPEN_EXISTING, 0, NULL );
GetCommState ( hCom, (&(dcb)) );
dcb.BaudRate = CBR_9600;
dcb.ByteSize = 8;
dcb.Parity = NOPARITY;
dcb.StopBits = ONESTOPBIT;
SetCommState ( hCom, (&(dcb)) );
WriteFile( hCom, "ATM2\r", strlen("ATM2\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);
WriteFile( hCom, "ATH1\r", strlen("ATH1\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);
WriteFile( hCom, "ATDT5551212;\r", strlen("ATDT5551212;\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(3000);
WriteFile( hCom, "ATH0\r", strlen("ATH0\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);
WriteFile( hCom, "ATM0\r", strlen("ATM0\r"), (&(n)), 0 );
FlushFileBuffers( hCom );
Sleep(1000);
CloseHandle( hCom );
return(0);
}
Softver iznad dobiti pristup na serijski komunikacijski port (tj. "COM1"), a mi pretpostavljamo na modem je spojen na ovaj port.
Softver šalje tekst naredbi i modem učiniti sljedeće stvari:
1. Skrenite na interni zvučnik ("ATM2\r");
2. Krenite na telefonski žice "off kuka" ("ATH1\r");
3. Dial telefonski broj ("ATDT5551212;\r");
4. Put telefonski žice natrag "na kuka" ("ATH0\r");
5. Isključi interne speaker ("ATM0\r").
Na primjer računalo kod iznad pokazuje neke od relevantnih Windows API funkcije.
Međutim, na primjer računala code je vrlo nepopustljiv i ne provjerite za bilo kakve greške.
The Sleep() funkcija invocations bi se osiguralo da modem ima vremena za završetak naredbe prije napredovanje na sljedeću naredbu.
Idealno, mi bi provjeriti za tekst odgovora od modema (npr., "OK" ili "ERROR").
8.7 Modem kontrolu C++ class (Windows operacijski sustav)
Sljedeći ZIP arhiv datoteka sadrži C++ class pogodna za kontroling na modem preko Windows operacijski sustav.
To je bitno više razraditi verzija od demonstracije kod predstavio iznad.
Također, C++ class obaviti s modemom funkcionalnost tako da je portanje na drugim platformama (npr., Linux) je lakše.
A Microsoft Visual C++ 6.0 projekt je uključeno file sa izvorni kod, tako da se može izgraditi i izvršavanje koda odmah kao test.
Ali, sve što trebate su dva relevantne izvorne datoteke ( modem_control.cpp, modem_control.h ) koristiti kod u svoj vlastiti softver.
9. Koristeći sučelje
9.1 Koristeći sučelje s računalom

Oblik koji se koriste u moje eksperimente
Priloži cjepač na telefonski žice, s jedne grane ide na modem, i drugih grana ide na telefon sučelje sklopa.
Spojite dva audio žice od sklop u "ulazno mikrofon" i "zvučnik, izlaz" zvučne kartice ili audio podnožja na osobno računalo ili drugi audio uređaj.
Korištenje modema kod drugdje je opisano u ovom članku možete koristiti modem za "podizanje telefona" i "birajte telefonski brojevi."
Tada se računalo može snimati i audio reprodukcije na bilo koji željeni način.
Modem kod tada mogu se koristiti za "objesiti se na telefonski" poziv raskida.
Vi ste odgovorni za obavještavate pozive ako namjeravate snimiti bilo koji dio poziva.
(... Osim ako ste na vlasti! Inače, kako kažu, a ne kao oni!)
9.2 Koristeći sučelje s audio oprema
Priloži cjepač na telefonski žice, s jedne grane ide na običan telefon, i drugih grana ide na telefon sučelje sklopa.
Connect ili audio signal iz mikrofona sklop na ono što se umeće na pojačalo ili uređaj za snimanje.
Connect izlazni bilo koji uređaj koji proizvodi niske amplitude audio (npr., +/-1.0 Volts) ili audio utičnica na sklop.
Ne spojiti audio izlaz od stereo pojačalo u krug, jer je napona su vrlo vjerojatno da će biti vrlo prekomjerne za telefon audio.
Stereo pojačala obično imaju posebne izlaza (npr., RCA spojnice) za slanje audio izlaz na druge vrste audio oprema koja prihvaćaju audio input (npr., VCR, magnetofon, televizija, itd.); ovih low-voltage izlaza su pogodne za korištenje s sklopa opisanog u ovom članku.
Dakle, može se prihvatiti ili mjesto poziva koristeći telefon, i snimati i reproducirati audio tijekom uporabe telefona.
Vi ste odgovorni za obavještavate pozive ako namjeravate snimiti bilo koji dio poziva.
(... Osim ako ste na vlasti! Inače, kako kažu, a ne kao oni!)
10. Telefonska mreža pojmova
10.1 Studija reference
Rad na telefonski sustav je van dosega ovog članka.
Posavjetujte se reference na kraju ovog članka za neke informacije o predmetu.
Međutim, ja zanimljive raspraviti naglašava u ovom poglavlju.
10.2 Osnovni električni aspekti
10.2.1 Telefona ili modema u "spuštena slušalica" drzava
Postoje dva cilja koja je dovela do telefonski dizajn:
(1) A telefon treba biti električki "nevidljiv" na istosmjerna struja (DC), baš kao i otvoreni krug ili disconnection, kada je u na-kuka stanje;
(2) U izmjenične struje (AC) spikes koriste kako bi telefon zvoni bi trebao biti prihvaćen od strane telefoni u na-kuka drzave, kako bi se oni će prsten.
Obje od tih ciljeva su postići da je telefon dizajniran tako da ne-polarized kondenzator (ili dva) je telefon, samo link na telefonski žice kad u na-kuka države.
Ovako, istosmjerna struja (DC) ne može prolaziti, i izmjenične struje (AC) signala zvonjenja može proći do zvona ili zvonjenja krug.
Kad sam izmjeri DC otpor telefonski u na-kuka države, ona premašila 40 Megaohms.
Kad sam izmjeri DC otpornost na modem u na-kuka države, ona je premašila 40 Megaohms.
The DC naponom dobivenim od telefonskih kompanija da otkrije bilo koji otpor zbog telefoni su podignuta slušalica je prijavljena kao ponekad 48 Volts.
I izmjeri +23.02 Volts (DC), gdje sam pozvan "crvene žice" pozitivno, i "zelena žica" zemlju.
Imajte na umu da je ovo DC napon kapi dramatično kad je telefon je preuzet podignuta slušalica; sam izmjeri +7.17 Volts (DC) kad je telefon bio u off-kuka status.
Zvonjenja napon je izvijestila da se 90 Volts (16-60 Hz izmjenične struje), koje mogu ozlijediti ili uplašiti osobe pod određenim okolnostima.
10.2.2 Telefona ili modema u "off kuka" drzava
Telefoni i Modemi zahtjev za korištenje telefonski žice uz smanjenje vlastite DC električni otpor.
Ovaj uvjet je otkrivena od strane pružatelja usluga telefonskog i žica postaje aktivan.
Kad sam izmjeri DC otpor telefonski u radno stanje linije države, bilo je oko 6.83 Megaohms.
Kad sam izmjeri DC otpornost na modem u radno stanje linije države, ona je gotovo točno 1.500 Megaohms.
Podsjetiti da oba od tih uređaja je resistances da premašila 40 Megaohms kad u na-kuka države.
Zanimljivo, taj otpor je prilično visoka, tik uz ljudska's električni otpor kada se tiče žice sa suhim rukama.
Na primjer, ako sam održat žica u mojoj lijevoj ruci, i žice u mojoj desnici, s relativno suhe ruke, ja mogu dobiti otpora kao niska kao 0.5 Megaohms by squeezing čvrsto na žice.
Squeezing vrlo lako daje mi DC veći otpor, oko 1.5 Megaohms, koji je izgleda još uvijek dovoljno niska da kažem telefonskih kompanija da sam ja telefon.
(Nikad ne dotičite telefonski žice!)
Dakle, može se pretvarati uzimanje telefon ili modem podignuta slušalica samo uvođenjem jednog 1 Megaohm otpora preko telefonskih žica.
One mogu to učiniti kroz relejni kanal s kontrolom port na računalu (RS-232, parallel port, USB, etc), a modem je zgodan, jeftin, i svestran alternativa prilagođeni relejni kanal.
Kao što je gore spomenuto, telefonska tvrtka čuva se istosmjerna struja (DC) razlika potencijala (napon) preko telefonske žice za otkrivanje telefoni ide off-kuka i povratka na na-kuka države.
I izmjeri ovaj napon kao +23.02 Volts (DC) za on-kuka, i +7.17 Volts (DC) za off-kuka.
10.3 Audio signali
S telefonom u radno stanje linije drzave, "na zahtjev" izgleda da ima jedan izmjenične struje (AC) Root-Mean-Square (RMS) napon od 0.139 Volts AC.
Cijeli signal je pristran prema značajan DC napon od oko +5 Volts DC; sam izmjeri +7.17 Volts DC tijekom eksperimenta.
Audio signali su vrlo male devijacije (samo nekoliko posto) oko ovog DC napon.
To znači, na primjer, da se audio signal ne varira oko nula napon; audio signala nikad ne napravi trenutni protok u suprotnom smjeru na telefonski žice.
Ispada da je moj telefonski interface sklop pretvara u 0.139 VAC signal da se oko 0.030 VAC (tj., 30 mV AC) za korištenje putem audio opreme (npr. mikrofon ono što se umeće na zvučnu karticu).
10.4 Audio širina pojasa
Primarna je funkcija telefonski sustav kako bi se omogućilo je glasovna komunikacija između ljudi.
Sljedeći dijagram pokazuje prosječnu spektralna energija za nekoliko sekundi govora audio.

Prosječna spektralna energija (decibel scale) od nekoliko sekundi govora na cijeli zvučni spektar (20 Hz da 20 kHz). The vertical scale je u decibels, pa čak i jedna skromna smanjiti na ovaj graf pokazuje dramatične smanjiti zvuk u energiju.
The decibel ljestvica od grafikon iznad znači da niže vrijednosti na karta zapravo su narudžbe veličine manje da veći vrijednosti na grafikon.
Očito je da značajan dio ukupne energije govora zvuk je sadržana u interval od 0 Hz da 4000 Hz.
Ljudi mogu pouzdano shvatiti govor čak i kad sve audio energije izvan intervala 300 Hz da 3000 Hz se eliminira.
Međutim, subjektivna učinak ograničavanja audio energije na ovaj raspon je da glasovi muffled sound i nedostatak artikulacije.
The suptilna razlika između 'F' i 'S' je jednostavno izgubila preko telefona.
Telefonski sustav u Sjedinjenim Državama ima samo glasovni kanal koji nosi frekvencije između 0 Hz da 4000 Hz.
Međutim, glas passband je ograničena na raspon 300 Hz da 3000 Hz, i nalazi se brzo povećanje prigušenja glasa energije izvan ovog benda.

Glas širina pojasa ( 300 Hz - 3000 Hz ) unutar govorni kanal ( 0 Hz - 4000 Hz ) na telefonski sustav u Sjedinjenim Američkim Državama
Sljedeća slika je spektralna zemljište od nekoliko sekundi, tipično snimljenih telefonskih razgovora.

Spektralna zemljište od nekoliko sekundi, tipično snimljenih telefonskih razgovora (muški glas)
Iako je učestalost rezolucija je relativno niska, efekt je pojasna širina ograničena na telefonski sustav je očit.
Za eksperimentalne svrhe, audio svojstva telefonski sustav može biti simulirani s grafički ekvalizator, ili pojasni filtar u sound editing software paket, jednostavno filtriranjem sve ispod 350 Hz i sve što je iznad 3500 Hz.
10.5 Važno audio frekvencija
U "kontaktu tonova" koriste za "dial brojeve" i interakciju s automatizirani sustavi poznati su kao Dual-Tone Multi-Frequency (DTMF) signali.
Ovi tonovi mogu biti generirani jednostavno dodavanjem dvaju valova koji se kreće zajedno s pravom frekvencije, kao što je prikazano u sljedećem matrica frekvencija.
Imajte na umu da je najmanja hold vrijeme kada slanja DTMF zvuk je 50 milliseconds, a minimum release vrijeme (tihe jaz između DTMF zvuči) je 50 milliseconds.
Korištenje odgode od 200 milliseconds će vjerojatno biti pouzdaniji.
The "signal tonskog biranja, signal za uzeća," i "ring-back" zvukove također su definirane frekvencije kombinacije u United States:
11. Alternativna telefon sučelje metode
Sam uložio $30 i četiri sata da izgradimo sklop dopustiti osobnog računala za slanje i primanje zvučnih signala preko telefonskih žica.
To zahtijeva cetain vrste stručnosti i oprema.
Također, osim ako ste spremni da odu na posao proizvodnje ovaj krug, ne možete stvoriti proizvod (jeftini glas-mail ili odgovaranje) zahtijeva da ovo sučelje.
Najlakši, jeftin alternativa hardver metodu sam opisanog u ovom članku je na korištenje softverskih metoda za pristup glas mogućnosti "glas modem."
No, moram reći da u usporedbi s korištenjem prilagođeni krug, koristeći glasovni modem u skladu s posebnim softver je vjerojatno da će biti vrlo specifične za platformu i općenito vrlo bolno za program, konfigurirati i koristiti.
Korist (uz pretpostavku da imaju glas modem) je da će to biti čista softversko rješenje.
Ako koristite jedan glasovni modem i poseban softver, vaš sustav mogao biti kao jednostavan kao sljedeći dijagram.

Sustav koristi interni "govorni modem" i softver
Ovisno o Vašim potrebama, govora i podataka aspekt glas modem može se half-duplex performanse (odnosno, softver može "razgovarati" ili "slušati," ali ne oboje istovremeno), ili full-duplex.
Half-duplex svibanj dodati neke složenosti za kontroliranje softver, jer morate odlučiti kada slati i primati audio.
Glas modem digitizes telefonski žice audio i prenosi podatke preko USB ili RS-232 ako vanjske, ili preko PCI bus, ako je interni.
12. Microsoft Telephony API (TAPI)
Microsoft operacijski sustavi imaju TAPI 2.0 i TAPI 3.0 DLLs.
TAPI 3.0 može imati brojne softverske probleme, i većina ljudi koji imaju koristi Microsoft TAPI se jednostavno koristi TAPI 2.0 (što je gotovo sve željene funkcionalnosti) umjesto TAPI 3.0.
Koristite "wave/in" i "wave/out" uređaja da biste dobili pristup glas modem, audio potoci.
Pogledajte TAPI knjiga u reference odjeljku ovog članka. Knjiga je stara, ali TAPI 2.0 opisuje u detalj.
13. Java Telephony API
Ne znam ništa o Java Telephony API.
Međutim, Mislim da je u korist se neovisno o operativnim sustavima, i vjerojatno je mnogo jednostavnije abstractions od Microsoft TAPI!
14. Razno komercijalni proizvodi
Poslovni, rack-mounted hardverskih sučelja na više vanjske telefonske žice su sposobni za razmjenu podataka s računala glas.
"Voice Over IP" (VoIP) proizvode, kao što je "Internet telefoni," sada su svugdje (npr., "Skype)."
Očito računalni softver lako mogu dobiti pristup audio za takve telefonske veze.
15. Reference
Best, Najobuhvatniji vodič na telefon sklopove sam naišao na internetu:
Druga interesantna reference:
Vrlo smiješan (i ludi) platiti vodič-telefoni oko Sjedinjenim Američkim Državama i Kanadi:
(Pogledajte na "vrhu contributors" of pay-telefonski brojevi, telefon audio uzoraka, i telefonski slike.)
16. Knjige
16.1 Understanding Telephone Electronics (4th ed)
Understanding Telephone Electronics (4th ed);
Newnes; 2001;
Stephen J. Bigelow, Joseph J. Carr, Steve Winder;
$25.45 US (2001)
Ova knjiga opisuje mnoge aspekte telefon sklopove i rad je telefonska mreža u SAD-u.
Postoji mnogo detalja o sklopove i protokoli; sve iz telefonski na telefonska mreža sama.
Bez sumnje vrlo tehnološku je sada drugačije, ali ova knjiga je vjerojatno nešto više praktične nego povijest knjiga.
16.2 Windows Telephony Programming: A Developer's Guide to TAPI
Windows Telephony Programming: A Developer's Guide to TAPI;
Addison-Wesley; 1998;
Chris Sells;
$33.95 US (1998)
The Microsoft Telephony API (TAPI) je nepotrebno messy i konfuzno, i sada je veoma zastario. Knjiga je gore spomenuto može biti samo knjiga ikad objavljenih o Microsoft Telephony API (TAPI).