Untuk mengakomodasi masukan dari para rekan, aku menyusun aplikasi dari artikel Mengirim SMS dari PC dan artikel Membaca SMS dari PC, serta sedikit cara untuk mendapatkan informasi
mengenai status HP.
Aplikasi ini dibuat dalam versi Delphi, dan dengan teknik yang sama, sangat
mungkin untuk diporting ke Visual Basic ;)
untuk rekan yang belum terbiasa dengan Delphi, mungkin kapan-kapan akan aku buat
versi VB-nya. Kapan ya...
Ketika aplikasi ini pertama kali dijalankan, dalam keadaan tidak terhubung ke handphone.
Kita diberi kesempatan untuk memilih nomor port yang terhubung dengan handphone.
Setelah memilih nomor port yang benar, kemudian tekan tombol Konek, maka
aplikasi akan berusaha menghubungi HP.
Jika aplikasi sukses terhubung ke HP, maka akan ditampilkan beberapa informasi
mengenai HP tersebut.
Berikut ini adalah informasi tersebut:
Setelah itu, selama program berjalan, indikator dari handphone secara kontinu ditampilkan. Indikator tersebut diambil dengan perintah AT+CIND?
Nilai yang dikembalikan adalah suatu list (rangkaian) yang menandakan
indikator HP. Urutan dan nilai indikator dapat berbeda untuk beberapa merk HP.
Aku sudah nyoba untuk Sony Ericsson T610 dan Siemens CX65. Hasil yang persis
sama adalah pada indikator Battery dan Sinyal, sedangkan indikator yang lain
berbeda posisi.
Karena itu, jika ingin aplikasi kamu berjalan full untuk semua merk HP, maka aplikasi
harus mendeteksi semua nilai yang didukung oleh HP yang digunakan. Informasi mengenai
hal ini dapat dilihat pada command AT+CIND=?
Berikut ini adalah contoh hasil perintah AT+CIND=? pada Siemens CX65:
at+cind=? +CIND: ("battchg",(0-5)),("signal",(0-5)),("service",(0,1)), ("message",(0,1)),("call",(0,1)),("roam",(0,1)), ("smsfull",(0,1)),("call status",(10x-20x)), ("GPRS coverage",(0,1)),("callsetup",(0-3)) OK
Sesuai urutannya, maka item pertama adalah level battery, kedua adalah sinyal,
ketiga adalah kesiapan servis, lalu datangnya SMS baru, terjadinya panggilan (berbicara),
kondisi roaming, sms box penuh, dan seterusnya. Silakan mereferensi ke manual
masing-masing HP untuk lebih jelasnya.
Untuk mendapatkan nilainya, jalankan perintah AT+CIND? (tanpa sama dengan). Berikut ini adalah contohnya:
at+cind? +CIND: 2,2,1,0,0,1,0,0,1,0
Yang didapatkan adalah rangkain nilainya. Nilai yang pertama adalah untuk battery,
yaitu 2 dari skala 0 - 5 (lihat hasil AT+CIND=? di atas). Sinyal pada HP juga 2,
begitu seterusnya.
Informasi tersebut ditampilkan secara terus menerus, dengan interval timer 1000
milisecond (1 detik). Berikut ini adalah contoh tampilan aplikasi:
Level sinyal dan battery ditampilkan dalam bentuk gauge meter, sedangkan indikator call, sms, smsfull ditampilkan dengan gambar pada kotak hijau sebelahnya. Ya, aku akui, gambar indikatornya tidak informatif sama sekali. Karena itulah, program ini aku tempatkan di sini, dipersilakan untuk dimodifikasi :D
Fasilitas aplikasi yang lain adalah SMS Info, untuk membaca SMS dari Inbox (termasuk SMS
baru), sedangkan untuk SMS dalam folder draft dan sent, aplikasi belum mendukung :(
silakan ditambahi, ok.
Page berikutnya adalah fasilitas untuk mengirim SMS. Di sini juga disediakan tombol
untuk menyimpan SMS ke dalam folder draft pada HP.
Kedua fasilitas di atas menggunakan kedua unit yang telah dibahas pada artikel
sebelumnya, namun dengan berbagai perbaikan dari masukan rekan-rekan semua, terutama
Sri. Makasih banget, ok.
Kemudian, yang belum pernah dibahas sebelumnya adalah pembacaan buku kontak.
Untuk memilih memori penyimpanan kontak, apakah menggunakan SIM Card (kode SM), atau
memori handphone (ME), atau keduanya (MT), digunakan perintah AT+CPBS=(SM, ME,
MT). Tidak semua HP mendukung ketiganya, maka dari itu aplikasi mesti bijaksana
memilih :)
untuk mengetahui media yang didukung, pake perintah AT+CPBS=?
Untuk CX65 defaultnya adalah SM, dan gak bisa ME. Untuk amannya, gunakan saja
SM.
Setelah menentukan memori yang dipilih, berikutnya adalah mencari informasi
index (nomor posisi) kontak yang tersedia. Gunakan perintah AT+CPBR=?, maka akan diberikan
index yang tersedia. Contoh pada CX65:
at+cpbr=? +CPBR: (1-250),20,12 OK
Hasil itu menandakan bahwa index yang tersedia adalah 1 - 250. Maka kita perlu membaca (looping) dari 1 sampai 250 untuk mendapatkan keseluruhan kontak. Gunakan perintah AT+CPBR=nomor indexnya untuk membaca tiap-tiap index. Contoh:
at+cpbr=88
+CPBR: 88,"+6281524737470",145,"Rasdi"
OK
Hasil yang diberikan tinggal diparsing dan ditampilkan pada listview.
Untuk mendownload aplikasi dan sourcenya, silakan menuju ke bagian update aplikasi.
Jika ingin menjalankan dari
source-nya, atau melakukan modifikasi program, lebih mudah kalo menggunakan Delphi 6, karena aku membuatnya dari versi itu.
Untuk versi ini, dibutuhkan library XComDrv untuk mengcompile ulang. Silakan download library tersebut
di sini. Extract
pada suatu direktori (misalnya c:\ouxcom), lalu open file *.dpk melalui IDE Delphi, dan klik install.
Kemudin tambahkan path di mana ouxcom tersebut tadi di-extract, kedalam path
library, agar library tersebut dapat bekerja. Masuk menu Tools > Environment
Options > Library > Library path, browse ke c:\ouxcom, lalu tekan add.
Jika diperhatikan, masih banyak fasilitas yang mungkin ditambahkan. Aplikasi
tersebut hanya contoh penerapan perintah AT Command untuk baca dan kirim SMS.
Ok, selamat mencoba.
sory mas td tes emoticon[br/] keren nich programnya. Mas untuk GSM Modem (Hp) bisa diganti dengan modem gak? Soalnya saya lihat di internet banyak aplikasi SMS gateway yang bisa menggunakan HP dan modem. thaks infonya [br/][br/] mo ngasi saran nich mas, boleh kan [br/] sebaiknya komentar disort dari tanggal yg baru ke yang lama (yang paling baru ditaruh di halaman pertama)[br/]
Kalau teman teman ada yg membutuhkan aplikasi utk mengirim dan menerima sms, silakan kirim email ke saya (kgf76@yahoo.co.id). oke.
Miing: Buat Aan, ada orderan nge-crack lagi tuh Dodo: Wah, kamu ngetes jangan aneh-aneh, forum ini amat-sangat-simple-sekali Untuk pake modem, masih belum dapat pentunjuk yang benar cara komunikasi sebagai SMTE. Ada yang sudah tau? Sort Descending? hm... dulu pernah aku coba, dan kayaknya membingungkan. Mungkin karena belum biasa kali ya... Enaknya gimana yah? (butuh pooling?), hehehe... kgf76: Gak dijelaskan sekalian nama aplikasinya, metode dan spesifikasinya? Biar ga penasaran aja nih
sory mas tak kirain klo mo ngasi emoticon hrs pake coding gt eh gak taunya cmn "" . salah ngerti "untuk kode program, apit dengan tanda [code][/code]. contoh: [code] [/code]" SMTE apaan tuch? trus bedanya ama SMPP apaan mas contoh: [code] [/code]" SMTE apaan tuch? trus bedanya ama SMPP apaan mas?
Waduh, Dodo, jadi berantakan nih SMTE: perangkat dari Telkom yang digunakan untuk terima/kirim SMS lewat jaringan telepon. Aku belum pernah lihat bentuknya, apalagi punya SMPP: protokol untuk terima/kirim SMS dengan provider seluler, misalnya digunakan oleh Content Provider.
sory mas tuch kan salah lagi tapi koq jadi berubah ya? diedit lagi ya mas?
Mas pas aku coba ni program muncul error 'Porject AplikasiSMS.exe raised exception class EConvertError with message "FF" is not a valid integer value.' napa tuch mas?
mas, klo kita mau gabungan ama operator itu caranya gimana ya ? ada yang tau syarat2 apa saja yang harus disediakan dan berapa kira2 biayanya ? mas mungkin enggak pengiriman mms yang text mode bisa diterima di hp biasa yang tidak ada smsnya, klo bisa kan tarif nya lebih murah !
Dodo, Ya, karena errornya terlalu parah, jadi aku benahin, daripada mengganggu ketentraman umum Hmm, error pas ngapain tuh? belum pernah nemu sih, tapi penyebabnya karena konversi dari heksa secara langsung. Mestinya kan ditambahi tanda dolar '$' di depannya. Coba kamu kasih tau error itu muncul pas apa, nanti aku perbaiki. Sendi, Caranya simple (yang pernah aku tau): - bikin proposal pengajuan, kenapa dan apa untungnya kerja sama itu bagi kamu dan bagi operator. - yang harus disediakan, server dengan koneksi dedicated, seingatku minimal kecepatan 64kbps. - Biaya? setupnya mungkin sekitar 13 juta, dan perbulannya sekitar 3-4 juta. Tapi mungkin lain kalo kamu mau bikin colocation server. - Yang jelas mahal - Tiap provider bisa punya aturan masing-masing (ada yang mudah dan ada yang mestinya gampang dibikin susah) - Akses langsung ke CS mereka aja biar lebih jelas Maksud kamu, MMS diterima oleh HP yang tidak support MMS? Bagaimanapun, MMS yang tetep MMS, meski isinya MMS cuma teks. Karena protokol yang digunakan tetap GPRS, yang mana kalo HP sudah punya GPRS biasanya juga bisa MMS. Lain lagi kalo ada server khusus yang menghandle ini, seperti punyane IM3. Jika ada MMS masuk, maka diberitahukan linknya ke HP penerima. *tapi sekarang kayaknya udah gak fungsi fitur ini* Model ini dapat ditiru, misalnya yang dikirimkan ke HP penerima itu bukan pemberitahuan, melainkan SMS yang berisi teks dalam MMS. Karena sebenarnya pemberitahuan dari server IM3 itu juga SMS biasa, tapi sudah dimodifikasi jadi notifikasi.
errornya pas cek SMS. sebelumnya bisa baca dan normal2 aj mas. koq skr jadi gak bisa ya?
» Membaca SMS dari PC (162)Jika sebelumnya sudah dibahas cara membaca SMS lewat PC, belum lengkap rasanya kalau tidak dibahas tentang proses pengiriman SMS lewat PC.
Kirim-kiriman SMS memang asyik, apalagi kalo menggunakan PC, meski tetep aja bayar :-)