VyÜlo v t²denφku: COMPUTERWORLD
╚φslo:8/94
RoΦnφk:1994
Rubrika/kategorie: TΘma t²dne

zp∞t do archivu Φlßnk∙ | rejst°φk | p°edchozφ Φlßnek

Ji°φ Peterka

Co by m∞ly um∞t programy pro sΘriovΘ komunikace

Tento Φlßnek vyÜel v tzv. tΘmatu t²dne v CW 8/94, jako t°etφ ze sΘrie Φlßnk∙ v∞novan²ch problematice poΦφtaΦov²ch komunikacφ.

Pro poΦφtaΦe PC dnes existuje pom∞rn∞ bohatß Ükßla komunikaΦnφch program∙, urΦen²ch pro tzv. sΘriovΘ komunikace - neboli pro komunikace, uskuteΦ≥ovanΘ prost°ednictvφm sΘriov²ch rozhranφ poΦφtaΦ∙ PC. P°φklady takov²chto program∙ jsou: PROCOMM, Telix ..(prosφm doplnit v²Φet a odkaz na dalÜφ Φlßnek). VÜechny p°itom majφ charakter b∞₧n²ch aplikaΦnφch program∙, a jsou provozovßny na pop°edφ - jako jedinß ·loha v rßmci jednou₧ivatelskΘho a jedno·lohovΘho operaΦnφho systΘmu MS DOS pak majφ k dispozici "cel²" poΦφtaΦ PC, o kter² se nemusφ d∞lit s ₧ßdnou jinou ·lohou.

Zßkladnφ schopnostφ vÜech t∞chto program∙ je schopnost odeslat znak p°es zadanΘ sΘriovΘ rozhranφ (tj. sm∞rem "ven z poΦφtaΦe"), a dßle p°evzφt znak, p°ijat² zadan²m sΘriov²m rozhranφm (tj. p°ijmout znak, vyslan² opaΦn²m sm∞rem).

Propojφte-li si nap°φklad dva poΦφtaΦe pomocφ sΘriovΘho kabelu a na ka₧dΘm z nich si spustφte takov²to program, mßte rßzem dispozici tzv. chat (viz v²Üe), neboli nejjednoduÜÜφ mo₧nou formu on-line komunikace mezi dv∞ma u₧ivateli. To, co u₧ivatel jednoho poΦφtaΦe pφÜe na svΘ klßvesnici, to p°φsluÜn² komunikaΦnφ program vysφlß p°es sΘriovΘ rozhranφ a sΘriov² kabel druhΘmu poΦφtaΦi, kde obdobn² program jednotlivΘ znaky p°ijφmß a pr∙b∞₧n∞ je zobrazuje. Sßm p°itom p°ijφmß vstupy z klßvesnice od svΘho u₧ivatele a odesφlß je opaΦn²m sm∞rem.

Chcete-li ke stejnΘmu ·Φelu vyu₧φt propojenφ dvou poΦφtaΦ∙ po modemech p°es ve°ejnou telefonnφ sφ¥, musφte od svΘho komunikaΦnφho programu po₧adovat takΘ schopnost prßce s tφmto modemem (zejmΘna schopnost p°im∞t jej, aby vytoΦil po₧adovanΘ telefonnφ Φφslo a navßzal spojenφ s modemem, kter² se mu ozve na druhΘ stran∞). Drtivß v∞tÜina dnes pou₧φvan²ch modem∙ naÜt∞stφ spadß do kategorie tzv. chytr²ch (smart) modem∙, a ovlßdajφ se prost°ednictvφm p°φkaz∙ ve znakovΘ form∞, kterΘ se jim posφlajφ stejnou cestou, jako vlastnφ data urΦenß k p°enosu - tedy p°es p°φsluÜnΘ sΘriovΘ rozhranφ (a na kterΘ odpovφdajφ stejnou cestou krßtk²mi znakov²mi °et∞zci). Pokud tyto p°φkazy znßte, m∙₧ete je modemu zadßvat sami, a stejn∞ tak sami vyhodnocovat jeho odpov∞di. Obvykle se ale ovlßdßnφ modemu ponechßvß na komunikaΦnφm programu.

KomunikaΦnφ program, schopn² ovlßdat modem, vßm ji₧ vcelku postaΦφ nap°φklad pro p°φstup ke stanici BBS. Ta ale m∙₧e p°edpoklßdat, ₧e na druhΘ stran∞ (tj. u vßs) mß co do Φin∞nφ s terminßlem urΦit²ch vlastnostφ, kterΘmu m∙₧e zasφlat urΦitΘ °φdφcφ k≤dy (nap°φklad pro zm∞nu barvy, smazßnφ celΘ obrazovky Φi jejφ Φßsti, posun kurzoru apod.), a on na n∞ dokß₧e reagovat. ╚inφ tak proto, aby lΘpe vyu₧ila jeho schopnostφ (hlavn∞ zobrazovßnφ). VßÜ komunikaΦnφ program by ale m∞l s touto mo₧nostφ poΦφtat, a m∞l by b²t schopen napodobovat chovßnφ alespo≥ t∞ch nejznßm∞jÜφch typ∙ terminßl∙, kterΘ p°ipadajφ v ·vahu - m∞l by tzv. emulovat alespo≥ n∞kolik znßm²m a pou₧φvan²ch typ∙ terminßl∙. Schopnost emulace r∙zn²ch terminßl∙ se vßm bude velmi hodit takΘ v p°φpad∞, kdy se ze svΘho poΦφtaΦe PC p°ipojujete k n∞kterΘmu hostitelskΘmu poΦφtaΦi v roli jeho terminßlu.

DalÜφ vlastnostφ, kterou b²vajφ komunikaΦnφ programy pro poΦφtaΦe PC vybavovßny, je schopnost p°enosu binßrnφch soubor∙. Pro tento ·Φel bylo vyvinuto n∞kolik r∙zn²ch protokol∙ (XMODEM, YMODEM, ZMODEM, KERMIT a dalÜφ, viz Φlßnek ...), a kvalitnφ komunikaΦnφ program by je m∞l "um∞t" vÜechny. Musφ se toti₧ v₧dy shodnout s prot∞jÜφ stranou na tom, kter² protokol pro dan² p°enos pou₧ijφ.

KomunikaΦnφ program, tak jak jsme si jej a₧ dosud popisovali, je vÜak pouze pasivnφm nßstrojem, kter² nevykonßvß nic z vlastnφ iniciativy, ale v₧dy jen na explicitnφ pokyn u₧ivatele. Je to prßv∞ u₧ivatel, kdo musφ "ruΦn∞" odstartovat p°enos souboru, kdo musφ °φdit pr∙b∞h komunikace s druhou stranou a reagovat na veÜkerΘ udßlosti, ke kter²m dochßzφ - nap°φklad na v²zvu k zadßnφ hesla jej musφ sßm "vy¥ukat" apod. OvÜem reakce Φlov∞ka neb²vß v₧dy nejrychlejÜφ, a to m∙₧e b²t znaΦn∞ na zßvadu - zejmΘna tehdy, pou₧φvßte-li slu₧by ve°ejnΘ telefonnφ sφt∞ a volßte n∞kam mezim∞stsky. Pak p°ichßzφ velmi vhod mo₧nost zautomatizovat ovlßdßnφ komunikaΦnφho programu, neboli p°edem naprogramovat jeho Φinnost. KomunikaΦnφ program, kter² tΘto mo₧nosti vychßzφ vst°φc, je vybaven vlastnφm jazykem (tzv. skriptov²m jazykem), ve kterΘm je mo₧nΘ jeho chovßnφ naprogramovat: nap°φklad mu lze p°edepsat, ₧e mß Φekat, dokud mu prot∞jÜφ strana nevyÜle °et∞zec "Zadejte sve jmeno:", a pak na n∞j reagovat zaslßnφm vaÜeho u₧ivatelskΘho jmΘna. Repertoßr akcφ, kterΘ lze takto p°edem naprogramovat, zßle₧φ jen na vlastnostech konkrΘtnφho komunikaΦnφho programu a bohatosti jeho skriptovΘho jazyka.

Prost°ednictvφm program∙ ve skriptovΘm jazyku (tzv. skript∙) je pak mo₧nΘ naprogramovat nap°φklad kompletnφ "relaci" u₧ivatele se stanicφ BBS, zaΦφnajφcφ vytoΦenφm telefonnφho hovoru, zadßnφm u₧ivatelskΘho jmΘna a hesla, vΦetn∞ vyzvednutφ novΘ poÜty, odeslßnφ p°edem p°ipravenΘ poÜty, °ßdnΘho odhlßÜenφ, zav∞Üenφ apod. VÜe pak probφhß maximßlnφ mo₧nou rychlostφ, co₧ krom∞ poplatk∙ za telefonnφ spojenφ Üet°φ dokonce i nervy ostatnφch zßjemc∙, kter²m blokujete u nßs tak vzßcnΘ telefonnφ linky jen po maximßln∞ nezbytnou dobu.

Pokud tomu konkrΘtnφ komunikaΦnφ jazyk vychßzφ vst°φc, je mo₧nΘ v jeho skriptovΘm jazyku napsat i takov² skript, kter² bude trp∞liv∞ Φekat na zavolßnφ jinΘho poΦφtaΦe (resp. u₧ivatele), a bude s nφm "konverzovat" bez p°φmΘ lidskΘ obsluhy. Tφmto zp∙sobem je pak mo₧nΘ naprogramovat dokonce i velmi jednoduchou stanici BBS (i kdy₧ ty skuteΦnΘ b²vajφ realizovßny pomocφ specializovan²ch program∙, vytvo°en²ch prßv∞ za tφmto ·Φelem).


zp∞t do archivu Φlßnk∙ | rejst°φk | p°edchozφ Φlßnek
Tento Φlßnek m∙₧e b²t voln∞ Üφ°en, pokud se tak d∞je pro studijnφ ·Φely, na nev²d∞leΦnΘm zßklad∞ a se zachovßnφm tohoto dov∞tku. Podrobnosti hledejte zde, resp. na adrese http://archiv.czech.net/copyleft.htm