I. Download GAMMU
Untuk mendownload aplikasi Gammu, resmi gammu https://wammu.eu/download/gammu/
Silakan pilih sesuai dengan arsitektur windows yang digunakan, 32 atau 64 bit. Pada contoh ini saya menggunakan versi 64 bit.
II. Cara Install GAMMU di Windows
Untuk menginstall Gammu, dobel klik file installer, kemudian ikuti wizard yang ada.
II.1. Pilih Add Gammu to the system PATH for All users. Pilih opsi “Add Gammu to the system PATH for All users”. Opsi ini akan menambahkan path direktori instalasi gammu ke dalam Windows Environment Variable, sehingga memungkinkan kita dapat menjalankan perintah gammu melalui command prompt termasuk menjalankan / menginstall service sms daemon.
II.1. Pilih Add Gammu to the system PATH for All users. Pilih opsi “Add Gammu to the system PATH for All users”. Opsi ini akan menambahkan path direktori instalasi gammu ke dalam Windows Environment Variable, sehingga memungkinkan kita dapat menjalankan perintah gammu melalui command prompt termasuk menjalankan / menginstall service sms daemon.
II.2. Pilih direktori dimana Gammu akan diinstall atau next
II.3. Pilih nama direktori untuk start menu atau next
II.4. Pada pilihan components yang ingin diinstall, pilih full. Dengan opsi ini, Gammu akan mengcopy semua file, termasuk contoh file konfigurasi dan contoh file sql, sehingga akan memudahkan kita melakukan konfigurasi.
Klik Install dan tunggu proses instalasi selesai.
III. Mengirim SMS Dengan GAMMU Melalui Command Prompt
Terdapat dua cara untuk mengirim sms dengan Gammu, yaitu melalui command prompt dan memasukkan data pada database. Mari kita bahas cara yang pertama.
1Buat File Konfigurasi
Untuk dapat menggunakan Gammu, terlebih dahulu buat file konfigurasi dengan nama
gammurc
(baca gammu rc) dan tempatkan pada direktori bin
yang ada pada folder instalasi, pada contoh kali ini C:\Program Files\Gammu 1.38.1\bin
Atau, sobat dapat mengcopy contoh file konfigurasi dari folder instalasi di C:\Program Files\Gammu 1.38.1\share\doc\gammu\examples\config
Selanjutnya, isi dengan konfigurasi sebagai berikut:
[gammu] device = com6: connection = at460800
Penjelasan:
com6
adalah nomor port dari modem, untuk mengetahuinya, klik kanan pada My Computer atau This PC, kemudian klik properties, selanjutnya pilih device manager dan pilih bagian modem.- Selanjutnya, untuk connection, kita gunakan AT diikuti kecepatan dari port tersebut (seperti pada contoh gambar diatas). Kecepatan port sifatnya opsional, kita dapat mengabaikannya, misal:
connection = at
2Jalankan Gammu
Sebelum melangkah lebih jauh, pertama-tama tes apakah Gammu dapat membaca modem
Jalankan command prompt, arahkan cursor ke direktori
bin
, kemudian ketikkan perintah gammu identify
. Perintah ini untuk memastikan bahwa Gammu dapat membaca modem kita.
Pada contoh diatas, terlihat bahwa saya menggunakan model M 150-2 (Huawei E3372).
Perlu diperhatikan bahwa jika modem digunakan (misal: koneksi internet sedang aktif), maka kita akan mendapatkan pesan error:
C:\Program Files\Gammu 1.38.1\bin>gammu identify Error opening device. Unknown, busy or no permissions.
Seanjutnya, mari kita tes dengan mengirim sms. Jalankan perintah
Jalankan perintah
gammu --sendsms text [nomor-hp]
, misal gammu -sendsms text 08651360000
, kemudian tulis pesan yang ingin dikirim. Setelah selesai, tekan enter, kemudian CTRL+Z (akan mencetak ^Z) kemudian tekan enter lagi.
Hasil yang kita peroleh:
Proses ini bisa saja gagal, misal memperoleh pesan error:
Sending SMS 1/1....waiting for network answer..error 38, message reference=-1 Unknown error.
Penyebab error bisa bermacam macam, bisa pulsa habis, kartu belum aktif, modem tidak terkoneksi dengan baik, dll.
IV. Mengirim SMS Dengan Gammu Melalui Insert Data Pada Database
Cara kedua untuk mengirim pesan dengan Gammu adalah memasukkan data ke dalam tabel pada database tertentu. Ketika data dimasukkan, otomatis Gammu akan mengirim pesan sesuai dengan data yang ada.
Cara ini merupakan cara paling fleksibel dan banyak diterapkan oleh berbagai aplikasi pengirim sms massal, karena lebih mudah memasukkan data pada database daripada menjalankan command prompt.
Untuk keperluan tersebut, kita perlu menjalankan smsd (baca sms daemon). Daemon ini akan mendeteksi aktivitas modem dan server database, sehingga aktivitas terkait sms dapat dilakukan/disimpan pada database.
Pada contoh ini, database MySQL.
1Cek Driver Database Yang Tersedia
Sebelum menggunakan database, perlu mengecek driver database yang tersedia pada paket gammu yang diinstall. untuk mengetahuinya, jalankan perintah:
gammu-smsd -v
, perhatikan gambar berikut:
Pada contoh diatas, terlihat bahwa hanya driver ODBC yang tersedia, untuk itu tidak dapat menggunakan driver lain seperti
native_mysql
.
Sejak versi 1.33.0, driver database yang disertakan pada paket instalasi Gammu adalah ODBC, sehingga semua koneksi database harus melalui ODBC
2Buat File Konfigurasi
Selanjutnya, buat file konfigurasi smsd dengan nama
smsdrc
(baca smsd-rc), atau copy dari folder instalasi di C:\Program Files\Gammu 1.38.1\share\doc\gammu\examples\config
Isikan file konfigurasi berikut:
[gammu] device = com6: connection = at [smsd] service = sql driver = odbc sql = mysql host = mysql_odbc user = root password = database = gammu LogFile = smsdlog.log
Penjelasan:
sql = mysql
artinya bahasa sql yang digunakan adalah mysql- host diisi dengan nama odbc yang kita buat, bukan localhost seperti yang biasa kita gunakan. Untuk membuat koneksi ODBC, silakan baca tutorial: Setting ODBC MySQL Untuk Gammu
- Pada koneksi ODBC, nama database tidak berpengaruh karena database ini ditentukan saat kita membuat koneksi ODBC. Pada contoh diatas, bagian
database = gammu
hanya sebagai contoh, dapat dihilangkan. - Logfile digunakan untuk menyimpan semua aktifitas daemon, file ini akan disimpan pada direktori bin.
3Buat Database
Selanjutnya, perlu untuk membuat database yang akan digunakan Gammu untuk menyimpan semua data. Untuk membuatnya, dump file sql yang ada di folder C:\Program Files\Gammu 1.38.1\share\doc\gammu\examples\sql
Pada contoh kali ini saya dump menggunakan phpMyAdmin bawaan XAMPP.
Untuk load file sql: (1) Buat database, misal
gammu
(2) Klik database tersebut, kemudian klik menu import
yang ada di sebelah atas (3) Pilih file .sql, jika berhasil maka akan terbentuk tabel sebagai berikut:
Penjelasan:
gammu
. Tabel ini digunakan untuk menyimpan versi Gammu.inbox
. Tabel ini berisi SMS yang masuk.outbox
. Tabel ini akan menyimpan pesan yang ingin dikirim. Pengisian data pada tabel ini akan memicu gammu mengirim sms sesuai dengan data yang diisikan.outboxmultipart
. Secara default kita hanya dapat menyimpan pesan sebanyak 160 karakter. Untuk karakter lebih dari 160, pesan akan disimpan pada tabel ini.phones
. Tabel ini akan digunakan gammu untuk menyimpan data phone / modem seperti nomor IMEI, NetCode, dllsentitems
. Tabel ini akan menyimpan semua pesan dari tabel outbox yang telah dikirim, baik berhasil maupun gagal.
Perlu diperhatikan bahwa pada file sql, terdapat beberapa statemen yang tidak kompatibel dengan MySQL versi 5.7.x, sehingga, jika menemui pesan error, coba turunkan versi MySQL yang digunakan
4Jalankan Service SMS Daemon
Selanjutnya, jalankan service sms daemon. Jalankan perintah:
gammu-smsd -c smsdrc
Contoh sebagai berikut:
Penjelasan:
-c
merujuk pada file konfigurasi yang akan digunakan, dalam hal ini file smsdrc, untuk opsi lainnya, dapat dilihat dengan menjalankan perintahgammu-smsd
- Jika berhasil, maka cursor akan berhenti, tidak kembali ke direktori awal ( C:\Program Files\Gammu 1.38.1\bin )
Penting diperhatikan bahwa untuk dapat menjalankan service, kita perlu hak akses administrator, jalankan command prompt dengan klik kanan » Run as administrator
5Kirim SMS Via Database
Selanjutnya, tes kirim SMS dengan memasukkan data ke tabel
outbox
.
Tabel tersebut terdiri dari banyak sekali field, namun demikian, kita hanya perlu mengisi 3 field saja, yaitu
DestinationNumber
berisi nomor tujuan, TextDecoded
berisi pesan yang dikirim, dan CreatorID
berisi ID pembuat pesan (diisi bebas)
Misal masukkan data menggunakan phpMyAdmin. Buka phpMyAdmin, klik database gammu, kemudian pilih Tab SQL dan jalankan perintah berikut:
INSERT INTO outbox (DestinationNumber, TextDecoded, CreatorID) VALUES ('085866927217', 'Tes kirim SMS dari database', 'agusph');
Gambar:
Tunggu beberapa saat hingga data terkirim. setelah terkirim, maka data akan berpindah ke tabel sentitems.
6Install Service SMSD
Agar service smsd berjalan secara otomatis ketika widows dijalankan, maka kita perlu menginstall nya ke dalam service windows. Untuk menginstallnya, jalankan perintah:
gammu-smsd -c smsdrc -i
Jika berhasil, maka kita akan memperoleh pesan:
C:\Program Files\Gammu-1.38.1\bin>gammu-smsd -c smsdrc -i Service GammuSMSD started sucessfully
Service yang telah diinstall dapat di cek pada windows services. Secara default nama service tersebut adalah Gammu SMSD Service (GammuSMSD)
Secara default, service tersebut belum berjalan, untuk itu, kita perlu menjalankannya. Jalankan perintah
gammu-smsd -c smsdrc -s
Penting diperhatikan bahwa meskipun kita memperoleh pesan sukses, namun pada kenyataannya, bisa jadi service tersebut tidak berjalan, untuk itu, agar lebih yakin, kita dapat menjalankannya secara manual:
Untuk menghapus service, kita gunakan perintah:
gammu-smsd -c smsdrc -u
V. Menjalankan Gammu dengan Java
sintax:
package smsgateway;
import java.io.IOException;
public class SmsGateway {
public static void main(String[] args) throws IOException {
String pathGammu="C:/Gammu/bin/gammu-smsd-inject";
String fileKonfigurasi="C:/Gammu/bin/smsdrc";
Runtime runtime= Runtime.getRuntime();
runtime.exec(pathGammu+" -c "+fileKonfigurasi+" TEXT 0896677xxxxx -text \"Halo Tes Gammu Melalui Java\" ");
}
}
Path Gammu dan file konfigurasi perlu didefinisikan terdahulu karena Windows tidak mengenalinya secara langsung kecuali ditambahkan Gammu pada Path Variable. Pada code diatas baik Path Gammu maupun file konfigurasi dibuat statis demi kesederhanaan tutorial ini. Di dunia nyata hendaknya dibuat dinamis. Begitu pula dengan nomor tujuan sms dan pesan yang dikirim dibuat statis dengan alasan yang sama.
atau bisa juga langsung dilakukan proses insert ke database dimana bisa langsung dikirimkan smsnya
VI. Install Di Linux
Instalasi Gammu Di Linux (ubuntu 11.04)
Cara install diubuntu, karena gammu telah ada dalam repository ubuntu. Sehingga cukup buka terminal dan ketik perintah berikut:
ketikan perintah
sudo apt-get install gammu
tekan Enter tunggu hingga selesai.
Setelah selesai, lakukan konfigurasi modem (Saya Menggunakan Modem Wavecom Fastrack)
Caranya:
Ketikan pada terminal:
dmesg | grep tty
Perhatikan Tulisan yang berwarna Merah, bisa dilihat bahwa modem saya di ter-identifikasi pada ttyUSB0. Ingat2 atau bisa Copy.
Ok, selanjutnya kita konfigurasikan gammu supaya dapat mengenali modem
Ketikan:
gammu-config
Masukan enter letakan pointer pada port, kemudian tekan enter pada edit, masukan /dev/ttyUSB0 (Sesuaikan dengan modem/HP yang terdeteksi pada langkah sebelumnya). pindahkan ponter pada bagian Connection, kemudian tekan edit pilih at115200.
Ok, Kemudian Save
Sekarang kita coba konfigurasi modem
ketik pada terminal:
gammu --identify
Adakadabra, instalasi gammu di ubuntu selesai .....
Gak afdol kalo belum di coba silahkan ketikan
gammu getussd *888#
Command Diatas untuk mengecek pulsa menggunakan gammu sesuaikan *888# dengan operator yang anda gunakan.