Menyambung artikel Membaca SMS dari PC, kali ini dibahas cara mengirim SMS melalui PC.
Masih tetap menggunakan Borland Delphi, kita memulai pembahasan dengan bagaimana cara membentuk PDU untuk dikirim.
PDU yang diterima dari HP berbeda dengan PDU yang untuk dikirim, namun tetap menggunakan aturan yang sama. Perbedaannya terutama pada field yang dikandung, baik nilai maupun fungsinya. Untuk lebih detail mengenai PDU yang diterima, silakan membaca artikel sebelumnya.
Berikut ini struktur PDU untuk dikirim:
07 91 2658050000F0 11 00 0C 91 265836164900 00 00 FF 04 C830FB0D
Keterangan:
Oktet / Digit Hexa | Keterangan |
---|---|
07 | Panjang atau jumlah pasangan digit dari nomor SMSC (service number) yang digunakan, dalam hal ini adalah 7 pasangan (14 digit berikutnya) |
91 | Jenis nomor SMSC. Angka 91 menandakan format nomor internasional (misal +6281xxx). Untuk 081xxx menggunakan angka 81. |
2658050000F0 | Nomor SMSC yang digunakan. Karena jumlah digit nomor SMS adalah ganjil, maka digit paling belakang dipasangkan dengan huruf F. Kalau diterjemahkan, nomor SMSC yang digunakan adalah +62855000000 (IM3) |
11 | Oktet pertama untuk PDU SMS untuk dikirim (SMS SUBMIT). Untuk penjelasannya, silakan lihat artikel ini. |
00 | TP-Message-Reference. Diisi "00" agar diisi otomatis oleh handphone. |
0C | Panjang digit dari nomor penerima (0C hex = 12 desimal) |
91 | Jenis nomor penerima (sama dengan jenis nomor SMSC) |
265836164900 | Nomor penerima SMS, yang jika diterjemahkan adalah +628563619400 |
00 | Pengenal protokol, dalam hal ini adalah 0. Silakan baca keterangan di sini. |
00 | Skema pengkodean SMS, juga bernilai 0. |
FF | Validitas waktu. FF berarti maksimum. Silakan baca keterangan di sini. |
04 | Panjang dari pesan SMS, dalam hal ini adalah 4 huruf (dalam mode 7 bit). |
C830FB0D | Pesan SMS dalam mode 7 bit. Jika diterjemahkan kedalam 8 bit, lalu dirubah ke ASCII, maka didapat pesan 'Halo' |
Untuk handphone tertentu, kita dapat menghilangkan pemberian nomor SMSC pada PDU, untuk kemudian akan diisi oleh handphone sesuai dengan kartu yang sedang digunakan. Tapi untuk lebih amannya, kita sebutkan nomor SMSC yang digunakan.
Ketika PDU SMS selesai dibentuk, maka langkah selanjutnya adalah melakukan pengiriman PDU tersebut melalui port serial yang digunakan. Perintah yang pertama kali digunakan adalah AT+CMGS, dengan aturan sebagai berikut:
AT+CMGS=<jumlah oktet PDU>
<jumlah oktet PDU> diisi dengan jumlah pasangan dalam PDU yang terbentuk, dengan dikurangi SMSC. Dengan kata lain, kita menghitung jumlah oktet mulai dari kode SMS SUBMIT (11). Untuk contoh di atas, berarti jumlah digit dalam PDU adalah 36, yang berarti terdiri dari 18 oktet. Sehingga perintah yang digunakan adalah:
AT+CMGS=18
Setelah itu, tunggu respon dari handphone. Kalau gagal, dengan berbagai
alasan, maka yang dikembalikan adalah ERROR.
Sedangkan jika perintah tersebut diijinkan, maka yang dikembalikan adalah
karakter '>' (lebih besar).
Jika perintah tersebut sukses, selanjutnya adalah menuliskan semua PDU
tersebut ke handphone, dan diakhiri dengan penulisan karakter ASCII 26 (CTRL+Z).
Jika sukses, maka yang dikembalikan adalah OK. SMS terkirim, semoga.
Dari semua penjelasan di atas, diharapkan dapat dipahami langkah-langkah pengiriman SMS melalui PC. Untuk lebih jelasnya, silakan download source-code dalam program Delphi. Unit ini dapat digabungkan dengan unit untuk membaca SMS pada artikel sebelumnya.
Yang perlu diperhatikan adalah tentang pengaturan koneksinya. Karena masing-masing proses (kirim dan terima) membutuhkan koneksi ke handphone, maka harus diatur agar tidak terjadi proses terima dan kirim secara bersamaan.
Sekian pembahasan mengenai SMS. Jika ada pertanyaan atau kritik dan masukan, silakan kirim ke aryo.sanjaya@gmail.com.
Happy coding :)
Halo Pak Trubus,
Wah, nampaknya masih banyak yang harus dibahas pak :)
Yang saya tampilkan dalam artikel ini hanyalah unit untuk berinteraksi antara program dengan HP. Jadi sepenuhnya proses nanti akan diatur oleh programmer.
Dan satu lagi, ini bukanlah program jadi, sehingga kalau hendak digunakan, harus diaplikasikan dalam sebuah program terlebih dahulu.
Mengenai tombol send, itu hanyalah masalah tampilan, yang diserahkan sepenuhnya kepada programmer. Yang penting, misalnya diberikan tombol send, maka event dari tombol itu akan melakukan pemanggilan fungsi KirimSMS, dengan parameter sebagai berikut:
procedure KirimSMS(smsc, Tujuan, Isi: string);
Fungsi itu tidak berhubungan dengan Memo1, karena Memo1 itu ditujukan untuk menerima SMS pada artikel sebelumnya.
Juga perintah AT+CMGS=18, tidak berhubungan dengan pengguna, karena itu interaksi antara unit dengan HP.
Misalnya anda ingin membuat aplikasi yang dapat mengirim SMS, maka anda harus menyediakan Memo satu lagi untuk meminta inputan teks, dan sebuah textbox untuk meminta inputan nomor tujuan.
Nomor SMS Center dapat diabaikan, karena unit selalu menggunakan IM3. Anda dapat merubahnya sehingga sesuai dengan nomor SMS Center yang anda gunakan.
Lalu tambahkan tombol send, guna memproses teks SMS dan nomor tujuan agar 'dilempar' ke fungsi KirimSMS di atas.
Lalu, aplikasi ServiceManager dan EnterprisesManager, saya cuma bisa memberikan EXE-nya, sehingga tidak pengaruh apakah itu dibuat dalam Delphi atau Visual Basic.
Bukankah anda cuma ingin mendapatkan gambaran mengenai kedua proses tersebut?
Kemudian, petunjuk yang saya kirimkan itu, adalah manual dari kedua aplikasi di atas. Juga alamat yang anda sebutkan tidak benar sehingga terjadi broken link.
Terakhir, anda dapat mencoba download kedua aplikasi tersebut beserta dokumentasinya di sini:
http://www.bengkelprogram.com/kategori-Aplikasi-download.bps
Silakan download lalu coba. Tapi ingat, anda masih butuh MyODBC dan MySQL untuk menjalankan kedua aplikasi di atas. Duh :(
Selamat mencoba, semoga tidak semakin bingung ^_^
gini pak yang saya maksud itu apakah program yang untuk mengirim SMS dari PC punya bapak itu. apakah bapak sudah punya program aplikasi jadinya bukan program yang lain soalnya saya butuh program untuk kirim SMS dari PC tapi dari Program Delphi trus sama ada Code Programnya juga supaya nanti bisa saya kembangkan, kira-kira bapak punya nggak? trus untuk program yang melihat SMS dari PC itu pada bagian function teskoneksinya yang Comport sama setting baudratenya saya kasih untuk CommPort itu saya isi dengan 1 dan untuk setting baudratenya 19200 dan itu saya coba bisa tapi pada waktu saya tekan Button konek untuk konek antara komputer dengan HP itu error dan ada komentar Port already open trus untuk mengatasinya supaya tidak keluar error pada waktu setelah ditekan Button konek itu gimana PAk? mohon bantuannya terimakasih.
pak, saya mo buat tugas akhir tentang membuat software untuk menampung sms dan mms dari HP ke PC trus juga dari PC bisa replay ke HP yang ngirim messages.trima kasih atas balasannya. saya tunggu ya pak....
pak,saya liat kebanyakan aplikasi yang berhubungan antara PC dan HP tu pake Delphi. gimana klo pake VB apa bisa juga pak??? Kelebihan delphi untuk aplikasi HP ke PC dibandingkan dengan VB apa pak??? meneruskan pertanyaan saya sebelumnya,hardware dan software apa saja yang saya butuhkan untuk membuat software untuk pengiriman MMS dan SMS dari HP ke PC ataupun sebaliknya...klo memang sudah ada aplikasi seperti itu bisakah bapak memberikan source codenya untuk saya modifikasi lagi. terima kasih sebelumnya ya pak....
Halo thie, Kalo bicara tentang kelebihan bahasa pemrograman, akan panjang banget, karena sangat sulit untuk obyektif. Kalo secara subyektif, aku lebih prefer pake Delphi untuk urusan hardware. Itu cuman kebiasaan saja. Misalnya itu kebiasaan seorang pendidik, sehingga kebanyakan mahasiswanya tidak berani membuat tugas akhir dengan bahasa pemrograman lain, biar aman di seminarnya (katanya). Biasalah, mereka ambil resiko terkecil. Gak ada masalah, saya juga pake VB waktu bikin project SMS Autorespond. Untuk pertanyaan kamu yang kedua, ada dua kemungkinan. Pengiriman MMS bisa dilakukan oleh HP yang dikontrol oleh PC, atau dilakukan oleh PC yang lalu dilewatkan HP sebagai modem. Untuk kemungkinan yang pertama, aku belum pernah bikin, karena cenderung spesifik ke satu HP. Sedangkan untuk kemungkinan kedua, kamu bisa pake SMS/MMS Gateway. Silakan download aplikasinya di http://www.nowsms.com Itu berisikan aplikasi SMS/MMS Gateway serius yang sangat lengkap, dan memuaskan :)) Selamat mencoba.
Hallo all, Tanya ya... Kalau ingin execute file executable lain melalui delphi caranya bagaimana ya? Misal begini: Saya ingin membuat form dengan beberapa tombol. Jika klik pada tombol1, iaakan menjalankan file, katakanlah satu.exe demikian seterusnya hingga klikpada tombol tiga. Tolong yach...Saya newbie di delphi. Sudah saya cari di help delphi, tapi sampai sekarang tidak ketemu juga. Thanks.
pak, saya pernah browsing trus ketemu ma satu buku e-book yang menurut saya banyak manfaatnya karena judulnya berhubungan dengan masalah tugas akhir saya plus scriptnya tp yang jadi masalah saya belum pernah beli via internet.gimana caranya ngbedain produk yang dijual di internet itu benar atau cm menipu aja. saya takut begitu ditransfer uangnya malah gak dikasi juga.pak saya juga minta penjelasan yang lebih detail donk tentang program untuk mengirimkan SMS or MMS biar bisa memanfaatkan memori komputer untuk data yang melebihi kapasitas memori HP. Software apa aja yang biasanya digunakan untuk koneksi pengiriman sms dengan manfaatin memori komputer. trus perlu gak kita hubungin salah satu operator kartunya biar bisa manfaatin satelitnya.gimana caranya biar bisa untuk semua operator dan semua merk HP tanpa terkecuali. trima kasih atas jawabannya ya pak....
To Thie: ------------ pak, saya pernah browsing trus ketemu ma satu buku e-book yang menurut saya banyak manfaatnya karena judulnya berhubungan dengan masalah tugas akhir saya plus scriptnya tp yang jadi masalah saya belum pernah beli via internet.gimana caranya ngbedain produk yang dijual di internet itu benar atau cm menipu aja. ----------- Menurut saya, lebih baik jangan cari ebook yang bayar, karena jika sumber dan penjualnya tidak jelas bagaikan membeli kucing dalam karung. Isinya belum tentu sesuai dengan judulnya. Internet kaya akan ilmu yang gratis, tergantung bagaimana cara kita menemukannya.Coba cari pake google. ---------------- pak saya juga minta penjelasan yang lebih detail donk tentang program untuk mengirimkan SMS or MMS biar bisa memanfaatkan memori komputer untuk data yang melebihi kapasitas memori HP. ----------- Memory ini maksudnya RAM atau Hardisk? Sebaiknya simpan ke hardisk, karena bila disimpan di RAM akan membuat RAM menjadi cepat penuh. ------- Software apa aja yang biasanya digunakan untuk koneksi pengiriman sms dengan manfaatin memori komputer. ----- Software yang dijelaskan diartikel inipun bisa mengirim SMS. Tinggal atur penyimpanannya saja. Silakan cari informasi mengenai penyimpanan file ke hardisk menggunakan aplikasi yang anda inginkan. ------ trus perlu gak kita hubungin salah satu operator kartunya biar bisa manfaatin satelitnya. ------ Memangnya punya dana berapa miliar? Sewa satelit mahal loh... ------- gimana caranya biar bisa untuk semua operator dan semua merk HP tanpa terkecuali. ------------- Saat ini pakai sebarang kartu dari sebarang operator sudah bisa kirim/terima sms dari operator yg sama atau operator lainnya. ----- trima kasih atas jawabannya ya pak.... ----- Mudah2an membantu...
Halo Deni, Dalam Delphi kita bisa menggunakan fungsi ShellExecute untuk running aplikasi lain. Sebenarnya ini fungsi dari Windows (API), tapi sudah di-interfacekan oleh Delphi. Biasanya kamu tinggal pake fungsi ini, dan Delphi otomatis menambahkan unit yang dibutuhkan. Tapi jika tidak otomatis, maka kamu perlu menambahkan unit ShellAPI pada daftar Uses unit kamu. Contoh perintahnya adalah sebagai berikut: ShellExecute(Form1.Handle, nil, 'c:windowsnotepad.exe', nil, nil, SW_SHOWMAXIMIZED); Handle di situ adalah sebagai Parent. Untuk lebih jelasnya, pada IDE Delphi, arahkan kursor pada tulisan ShellExecute, lalu tekan Ctrl+F1. Semoga membantu
Halo thie, Kalo bagi aku, andai harus beli buku, aku lebih suka beli di toko buku Bukan ngajak kemunduran teknologi loh, tapi khusus untuk konteks ini, aku lebih suka ke toko buku saja. Itu hanya sebagai 'entry point' saja, karena tindak lanjut dari buku tersebut adalah sowan ke Google.com, seperti yang dibilang Deni itu. Forum/milis/tutorial bagiku jauh lebih membantu daripada buku, tapi itu setelah kita agak menguasai peta permasalahan. Sebelum itu, sangat disarankan untuk baca buku. Kalo untuk belanja di Internet, banyak kok situs yang secure... aku dulu hampir beli marchandize MotoGP, soalnya di sini susah banget nyarinya. Ga jadi karena cuma bisa pake kartu kredit. Hati-hati, meski itu belanja di e-Bay atau Amazon. Tentang aplikasi yang dapat menyimpan ke komputer, kamu bisa memanfaatkan database. Barusan aku posting artikel Delphi, untuk baca tulis SMS. Kamu bisa modifikasi programnya, sehingga setiap ada SMS baru, disimpan di database (atau cuma ke file teks?), lalu SMS di HP otomatis dihapus. Dengan begitu, memori HP akan selalu longgar. Kalo aplikasi yang aku upload sekarang, dia baca/kirim/hapus masih perlu diklik oleh pengguna. Tapi gak sulit untuk merangkai otomatisasinya dengan timer. Untuk pengiriman SMS atau MMS, sama sekali tidak perlu mengkontak provider seluler. Kecuali kalo kamu ingin setingkat korporet, misalnya penggunaan 4 nomor, maka kamu perlu bekerja sama dengan operator. Dengan cara tersebut, kamu bisa mengirim ribuan SMS dalam hitungan detik. Tapi ya gitu, mahalnya, ampun deh. Harus punya server dedicated, mahal. Kalo boleh tau, sejauh mana penerapan aplikasi kamu nanti? Kalo misalnya untuk tingkat kesibukan yang kecil, dengan HP atau modem GSM juga sudah cukup. Tapi jika untuk kelas berat, maka harus kerja sama dengan operator, dan mungkin kamu akan belajar Java
» Membaca SMS dari PC (162)Kompilasi beberapa unit yang digunakan untuk mengirim dan membaca SMS, dan menampilkan informasi handphone
Kirim-kiriman SMS memang asyik, apalagi kalo menggunakan PC, meski tetep aja bayar :-)