Wstęp
Wspólnie z inżynierami producenta przygotowaliśmy dla Państwa kurs JAVA dla modułów, terminali Gemalto. Naszym celem jest ułatwienie Państwu startu w pracach z modułami i terminalami. Dotychczas przedstawiliśmy kolejno informację o modułach/terminalach programowalnych w JAVA, o tym jak zainstalować i uruchomić środowisko programistyczne, jak napisać i uruchomić pierwsze midlety.
Niniejsza część kursu dotyczy uruchomienia komunikacji z serwerami i elementami większych systemów.
W naszej ocenie uczestnictwo w kursie znacznie przyspieszy Państwu start, a w wielu przypadkach zachęci to wykorzystania możliwości oferowanych przez moduły oraz sam język JAVA.
Komunikacja z systemem, serwerem
Głównym zadaniem modułów, terminali GSM jest komunikacja z serwerami, inni elementami większych systemów. Poniżej zaprezentujemy przykładowe scenariusz i ich implementację w JAVA.
OTAP - Over The Air Provisioning
Większość urządzeń projektowana jest tak aby istaniała możliwość zdalnej aktualizacji oprogramowania. Pozwala to na poprawę ewentualnych błędów, bądź też rozszerzenie dotychczas oferowanej funkcjonalności. W przypadku produktów Gemalto wspierających JAVA, mechanizm zdalnej aktualizacji midletów został zaszyty fabrycznie, nazwany został OTAP. Poniższy schemat prezentuje elementy potrzebne do jego uruchomienia.
Oprócz modułu Gemalto, potrzebujemy serwer HTTP(S). Tam umieścić należy pliki *.jar oraz *.jad
Potrzebujemy także elelmentu inicjalzującego cała procedurę.
Tutaj jest to wysłanie wiadomości SMS o odpowiedniej treści. Po wysłaniu takiej wiadomosci moduł próbuje połączyć się z serwerem i pobrać nowe pliki.
Wyrózniamy dwa rodzaje operacji OTAP:
Cała procedura jest oczywiście odpowiednio zabezpieczona. Zabezpieczenie składa się z kilku etapów uwierzytelniania. Nie będziemy tego tutaj szczegółowo opisywać, aby nie ułatwiać osobom niepowołanym dostępu do tych informacji. Zachęcamy do kontaktu z JM elektronik, w celu uzyskania szczegółowych danych.
Po każdej procedurze OTAP moduł jest automatycznie restartowany. Wielu użytkowników korzysta z tego faktu i przeprowadza procedurę OTAP, która nie robi żadnej aktualizacji, tylko po to aby zrestartować moduł.
NetDemo
Użycie opcji programowania modułu w JAVA jest bardzo wygodne w sytuacji gdy moduł realizuje transmisję danych do/z serwera. Oprogramowanie takiego scenariusz często sprowadza się do skrosowania odpowiednich strumieni.
Dla danych wchodzących należy utworzyć obiekt klasy
InputStream(): InputStream is = null;
Analogicznie dla strumienia wyjściowego
OutputStream(): OutputStream os = null;
Oczywiście wcześniej należy utworzyć interfejs SocketConnection:
Poniżej przykład całej procedury:
static String destHost = "xxx.xxx.xxx.xxx";
static String destPort = "5999";
/**
* startApp()
*/
public void startApp() throws MIDletStateChangeException [...]