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.
kalo koneksi lewat modem bisa ga trs via tlp rumah media sms nya makasiah
mas aan s, thank tutorial cracknya. tapi masih ada 1 parasit lagi neh, aku crack TOxygenSMS 2.6 dah berhasil tapi pada saat ada sms masuk kok ada semacam messagebox gitu, harus klik dulu baru bisa dibaca smsnya. dah aku coba crack tapi blm berhasil. gimana neh ngilanginnya.mohon dibantu lagi, soalnya aku bikin buat sms autorespon. makasih buat mas aan s
Oh ya untuk messageboxnya oxygen saya sendiri jg ngk nemu (hehe hrp maklum),tapi fungsinya ada di timer,tapi kalo timernya di skip jadinya komp ngk bisa baca otomatis stp sms yg masuk.
itu bisa diakali dg timer tambahan di program nya jadi setiap x detik lgsng menutup program dg header sesuai nama project,agar programnya sendiri tdk terclose krn timer ini maka prosedur canclose dibuat false pada form utama.
cara nutup program pake perintah getwindow coba browsing aja cara lengkapnya....
dari timer tsb setiap ada window yg titlenya sama dg project ini akan otomts diclose,termasuk mesagebox,kalo mau buat nampilin message pake application.messagebox() aja jgn showmessage() //kebalik ngk ya hehe dicoba aja ya...
sory kalo agak ngaco soalnya udh lama ngk make lagi...
thanks
Oh ya coba tanya ama ipank sapa tau nemu untuk ngilangin messagenya...
mas aryo gimana nih tahu ngk cara mengakses menu lifeinhand/dompetpulsanya XL seperti Light19 (arm19) kok blm dijwb?
kalo tahu dikasih tahu dong...
thanks
Karena banyak rekan yang kesulitan menggunakan komponen MSComm, untuk update kali ini componen untuk komunikasi dengan COM aku rubah menggunakan XComDrv v.1.0,
http://www.torry.net/authorsmore.php?id=2760
Untuk download source beserta paket yang sudah jadi, dapat juga lewat URL ini: http://www.bengkelprogram.com/download-ouxcom.zip
Di situ paket tinggal di-open lewat IDE Delphi, lalu klik install. Semoga lebih mudah.
Selain itu, komponen Variant tidak lagi digunakan, karena cuman menang tampang saja :D
Sekarang tampilannya murni menggunakan komponen standar Delphi. Lebih jelek (sederhana) sih, tapi no problem.
Perubahan lain, unit-unit yang tidak diperlukan, dibredeli agar program lebih ringan. Juga perbaikan beberapa metode baca/kirim SMS, sehingga sekarang sudah bisa membaca SMS dalam folder Draft dan Sent.
Juga (yang tidak disadari sebelumnya) SMS split.
Misalnya ada SMS yang panjangnya lebih dari 160 karakter, dan menjelma menjadi 2 SMS, tetap dapat terbaca, namun terpisah dalam record yang berbeda.
Ada yang tau caranya supaya kedua SMS dapat tersambung?
Penambahan lainnya, yaitu akses registry untuk menyimpan BaudRate dan nomor port. Simple sih, tapi lumayan berarti.
Ok, saran dan masukan ditunggu.
(Yang VB masih belum :D )
Trus gimana juga cara koneksi mysql pada delphi. Kasih source code donk!
Thanks
Halo ip4nk,
Iya tuh, baru nyadar kemaren waktu dikasih tau sama Tie, tentang error pembacaan registry yang masih kosong.
Segera diupdate deh
Ide bagus, untuk melakukan dialing dari aplikasi. Tapi untuk yang ngerekam suara, hm, masih belum kepikir caranya. Ada ide?
Tentang namanya... ga berpikir sampe sejauh itu sih, asal comot nama aja
Ok, terima kasih masukannya.
mas untuk pembacaan sms menggunakan mikrokontroller bisa ga m'gunakan HP tipe SIEMENS C55, & tolong kirim contoh programnya dgn bahasa assembler ya. trims
tolong gimana cara membuat sms yang dah
masuk dalam PC otomatis bisa memutar lagu. ini untuk TA ku ttg stasiun radio.tlg banget yaaa.begini rinciannya....
pendengar mengirim sms misal ketik
" padi sobat " maka sms yang dah masuk ke server langsung masuk dalam antrian lalu searching lagu yang diinginkan dan
mutar lagu.hanya dibatasi 10 pengirim sms pertama. tolong banget yaaa...klo bisa sekalian source code-nya hehe...
terserah pake bahasa pemrograman apa saja diutamakan java.
Halo Krishy,
Iya tuh, emang sering bermasalah gitu. Biasane karena masalah lisensinya ilang.
Di salah satu komentar pada artikel ini, Mbak Sri memberikan cara agar MsComm mau diinstall.
Bagus juga tuh pake TOxygenSMS. Aku pernah download, tapi ga pernah pake.
Tapi kalo pake komponen yang udah jadi gitu, kan jadi ga tau proses dasar pengiriman SMS
Btw, aplikasi di artikel ini sekarang udah ga pake MsComm, tapi pake tOuxCom.
» 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 :-)