1 / 46

BAHASA PEMROGRAMAN 4

BAHASA PEMROGRAMAN 4. Oleh: Indra, S.Kom. Pengirim SMSC Penerima. Mengenal Sistem Kerja SMS. Short Message Service (SMS) merupakan salah satu fitur GSM yang dikembangkan dan distandarisasi oleh ETSI.

Download Presentation

BAHASA PEMROGRAMAN 4

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

  2. Pengirim SMSC Penerima Mengenal Sistem Kerja SMS • Short Message Service (SMS) merupakan salah satu fitur GSM yang dikembangkan dan distandarisasi oleh ETSI. • Pada proses pengiriman SMS dari handphone, SMS tersebut tidak langsung dikirim ke handphone tujuan, tetapi terlebih dahulu dikirim ke SMS center (SMSC), kemudian dengan sistem store and forward SMS tersebut dikirimkan ke hadphone tujuan. Fakultas Teknologi Informasi Universitas Budi Luhur

  3. Mengenal Sistem Kerja SMS • Dengan keberadaan SMSC kita dapat mengetahui status SMS, apakah sudah terkirim atau gagal terkirim. • Jika handphone tujuan dalam keadaan aktif dan berada dalam jangkauan, maka handphone tersebut mengirim konfirmasi ke SMSC bahwa SMS telah diterima, sebaliknya jika handphone tujuan mati atau di luar jangkauan, maka SMS akan disimpan di SMSC sampai peride validitas terpenuhi. • Jika sampai periode validitas terpenuhi, SMSC akan mengirimkan pesan ke handphone pengirim bahwa SMS gagal dikirimkan Fakultas Teknologi Informasi Universitas Budi Luhur

  4. MENGENAL FORMAT PDU DALAM PENGIRIMAN DAN PENERIMAAN SMS • Dalam pengiriman/penerimaan SMS ada dua mode yakni mode PDU (Protocol Data Unit) dan mode teks. • Mode PDU merupakan format pesan dalam bentuk oktet heksadesimal dan oktet semidesimal dengan panjang mencapai 160 karakter (7 bit) atau 140 karakter (8 bit). • Mode teks merupakan hasil pengkodean PDU. • Pada pengiriman SMS ada 2 mobile, yakni mobile terminated (Handphone penerima) dan mobile originated (Handphone pengirim) Fakultas Teknologi Informasi Universitas Budi Luhur

  5. SMS PDU PENGIRIM (Mobile Originated) • SMS yang dikirim oleh terminal masih dalam bentuk teks, sedangkan pada pengiriman ke SMSC harus dalam bentuk PDU, oleh karena itu, terminal (HP) mengubah format text ke PDU (encodec). • Skema SMS PDU pengirim telah diatur oleh ETSI sebagai berikut: • Misalnya kita akan mengirim SMS ke ‘6281510093290’ dengan isi pesan ‘Budi Luhur’, dengan batas waktu pengiriman ‘5 hari’, maka format PDU-nya adalah: ‘0011000C912618150039920000AB0C0C3A390E62D6D175F9DA0E’ Fakultas Teknologi Informasi Universitas Budi Luhur

  6. Service Center Address (SCA) • SCA adalah alamat (nomor) SMSC. • SCA memiliki 3 komponen yaitu: • Len Panjang informasi SMSC dalam oktet Hasil : 00 • Type of number Nomor dari SMSC 81h = format lokal 91h = format internasional Dalam pengiriman SMS nomor SMS tidak dicantumkan • Service center number Nomor SMSC operator pengirim Jika panjangnya ganjil maka karakter terakhir ditambahkan OFh Pada pengiriman SMS nomor SMSC operator pengirim tidak dicantumkan Fakultas Teknologi Informasi Universitas Budi Luhur

  7. PDU type • Nilai default PDU type adalah 11 hexa (00010001 binary) yang memiliki arti: • RP : Replay Path • Alur yang menunjukkan bahwa ada alur jawaban • UDHI : User Data Header Indicator • Bernilai 1 jika SMS menggunakan judul • SRR : Status Report Request • Bernilai 1 jika laporan status pengiriman diminta • VPF : Validity Period Format • Batas waktu pengiriman jika pesan gagal dikirim • RD : Reject Duplicates • Parameter yang menunjukkan ya atau tidak Service Center akan menerima satu pengiriman SMS yang masih disimpan dalam Service Center tersebut • MTI : Message Type Indicator • Bernilai 0 menunjukkan SMS-DELIVER Fakultas Teknologi Informasi Universitas Budi Luhur

  8. Message Reference (MR) & Destination Address (DA) • Message Reference adalah acuan dari pengaturan pesan SMS. • Untuk membiarkan pengaturan SMS diatur sendiri oleh handphone tujuan, maka nilai yang diberikan adalah ’00’ • Destination Address adalah nomor tujuan, yang terdiri dari len, type of number dan nomor tujuan. • Len menunjukkan panjang nomor tujuan • Type of number menunjukkan format dari nomor tujuan • 81 untuk format lokal • 91 untk format international • Nomor tujuan adalah alamat (nomor) handphone yang akan dikirim SMS Fakultas Teknologi Informasi Universitas Budi Luhur

  9. Protocol Identifier (PID) & Data Coding Sceme (DCS) • Protocol Identifier (PID) adalah format dari pengiriman pesan, biasanya diatur oleh handphone, apakah pesan berupa Text, Fax, E-mail, telex dan lain-lainl. • Nilai default dari PID adalah ’00’ yang berarti pesan yang dikirim berupa teks standar. • Data Coding Sceme adalah rencana dari pengkodean data untuk enentukan SMS yang akan dikirim apakah berupa SMS teks standar, bliking SMS, atau flash SMS. • Nilai default DCS adalah ’00’ yang menunjukkan bahwa SMS yang dikirim berupa teks standar. Fakultas Teknologi Informasi Universitas Budi Luhur

  10. Validity Period (VP) & User Data Length (UDL) • Validity period adalah lama waktu pesan SMS disimpan di SMSC apabila pesan tersebut gagal diterima oleh handphone penerima • User Data Length adalah panjang pesan SMS yang akan dikirim dalam bentuk teks standard Fakultas Teknologi Informasi Universitas Budi Luhur

  11. User Data (UD) • User Data adalah isi pesan yang akan dikirim dalam format heksadesimal. • Pengkodean dari teks standar ke format heksadesimal dilakukan dengan bantuan ‘default alphabet’ yang dibakukan oleh ETSI GSM, seperti pada tabel di slide berikut. Fakultas Teknologi Informasi Universitas Budi Luhur

  12. User Data Fakultas Teknologi Informasi Universitas Budi Luhur

  13. SMS PDU Penerima (Mobile Terminated) • SMS PDU penerima adalah terminal menerima pesan yang masuk dari SMSC ke handphone dalam format PDU. • Setelah pesan diterima dalam format PDU, handphone akan melakukan pengkodean pesan (decodec) menjadi format teks. • Cara pengkodean format PDU sudah diatur dan distandarkan oleh ETSI, sebagai berikut: Fakultas Teknologi Informasi Universitas Budi Luhur

  14. Service Center Address (SCA) • SCA adalah alamat (nomor) SMSC. • SCA memiliki 3 komponen yaitu: • Len Panjang informasi SMSC dalam oktet Hasil : 00 • Type of number Nomor dari SMSC 81h = format lokal 91h = format internasional • Service center number Nomor SMSC operator pengirim Jika panjangnya ganjil maka karakter terakhir ditambahkan OFh • Beberapa service center number: • Satelindo = 62816124 (PDU = 26181642) • Telkomsel = 6281100000 (PDU = 2618010000) • Excelcom = 62818445009 (PDU = 26184854009) • IM3 = 62855000000 (PDU = 26580500000) Fakultas Teknologi Informasi Universitas Budi Luhur

  15. PDU type • Nilai default PDU type untuk SMS-deliver adalah 04 hexa (00000100) binary) yang memiliki arti: • RP : Replay Path • Alur yang menunjukkan bahwa ada alur jawaban • UDHI : User Data Header Indicator • Bernilai 1 jika SMS menggunakan judul • SRI : Status Report Indication • Bernilai 1 jika laporan status laporan akan dikembalikan • MMS : More Message to Send • Bernilai 1 jika ada pesan lebih yang akan dikirim • MTI : Message Type Indicator • Bernilai 0 menunjukkan bahwa PDU ini adalah SMS-DELIVER Fakultas Teknologi Informasi Universitas Budi Luhur

  16. Originator Address (OA) • OA adalah nomor pengirim yang terdiri dari len, type of number dan nomor tujuan. • Len menunjukkan panjang nomor tujuan • Type of number menunjukkan format dari nomor tujuan • 81 hexa untuk format lokal • 91 hexa untuk format international • Nomor tujuan adalah alamat (nomor) handphone yang akan dikirim SMS Fakultas Teknologi Informasi Universitas Budi Luhur

  17. Protocol Identifier (PID) & Data Coding Sceme (DCS) • Protocol Identifier (PID) adalah format dari pengiriman pesan, biasanya diatur oleh handphone, apakah pesan berupa Text, Fax, E-mail, telex dan lain-lainl. • Nilai default dari PID adalah ’00’ yang berarti pesan yang dikirim berupa teks standar. • Data Coding Sceme adalah rencana dari pengkodean data untuk enentukan SMS yang akan dikirim apakah berupa SMS teks standar, bliking SMS, atau flash SMS. • Nilai default DCS adalah ’00’ yang menunjukkan bahwa SMS yang dikirim berupa teks standar. Fakultas Teknologi Informasi Universitas Budi Luhur

  18. Service Center Time Stamp (SCTS), User Data Length (UDL) & User Data (UD) • SCTS adalah waktu dari penerimaan pesan oleh SMSC penerima. • SCTS terdiri atas tahun (yy), bulan (MM), tanggal (dd), jam (hh), menit (mm), detik (ss) serta zone waktu. • Contoh : Jika SMS diterima pada 07 Maret 2008 jam 15.30”.12’ WIB maka SCTS bernilai ‘80307051032182’ • 82 => time zone = 28 unit, 1 unit = 15 menit, maka 28 unit = 28*15/60 = 7 jam, sehingga menjadi GMT + 07.00 = WIB • User Data Length adalah panjang pesan SMS yang diterima dalam bentuk teks standard • User Data (UD) adalah pesan yang diterima dalam format heksa desimal Fakultas Teknologi Informasi Universitas Budi Luhur

  19. Mengenal AT Command • Sebelum membuat program kita akan melakukan koneksi handphone dengan komputer, hal ini bertujuan apakah kabel dan handphone terhubung dengan baik dengan komputer. Fakultas Teknologi Informasi Universitas Budi Luhur

  20. Fakultas Teknologi Informasi Universitas Budi Luhur

  21. Fakultas Teknologi Informasi Universitas Budi Luhur

  22. Fakultas Teknologi Informasi Universitas Budi Luhur

  23. Mengenal AT Command Fakultas Teknologi Informasi Universitas Budi Luhur

  24. Menentukan Format Mode Fakultas Teknologi Informasi Universitas Budi Luhur

  25. Menentukan Jenis Encoding Fakultas Teknologi Informasi Universitas Budi Luhur

  26. Membuka Daftar SMS Fakultas Teknologi Informasi Universitas Budi Luhur

  27. Membuka Daftar SMS Fakultas Teknologi Informasi Universitas Budi Luhur

  28. Mendeteksi SMS baru secara Otomatis Fakultas Teknologi Informasi Universitas Budi Luhur

  29. Membaca Pesan SMS Fakultas Teknologi Informasi Universitas Budi Luhur

  30. Menghapus Pesan SMS Fakultas Teknologi Informasi Universitas Budi Luhur

  31. Mengirim Pesan SMS Fakultas Teknologi Informasi Universitas Budi Luhur

  32. Mengirim SMS dengan format PDU • Kita akan mencoba mengirim pesan SMS ke nomor +628151009329 dengan isi ‘Budi Luhurku’ dengan waktu validitas 5 hari. • Setelah mengubah pesan ke format PDU, hasilnya adalah : ‘0011000C912618150039920000AB0C0C3A390E62D6D175F9DA0E’ yang terdiri dari 50 karakter (oktet ’00’ di awal tidak dihitung) atau 25 oktet • Buka HiperTerminal dan lakukan koneksi dengan komputer, lalu ketik AT kemudian enter. • Jika responsnya ‘OK’, lanjutkan dengan mengetik ‘AT+CMGF=0’ untuk mengetahui apakah terminal mendukung format PDU atau tidak. • Jika responsnya ‘OK’ lanjutkan dengan mengetik ‘AT+CMGS=25’ lalu enter, maka akan muncul ‘>’. • Ketik isi PDU yang diperoleh yaitu: ‘0011001c91261850039920000AB0C0C3A390E62D6D175F9DA0E’, lalu tekan ‘Ctrl+z’ • Jika pengiriman SMS berhasil, maka respons yang didapat adalah +CMGS: mr OK Fakultas Teknologi Informasi Universitas Budi Luhur

  33. 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 Fakultas Teknologi Informasi Universitas Budi Luhur

  34. 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’ Fakultas Teknologi Informasi Universitas Budi Luhur

  35. 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 Fakultas Teknologi Informasi Universitas Budi Luhur

  36. 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 • 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% Fakultas Teknologi Informasi Universitas Budi Luhur

  37. 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 } } Fakultas Teknologi Informasi Universitas Budi Luhur

  38. 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’) Fakultas Teknologi Informasi Universitas Budi Luhur

  39. 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. Fakultas Teknologi Informasi Universitas Budi Luhur

  40. 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: Fakultas Teknologi Informasi Universitas Budi Luhur

  41. 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. Fakultas Teknologi Informasi Universitas Budi Luhur

  42. 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 Fakultas Teknologi Informasi Universitas Budi Luhur

  43. 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 Fakultas Teknologi Informasi Universitas Budi Luhur

  44. 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.. Fakultas Teknologi Informasi Universitas Budi Luhur

  45. 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 Fakultas Teknologi Informasi Universitas Budi Luhur

  46. 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. Fakultas Teknologi Informasi Universitas Budi Luhur

More Related