Seperti yang pernah saya janjikan dahulu, saya akan mencoba
memposting artikel tentang aplikasi SMS gateway untuk membuat SMS ucapan
ulang tahun secara otomatis dalam blog ini.
Jika Anda punya banyak teman dan Anda memiliki data tanggal lahir
semua teman Anda, maka mudah-mudahan script yang dibahas dalam artikel
ini akan bermanfaat. Oleh teman Anda, Anda akan dianggap sebagai teman
yang sangat perhatian, karena setiap kali sang teman berulang tahun maka
SMS ucapan ultah selalu terkirim ke dia tepat waktu tanpa meleset 1
hari pun, 1 jam bahkan 1 menit pun (kalo waktu di komputer Anda sama
dengan waktu di rumah teman Anda … he 3x). Tapi jangan bilang ke temen
Anda, bhw yang mengirim SMS ucapan ultah adalah program komputer ya
OK, untuk membuat SMS ucapan ulang tahun otomatis ini kita memerlukan
Gammu sebagai SMS daemonnya, HP tentu saja dan sebuah komputer yang
senantiasa ON terus. Mengapa haris ON terus komputernya? ya.. kalo pas
ada temen Anda yang ulang tahun namun kebetulan komputer Anda lagi mati,
ya… SMS nya gak bisa terkirim. It makes sense, doesn’t it?
Oya, satu lagi Anda perlu XAMPP atau AppServ untuk menjalankan
programnya, karena kita akan membuatnya menggunakan PHP + MySQL. Untuk
mengetahui cara instalasi Gammu dan bagaimana cara mengintegrasikannya
dengan MySQL silakan baca artikel cara setting Gammu.
Trus… untuk tabel datanya, apa saja yang dibutuhkan?
Untuk keperluan ini, kita buat 2 buah tabel. Tabel pertama untuk
menyimpan data teman Anda. Data apa saja yang disimpan? cukup nama,
nomor HP dan tanggal lahirnya saja. Tabel ini kita namai ‘friends’.
Kemudian tabel kedua untuk menyimpan data SMS ucapan ultah yang telah
terkirim ke teman Anda. Tabel ini kita namai ‘kirim’. Untuk tabel
‘kirim’ cukup memiliki field nomor HP dan tanggal kirim SMS saja. Tabel
ini berfungsi sebagai pencegah pengiriman SMS ucapan secara berulang,
karena script yang kita buat ini nanti menggunakan Auto Refresh atau
dengan kata lain script ini berjalan secara otomatis pada selang waktu
tertentu. Tanpa adanya tabel kedua ini, maka proses pengiriman SMS
ucapan ultah bisa dilakukan beberapa kali. Oleh karena itu untuk tabel
kedua ini, field nomor HP dan tanggal kirim SMS kita buat sebagai
primary key.
Nah.. untuk kedua tabel di atas, berikut ini struktur tabel dan contoh datanya
CREATE TABLE `friends` ( `noHP` varchar(30), `nama` varchar(100), `tglLahir` date, PRIMARY KEY (`noHP`) );
CREATE TABLE `kirim` ( `noHP` varchar(30), `tglKirim` date, PRIMARY KEY (`noHP`,`tglKirim`) );
INSERT INTO `friends` VALUES ('08881111111', 'A', '1979-02-21'); INSERT INTO `friends` VALUES ('08120101010', 'B', '1980-09-07'); INSERT INTO `friends` VALUES ('08562810000', 'C', '1986-03-10');Kedua tabel di atas nantinya dibuat di dalam database yang sama dengan tabel-tabel bawaan dari Gammu, seperti tabel INBOX, OUTBOX, SENTITEMS dsb…
Kemudian bagaimana ide dari script SMS ucapan ulang tahun ini. Idenya adalah pertama kali kita cari dulu data teman yang ada di tabel ‘friends’ yang tanggal lahir dan bulan lahirnya sama dengan saat ini (current date). Untuk tahun lahirnya tidak usah diperhatikan saja. Kemudian bila ada data teman yang tanggal dan bulan lahirnya sesuai dengan current date, kita baca nomor HP dan namanya. Proses selanjutnya adalah jangan langsung mengirim SMS ucapannya, namun kita simpan data nomor HP dan current date nya ke tabel ‘kirim’. Jika proses insert atau simpan data ke tabel ‘kirim’ ini berhasil barulah kita kirim SMS ucapannya ke tabel ‘OUTBOX’ yang sudah disediakan oleh Gammu. Namun jika gagal, berarti SMS ucapan sebelumnya sudah pernah terkirim. Proses insert data ke tabel ‘kirim’ ini gagal jika terdapat data nomor HP dan tanggal kirim yang sama, mengingat kedua field tersebut adalah primary key. Dengan demikian pasti ada jaminan bahwa SMS ucapan yang terkirim ke teman Anda tidak dilakukan berulang kali pada hari yang sama. Lantas bagaimana bila ulang tahunnya pada tahun depan? ya tidak ada masalah, kan current date nya sudah berbeda? sehingga proses insert data ke tabel ‘kirim’ pasti berhasil pada tahun depan.
Berdasarkan ide di atas, berikut ini implementasi script PHP nya:
Script di atas akan melakukan autorefresh setiap 10 detik. Perhatikan perintah di bawah iniSMS Ulang Tahun SMS Ulang Tahun Running...
Bagaimana mudah bukan membuatnya? Bila teman Anda banyak, ya.. siap-siap modal yang banyak pula untuk biaya pengiriman SMS ucapan ultahnya tapi gak ada masalah sih, bukankah persahabatan butuh pengorbanan? Selamat mencoba ya…
Script sms ultah di atas sudah diuji coba dan berjalan dengan lancar di modem Wavecom Fastrack.
EmoticonEmoticon