SMS Deliver PDU
SMS Deliver PDU (Mobile Terminated)
SMS Deliver PDU ialah terminal menerima pesan yang datang/masuk dari SMSC (lihat topik Teknologi SMS) dalam format PDU.
Skema format SMS Deliver PDU adalah :
| SCA | PDU Type | OA | PID | DCS | SCTS | UDL | UD |
1. SCA (Service Center Address)
SCA memiliki 3 komponen utama, yaitu:
a. Len (Length) yaitu panjang informasi SMSC dalam oktet
b. Type of Number sebagai type address dari SMSC
nilai 81h untuk format lokal
nilai 91h untuk format internasional
c. BSC Digits berupa nomor SMSC. Jika panjangnya ganjil, pada akhir karakter ditambahkan "F" hekasdesimal.
Contoh:
SCA bernilai 059126181642. maka,
Len = 05,
Type of Number = 91 menyatakan format internasional
BSC Digits = 26 18 16 42.
Berikut contoh penulisan nomor SMSC untuk masing-masing operator
.---------------------------------------------------.
|---Operator---|Nomor SMSC | ----- Format PDU ----- |
|--------------|-----------|------------------------|
|Satelindo---->|---62816124|05 91 26 18 16 42 -- -- |
|Excelcomindo->|62818445009|07 91 26 18 48 54 00 F9 |
|Telkomsel---->|-6281100000|06 91 26 18 01 00 00 -- |
|IM3---------->|62855000000|05 91 26 58 05 00 00 F0 |
'---------------------------------------------------'
Pada IM3 Nomor SMSC 62855000000 bernilai ganjil, maka mendapat tambahan F menjadi 62855000000F
Setelah itu dilakukan perpindahan tempat setiap 2 digit untuk mengubah Nomor SMSC ke Format PDU (swapped nibble presentation) dari 62 85 50 00 00 0F menjadi 26 58 05 00 00 F0
Begitu juga halnya pada Nomor SMSC Excelcomindo.
2. PDU Type (Protocol Data Unit Type)
Format PDU Type adalah
.---------------------------------------------------.
| RP | UDHI | SRI | <none> | <none> | MMS |MTI |MTI |
|---------------------------------------------------|
|bit7| bit6 |bit 5|bit ke 4|bit ke 3|bit 2|bit1|bit0|
'---------------------------------------------------'
Nilai default dari PDU untuk SMS-Deliver adalah 04 hekasdesimal, akan tetapi pada PDU Type diubah ke biner menjadi 00000100, dimana nilai "1" berada pada biner ke 2 yaitu MMS.
Contoh:
PDU Type bernilai 24 hekasdesimal = 00100100 biner.
Nilai "1" berada pada biner 2 (MMS) dan 5(SRI).
3. (OA) Originator Address
OA memiliki 3 komponen utama, yaitu:
a. Len (length) yaitu panjang nomor Originator Address
Format OA pada PDU dengan default = 14 dan bertype lokal
Format OA pada PDU = 0C bila nomor OA berawalan "+" dan bertype internasional
b. Type of Number sebagai type address dari Originator Address
nilai 81h untuk format lokal
nilai 91h untuk format internasional
c. BSC Digits berupa nomor OA. Jika panjangnya ganjil, pada akhir karakter ditambahkan "F" hekasdesimal.
Contoh:
Bila Nomor OA = ABCDEFGHIJKLMNOPQRST, maka
Len = 14
Type of Number = 81 (lokal)
BSC Digits = BA DC FE HG JI LK NM PO RQ TS
Bila Nomor OA = +ABCDEFGHIJKL, maka
Len = 0C
Type of Number = 91 (internasional)
BSC Digits = BA DC FE HG JI LK
Bila Nomor OA dalam format PDU = 0C91261885980482, Maka
Len = OC
Type of Number = 91 (internasional)
BSC Digits = 26 18 85 98 04 82
Nomor OA sebenar adalah +628158894028, yaitu nomor yang mengirim SMS ke penerima.
Tanda +62 merupakan asal negara dimana 62 adalah negara Indonesia, sedangkan 8158894028 merupakan nomor Handphone yang ditambah prefiks "0" (nol) menjadi 08158894028.
4. PID (Protocol Identifier)
Nilai default dari PID ialah 00 = "Standard-Text-SMS"
5. DCS (Data Coding Scheme)
DCS dapat menentukan message class
.---------------------------------------------------------.
|Nil | - Character- | _____________ Message _____________ |
|Hexa| -- Coding -- | ______________ Class ______________ |
|---------------------------------------------------------|
| 00 |default(7 bit)|no class ___________________________ |
| F0 |default(7 bit)|class 0(immediate display) _________ |
| F1 |default(7 bit)|class 1(Mobile Equipment-specific) _ |
| F2 |default(7 bit)|class 2(SIM specific message) ______ |
| F3 |default(7 bit)|class 3(Terminate Equipment-specific)|
| F4 | __ 8 bit ___ |class 0(immediate display) _________ |
| F5 | __ 8 bit ___ |class 1(Mobile Equipment-specific) _ |
| F6 | __ 8 bit ___ |class 2(SIM specific message) ______ |
| F7 | __ 8 bit ___ |class 3(Terminate Equipment-specific)|
'---------------------------------------------------------'
Hal yang perlu diperhatikan, pada beberapa handphone message dengan class 0 dengan enkoding 7 bit berupa flash SMS
Sedangkan dengan enkoding 16 bit Unicode (ucs2), message yang didahului "0001" dengan class 0 berupa blinking flash SMS.
6. SCTS (Service Center Time Stamp)
Format SCTS menggunakan format 2 digit per satuan waktu dimulai dari Tahun, Bulan, Tanggal, Jam, Menit, Detik dan Zona waktu.
Dalam 2 digit tersebut dilakukan pemindahan posisi (swapped nibble presentation) pada format PDU.
Contoh :
Pada format PDU SCTS bernilai 30503161403482, maka
pemisahan tiap 2 digit untuk pembagian satuan waktu adalah 30 50 31 61 40 34 82
Dimana dilakukan swapped nibble presentation :
Tahun = 30 menjadi 03 yaitu tahun 2003
Bulan = 50 menjadi 05 yaitu bulen Mei
Tanggal = 31 menjadi 13
Jam = 61 menjadi 16
Menit = 40 menjadi 04
Detik = 34 menjadi 43
Zona Waktu = 82 menjadi 28 unit
=> 15 x 28 = 420 menit (1 unit = 15 menit)
=> 420 menit / 60 = 7 jam
=> GMT+07.00 merupakan zona jam di negara Indonesia, Thailand, Vietnam.
Penerimaan SMS terjadi pada tanggal 13 Mei 2003 jam 16:04:43 waktu Indonesia (GMT+07:00)
7. UDL (User Data Length)
UDL menunjukkan panjang User Data.
Contoh :
bila data yang diterima adalah "terima sms", maka panjang data adalah 10 desimal pada format PDU menjadi 0A hekasdesimal.
8. User Data
Data berupa isi sms yang diterima. Pada PDU bernilai hekasdesimal diubah ke biner (berbasis 8 digit / oktet) dimana penulisan tiap biner oktet berikutnya di sebelah kiri biner oktet sebelumnya lalu tiap karakter diambil 7 digit (septet) dari kanan ke kiri pada konversi biner.
Berikut tabel karakter dari 7 binari digit (Alphabet Standard GSM 03.38).
Tanda b1,b2,b3,b4 pada tabel merupakan perwakilan biner septet(7 digit) dari bit ke 1,2,3,4 dimana nilai tiap bit tertera pada baris-baris di bawahnya.
Tanda b5,b6,b7 pada tabel merupakan perwakilan biner septet (7 digit) dari bit ke 5,6,7 dimana nilai tiap bit tertera pada kolom-kolom di sebelah kanannya.
Karakter yang dihasilkan dari oktet adalah gabungan dari baris bit 1,2,3,4 dengan kolom bit 5,6,7 yang membentuk koordinat mengacu pada 1 kolom.
Contoh :
UD pada format PDU adalah "F4B23CDD0E83E6ED39" berupa heksadesimal.
Nilai - nilai tiap 2 karakter heksadesimal diubah ke biner 8 digit dimulai dari yang paling kiri menjadi biner yang paling kanan.
2 karakter heksadesimal itu adalah F4h B2h 3Ch DDh 0Eh 83h E6h EDh 39h
Peletakkannya ke biner menjadi 39h EDh E6h 83h 0Eh DDh 3Ch B2h F4h
Untuk lebih mudah diubah ke format desimal menjadi 57 237 230 131 14 221 60 178 224
Lalu diubah ke biner 8 digit :
57 = 00111001
237= 11101101
230= 11100110
131= 10000011
14 = 00001110
221= 11011101
60 = 00111100
178= 10110010
244= 11110100
Penulisannya menjadi :
00111001 11101101 11100110 10000011 00001110 11011101 00111100 10110010 11110100
Dilakukan penggabungan biner lalu dipisah tiap - tiap 7 digit dimulai dari yang paling kanan ke kiri menjadi :
00 1110011 1101101 1110011 0100000 1100001 1101101 1101001 1110010 1100101 1110100
Dimana "00" tidak akan di konversi karena biner tidak memiliki 7 digit.
Lalu mengubah tiap 7 digit menjadi 1 karakter berdasarkan tabel, menjadi:
"s" "m" "s" " " "a" "m" "i" "r" "e" "t" = "sms amiret"
Kemudian data dibaca dari kanan ke kiri menjadi "terima sms"
UD dapat ditulis sebanyak 140 oktet yaitu 140x8/7 = 160 Karakter sms.
Review
Berdasarkan dari penjelasan format SMS deliver PDU diatas, maka bila PDU bernilai "059126181642240C912618859804820000305031614034820A
F4B23CDD0E83E6ED39" adalah:
05 91 26181642 - 24 - 0C 91 261885980482 - 00 - 00 - 30503161403482 - 0A - F4B23CDD0E83E6ED39
yaitu :
Melalui service center Satelindo berformat Internasional dimana nomor handphone pengirim +628158894028 dengan Id protokol = "Standad-Text-SMS" tanpa Message Class melakukan pengiriman sms pada tanggal 13 Mei 2003 jam 16:04:43 waktu Indonesia sebanyak 10 karakter dengan isi sms adalah "terima sms".