TEORI
SMS
Layanan SMS
sangat populer dan sering dipakai oleh pengguna handphone. SMS menyediakan
pengiriman pesan text secara cepat, mudah dan murah. Kini SMS tidak terbatas
untuk komunikasi antar manusia pengguna saja, namun juga bisa dibuat otomatis
dikirim/diterima oleh peralatan (komputer, mikrokontroler, dsb) untuk mencapai
suatu tujuan tertentu. Namun untuk melakukannya, kita harus memahami dulu cara
kerja SMS itu sendiri.
Short Message
Service (SMS) adalah protokol layanan pertukaran pesan text singkat (sebanyak
160 karakter per pesan) antar telepon. SMS ini pada awalnya adalah bagian dari
standar teknologi seluler GSM, yang kemudian juga tersedia di teknologi CDMA,
telepon rumah PSTN, dan lainnya.
Alur
pengiriman SMS pada standar teknologi GSM adalah sebagai berikut.
Ketika
pengguna mengirim SMS, maka pesan dikirim ke MSC melalui jaringan seluler yang
tersedia yang meliputi tower BTS yang sedang meng-handle komunikasi pengguna,
lalu ke BSC, kemudian sampai ke MSC. MSC kemudian mem-forward lagi SMS ke SMSC
untuk disimpan. SMSC kemudian mengecek (lewat HLR - Home Location Register)
untuk mengetahui apakah handphone tujuan sedang aktif dan dimanakah handphone
tujuan tersebut.
Jika
handphone sedang tidak aktif maka pesan tetap disimpan di SMSC itu sendiri,
menunggu MSC memberitahukan bahwa handphone sudah aktif kembali untuk kemudian
SMS dikirim dengan batas maksimum waktu tunggu yaitu validity period dari pesan
SMS itu sendiri. Jika handphone tujuan aktif maka pesan disampaikan MSC lewat
jaringan yang sedang meng-handle penerima (BSC dan BTS).
Sebenarnya, di
dalam kebanyakan handphone dan GSM/CDMA modem terdapat suatu komponen wireless
modem/engine yang dapat diperintah antara lain untuk mengirim suatu pesan SMS
dengan protokol tertentu. Standar perintah tersebut dikenal sebagai AT-Command,
sedangkan protokolnya disebut sebagai PDU (Protokol Data Unit). Melalui
AT-Command dan PDU inilah kita dapat membuat komputer/mikrokontroler
mengirim/menerima SMS secara otomatis berdasarkan program yang kita buat.
AT-Command
Untuk SMS
AT-Command
adalah perintah yang dapat diberikan kepada handphone atau GSM/CDMA modem untuk
melakukan sesuatu hal, termasuk untuk mengirim dan menerima SMS. Dengan
memprogram pemberian perintah ini di dalam komputer/mikrokontroler maka
perangkat kita dapat melakukan pengirima atau penerimaan SMS secara otomatis
untuk mencapai tujuan tertentu.
SIM300C
GSM/GPRS Module
Komputer
ataupun mikrokontroler dapat memberikan perintah AT-Command melalui hubungan
kabel data serial ataupun bluetooth.
AT-Command
ini sebenarnya adalah pengembangan dari perintah yang dapat diberikan kepada
modem Hayes yang sudah ada sejak dulu. Dinamakan AT-Command karena semua
perintah diawali dengan karakter A dan T.
Antar
perangkat handphone dan GSM/CDMA modem bisa memiliki AT-Command yang
berbeda-beda, namun biasanya mirip antara satu perangkat dengan perangkat lain.
Untuk dapat mengetahui secara persis maka kita harus mendapatkan dokumentasi
teknis dari produsen pembuat handphone atau GSM/CDMA modem tersebut.
Berikut
beberapa contoh perintah AT-Command untuk handphone Siemens.
AT+CMGS=x
dimana x
adalah jumlah pasang karakter data PDU yang ingin dikirimkan. Dalam data PDU
nanti akan tersimpan nomor tujuan pengiriman dan pesan SMS yang ingin
dikirimkan.
Handphone
atau GSM/CDMA modem kemudian akan merespon untuk mempersilakan memasukkan data
PDU yang harus diakhiri dengan karakter CTR-Z.
Perintah
Terima SMS
AT+CMGR=x
dimana x
adalah nomor index SMS yang ingin dibaca dalam memori tempat penyimpanan (SIM
card atau handphone/modem).
Handphone
atau GSM/CDMA modem akan merespon dengan memberikan data PDU dari SMS yang
diinginkan, dimana di dalamnya memuat nomor pengirim, waktu kirim, dan pesan
SMS yang dikirim. PDU ini kemudian dapat diterjemahkan oleh
komputer/mikrokontroler sehingga didapatkan informasi yang ingin diketahui.
Memahami PDU
SMS
PDU (Protocol
Data Unit) adalah protokol data dalam suatu SMS, berupa pasangan-pasangan
karakter ASCII yang mencerminkan representasi angka heksadesimal dari informasi
yang ada dalam suatu SMS, misalnya nomor pengirim, nomor tujuan, waktu
pengiriman dan isi pesan SMS itu sendiri. PDU ini harus dipahami sebelum
mengimplementasikannya ke dalam program di komputer/mikrokontroler.
PDU untuk SMS
Kirim
Contoh: 0691261801000001000C91261832547698000005E8329BFD06
Beberapa
pasangan di atas harus kita baca secara dibalik-balik, misalnya 26 adalah 62,
dst. Arti dari data PDU di atas adalah sebagai berikut.
Bagian
|
Arti
|
06
|
Jumlah pasangan nomor
SMS Center (6 pasang = 1 pasang jenis penomoran + 5 pasang nomor SMSC)
|
91
|
Jenis penomoran SMS
Center (91 = menggunakan penomoran internasional)
|
2618010000
|
Nomor SMS Center
(6281100000 = SMSC Telkomsel)
|
01
|
Tipe SMS (01 = SMS
kirim)
|
00
|
Nomor Referensi SMS
(otomatis jadi biarkan 00)
|
0C
|
Jumlah digit nomor
tujuan dalam bilangan heksa (0C = 12 digit)
|
91
|
Jenis penomoran
pengirim (91 = menggunakan penomoran internasional)
|
261832547698
|
Nomor tujuan
pengiriman SMS (628123456789)
|
00
|
Bentuk SMS (00 = SMS
teks)
|
00
|
Skema encoding (00 =
skema 7 bit)
|
05
|
Jumlah karakter isi
pesan dalam heksa (5 karakter)
|
E8329BFD06
|
Isi pesan dalam
susunan encoding yang dipilih (E8329BFD06 jika diterjemahkan 7 bit -7 bit
adalah 'Hello')
|
SIM300C
GSM/GPRS Module
PDU untuk SMS
Terima
Contoh: 06912618010000240C9126183254769800008070605103218005E8329BFD06
Beberapa
pasangan di atas harus kita baca secara dibalik-balik, misalnya 26 adalah 62,
dst. Arti dari data PDU di atas adalah sebagai berikut.
Bagian
|
Arti
|
06
|
Jumlah pasangan nomor
SMS Center (6 pasang = 1 pasang jenis penomoran + 5 pasang nomor SMSC)
|
91
|
Jenis penomoran SMS
Center (91 = menggunakan penomoran internasional)
|
2618010000
|
Nomor SMS Center
(6281100000 = SMSC Telkomsel)
|
24
|
Tipe SMS (24 = SMS
terima)
|
0C
|
Jumlah digit nomor
pengirim dalam bilangan heksa (0C = 12 digit)
|
91
|
Jenis penomoran tujuan
(91 = menggunakan penomoran internasional)
|
261832547698
|
Nomor pengirim SMS
(628123456789)
|
00
|
Bentuk SMS (00 = SMS
teks)
|
00
|
Skema encoding (00 =
skema 7 bit)
|
807060
|
Tanggal pengiriman SMS
yaitu 6/7/2008
|
510321
|
Jam pengiriman SMS
yaitu 15:30:12
|
80
|
Standar waktu yang
digunakan (GMT+7 Indonesia)
|
05
|
Jumlah karakter isi
pesan dalam heksa (5 karakter)
|
E8329BFD06
|
Isi pesan dalam
susunan encoding yang dipilih (E8329BFD06 jika diterjemahkan 7 bit -7 bit
adalah 'Hello')
|
Ditulis oleh:
Tim Prasimax
Copyright
Prasimax Technology
Tidak ada komentar:
Posting Komentar