SBS - Single Button System

Tämän selostuksen tarkoituksena on kuvata SBS-ohjelman, eli Single Button System-ohjelman toimintaa ja sen osien kääntämistä siinä muodossa kuin se on kirjoitushetkellä kommitoituna versionhallintaan (ja lähdekoodipakettina tällä sivulla). Siinä on käyttöliittymä, jonka olen toteuttanut ulkomuistista muistuttamaan näkemiäni SBS-gui-suunnitelmia. Käyttöliittymää voi helposti muuttaa, jos olen unohtanut jonkin yksityiskohdan. Projekti pitäisi pystyä kääntämään millä tahansa IDE:llä tai muulla systeemillä (NetBeans, Eclipse, komentorivi). Ohjelma toimii seuraavasti: Se lukee palmista USB:n yli käyttäjän vastaukset ja lähettää ne sähköpostilla tutkijalle. Sitten se lukee netistä web-palvelimelta kysymykset ja siirtää ne USB:n yli palmiin. Palmin Launcher-ohjelmaa on muutettu siten, että Download- ja Upload-nappuloiden sijasta käytetään vain yhtä Synchronize-nappulaa, joka siis tekee kysymysten latauksen ja vastausten lähettämisen yhdellä kertaa. Sähköpostiosoite, web-osoite, yms. luetaan properties-tiedostosta, jossa näitä tietoja on helppo muuttaa. Asennusohjelma voi tarivittaessa muuttaa niitä ja niitä pystyy muuttamaan tietenkin myös käsin ilman ohjelman uudelleenkääntämistä. Alla on ruudunkaappauskuvat SBS-ohjelman toiminnasta.

SBS tietokoneella:

kuva1 kuva2 kuva3

Launcher Palmissa:

kuvaP1 kuvaP2

Kysymykset verkossa, josta ne ladataan:

kuvaK1

Sähköposti ja liitetiedosto:

kuva4 kuva5

Ohjelmien kääntämisestä

HUOM! Ennen projektin testaamista, muokkaa SBS.properties-tiedostoa ja laita sinne omat oikeat tietosi!!! Siis omat sähköpostiosoitteesi, salasanasi ja käyttäjänimesi. Muuten homma ei toimi, koska siellä ei ole minun tai muitakaan oikeita tietoja. Projektille voisi muuten ehkä luoda vaikka GMailiin tai johonkin oman sähköpostitilin, jota ohjelma voisi käyttää, niin ei tarvitsisi vaihdella omia tietojaan tähän tiedostoon aina...

kuvaProperties

Tämä on vielä keskeneräinen osio! Tähän voi myöhemmin kirjoittaa tarkemmat ohjeet. Nyt sen verran, että java-ohjelma käyttää JavaMailia, joten sen jar-tiedostot pitää sisällyttää projektiin. Tästä on esimerkki selostuksessa email. Natiivit C-kieliset ohjelmat voi kääntää GNU/Linuxissa käskyllä gcc USBExchange.c -o USBExchange -lusb jos libusb on asennettu. Windowsiss voi käyttää esim. Dev-C++:aa kunhan säätää includet ja kirjastot. Niiden säätämisestä on asiaa esimerkiksi selostuksessa xpusb kohdissa 11. Avaa projektin ominaisuudet ja valitse Parameters-välilehti, 12. Lisää LibUsb-Win32:n kirjasto projektiin ja 13. Lisää LibUsb-Win32:n otsikkotiedostojen sijainti projektiin. Natiivit ohjelmat (GNU/Linux ja WinXP versiot eli USBExchange ja USBExchange.exe) ovat myös valmiina projektissa, joten niitä EI tarvitse välttämättä kääntää uudelleen! Jos käännät, sijoita ne tähän samaan hakemistoon, jotta Java-ohjelma saa ne käynnistettyä (siis projektin juureen).

Puutteita, ongelmia ja havaintoja

Lähdekoodit

Löytyvät versionhallinnasta. Tämän kommitin muutoksia voit tarkastella osoitteessa http://code.google.com/p/kurre/source/detail?r=99 Voit katsoa tiedostoja klikkaamalla niiden linkkejä. Erot edellisiin versioihin saat näkyviin kunkin tiedoston perässä olevasta diff-linkistä.