• Tidak ada hasil yang ditemukan

Suplemen SMS Gateway. Konsep Membuat SMS Broadcast. Dibuat oleh: Rosihan Ari Yuana

N/A
N/A
Protected

Academic year: 2021

Membagikan "Suplemen SMS Gateway. Konsep Membuat SMS Broadcast. Dibuat oleh: Rosihan Ari Yuana"

Copied!
11
0
0

Teks penuh

(1)

Suplemen SMS Gateway

Dibuat oleh: Rosihan Ari Yuana

Konsep Membuat SMS Broadcast

Pada bagian ini akan saya paparkan bagaimana ide membuat script PHP untuk keperluan SMS broadcast atau mengirim sebuah pesan SMS langsung ke banyak nomor sekaligus.

Untuk melakukan SMS broadcast, terlebih dahulu Anda harus memiliki data beberapa nomor HP yang digunakan untuk pengiriman SMS. Nomor HP ini nanti disimpan dalam tabel PBK (phonebook) yang ada di database Gammu.

Berikut ini cara menambahkan data nomor hp pada tabel PBK. 1. Masuk ke phpMyAdmin (http://localhost/phpmyadmin) 2. Masukkan username dan password MySQL (bila diminta)

3. Masuk ke database Gammu (dalam contoh ini saya menggunakan nama database ‘SMSD’), dan klik tabel PBK (phonebook)

4. Kemudian klik menu INSERT pada bagian atas phpMyAdmin

5. Kemudian isikan nama dan nomor hp pada kotak Name dan Number yang disediakan dalam form (pada kotak ID biarkan kosong)

(2)

Catatan:

Anda dapat menggunakan prefix +62 pada nomor hp nya, contoh no hp aslinya adalah 08882978041, maka 0 paling depan diganti dengan +62, sehingga menjadi +628882978041. 6. Kemudian klik tombol GO (terletak di paling bawah halaman).

7. Jika ingin memasukkan data phonebook kembali, lakukan langkah no. 3 kembali. Untuk melihat data phonebook yang sudah masuk, silakan klik menu BROWSE

Berikut ini contoh tampilan data phonebook yang telah tersimpan di tabel PBK

Setelah proses di atas, kita telah mempunyai data nomor hp yang digunakan untuk SMS broadcast. Pada tabel PBK, terdapat pula field bernama GROUPID. Field ini digunakan untuk pengelompokan data nomor telp. Misalkan Anda membuat group no hp untuk teman sekolah, dan teman kantor. Untuk teman sekolah diberi nomor GROUPID nya misalkan 1 dan teman kantor GROUPID nya adalah 2. Maka caranya cukup mengganti angka -1 ini pada form masukan data. Nilai -1 pada GroupID ini adalah default yang artinya bukan menjadi group apapun.

(3)

Contoh pemberian GroupID:

Setelah data nomor hp kita dapatkan, selanjutnya kita bisa membuat script PHP untuk mengirimkan SMS broadcast. Script SMS Broadcast bisa Anda lihat di folder SCRIPT SMS > BROADCAST.

Cara menjalankan script SMS broadcast tersebut adalah, pindahkan folder BROADCAST ke dalam direktori WWW pada C:\AppServ atau di HTDOCS jika Anda menggunakan XAMPP.

Kemudian, bukalah file koneksi.php menggunakan WordPad atau Notepad untuk mengubah konfigurasi koneksi MySQLnya. Isikan $dbUser, $dbPass dan $dbName.

Selanjutnya jalankan script index.php melalui browser dengan URL http://localhost/broadcast atau http://localhost/broadcast/index.php.

Berikut ini tampilan SMS Broadcast nya:

(4)

Masukkan isi SMS pada kotak yang disediakan, kemudian pilih Group yang ingin dikirimi SMS nya. Jika Anda ingin mengirim SMS pada semua nomor hp pada Phonebook, maka pilih option ‘Semua’. Jika hanya ingin mengirim pada Group tertentu, maka pilih nomor Group yang diinginkan.

Jangan lupa, sebelum script tersebut dijalankan, service Gammu harus sudah dijalankan terlebih dahulu. Script SMS Broadcast yang diberikan di sini hanya bisa untuk mengirim SMS dengan panjang karakter tidak lebih dari 160 buah. Anda dapat memodifikasi script tersebut supaya bisa mengirim lebih dari 160 karakter (long SMS), dengan terlebih dahulu mempelajari tekniknya di:

http://blog.rosihanari.net/teknik-mengirim-long-text-sms-gammu-dengan-query-sql Catatan:

Dalam tutorial ini, kita data phonebook kita manfaatkan tabel PBK yang sudah menjadi tabel bawaan GAMMU. Anda bisa membuat tabel lain dengan field-field yang bisa ditentukan sendiri. Tabel ini tetap dibuat di dalam database GAMMU (dalam contoh ini database SMSD).

PENTING !!!

Jangan sekali-kali mengubah struktur tabel-tabel bawaan GAMMU seperti inbox, sentitems, outbox, pbk dll karena bisa mengakibatkan GAMMU tidak bisa berjalan (Error).

(5)

Konsep Membuat SMS REG dan UNREG

Pada bagian ini akan saya paparkan konsep bagaimana membuat script SMS Gateway dengan PHP untuk layanan REG dan UNREG. Dalam contoh ini, bila seseorang mengirim SMS dengan format REG#NAMA, maka secara otomatis no hp dan nama mereka akan tersimpan di tabel ‘PBK’ atau phonebook di dalam database Gammu. Setelah no hp tersebut tersimpan dalam tabel ‘PBK’ maka Anda dapat mengirim SMS broadcast ke seluruh no hp yang tersimpan. Kemudian bila seseorang mengirim SMS dengan format UNREG, maka secara otomatis pula data no hp dan nama mereka di dalam tabel ‘PBK’ akan terhapus. Dalam script PHP ini, tersedia pula layanan auto reply atau auto response SMS. Sebagai contoh misalkan seseorang mengirim SMS REG#NAMA, maka secara otomatis mereka akan mendapat balasan SMS berbunyi ‘TERIMA KASIH ANDA SUDAH MELAKUKAN REG’, demikian pula sebaliknya jika mengirim SMS UNREG.

Konsep membuat sms REG dan UNREG atau secara secara umum sms berbentuk sms auto reply atau auto response adalah:

1. Baca SMS yang belum diproses di dalam tabel INBOX.

Untuk membedakan SMS yang belum diproses atau belum, bisa dilihat di field ‘PROCESSED’ yang terdapat di tabel INBOX dalam database ‘SMSD’. SMS yang belum diproses akan bernilai ‘FALSE’ pada field ‘PROCESSED’ tersebut.

Data SMS yang dibaca pada tabel INBOX ini hanyalah SENDERNUMBER, TEXTDECODED dan ID. SENDERNUMBER atau no hp si pengirim ini nanti digunakan untuk mengirim SMS balasan atau akan diproses sesuai keperluan, TEXTDECODED untuk membaca isi SMS, dan ID yang nantinya akan digunakan untuk menandai SMS yang sudah diproses atau belum.

2. Lakukan pemrosesan data SMS yang dibaca

3. Setelah data SMS dibaca, lakukan pengubahan status PROCESSED yang tadinya FALSE menjadi TRUE pada data SMS yang ada di INBOX berdasarkan ID sms nya. Langkah ini untuk menandai SMS yang sudah diproses sehingga untuk selanjutnya tidak akan diproses lagi.

Ketiga langkah di atas dilakukan secara terus menerus oleh script PHP yang kita buat. Sebaiknya proses tersebut dilakukan setiap waktu interval tertentu misalnya setiap 5 detik sekali atau yang lain, asal jangan terlalu lama dan jangan terlalu cepat misalkan 1 detik. Jika interval waktu proses terlalu lama akan mengakibatkan SMS response atau balasan yang diterima oleh si pengirim juga semakin lama. Sedangkan interval waktu proses yang terlalu cepat akan berefek tidak bagus jika jumlah data yang diproses sangat banyak.

Dalam script PHP untuk proses REG dan UNREG ini terdapat 3 buah script yaitu: index.php, ajax.js dan run.php. File index.php merupakan halaman depan script, file run.php digunakan untuk memproses setiap sms yang masuk di dalam INBOX, dan file ajax.js digunakan untuk menjalankan script run.php setiap interval waktu tertentu. Dalam contoh ini interval waktu yang dipilih adalah 3 detik (3000 mili sekon).

(6)

Untuk menjalankan script SMS Gateway REG dan UNREG ini cukup dengan memanggil script index.php melalui browser (http://localhost/reg atau http://localhost/reg/index.php).

Sebelum menjalankan script tersebut, jangan lupa untuk memindahkan folder ‘reg’ yang berisi script ke direktori web Anda di WWW atau HTDOCS. Jangan lupa pula untuk menjalankan service Gammu dan mengubah konfigurasi koneksi MySQL di file koneksi.php.

(7)

Konsep Membuat Auto On Scheduled SMS

Auto On scheduled SMS atau SMS terjadwal adalah SMS yang secara otomatis akan terkirim pada saat

tertentu (tanggal dan jam tertentu) yang telah diset terlebih dahulu.

Untuk keperluan pembuatan Auto On Scheduled SMS ini, kita memerlukan sebuah tabel dalam database guna menyimpan data SMS yang akan dikirim secara otomatis beserta schedule nya. Dalam contoh ini, kita beri nama tabelnya ‘sms_auto’

Sedangkan untuk nomor-nomor hp tujuan yang akan dikirimi SMS otomatis ini, kita memanfaatkan tabel ‘pbk’ yang sudah ada.

Berikut ini struktur kolom (field) tabel untuk menyimpan data SMS dan schedule nya.

ID SMS SCHEDULE STATUS

Keterangan:

Field ID digunakan untuk penanda setiap SMS terjadwal yang berupa bilangan bulat (INT) autoincrement. Field SMS digunakan untuk menyimpan pesan SMS yang dikirim melalui auto on scheduled. Tipe data field SMS ini adalah VARCHAR (160). Field SCHEDULE untuk menyimpan waktu kapan SMS akan terkirim. Tipe data yang digunakan field SCHEDULE adalah DATETIME. Sedangkan field STATUS digunakan sebagai penanda bahwa SMS tersebut sudah dikirim atau belum. Jika SMS belum terkirim, kita akan beri tanda 0, dan jika sudah terkirim kita beri tanda 1.

Berikut ini cara membuat tabel sms_auto nya.

1. Masuk ke phpMyAdmin (http://localhost/phpmyadmin) 2. Masuk ke database Gammu (SMSD)

3. Buat tabel sms_auto pada database SMS tersebut dengan mengisikan nama tabel ‘sms_auto’ pada kotak ‘CREATE NEW TABLE ON DATABASE …’ dan isi ‘4’ pada kotak NUMBER OF FIELDS

Lalu klik GO.

(8)

Kemudian klik SAVE

5. Sebagai tanda bahwa tabel ‘sms_auto’ ini sudah berhasil di buat, Anda bisa melihat tabel tersebut muncul di sisi sebelah kiri pada phpmyadmin.

Setelah sukses membuat tabel ‘sms_auto’ ini, selanjutnya kita bisa masukkan beberapa data pesan SMS beserta jadwal pengirimannya pada tabel. Adapun caranya seperti berikut:

(9)

2. Klik menu INSERT pada menu phpmyadmin

3. Isikan pesan SMS dan schedule nya pada kotak isian yang disediakan

Untuk mengisi schedule, klik tanda lalu pilih tanggal (YYYY-MM-DD) dan waktunya (hh:mm:ss)

Dalam contoh di atas, sms akan terkirim pada tanggal 14 Juni 2010 pada pukul 21:10 Catatan:

Untuk field ID, tidak usah diisi karena nantinya secara otomatis akan terisi sendiri begitu data tersimpan.

Kemudian klik GO.

(10)

Untuk melihat daftar SMS terjadwal yang sudah tersimpan dalam tabel ‘sms_outbox’, caranya klik tabel ‘sms_auto’

Lalu klik menu BROWSE

Setelah diklik BROWSE akan muncul daftar SMS dan schedule nya sbb:

Setelah kita simpan beberapa data SMS terjadwal, selanjutnya kita bisa jalankan script PHP untuk mengirim SMS nya secara otomatis. Sebelum menjalankan scriptnya, pastikan Anda sudah pindahkan folder ‘auto’ ke folder WWW pada direktori AppServ atau HTDOCS jika menggunakan XAMPP. Lakukan konfigurasi pula pada koneksi MySQL nya di dalam script koneksi.php

Untuk menjalankan script auto onscheduled SMS ini, cukup buka URL http://localhost/auto Ide dasar untuk membuat script auto on scheduled SMS ini adalah:

1. Cari data SMS di tabel ‘sms_auto’ yang waktu schedule nya kurang atau sama dengan saat ini, serta berstatus 0 (belum dikirim)

2. Dari hasil no. 1, baca ID dan isi dari setiap SMS nya

3. Untuk setiap SMS yang dibaca, kirimkan pada semua nomor HP.

(11)

Di dalam script run.php terdapat mekanisme mengubah status SMS yang sudah terkirim menjadi 1. Hal ini dilakukan supaya SMS yang sudah terkirim ini tidak akan terkirim lagi (mencegah pengiriman ganda). Waktu yang dipilih pada script Auto On Scheduled SMS ini berdasarkan WIB (Waktu Indonesia Barat). Jika Anda berlokasi di WITA, maka editlah script run.php pada bagian

$sekarang = date("Y-m-d H:i:s", mktime(date("H")+0, date("i"), date("s"), date("m"), date("d"), date("Y")));

Ubahlah menjadi

$sekarang = date("Y-m-d H:i:s", mktime(date("H")+1, date("i"), date("s"), date("m"), date("d"), date("Y")));

Karena WITA adalah satu jam lebih dahulu daripada WIB. Jika Anda berlokasi di WIT, ubahlah menjadi

$sekarang = date("Y-m-d H:i:s", mktime(date("H")+2, date("i"), date("s"), date("m"), date("d"), date("Y")));

Referensi

Dokumen terkait

hukum masyarakat terhadap peraturan perundang-undangan.. yang terkait tentang keamanan dan keselamatan berlalu lintas. Upaya Yang Dilakukan Kepolisian Sektor Tambang

Peran perusahaan juga sangat dipertimbangkan terutama perusahaan pembuat sarana produksi udang dalam upaya para petani atau pembudidaya udang untuk mendapatkan sarana

Tumbuhan kayu putih (Melaleuca leucadendra (L). L), merupakan salah satu tumbuhan penghasil minyak atsiri yang mana daun tumbuhan ini mengandung minyak atsiri sekitar 0,5 -

Penulis panjr1tkan puji dan syukur kehadirat Allah SWT atas karunia dan rahmat yang telah dilimpahkan-Nya, sehingga penulis dapat menyelesaikan tesis yang berjudul

3 (1990), yang menyatakan bahwa bahkan ketika terjadi keterbatasan sumberdaya yang parah, anggota-anggota yang lemah dari masyarakat harus dilindungi dengan pelaksanaan program

Sistem pendistribusian perusahaan pada saat ini belum memberikan sebuah perencanaan atau gambaran untuk permintaan pada masa yang akan datang, sehingga permintaan

(2) Jumlah kekurangan pajak yang terutang dalam SKPDKB sebagaimana dimaksud pada ayat (1) huruf a angka 1) dan 2) dikenakan sanksi administratif berupa bunga sebesar 2%

Kegiatan sosialisai HKI bertujuan untuk memberikan pemahaman tentang arti penting perlindungan hak kekayaan intelektual hasil-hasil penelitian atau karya non penelitian