Official StoreTekan tombol di atas untuk membeli semua alat dan bahan eksperimen di web ini

Cara Menghapus SMS dengan Delphi

Membuat SMS Gateway, tak lengkap rasanya jika tak memiliki fitur menghapus SMS. Kalau SMS tidak dihapus, akan memenuhi memori modem atau simcard, dan bila sudah penuh SMS baru tidak akan masuk lagi. Nah, kalau sistem yang kita buat adalah remote control dengan SMS, maka sistem kendalinya tidak akan berfungsi karena tidak ada SMS yang masuk karena kepenuhan inbox.

Untuk mengatasinya, Anda dapat membuat sendiri program untuk menghapus SMS baik Anda jalankan dengan mengklik tombol atau berdasarkan waktu (misalnya sehari sekali semua SMS akan dihapus). Untuk melakukan penghapusan SMS, at command yang digunakan adalah AT+CMGD=index_memori, dengan index_memori adalah alamat/index memori yang dipilih. Pilihan memori tergantung pada jenis modem, tapi minimal ada 2, yakni “SM” (simcard) atau “ME” (modem). Jadi sebelum Anda menghapus SMS, Anda harus menentukan di memori mana SMS itu berada. Untuk menentukan memori sebagai media penyimpan SMS, at command yang digunakan adalah AT+CPMS=XX, dengan XX adalah “SM” atau “ME”. Untuk  melihat option memori yang dimiliki modem Anda dapat menggunakan at command berikut :  AT+CPMS=?

Dapat Anda lihat modem saya memiliki option memori “ME”, “MT”, “SM” dan “SR”. Ini bisa berbeda untuk tiap modem, tapi minimal akan memiliki option “SM” dan “ME”. Untuk melihat settingan eksisting dimana modem menyimpan memori dapat Anda gunakan command AT+CPMS?

Ternyata modem modem saya settingan default memorinya masih di ME (modem) sedangkan angka “0” menunjukkan jumlah SMS yang ada di memori “ME” dan angka “255” menunjukkan kapasitas penyimpanan SMS di “ME”

Sekarang kita akan mencoba mengarahkan pembacaan SMS yang ada di simcard, menggunakan command AT+CPMS=”SM”

Sekarang default penerimaan SMS ada di “SM”(simcard), dan sekaligus dapat Anda lihat ada berapa SMS di simcard (ditunjukkan dengan angka ‘0’ yang berarti tidak ada SMS yang disimpan) dan kapasitas SMS di simcard (ditunjukkan dengan angka “30”, yang berarti simcard hanya mampu menyimpan 30 SMS)

Karena masih kosong, kita kirimi dulu nomor yang ada di modem untuk percobaan

Tampak ada SMS masuk, yang ditunjukkan dengan indikator SMS masuk, +CMTI:”SM”,0 yang berarti “ada SMS masuk di “SM” di index memori “0”. Kemudian coba kita cek dengan command at+cpms=”SM” dan dapat balasan dari modem ‘+CPMS:1,30,1,30,1,30’. Bandingkan pada gambar sebelumnya yang masih ‘+CPMS:0,30,0,30,0,255” (cukup perhatikan dua angka dibelakang +CPMS). Ini berarti ada sms masuk sebanyak 1 SMS di memori “SM”. Karena penghapusan SMS membutuhkan informasi indeks memori mana yang akan dihapus, dapat Anda gunakan command at+cmgl=”ALL”

Tampak semua SMS yang masuk dan nomor indeks memori ditunjukkan dengan angka dibelakang ‘+CMGL:’ (pada gambar di atas ditunjukkan dengan angka ‘0’). Untuk menghapus SMS  di atas, dapat Anda gunakan command at+cmgd=0, langsung pada program ‘7G Terminal’ di atas, atau jika ingin membuat program sendiri di Delphi dapat Anda lakukan sesuai langkah-langkah berikut ini.

Buat project baru dalam Delphi, dan ambil komponen button sebanyak (3 buah) dan kotak spinedit (1 buah) dan label (1 buah)  ke dalam form. Atur komposisi dan properti komponen-komponen tersebut sesuai gambar  di bawah:

Tambahkan baris program berikut di tombol dengan tulisan ‘Setting modem’

procedure TForm1.Button2Click(Sender: TObject);

begin

comport1.ShowSetupDialog;

end;

Double click tombol ‘Open’ dan tambahkan baris program sebagai berikut :

procedure TForm1.Button3Click(Sender: TObject);

begin

if ComPort1.Connected then

begin

ComPort1.Close;

button3.Caption:=’Open’;

end

else

begin

ComPort1.Open;

button3.Caption:=’Close’;

ComPort1.WriteStr(‘at+cmgf=1’+#13#10);

ComPort1.WriteStr(‘at+cscs=”GSM”‘+#13#10);

ComPort1.WriteStr(‘at+cpms=”SM”‘+#13#10);

end;

end;

Fungsi tombol ‘Setting modem’ adalah untuk menyetting modem dan tombol ‘Open’ adalah untuk melakukan koneksi dengan modem. Selanjutnya double click tombol dengan tulisan ‘Delete SMS’ dan isikan dengan baris program sebagai berikut.

procedure TForm1.Button1Click(Sender: TObject);

begin

ComPort1.WriteStr(‘at+cmgd=’+inttostr(spinedit1.Value)+#13#10);

end;

Sekarang running-lah program yang sudah Anda buat tadi, kemudian pilih index memori di simcard yang akan dihapus dan tekan tombol ‘Delete SMS’. Untuk membuktikan bahwa SMS sudah terhapus, bisa Anda lihat program Hyper terminal atau dengan ‘7G Terminal’ buatan saya.

Tampak bahwa dengan command at+cpms=”SM” sudah kembali menunjukkan angka ‘0’ dan ketika dicek dengan command at+cmgl=”ALL” juga menunjukkan sudah tidak ada SMS di memori.

Semoga bermanfaat dan happy programming ….

Note : Untuk program ‘7G Terminal’ akan saya bahas pada artikel selanjutnya dan Anda dapat mendownloadnya di sana. Program ini merupakan pengganti program Hyper Terminal, dan sangat berguna sekali jika Anda menggunakan OS Windows 7 karena  hyper terminal sudah tidak ada di Win7

Bersambung

Incoming search terms:

cara menghapus pesan di kartu sim, cara menghapus sms di memori internal modem, cara hapus pesan sim card di android, hapus inbox simxard delphi, cara hapus pesan kepenuhan, cara menghapus sms yg masuk ke sim, cara menghapus sms copy, cara menghapus pesan di sim card, tutorial hapus pesan masuk pada delphi7, cara hapus pesan pada sim card yang sudah penuh

Leave a Reply

7 Comments on "Cara Menghapus SMS dengan Delphi"

avatar
  Subscribe  
newest oldest most voted
Notify of
UDE
Guest

Dear Mas Ajie
Mas ajie saya sudah buat aplikasi sms, untuk terima dan kirim sudah berhasil tetapi saat di hapus tidak berhasil padahal di memo1 statusnya “OK” dan untuk menangkap pesan pengirim serta isi sms tidak berhasil, mohon pencerahan… Trim’s. UDE

Mahmud
Guest

Makasih banyak pak. Sangat membantu saya yang sedang bingung dengan penggunaan gammu, dan ini ada solusinya. Semoga tugas akhir saya tentang sms gateway segera selesai.

liana
Guest

assalam mas mau nanya kalo misalnya ada sms 10, tapi saya ingin menampilkan sms yang no 8 aja bisa gak mas, mohn bantuannya mas

kotib
Guest

mas mau tanya bisa gak kalo misalnya ada sms masuk 10, tapi saya pingin menampilkan sms no 8 yang ada di kartu sim saya , terimah kasihmas mohon petunjuk mas

error: Content is protected !!