Blog opće IT prakse

srijeda, 18.04.2007.

Interakcija Flash ActionScript-a sa drugim programskim jezicima

Tijekom rada na jednom projektu ukazala mi se potreba da upravljam jednom Flash animacijom iz svoje aplikacije (pisane u VB-u).

Flash se na Windows računalo snimi kao ActiveX (ocx) datoteka te ga je kao takvog moguće uključiti u projekt na kojem radite. Swf datoteku je moguce loadati u ActiveX kontrolu funkcijom LoadMovie sa parametrom putanje i naziva .swf datoteke.


Komunikacija sa ActionScript-om se odvija pomocu slijedećih funkcija:

1.) Javno je dostupna funkcija FSCommand iz ActiveX kontrole. To znači da kad god u ActionScript-u pozovete FSCommand funkciju u ActionScriptu da će se "okinuti" i ista funkcija ActiveX kontrole u vašem projektu.

2.) Varijable u ActionScript-u čitate i pišete funkcijama SetVariable i GetVariable.

3.) Kao šećer na kraju navodim funkciju CallFunction kojoj možete proslijediti XML formatiran parametar npr: [invoke name=''Brisanje'' returntype=''xml''][arguments][string]T[/string][/arguments][/invoke]' (zamijenite znak [ sa < i ] sa >) ukoliko se vasa Action Script funkcija zove Brisanje i želite joj proslijediti parametar "T" (bez navodnika).


Inače u zaglavlju ActionScript koda morate upisati slijedeću import instrukciju: import flash.external.*;


18.04.2007. u 14:35 • 0 KomentaraPrint#

ponedjeljak, 16.04.2007.

Disconnected recordsets

Jedan od feature MS ADO-a kojem se ne mogu dovoljno nadiviti su disconnected recordsets.


Moguća pitanja i odgovori


Što su disconnected recordsets ?

To su rezultati SQL upita na bazu podataka. Dakle, polja i vrijednosti iz jedne ili više tablica, view-ova, rezultati stored procedura, funkcija i sl.. U Oracle (i ODBC) terminologiji su poznati i pod nazivom resultsets.


Što disconected recordsets čini tako posebnim ?

To što ne morate imati otvorenu vezu (connection objekt) na bazu podataka. Podacima u rekordsetu možete mijenjati podatke, spremati lokalno na disk i u bilo kojem trenutku poslati update na bazu (nakon nekoliko dana i izgašenog kompjutera).


Gdje bi bila moguća primjena disconnected rekordseta ?

Zamislimo da moramo prihvatati podatke sa nekog web servera (dakle, preko Interneta). Za klasičan client-server tip konekcije morali bi listener baze ostaviti otvorenim na Internetu što je potencijalno veliki sigurnosni rizik.

Microsoft je napravio veliku stvar uvođenjem XML formata recordseta što ga čini pogodnim za "obični" HTTP transport što znači da možemo prijem recordseta vršiti tako što ćemo u .Open funkciju recordseta upisati web adresu (npr: rs.Open("http://www.moj-server.com/tablica.asp")). Kod u samoj .asp (ili .aspx) stranici će se spojiti na bazu i vratiti recordset kao XML stream.


Zar i ovakav tip prijenosa podataka nije potencijalno sigurnosni problem ?

Točno, međutim IIS (Microsoftov web server) se može dodatno osigurati SSL i client certifikatima što će sam prijenos enkriptirati a client certifikati učiniti da samo određeni korisnici mogu pristupiti podacima i činiti update (kao i sve druge operacije nad podacima).


A zašto bi to netko koristio ?

Ukoliko vam treba siguran (navodno ne postoji apsolutna sigurnost) i jednostavan način za prijenos podataka putem Interneta a ne želite previše ulagati ili nemate previše sredstava za ulaganje u VPN ili slična rješenja onda se ovakav tip prijenosa čini idealnim. Vrijedi spomenuti i kako je kodiranje prilično jednostavno te za demonstraciju načina funkcioniranja treba napisati sve skupa oko 20 linija koda.


Koje su tehničke pretpostavke za testiranje i korištenje ove tehnologije ?

-MS ADO minimalno verzija 2.5
-MS XML 3.0 SP1
-MS IIS (opcinalna konfiguracija SSL i client certifikata)
-Znanje jednog od programskih jezika iz MS Visual Studio paketa

16.04.2007. u 12:06 • 0 KomentaraPrint#

subota, 14.04.2007.

VoIP doma - do it yourself

S obzirom da su cijene telefoniranja preko VoIP providera na netu stvarno povoljne i pošto neki od njih nude i besplatno telefoniranje kroz određeno razdoblje, počeo sam razmišljati o zatvaranju linije kod postojećeg providera fiksne telefonije i potpunom prelasku na VoIP.

Otvorio sam account kod jednog od providera na netu i obučio ukućane kako izabrati ili ukucati novi broj.

Međutim, cijela stvar je ispala prilično komplicirana za ukućane jer im se nije svidjelo što moraju stavljati slušalice na glavu i pikat po kompjuteru da izaberu broj. Na kraju su potpuno prestali koristiti VoIP i jednostavno nastavili koristili postojeći analogni bežični telefon.

Uz sav moj ushit oko otkrivanja načina na koji se može uštedjeti novac za telefonski račun, moji ukućani, a vjerujem da je takva stvar i sa većinom ljudi, očito ne prihvaćaju informatičke ideje ukoliko im nisu praktične čak i ako to donosi nekakvu uštedu.

Nametnulo se pitanje može li se na bilo koji način iskoristiti postojeći analogni telefon za VoIP telefoniranje preko Interneta a da korisnici i ne primijete nekakvu promjenu ?

Odgovor glasi - MOŽE !

I što je još bolje, za to vam ne treba biti uključeno računalo. Ono što vam je potrebno je uređaj pod nazivom Linksys SPA3102 koji se može nabaviti kod više dobavljača u Hrvatskoj. Ovo inače nije reklama nego ako je netko još zainteresiran za istu stvar da zna što treba napraviti.

Sam uređaj se jednostavno spaja na na mrežni priključak vašeg aDSL modem ili routera a može i sam poslužiti kao mrežni router. Konfiguracija je nešto teža stvar, iako kako vidim na Internetu VoIP provideri su već ostavili upute za konfiguraciju ovog uređaja pošto je očito prilično popularan.

Kako je VoIP telefoniranje ustvari biranje iz matične zemlje providera tako bi za biranje broja u Hrvatskoj morali prvo ukucati međunarodni izlazni kod (obično 00), pa broj zemlje (385 za Hrvatsku) pa predbroj područja (1 za Zagreb) i tek na kraju sam broj. To znači da bi ukućani za pozivanje broja svojih prijatelja morali birati prvo 003851 za brojeve koje su do tad birali bez toga. Iako to nije teško za naučiti, pomislio sam da je opet prekomplicirano i pronašao nešto što se zove dialplan i nakon par sati provedenih na Internetu i tehnikom pokušaja-padova uspio doći do dialplan stringa koji u potpunosti eliminira potrebu za biranjem 00385 za fiksne u Zagrebu ili drugim podrucjima, mobilne telefone kao i brojeve za hitne slučajeve 92, 93, 94, točno vrijeme 95, informacije 988 ili novi broj za hitne slučajeve 112. Ono što mi još predstoji su besplatni telefoni 0800 xxx. što nisam do sad napravio samo iz razloga nedostatka vremena. Besplatni i telefoni za hitne slucajeve se u stvarnosti i ne biraju preko VoIP-a (pitanje je i dal su dostupni) nego se u dialplanu jednostavno naznači da se kod biranja tih brojeve koristi stara POTS (plain old telephony service) linija. Ono što neću napraviti su komercijalni telefoni (062 xxx.).

Moji ukućani sad i nisu svjesni razgovaraju preko VoIP, ja uživam u otprilike 200 kuna manjem telefonskom računu svaki mjesec a da svega toga, kao što rekoh, nisu niti svjesni. Morao sam sve ostaviti istim - čak i moje kukanje na visok telefonski račun! Na taj način sam siguran da uz ovo unaprijeđenje neće nadoknaditi uštedu sa više telefoniranja... Inače, liniju kod postojećeg providera još uvijek nisam zatvorio jer bi time ostali bez telefonskog broja.
Sad kad sam to spomenuo možda bi neki od postojećih (ili novih) domaćih providera mogli uvesti uslugu trajnog preusmjeravanja postojećeg telefonskog broja na sip account od vašeg VoIP providera (za naknadu manju od pretplate naravno) što bi u potpunosti eliminiralo potrebu za postojećim linijama, a osim registracije providera u potpunosti oslobodilo bilo kakve veze, usluga ili obaveza spram korisnika. Ideja je tu, provideri javite se, ovo mi se čini kao prilično jednostavan način za zarađivanje novaca.

Inače sam uređaj košta oko 800 kuna a nije jedini od Linksysa koji čini istu stvar. Postoje i nešto jeftinija rješenja iz iste serije SPA (oko 600 kuna), ali sam se na osnovu preporuka na Internetu odlučio upravo za ovaj uređaj.

Uređaj ima i dodatne "feature" poput fail-back funkcije ukoliko je Internet veza prezasićena da prebaci na staru liniju. Ukoliko isključite uređaj vaš telefon će normalno nastaviti funkcionirati bez potrebe za premještanjem žica ili slično.



14.04.2007. u 21:04 • 2 KomentaraPrint#

Sljedeći mjesec >>

Creative Commons License
Ovaj blog je ustupljen pod Creative Commons licencom Imenovanje-Dijeli pod istim uvjetima.