Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Fakultas Teknologi Informasi Universitas Budi Luhur BAHASA PEMROGRAMAN 4 Pertemuan III Oleh: Seno, S.Kom.

Presentasi serupa


Presentasi berjudul: "Fakultas Teknologi Informasi Universitas Budi Luhur BAHASA PEMROGRAMAN 4 Pertemuan III Oleh: Seno, S.Kom."— Transcript presentasi:

1 Fakultas Teknologi Informasi Universitas Budi Luhur BAHASA PEMROGRAMAN 4 Pertemuan III Oleh: Seno, S.Kom

2 Fakultas Teknologi Informasi Universitas Budi Luhur Merancang dan Membuat Program Utama SMS Server  Merancang arsitektur pada awal pembangunan suatu sistem merupakan hal yang penting.  Dengan rancangan sistem yang baik maka suatu sistem juga akan memiliki konstruksi dan pengolahan data yang tepat dan akurat.  Arsitektur alat dalam program utama SMS Server:  Komputer yang memiliki port COM  Handphone dan kabel data yang sesuai  Arsitektur sistem dalam program utama SMS Server:  SMS dikirim oleh pengguna (client) ke nomor SMS Server  SMS Server menerima pesan yang masuk kemudian melakukan query ke database, sesuai dengan isi pesan  Hasil query dari database kemudian dikirim ke SMS Server  SMS server mengirim hasil dari database ke nomor client

3 Fakultas Teknologi Informasi Universitas Budi Luhur Program Utama SMS Server  Proses-proses yang terdapat dalam SMS Server :  SMS server akan melakukan koneksi dengan database  Program utama SMS server akan menerima pesan dari client secara otomatis  SMS Server membaca dan menghapus pesan dari SIM Card.  SMS Server akan mengubah pesan dari format PDU ke format text. Pada proses ini data yang diambil adalah nomor telepon pengirim dan isi pesan. Lalu, data disimpan ke tabel terimasms dengan status ‘Belum Diproses’.  SMS Server mengambil data dari tabel terimasms yang statusnya ‘Belum Diproses’, lalu memeriksa apakah kode yang diterima sesuai atau tidak. Jika sesuai maka proses dilanjutkan, sebaliknya jika tidak sesuai maka SMS akan mengirim pesan kesalahan ke nomor client, dan kemudian mengubah status menjadi ‘Sudah Diproses’ pada tabel terimasms.  Jika proses berlanjut, SMS Server akan melakukan query ke database untuk mengambil data-data yang diperlukan, dan kemudian menyimpannya ke tabel kirimsms dengan status ‘Belum Dikirim’

4 Fakultas Teknologi Informasi Universitas Budi Luhur Program Utama SMS Server  SMS Server akan selalu mengambil data pada tabel terimasms dan kirimsms yang statusnya ‘belum diproses’ dan ‘belum dikirim’  SMS Server akan mengubah pesan SMS yang akan dikirim dari format text ke format PDU.  SMS Server akan mengubah status pada tabel kirimsms menjadi ‘Sudah Dikirim’ SMS server berbasis J2SDK Database berbasis Mysql

5 Fakultas Teknologi Informasi Universitas Budi Luhur Mengenal Serial Port Di Java  Pada J2SDK belum disediakan fasilitas untuk hubungan dengan serial port, sehingga kita perlu menambahkan paket kelas untuk hubungan dengan serial port.  Nama paket kelas tersebut adalah Java Communication Port, yang dapat didownload di : http://java.sun.com/product/javacomm http://java.sun.com/product/javacomm  Cara instalasinya adalah:  Extract javacomm20-win32.zip ke direktori sementara  Copy file win32com.dll ke direktory bin di tempat instalasi J2SDK.  Copy comm.jar dan javac.comm.properties ke directory lib di tempat intalasi J2SDK  Tambahkan comm.jar pada CLASSPATH, salah satu caranya dengan mengetik di command prompt: SET CLASSPATH = C:\j2sdk1.4.2\lib\comm.jar;%classpath%

6 Fakultas Teknologi Informasi Universitas Budi Luhur Contoh Program Cari Port import javax.comm.SerialPort; import javax.comm.CommPortIdentifier; import java.util.Enumeration; public class portList { public static void main(String[] args){ String portName = null; SerialPort port = null; Enumeration portList = null; CommPortIdentifier portId = null; int i=1; // Mencari daftar port-port yang tersedia portList = CommPortIdentifier.getPortIdentifiers(); while (portList.hasMoreElements()) { // Mengambil nilai-nilai port yang ditemukan portId = (CommPortIdentifier) portList.nextElement(); portName = portId.getName(); System.out.println("Port : "+i+". " + portName); i++; } //Akhir if port getName }

7 Fakultas Teknologi Informasi Universitas Budi Luhur Membalik Karakter pada Format PDU  Dalam format PDU ada bagian dimana bilangan desimal diubah hanya dengan membalikkan karakter, misalnya pada penulisan nomor telepon, time stamp, dll.  Contoh: nomor telepon 6281510093290, akan diubah menjadi 621815003992F0 (ingat jika jumlah karakter nomor telepon ganjil maka ditambahkan ‘F’)

8 Fakultas Teknologi Informasi Universitas Budi Luhur Ubah Desimal ke Hexa  Format PDU adalah bentuk pesan dalam heksadesimal. Sehingga kita perlu membuat methode untuk mengubah dari basis desimal ke basis heksadesimal.  Cara mengkonversi bilangan desimal ke heksadesimal adalah dengan cara membagi bilangan desimal dengan 16 sebagai digit pertama dan sisa pembagian sebagai digit kedua. Contoh: 165d jika dibagi dengan 16 hasilnya adalah 10 (Ah) dan sisa pembagiannya adalah 5. Jadi 165d = A5 h Karakter I = bilangan_desimal / 16 Karakter II = bilangan_desimal % 16  Pada perubahan karakter menjadi heksadesimal bilangan tertinggi adalah 255 atau 11111111 b.

9 Fakultas Teknologi Informasi Universitas Budi Luhur Mengubah dari 8 bit menjadi 7 bit  Pada format PDU penerima adalah perubahan pesan PDU ke text.  Dalam format PDU penerima terdapat User Data (isi pesan SMS), proses pengubahan User Data dari format heksadesimal menjadi text sering disebut dengan istilah encoding.  Proses encoding adalah mengubah bilangan heksadesimal menjadi 8 bit bilangan biner kemudian diubah lagi menjadi 7 bit bilangan biner yang kemudian dikonversi dengan sistem ASCII untuk mendapatkan bentuk text atau karakter.  Contoh: D3E614 jika diubah menjadi text adalah sbb: HeksaD3E614. 8 bit110100111110011000010100 7 bit1010011100110110100110000000 Decimal8377830 KarakterSMSnull

10 Fakultas Teknologi Informasi Universitas Budi Luhur Mengubah 7 bit ke 8 bit  Untuk PDU pengirim, proses yang terjadi adalah mengubah format text ke format heksadesimal. Proses ini merupakan kebalikan dari proses PDU penerima.  Proses ini sering disebut decodec.  Proses decodec adalah mengubah format menjadi karakter ke tujuh bit biner, kemudian mengubah 7 bit biner ke 8 bit biner, dan terakhir mengubah 8 bit biner ke heksadesimal.  Contoh: mengubah text ‘SMS’ menjadi heksadesimal. TextDecimalSeptet (7 bit)Oktet (8 bit)Heksa S83101001111010011D3 M77100110111100110E6 S8310100110001010014

11 Fakultas Teknologi Informasi Universitas Budi Luhur Mengubah Pesan SMS dari format PDU menjadi format text  Setiap SMS yang masuk masih dalam bentuk PDU yang terditi dari bagian-bagian yang telah diatur oleh ETSI.  Dalam mengubah format PDU menjadi text yang perlu diperhatikan adalah banyaknya digit dari setiap bagian, karena kita hanya akan mengambil nomor pengirim dan pesan SMS saja, sedangkan nilai-nilai yang lain diabaikan.  Nomor pengirim terdapat dalam Originatir Address (OA) dan pesan SMS terdapat dalam User Data (UD).  Adapun bagian-bagian dari pesan SMS PDU adalah:  SCA (Service Number Addres)  Len  2 digit  Type  2 digit  Number  len * 2 - 2

12 Fakultas Teknologi Informasi Universitas Budi Luhur  PDU Type  PDU Type  2 digit  OA (Orogonator Address)  Len  2 digit  Type  2 digit  Number  (nilai len) digit ------- akan diambil  PID (Protocol Identifier)  PID  2 digit  DCS (Data Coding Sceme)  DCS  2 digit  SCTS (Service Center Time Stamp)  SCTS  14 digit  UDL (User Data Length)  UDL  2 digit  UD (User Data)  Akhir UDL sampai akhir PDU

13 Fakultas Teknologi Informasi Universitas Budi Luhur Urutan Proses Pengambilan Bagian-bagian Pesan PDU  Mengambil nilai informasi SMSC yang terdiri atas panjang, tipe dan nomor SMSC  Membuang nilai PDU Type, banyaknya digit yang dibuang adalah 2 digit.  Mengambil panjang nomor telepon (len) pengirim yang dipakai untuk mengambil nomor telepon pengirim, jumlah digit yang diambil sesuai dengan nilai dari panjang nomor telepon (len). Membuang tipe nomor telepon, banyaknya 2 digit, sehingga diperoleh nomor telepon pengirim.  Membuang PID (2 digit), DCS (2 digit), SCTS (14 digit), sehingga jumlah digit yang dibuang adalah 18 digit.  Mengambil panjang pesan untuk keperluan encodec. Membuang nilai UDL dan mengambil isi pesan PDU lalu diubah ke format text..

14 Fakultas Teknologi Informasi Universitas Budi Luhur Mengubah Format Text menjadi PDU  Pesan SMS yang akan dikirimkan dari terminal masih berupa text, padahal setiap SMS yang akan dikirim harus berupa PDU.  Sebelum melakukan pengiriman pesan ke terminal, pesan SMS harus diubah terlebih dahulu ke format PDU.  Jika pada pengubahan PDU menjadi text, ada digit- digit yang dibuang, maka pada proses pengubahan text menjadi PDU adalah sebaliknya yakni menambahkan digit-digit yang diperlukan

15 Fakultas Teknologi Informasi Universitas Budi Luhur  Tambahkan pada pesan PDU nilai default dari PDU Type yakni ‘11’, dan nilai default dari MR (Message Reference) yakni ‘00’.  Tambahkan pada pesan PDU nilai panjang nomor telepon pengirim (len), lalu tambahkan nilai tipe nomor telepon yakni ‘91’.  Tambahkan nomor telepon pengirim (balik karakter), jika panjang nomor pengirim ganjil maka tambahkan ‘F’ dibelakang digit terakhir.  Tambahkan nilai default PID (‘00’) dan DCS (‘00’).  Tambahkan nilai VP (validity period).  Tambahkan panjang pesan (jumlah digit pesan SMS dalam bentuk text) dalam bentuk heksa desimal.  Tambahkan nilai pesan dalam bentuk heksa desimal.


Download ppt "Fakultas Teknologi Informasi Universitas Budi Luhur BAHASA PEMROGRAMAN 4 Pertemuan III Oleh: Seno, S.Kom."

Presentasi serupa


Iklan oleh Google