hari ini menjelang malam 1 Suro pengen utak utik piranti tersebut. Awalnya ada beberapa
kendala ketika saya jalankan di Windows dan Linux. Setelah dipelajari dengan melihat error
yang ada ketemulah satu persatu jawaban tersebut. Berikut rangkuman yang saya peroleh dari
internet juga, saya sederhanakan sesuai dengan kasus yang saya kerjakan. Tutorial ini sudah saya
coba dibeberapa Sistem Operasi untuk melihat kesetabilan dari aplikasi yang dibangun dan untuk
menguji device yang digunakan. Daftar sistem Operasi teruji antara lain : Windows XP,
Windows 7 dan Linux Distro Ubuntu 10.04.
Sebelumnya saya membuat tutorial sms gateway menggunakan Gammu - Modem GPRS GSM.
Sekarang saya menggunakan Modem Wavecom Fastrack. Meskipun harganya jauh lebih murah (
sekitar 650 rb) Modem Wavecom Fastrack sangat handal digunakan kalau hanya untuk SMS
Server.
MODEM
Untuk membeli modem, pastikan bahwa dia menggunakan konektor USB. Bukan apa-apa,
karena konektor USB lebih mudah kita gunakan.
LANGKAH-LANGKAH KONEKSI
Install Drivernya (untuk pemakaian diLinux.Device langsung bisa dikenali, sudah ditest
di Ubuntu 10.04)
Cek Portnya
4. Konfigurasi
Jika ingin mengkoneksikan ke mysql, cari sql nya di dalam paket C:\Gammu-1.30.0-
Windows\share\doc\gammu\examples\sql\
# This is a sample Gammu SMSD configuration file. It's required for gammu-smsd,
# see gammu-smsdrc(5) for documentation.
# Gammu configuration, this section is like section "gammu" in "gammurc" file,
# see gammurc(5) for documentation.
[gammu]
port = com16:
connection = at115200
#model = 6110
#connection = dlr3
#synchronizetime = yes
#logfile = gammulog # this is not used at all in SMSD mode
#logformat = textall
#use_locking = yes
#gammuloc = gammu.us
#startinfo = yes
# When uncomment this section and insert numbers here, smsd will process
# incoming sms only from numbers written here (incoming sms from all other
# numbers will be deleted)
#[include_numbers]
#number1 = 1234
# When uncomment this section and insert numbers here, smsd will process
# incoming sms from all numbers not written here (incoming sms from numbers
# written here will be deleted). This is "black" list.
# Note: after using "include_numbers" section this one will be ignored
#[exclude_numbers]
#number1 = 1234
# General SMSD settings, see gammu-smsdrc(5) for detailed description.
[smsd]
# SMSD service to use, one of FILES, MYSQL, PGSQL, DBI
service = sql # pada versi 1.30.0 perbedaan dibanding penggunaan setting yang dulu tidak
terletak disini yang semula MYSQL dirubah jadi sql
# PIN for SIM card
PIN = 1234
# File (or stderr, syslog, eventlog) where information will be logged
logfile = smsdlog
# Amount of information being logged, each bit mean one level
debuglevel = 0
# Configuration for using more phones on same database
#phoneid = MyPhone1
# Script to be executed when new message has been received
#runonreceive = /some/script
# Commication frequency settings
commtimeout = 30
sendtimeout = 30
#receivefrequency = 0
# Phone communication settings
#checksecurity = 1
#resetfrequency = 0
# Delivery report configuration
#deliveryreport = no
#deliveryreportdelay = 10
# Ignoring broken SMSC
#skipsmscnumber = +48602123456
# Database backends congfiguration
user = root
password = rahasia
pc = localhost
# pc can also contain port or socket path after colon (eg. localhost:/path/to/socket)
database = smsd
# DBI configuration
driver = native_mysql # pada versi 1.30.0 perbedaan dibanding penggunaan setting yang dulu
tidak terletak disini yang semula sqlite dirubah jadi native_mysql
# driverspath = /usr/lib/dbd/
# Database directory for sqlite
# dbdir = /var/lib/smsd
# Files backend configuration
#inboxpath = /var/spool/sms/inbox/
#outboxpath = /var/spool/sms/outbox/
#sentsmspath = /var/spool/sms/sent/
#errorsmspath = /var/spool/sms/error/
#inboxformat = unicode
#transmitformat = auto
Untuk menjalankan sebagai service, silahkan buka membuka command prom dan ketikkan :
(gammuSMSD adalah nama service bisa anda ganti sendiri. tapi anda harus konsisten
mengunakannya)
gammu-smsd -i -c smsdrc -n gammuSMSD
Untuk uninstall service
gammu-smsd -u -c smsdrc -n gammuSMSD
Untuk menjalankan service
gammu-smsd -s -c smsdrc -n gammuSMSD
Hasilnya silahkan lihat di service
MASALAH DI SERVICE
Secara native service berjalan otomatis, namun kenyataannya tidak demikian, service harus
selalu dijalankan secara manual begitu komputer restart.
Untuk mengatasinya silahkan membuat file gammu.bat dan taruh di C:\Documents and
Settings\All Users\Start Menu\Programs\Startup
ang yang harus dilakukan untuk membangun server sms gateway menggunakan Gammu dan
Win7OS adalah sebagai berikut:
D:\Gammu-1.32.0-Windows\share\doc\gammu\examples\config
Cari file “gammurc” dan “smsdrc“, copy kedua file tersebut dan masukan kedalam direktori
D:\Gammu-1.32.0-Windows\bin
Install modem yang akan digunakan untuk mengirim dan menerima sms, kemudian lihat port
modem yang aktif di dalam device manager seperti gambar berikut:
Edit file “gammurc” bagian “device” disesuaikan dengan port “UI Interface” yang aktif pada
device manager, sedangkan untuk “connection” sesuaikan dengan modem/hp yang digunakan.
misal pada modem ini tipe connection-nya “at“, daftar tipe connecvtion dapat dilihat pada link
“http://wammu.eu/phones/“. Isi file gammurc adalah sebagai berikut:
[gammu]
device = com6:
connection = at
Selanjutnya masuk ke dalam command promt, kemudian masuk ke direktori bin yang ada dalam
hasil ekstrak file .zip gammu dan ketikan perintah “gammu –identify“. Jika modem sudah
terbaca berarti sukses sampai tahap ini. Contoh:
Selanjutnya buat database dengan nama “sms” pada MySQL dan import file database gammu
yang ada dalam direktori hasil ekstrak file .zip gammu yang benama “mysql.sql“. file database
gammu berada dalam direktori:
D:\Gammu-1.32.0-Windows\share\doc\gammu\examples\sql
Edit file “smsdrc” pada bagian “device” dan “port” sesuaikan dengan “UI Interface” seperti
pada fil gammurc, begitu juga pada bagian “connection” sesuaikan dengan modem/hp yang
digunakan seperti pada file gammurc. Isi file smsdrc adalah sebagai berikut:
[gammu]
device = com6:
connection = at
[smsd]
port = com6:
connection = at
PIN = 1234
debuglevel = 0
commtimeout = 30
sendtimeout = 30
service = mysql
checksecurity = 0
user = root
password =
pc = localhost
database = sms
driver = native_mysql
Selanjutnya jalankan service gammy yang sudah terinstall dalam “Control Panel >
Administrative Tools>services” seperti pada gambar berikut:
Selanjutnya, coba kirim sms dengan perintah berikut. Masuk cmd. masuk direktori gammu.
Ketikan peritah berikut: “gammu –sendsms text 0856699xxxxx”. Kemudian masukan pesan.
Setelah pesan selesai, tekan “Enter”. Kemudian Tekan “Ctrl+Z” dan ketik simbol titik dua “:”
kemudian tekan tekan “Enter”. Contoh:
Selanjutnya coba kirim sms melalui database. caranya masuk kedalam database sms yang tadi
telah dibuat, dan ketikan perintah berikut:
Contoh:
Kemarin 3 hari yang lalu, di tempat aku kerja dapat sebuah modem baru merk Wavecom
Fastrack model M1306B, dari segi bentuk sih sangat meyakinkan bahwa modem tersebut sangat
tangguh dan handal untuk berinternet ria. Body metal casing dengan warna putih kombinasi
dengan warna biru dengan antena eksternal yang bisa di bongkar pasang apalagi dengan melihat
ukuran yang lumayan gede jika ditaruh dalam saku semakin meyakinkan bahwa modem tersebut
benar-benar bagus. Modem tersebut juga dilengkapi dengan kabel ekstensi USB serta mini CD
driver.
Karena penasaran, aku langsung install modem tersebut di kompi aku, e…. ternyata setelah aku
install ternyata tidak ada tambahan program apapun yang terjadi hanya ada penambahan
hardware baru Prolific USB-to-Serial Comm Port di Port (COM & LPT). Lha terus modemnya ?
kok ngak ada tambahan hardware baru ! terus kalau di gunakan untuk interneten gimana ? setting
dial up bagaimana ? Waduh…. alat ini bikin pusing aja, pikirku….!
Dari pada makin pusing, aku tanya saja pada eyang Google bagaimana cara setting koneksinya ?
ternyata banyak jawaban yang diberikan oleh eyang malah bagaimana cara membuat SMS
gateway dengan modem tersebut. Waduh….. makin ngak karuan aja !, kemudian aku cari
spesifikasi data teknis modem tersebut dan ternyata memang benar bahwa modem Wavecom di
dedikasikan untuk SMS Gateway.
Lantas… bagaimana cara agar modem Wavecom dapat digunakan untuk internet ?
Dari pertanyaan diatas baiklah, akan aku jelaskan langkah-langkah singkat setting koneksi
internet via modem Wavecom Fastrack . Sebagai bahan infomasi setting ini aku gunakan untuk
system operasi Windows XP sedangkan untuk Windows 7 harap menyesuaikan.
2. Instalasi Modem
Untuk kesamaan langkah, disini aku menggunakan layout classic view untuk control panel. Jika
anda masih berada di layout category view maka pindah dengan mengklik switch to classic view.
Pada Control Panel => Phone and Modem Option klik tab Modem
Jika anda pertama kali memasuki menu ini, maka tampilan diatas tidak muncul dan anda akan
diminta new location silahkan isikan untuk country/region set pada Indonesia dan area code
tulis angka 62 sehingga akan muncul gambar diatas.
Pada tab modem tekan tombol add, maka akan muncul tampilan berikut :
Pilih port number yang sesuai dengan port Prolific USB-to-Serial Comm Port (jika tidak muncul
port yang sesuai anda dapat tekan tombol Back maka anda akan di bawa kembali kelangkah
sebelumnya kemudian tekan tombol Next kembali sampai port yang sesuai ditampilkan). Pada
kompi saya port Prolific USB-to-Serial Comm Port berada pada COM12 lihat pada gambar
device manager.
Jika anda sudah memilih port tekan tombol Next hingga muncul informasi bahwa install modem
anda telah selesai kemudian tekan tombol Finish. Sehingga pada Phone and Modem Option di
tab modem akan mucul tambahan modem baru yaitu Standart 56000 bps Modem seperti pada
gambar.
Sampai langkah ini modem belum dapat digunakan, masih terdapat beberapa tahapan lagi yaitu
setting modem dan setting dial up
3. Setting Modem
Setelah Standart 56000 bps Modem berhasil di install (gambar diatas), masih dalam menu Phone
and Modem pada langkah diatas, pilih Standart 56000 bps medem kemudian tekan tombol
Properties kemudian pilih tab Advance.
XL : at+cgdcont=1,”IP”,”www.xlgprs.net”
Telkomsel Flash : at+cgdcont=1,”IP”,”flash”
Telkomsel Volume (12/kb) : at+cgdcont=1,”IP”,”telkomsel”
Indosat : at+cgdcont=1,”IP”,”indosatgprs”
Axis (NTS) : AT+cgdcont=1,”ip”,”AXIS”
Mentari : at+cgdcont=1,”ip”,”satelindogprs.com”
Selanjutnya agar modem dapat dikenali oleh kompi anda maka pada tab Diagnostik tekan tombol
Query Modem hingga seperti gambar
Query akan melakukan proses komunikasi dengan modem, jika koneksi berhasil, maka modem
dan kompi anda akan dapat berkomunikasi.
4. Setting Dial Up Modem
Buka Control Panel :
Network Connections
Klik Create a new connection
New connection Wizard
Pilih Connect to the internet
Pilih Set up my connection manually
Pilih Connect using a dial-up modem
Pilih Modem yang sudah diinstall
Tulis ISP Name : three (provider lain harap menyesuaikan)
Ketikan Phone number : *99#
Isikan Username dan Password sesuai dengan settingan Operator anda.
User name : 3data
Password : 3data
khusus untuk 3 (three) paket data, provider lain harap menyesuaikan
Tips blog Cara Membuat SMS Gateway untuk Pemula Dengan Gammu dan
PHP
Tips blog Cara Membuat SMS Gateway untuk Pemula Dengan Gammu dan PHP
Sebelumnya saya sudah membuat aplikasi SMS Gateway dengan gammu yaitu Aplikasi Reservasi Klinik
Rumah Sakit. Sekarang saya akan menjelaskan bagaimana cara membuat SMS Gateway sendiri
dengan Gammu dan PHP.
Pilih komponen yang akan diinstall, rekomendasikan pilihan saya ini, karena kita akan menginstall
komponen yang seperlunya saja
Setelah anda menginstall xampp , maka untuk password defaul MySQL adalah :
username : root
password : (kosong)
Klik Start Windows (bawah kiri Windows ) cari dan klik submenu Xampp 1.8.1 pilih XAMPP Control Panel
1. Klik Stop Action Apache dan MySQL
2. Check Module Service Apache dan MySQL
3. Klik Start Actions Apache dan MySQL kembali
Keterangan : Jika anda memiliki installasi Local WebServer lainnya yang terinstall pada Port 80, maka
disable terlebih dahulu atau uninstall sekalian 3:)
Download gammu untuk Windows 32 atau 64 Bit ( Jika Windows anda versi 64 Bit maka ada folder
pada C:\program files (x86) ).
Saya mendownload versi minimal , saat artikel ini dibuat versi gammu 1.33.0
Ok guys, kita udah sampai setengah jalan untuk membuat aplikasi sms gateway dengan gammu dan php
Setelah 2 artikel sebelumnya, sekarang saya akan memberikan artikel konfigurasi gammu.
Ayo,modem USB dan kartu perdana GSM/CDMA tadi mana? apa sudah registrasi kartunya dan diisi
pulsa? Jika sudah colokin Modem USB ke USB komputer, dan install paket drivernya
Di sini saya memakai Modem USB Advance
Cari port modem usb
Jika modem usb sudah terinstall dengan benar, maka buka Control Panel -> Device Manager
Buka kategori modem, nah di sana ada berbagai macam driver modem. Jika anda tidak tahu modem usb
mana yang tertera pada kategori modem tersebut, copot lagi modem dan pasang lagi. Nah device
manager otomatis refresh list driver modem nya. Tahu maksud saya kan? :D
Modem USB saya di sini Global Wireless USB Modem, klik kanan dan klik properties. Klik tab modem
Modem saya menggunakan Port COM9 dan Maximum Port Speed 921600. Jadi untuk konfigurasi jenis
koneksi/speed maximum modem begini :
at = maximum speed 921600
[gammu]
port = COM9:
connection = at
Buka kembali file gammu yang di download tadi, buka folder share -> doc -> gammu -> examples -> sql
Lalu import script mysql.sql dengan membuka http://localhost/phpmyadmin dan klik database smskudb,
klik import . Klik browse, masuk folder smsku dan pilih mysql.sql dan klik Done
[gammu]
# isikan port modem USB di bawah ini
port = COM9:
connection = at
[smsd]
service = mysql
logfile = smsdlog
debuglevel = 0
# Inisial modem
phoneid = Server1
commtimeout = 10
sendtimeout = 10
PIN = 1234
pc = localhost
user = root
password =
database = smskudb
<form method="post">
<label>Pesan</label>
</form>
<?php
if(isset($_POST['button']))
mysql_connect("localhost","root","");
mysql_select_db("smskudb");
if($query)
?>
Keterangan :
Membuat form kirim pesan
<form method="post">
<label>No HP Format +62xxxxxxx </label>
<label>Pesan</label>
</form>
Jika tombol Kirim diklik
if(isset($_POST['button']))
{
Buat koneksi database, masih ingat bukan tutorial installasi Local WebServer ? mysql_connect fungsi
php untuk mengkoneksikan sebuah server database mysql_connect(nama server,user
database,password database), mysql_select_db fungsi php untuk memanggil database
mysql_connect("localhost","root","");
mysql_select_db("smskudb");
Query SQL atau bisa dikatakan perintah untuk MySQL Database. Lihat kembali
http://localhost/phpmyadmin lalu pilih database smskudb, maka ada tabel outbox, nah tabel outbox
tersebut diperintah untuk diiskan
if($query)
}
Nah mudah bukan?
tahap finalnya, setelah bisa mengirimkan sms. Sekarang kita akan membuat auto reply sms nya. Contoh
Format REG#Nama#Tanggal#Jenis Kelamin#Alamat
<?php
mysql_connect("localhost","root","");
mysql_select_db("smskudb");
$hasil = mysql_query($query);
while($data= mysql_fetch_array($hasil)){
$id = $data['ID'];
$noPengirim = $data['SenderNumber'];
$msg = strtoupper($data['TextDecoded']);
$pecah = explode("#",$msg);
$d_tgl=$pecah[1];
$d_nama=$pecah[2];
$d_jk=$pecah[3];
$d_alamat=$pecah[4];
if($pecah[0]=="REG")
$today = date("Ymd");
$tgl=date("d M Y");
}else{
}else{
mysql_query($query3);
?>
Keterangan :
Query Inbox , melakukan pencarian data inbox yang masuk dalam modem USB dan tabel inbox
$hasil = mysql_query($query);
Looping data inbox
while($data= mysql_fetch_array($hasil)){
$id = $data['ID'];
$noPengirim = $data['SenderNumber'];
$msg = strtoupper($data['TextDecoded']);
$d_tgl=$pecah[1];
$d_nama=$pecah[2];
$d_jk=$pecah[3];
$d_alamat=$pecah[4];
Jadi $d_nama adalah isi dari format sms NAMA yang dikirimkan
Cek format SMS pertama sekali adalah REG dan Cek semua format SMS
if($pecah[0]=="REG")
$today = date("Ymd");
$tgl=date("d M Y");
mysql_query($query3);
Ops, ini belum selesai. SMS Gateway tidak akan respon jika tidak ada eksekusi terlebih dahulu. Lalu
bagaimana caranya ?
Buat sebuah bat script, buka notepad dan ketikkan :
C:\xampp\php\php -f C:\xampp\htdocs\smsku\autoreply.php
Simpan dengan nama daemon.bat (terserah mau apa namanya)
Jadi,jika kita klik daemon.bat, maka semua sms pada tabel inbox yang statusnya false akan ter-kirim
dengan sendirinya. Tapi apakah harus jalankan daemon.bat setiap kali?
Nah, ini yang jadi pertanyaan. Banyak orang memakai trigger mysql ataupun dengan memakai
konfigurasi runonreceive pada gammu. Namun ada kendalanya
Dengan Trigger :
Format SMS tidak bisa dilakukan sesuka hati
Dengan runonreceive :
Terkadang saya mencoba malah tidak jalan
Solusi saya ya bikin aplikasi untuk menjalankan daemon.bat tersebut dengan Visual Basic hahaha..
Caranya mudah kok,tapi saya tidak menjelaskan dengan detail.
Buat sebuah project Visual Basic dan Masukkan Timer dengan Interval 1000 lalu masukkan script pada
Timer :
Lalu compile dan buat sebuah start up dengan menitipkan shortcut pada folder :
C:\Users\NAMAUSER\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\