Ključne riječi:
Elektronička pošta
Obavještavanje o prispjeću elektroničke pošte
Internet usluga
Telekomunokacijska usluga
CTI (Computer Telephony Integration)
|
|
Sažetak
vrh stranice
Integracija Internet usluga i telefonskih
usluga otvara novo područje za razvijanje telekomunikacijskih usluga. Jedan od primjera
su i usluge koje koriste telefonsku mrežu za obavještavanje korisnika o prispijeću nove
elektroničke pošte (E-mail Alert System-EMA). EMA sustav je CTI (Computer Telephony
Integration – integracija telefonije i računala) aplikacija koja provjerava korisnički
elektronički poštanski pretinac (user’s mailbox) i putem telefona obavještava
korisnika o prispijeću nove elektroničke poruke. To eliminira potrebu stalnoga spajanja
na Internet. EMA sustav razvijen je u Institutu za komunikacijske sustave (ETK/D)
Ericssona Nikole Tesle kao distribuirana i konkurentna aplikacija. Korisnik putem Web
stranice može mijenjati parametre i notifikacijski telefon na koji želi biti
obaviješten. EMA sustav sastoji se od sedam modula, a komunikacija se temelji na COM
(Component Object Model) tehnologiji. Ovaj članak opisuje strukturu EMA sustava, njenu
implementaciju te prednosti za korisnika.
Uvod
vrh stranice
Svjedoci smo velikih promjena u
telekomunikacijama. Računala i telefonija ujedinjuju se u novu granu za razvoj
telekomunikacijskih usluga.
Danas preko 60%
prometa u telekomunikacijskim mrežama čini govor, dok preostalih 40% zauzima podatkovni
promet. Predviđa se da će u sljedećih pet godina doći do nagloga rasta podatkovnoga
prometa, koji će zauzimati preko 80% ukupnoga telekomunikacijskog prometa, uz tendenciju
daljnjega rasta.
Jedna od
najpopularnijih Internet usluga je elektronička pošta (e-mail). Korisnik na
jednostavan način može komunicirati i razmjenjivati podatke s drugom osobom. Prema
istraživanjima, prosječan Internet korisnik svakodnevno dobiva pet do šest
elektroničkih poruka. Jedan od najvećih nedostataka Internet usluga jest to što
korisnik za vrijeme rada mora biti neprekidno spojen na Internet kako bi konstantno imao
dostup svome elektroničkom poštanskom pretincu (mail-box) ili ga periodički
provjeravati ako želi odmah biti obaviješten o prispijeću nove elektroničke pošte. U
tome slučaju je korisnička telefonska linija stalno zauzeta dok periodičko
provjeravanje korisniku oduzima previše vremena. U nekim situacijama to čak nije niti
moguće, primjerice, ako korisnik nije pokraj svoga Internet priključka. Time je
efikasnost usluge elektroničke pošte znatno smanjena. Sličan problem pojavljuje se kada
se poslužitelj elektroničke pošte (Mail Server) nalazi u sklopu privatne interne
mreže kompanije u kojoj
radi korisnik i zaštićen je od neovlaštenoga pristupa (firewall). Kada se
korisnik ne nalazi na svome radnom mjestu i nije priključen na privatnu mrežu ne može
čitati svoju elektroničku poštu.
Rješenje toga
problema predstavlja EMA sustav koji integrira uslugu eletroničke pošte i telefona.
Sustav će umjesto korisnika provjeravati sandučić za eletroničku poštu i inicirati
poziv na telefon (fiksni ili mobilni) kako bi generirao obavijest o primitku pošte. EMA
sustav sastoji se od sedam konkurentnih i dis-tribuiranih modula. Komunikacija između
modula se temelji na Component Object Model (COM) tehnologiji.
Izvedba i
funkcionalnost EMA sustava opisani su u prvome poglavlju. Drugo poglavlje opisuje module i
komunikaciju između modula. Rješenje konkurentnosti u EMA sustavu objašnjeno je u
trećemu poglavlju.
1.
EMA sustav
vrh stranice
Korisnik
EMA sustava može biti svatko tko posjeduje telefonsku liniju i elektronički poštanski
pretinac na poslužitelju za elektroničku poštu koji podržava POP3 i IMAP4 protokole.
Kako bi se
zadovoljile različite potrebe korisnika, razvijene su dvije verzije EMA sustava –
poslovna i javna.
Poslovna verzija
(slika 1) namijenjena je
kompa-nijama s vlastitom intranet mrežom. Poslovna verzija podržava do 5 000
registriranih korisnika, od kojih do 1 000 može istodobno biti aktivno u procesu provjere
elektroničkih poštanskih pretinaca. Poslovni EMA sustav koristi analognu telefonsku
liniju prema PBX centrali te bazu podataka za pristup (Access Data Base).
Javna verzija (slika 2) podržava do 50 000
korisnika, od kojih do 5 000 može biti istodobno aktivno, te koristi ISDN veze prema PBX
centrali. Zbog većega broja korisnika kao baza podataka koristi se SQL Server.
Funkcionalnost
Funkcionalnost
EMA sustava dijeli se na:
- Registraciju,
- Aktivaciju,
- Obavještavanje korisnika,
- Deaktivaciju,
- Naplaćivanje.
Registracija
Za korištenje
EMA sustava, korisnik mora biti prvo registriran; mora dobiti vlastiti korisnički
identifikator (UID – User Identification Number) i osobni identifikator (PIN – Personal
Identification Number). Registriranje obavlja administrator na upravljačkoj ploči (Console),
koja je integralni dio aplikacije ili sam korisnik putem Web-a. Korisnički se podaci
spremaju u bazu podataka.
Aktivacija
Nakon
registriranja, korisnik može aktivirati funkciju. Aktivacija se može obaviti putem Web
stranice. Korisnik mora specificirati poslužitelja(e) preko kojih dobiva elektroničku
poštu, s pripadajućom prijavom (log in), lozinkom (password) i
specificiranim elektroničkim porukama po čijem se dospijeću aktivira EMA sustav. Ako
korisnik prihvati poziv unosom odgovarajućega PIN-a, poziv se smatra uspješnim. U
protivnome, poziv se ponavlja definirani broj puta, u određenome vre-menskom razdoblju.
Obavještavanje korisnika
Nakon aktiviranja
sustava, korisnikov se elektronički poštanski pretinac periodički provjerava. Prilikom
prispijeća definiranih elektroničkih poruka inicira se poziv na definirani telefon.
Deaktivacija
Sustav se može
deaktivirati na nekoliko načina:
- unosom deaktivacijskoga koda,
nakon uspješnoga poziva,
- specificiranjem deaktivacijskoga
vremena, putem Weba,
- postavljanjem funkcije u pasivno
stanje, putem Weba,
- automatski, ako broj neuspješnih
poziva dođe do definirane granice.
2.
Moduli i komunikacija u EMA sustavu
vrh stranice
EMA sustav
razvijen je kao distribuirana i konkurentna klijent-poslužitelj aplikacija koja se
sastoji od sedam modula: Controller, Console, Voice Machine, Mail Checker, Web
Interface, Web Handler i Database.
Moduli
Controller, Mail Checker, Voice Machine i Web Hendler razvijeni su pomoću
programskih jezika C i C++. Modul Web Interface je razvijen uz korištenje Java
Script, VB Script, ASP i HTML.
Procese u EMA
sustavu možemo podijeliti u tri glavna sloja: prezentacijski, aplikacijski i podatkovni
prema Microsoftovoj arhitekturi Internet aplikacija (Microsoft Distributed Internet
Applications Architecture - DNA), što je prikazano na slici 3.
Controller
je glavni (centralni) modul u EMA sustavu. On prosljeđuje podatke od Web Interface
modula prema bazi podataka i šalje zahtjev Mail Checker modulu
za provjeru korisničkoga elektroničkog poštanskog pretinca. Prilikom prispijeća nove
elektroničke pošte modul Controller šalje zahtjev Voice Machine modulu
kako bi se obavijestio korisnik. Rezultati dobiveni
od Voice Machine modula se, nakon obavještavanja korisnika, vraćaju natrag u
modul Controlle. Modulu Controller se također prosljeđuju svi zahtjevi
dobiveni od modula Console.
Web Interface je
sučelje prema korisnicima EMA sustava. Putem ovoga sučelja omogućuje se registriracija
novoga korisnika, promjena parametra, promjena PIN-a i informiranje o PIN-u u slučaju da
ga je korisnik zaboravio (slika 4).
Promjena
parametra uključuje:
- Vrijeme i datum aktivacije i
deaktivacije,
- Pasivno razdoblje (npr. preko
noći),
- Telefonski broj na koji se
obavještava korisnika,
- Provjeravanje do tri korisnička
elektronička poštanska pretinca,
- Mogućnost selektiranja do 10
elektroničkih adresa o kojima korisnik želi biti obaviješten (elektroničke adrese od
posebnoga interesa za određenoga korisnika) i dodatni kriterij za deaktivaciju.
Voice Machine
povezuje EMA sustav s telefonskom mrežom koristeći analogno ili digitalno (ISDN)
sučelje. Modul Voice Machine dobiva od modula Controller zahtjev za
obavještavanje korisnika i rezultate poziva vraća u modul Controller.
Mail Checker je
sučelje EMA sustava prema Internet/intranet poslužitelju elektroničke pošte (Internet/Intranet
Mail Server). On realizira zahtjeve dobivene od modula Controller i rezultate
vraća u modul Contoller. Trenutačno Mail Checker podržava do 20
simultanih veza prema Internetu/intranetu. Protokol koji se koristi za komunikaciju je
POP3. Međutim, ako neki poslužitelj elektroničke pošte ne podržava POP3 protokol na
pristupnoj točki (port) 110, Mail Checker će pokušati uspostaviti
komunikaciju s poslužiteljem elektroničke pošte koristeći IMAP4 protokol na pristupnoj
točki (port) 143.
Web Handler
je sučelje prema bazi podataka u EMA sustavu. Active Server Pages (ASP) ima
interpretacijsku skriptu na poslužiteljskoj (server) strani koja omogućava
pokretanje Visual Basic skripte na Web poslužitelju. Ta skripta poziva Web
upravljački sklop (Web Handler) i šalje rezultat putem Web poslužitelja (Web
Server) do Web sustava za pregledavanje (Web Browser). ASP skripta komunicira s bazom
podataka putem ADO-a (ActiveX Data Object). Svaki odvojeni zahtjev Web klijenta je
nezavisan od ostalih zahtjeva.
Console je
modul namijenjen administratoru, a služi za pružanje usluga korisniku. Pomoću Console
administrator može:
- Pokrenuti i zaustaviti EMA sustav,
- Promijeniti podatke u bazi
(dodavanje novoga korisnika, brisanje korisnika, pregled i promjena kori-sničkih
podataka),
- Provesti operacije vezane uz
naplatu korištenja usluge (ako je riječ o javnoj verziji),
- Pregledati datoteke koje sadrže
informacije ve-zane uz pogreške i događaje unutar modula EMA sustava (log datoteke)
uz mogućnost ispisa izvještaja,
- Promijeniti parametre.
Modul Database
pohranjuje korisničke podatke potrebne za korištenje EMA sustava. On sadrži
informacije o samome korisniku kao i podatke o aktivaciji korisnika. U javnoj verziji EMA
sustava postoje dodatni podaci o naplati. Pristup bazi omogućen je putem ADO kroz Controller
i Web Interface. ADO omogućava nezavisni pristup bazama podataka (različite baze
podataka koriste isti kod) i jednostavnost upotrebe.
Na slici 5. prikazana je komunikacija
između modula prilikom registracije novoga korisnika, aktiviranja usluge, provjere
elektroničkoga poštanskog pretinca i prilikom telefonskoga obavještavanja korisnika. Da
bi mogao koristiti EMA sustav korisnik se mora registri-rati putem Web-a ili Console.
Korisnički podaci će se proslijediti u bazu podataka i korisnik će automatski primiti
svoj PIN na svoju elektroničku adresu. Nakon što dobije PIN korisnik može aktivirati
uslugu EMA sustava putem modula Web Interface ili Console. Zahtjev za
aktivaciju usluge bit će poslan modulu Controller koji će uzeti korisničke
podatke iz baze podataka. Controller će poslati zahtjev modulu Mail Checker
za periodičko provjeravanje korisnikova elektroničkoga poštanskog pretinca. Prilikom
prispijeća nove elektroničke poruke modul Mail Checker šalje obavijest modulu Controller.
Korisničke podatake Controller će proslijediti modulu Voice Machine koji
će korisnika glasovnom porukom obavijestiti o prispijeću elektroničke pošte. Korisnik
mora prvo utipkati svoj PIN i odlučiti hoće li deaktivirati uslugu ili će usluga ostati
aktivirana.
3.
Rješenje konkurentnosti
vrh stranice
Kao što
je već navedeno, EMA sustav je razvijen kao distribuirana i konkurentna Internet
aplikacija. Konkurentnost u EMA sustavu postoji između procesa i thread-ova1,
simultanoga pristupa bazi podataka i kod Voice Machine modula (slika 6).
Više-procesna
konkurentnost (multiprocess con-currence) riješena je operativnim sustavom. Controller
konkurentno obrađuje zadatke dobivene od drugih modula (poruke od modula Mail Checker,
zahtjev modula Voice Machine za obavještenje korisnika, itd.).
Problem
konkurentnosti simultanoga pristupa podacima u bazi podataka riješen je upotrebom ADO-a.
ADO osigurava koegzistenciju višestrukih zahtjeva za podacima od modula Controller,
Web Handler ili Console zaključavajući odgovarajući zapis u bazi (MS
Access i SQL Server).
Multi-thread
(više nitna) konkurentnost unutar procesa riješena je korištenjem Win32
sinkronizacijskih objekata i upotrebom COM tehnologije. Controller
se sastoji od tri thread-a: Central Thread (CT), Job Distribution Thread (JDT) i
Job Completition Threads (JCT). Također, konkurentnost između thread-ova
postoji i u modulu Mail Checker, prilikom provjere korisničkih elektroničkih
poštanskih pretinaca.
Problemi se
javljaju kada dva konkurentna thread-a moraju koristiti iste podatke. Zbog toga su
korišteni sinkronizacijski objekti – thread “zaključa” podatak na kojemu
radi tako da niti jedan drugi thread u tome tre-nutku nema pravo pristupa tome
podatku.
U Voice
Machine modulu također dolazi do konkurentnosti u trenutku kada se u isto vrijeme
moraju obavijestiti dva ili više korisnika o prispijeću elektroničke pošte. Ovisno o
broju (hardverski) raspoloživih kanala prema javnoj telefonskoj mreži PSTN (Public
Switched Telephone Network) zaposijeda se prvi slo-bodni kanal kako bi se poziv mogao
obaviti. Kada su svi kanali zauzeti, modul Voice Machine čeka dok se neki kanal ne
oslobodi. Ta konkurentnost naziva se istodobna raspoloživost hardvera (hardware
parallel ability).
Zaključak
EMA sustav je
tipičan primjer aplikacije koja pripada novome svijetu telekomunikacija u kojemu se,
danas odvojene mreže PSTN i podatkovna mreža, sjedinjuju. On uspješno rješava
integraciju telefonskih usluga i Internet usluga elektroničke pošte. Korisnici će biti
obaviješteni o prispijeću nove elektroničke pošte putem telefona bez spajanja na
Internet. Da bi se zadovoljile korisničke potrebe EMA sustav je razvijen u dvije verzije:
kao javna i poslovna verzija. U članku su navedena rješenja integracije računala i
telefonije, upotreba različitih programskih jezika i nekoliko tipova konkurentnosti
procesa i zahtjeva sinkroniziranosti.
Literatura
[1] Frank D.,
Lučić H., Opsenica M., Pukšec J., Žic M., Brajković S., Maričić V.: The EMA System:
A CTI-Based E-mail Alerting Service, IEEE Communications Magazine, vol. 38, no. 2,
February 2000, pp. 122-128.
[2] Maričić V.,
Zalar B., Filjar D., Žic M., Opsenica M., Frank D.: EMA System: Another application for
future telecom world, Proc. of the 5th Conference on Telecommunication ConTel99, Zagreb,
Croatia, 1999, pp. 379-384
[3] Opsenica M.,
Frank D., Pukšec J.: EMA System and Concurrence Solution, Proc. of SoftCOM ‘99 Conf.,
Split-Rijeka-Trieste-Venezia, Croatia-Italy, 1999, pp. 279-287.
[4] Žic M., Frank
D.: A Database Client Technology in E-mail Alert System, Proc. of SoftCOM ‘99 Conf.,
Split-Rijeka-Trieste-Venezia, Croatia-Italy, 1999, pp. 289-298.
[5] Eckel B.:
Thinking In C++, MindView Inc.,
Published by Prentice Hall Inc., 1998.
[6] MSDN Library,
edition of July 1999,
(http://www.microsoft.com/msdn/).
[7] Box D.:
Essential COM, Addison Wesley Longman inc., 1998.
[8] Hart J. M.:
Win32 System Programming, Addison Wesley Longman inc., 1997.
vrh stranice |