Post on 15-Nov-2015
description
7COMMENTS
( SMS GATEWAY PHP MYSQL ) Tahap Demi TahapMembangunSMSGatewayDenganPHPMYSQLDITULISOLEH:IVANSILALAHI
HalosahabatsetiaBelajarPintarPHP,sebelumnyasayamintamaafkarenasayaabsendarihadapananda
beberapa hari ini. Dari komentar dan jumlah visit terhadap postingan SMS Gateway Gammu semakin
meningkat, jadi saya akanmemberikan tutorial SMSGatewaydengan lengkap kepada anda semua, guna
melengkapikekurangankekuranganpostingsayasebelumnyamengenaiSMSGateway.Oketanpapanjang
lebar,kitalangsungsajakeTKP...!!!
DisinikitaakanmembahastuntasbagaimanacaramembuatsebuahSMSgatewaydenganGammudancara
menghubungkannya dengan web yang sudah anda buat. Kebetulan setelah saya analisa web sms
online.web.id menggunakan Gammu sebagai SMS Gatewaynyasehingga semua orangpun bisa
membuatnyadenganhanyamengikutipetunjukdarisaya.UntukbisamenghubungkanSMSGatewayyang
sudahkitabangundenganwebyangsudahandabuatandadiharuskanmengertikonsepdasarjaringandan
routingdenganmikrotikBaikkitalangsungmulaisajamembahasnya.
A.MEMBANGUNSEBUAHSERVERSMSGATEWAY
WhatisGammu?(ApaituGammu?),Gammumerupakansebuahaplikasi/daemonyangdikhususkan
untukmembangun sebuah SMS Gateway yangmenghubungkan antara operator seluler ke internet dan
sebaliknya.AplikasiinibersifatopensourcedibawahlisensiGPL.SebenarnyaGammutidakhanyaberfungsi
sebagaiSMSGatewaysajatetapbisajugauntukmelakukanvoicecall.Untukmengetahuifiturlengkapdari
Gammusilahkanbukawebsitenyadihttp://wammu.eu/gammu/.AplikasiinitersediadalamversiLinuxdan
Windows. Untuk memudahkan manajemen SMS yang ada di INBOX Gammu mempunyai sebuah
aplikasiwebbasedyangdibangunmenggunakanPHPolehanakbangsadariITByangdiberinamaKalkun.
AplikasiinimenyediakanfituryanglumayanlengkapuntukmemanajemenGammu.Sebenarnyasetelahkita
Tweet 0
suksesmembangunGammu,maka kita bisamembangun aplikasi SMSGateway dengan bahasa program
atauplatformapapun,baikituwebbaseddenganPHPmaupunASPatauapapun,danjugadesktopdengan
menggunakanDelphi,VBataulainnya.
SaatiniGammusudahsupportHP/ModemGSMterbarusehinggaandatidakperlukawatirdenganmasalah
kompatibilitasnya.YangakansayabahaskaliiniadalahGammuversiwindowskarenaWindowssudahbanyak
digunakanolehbanyakuserdanjugalebihfamiliar.Dalamartikelinipembahasanakansampaidengancara
instalasiservicedanmenjalankannya.
LangkahPertama(DownloadFile)
SilakanmendownloadGammunyaterlebihdahuludi
http://www.mwiacek.com/zips/gsm/gammu/gammu_win32.zip
LangkahKedua(InstallGammu)
Secaradefaultsetelahfilesetupdiatasdiinstal,filegammuterletakdidirektoriC:\GAMMU.
LangkahKetiga(SettingKonfigurasiGammu)
Setelah file Gammu diinstall, langkah berikutnya adalah setting konfigurasi. Setting ini diperlukan guna
keperluanpenyesuaianjenisHPdannomorportyangakandigunakan.Bagaimanacarasettingnya?Caranya
adalahsilakanedit file GAMMURCyangadadidalamdirektori C:\gammu.Editlah fileGAMMURCtersebut
menggunakanNotepadatausejenisnyakemudianandarubahbagianberikut:
1.[gammu]
2.port=
3.connection=
parameterport itunantidiisidengannomorportsesuai lokasicolokanHPAnda.Untukmengetahuinomor
port dimana Anda colokkan HP Anda di komputer, silakan masuk ke Control
PanelPhone andModemOptions Modem.NahbilaHPAndasudah tercolokdi PCdandrivernya
sudahterinstaldenganbaikmakapastinyapadabagiantersebutakanmunculnomorportnya.
TipsBuatSahabatBelajarPintarPHP:
Sebaiknya setiap kaliHPAndadicolokkankePC, gunakan lokasi portUSByang samaalias janganpindah
pindahcolokan,karenasetiapganticolokanmakanomorportnyaakanberubahubah.AkibatnyaAndamusti
ubahsettingGAMMURCnyaberkalikalipulakarenaharusmenyesuaikannomorportnya.
BerikutinicontohkonfigurasiGAMMURCbilasayamenggunakanmodemWavecom
M1206Byangterhubungkeportcom5USB.
1.[gammu]
2.port=com5:
3.connection=at115200
(Penting:janganlupatanda:dibelakangport)
Bila Anda gunakan lebih dari satu HP yang tercolok ke PC, maka Anda bisamenambah ataumengubah
konfigurasinyapadabagian:
01.[gammu1]
02..
03..
04.
05.[gammu2]
06..
07..
08.
09.dst..
LangkahKeempat(UjiKoneksi)
Langkah terakhir untuk proses setting GAMMU ini adalahmelakukan uji koneksi antara Gammu dengan
HP/modemAnda.Langkahinidilakukansetelahprosessettingkonfigurasidilakukan.Caranyaadalahdengan
masuk folder C:\gammu pada direktori Gammu Anda via DOS PROMPT. Lalu ketikkan perintah ini pada
commandpromptnya.
1.gammuidentify
Apabila setelah perintah tersebut dienter lalumuncul informasimengenai HP Anda,maka koneksi antara
GammudenganHPAnda sukses.Bila responnya tidak seperti yangdiharapkan,maka cek kembali nomor
portnya atau jenis connectionnya. Berikut ini contoh tampilan yang keluar apabila proses setting berhasil
dilakukan:
LangkahKelima(MembuatDatabaseMySQLuntukGammu)
Langkah ini bertujuan untuk menyiapkan database MySQL untuk menampung datadataSMS yang
diperlukanGammuuntukSMSGateway.SebenarnyatidakhanyaMySQLyangbisadigunakan,namunbisa
jugaSQLLiteatauPosgreSQL.NamundalamartikelinihanyauntukMySQLsajadeh,karenasayatidak
familiardenganyanglainnya.
Caranya adalah buat database dengan nama sms atau yang lain (terserah)
menggunakanphpMyAdminAnda.LalubuatlahtabeltabelyangdiperlukanolehGammu.Waduh..tabelnya
apa aja ya? Dont worry karena Gammu sudah menyiapkan file dumpnya untuk create tabel. Letak file
dumpnyaadadifolderC:\gammu\mysqltabel.sql.Nah..silakangunakanfiledumptersebutuntukmembuat
tabeltabelnyamenggunakanphpMyAdmin.
PadaGammusebenarnyaSMStidakhanyabisadisimpandalamdatabase,namunjugabisasebagaifileteks
yang disimpan di PC Anda. Namun untuk keperluan SMS gateway sepertinya lebih enak menggunakan
databasesebagaistoragenya.
LangkahKeenam(SettingKonfigurasiUntukSMSDaemon)
LangkahinidilakukansetelahsettingdatabaseuntukGammu.SMSdaemonpadaGammudigunakanuntuk
proses pembacaan otomatis SMS yang diterima lalu disimpan ke database. SMS daemon juga diperlukan
untuk keperluan pengiriman SMS. Untuk melakukan setting SMS daemon, bukalah file SMSDRC yang
terletakdidirektoriC:\gammu.BukalahdenganNotepadatausejenisnya.Bagianyangdiubahadalah:
port=diisinomorportsesuaiyangadadifileGAMMURC
connection=diisijenisconnectionsesuaiyangadadiGAMMURC
service=mysql(diisidenganmysqlkarenakitaakanmenggunakanmysqlsebagaistorage
dataSMSnya)
user=diisiuserdatabasekoneksikemysqlAnda
password=diisipasswordkoneksikemysqlAnda
pc=diisinamahostmysql(biasanyalocalhost)
database=sms(atausesuainamadatabaseyangtadikitabuat)
Contohkonfigurasiyangditulis:
1.port=com5:
2.connection=at115200
3.service=mysql
4.user=root
5.password=passwordroot
6.pc=localhost
7.database=sms
Catatan:hilangkantanda#didepanparameterparameterdiatasbilaada.
LangkahKetujuh(MembuatGammuService)
LangkahinibertujuanuntukmembuatserviceGammudiWindows.DengandibuatnyaservicediWindowsini
kitabisa lebihmudahmenjalankannyatanpamenggunakanperintahtertentudicommandprompt.Untuk
membuatGammuservicediWindows,ketikkanperintah inidiDOSPROMPTsetelahAndamasukkefolder
C:\gammu.
1.gammusmsdcsmsdrci
Nah..bilaadakonfirmasibahwaprosespembuatanservicesukses,makaAndaakanmelihatserviceGammu
muncul pada daftar service yang berjalan diWindows. Service ini bisa dilihatmelalui CONTROL PANEL>
AdministrativeTools>Services.Nah..untukmenjalankanserviceGammuinitinggalklikSTARTpadaservice
Gammutersebut.
Namun bila proses pembuatan service ini gagal,maka silakan cek kembali konfigurasi SMSDRC nya atau
mungkinnamadatabasenyasalah,ataubisajugacommandyangdituliskansalah.
B.MENGHUBUNGKANSMSGATEWAYDENGANWEBANDA
LangkahPertama(Persiapan)
UntukmenghubungkanSMSGatewaydenganwebandaada2metode yangbisa dilakukanyaitu dengan
metode direct connection (IP Publik) ataupun web service (SOAP). Kali ini yang akan kita bahas adalah
metodedirectconnectionyangmembutuhkanpersiapansebagaiberikut:
1.Koneksiinternetstabildanunlimited,bisamenggunakanspeedy
2.IPPublikstatikdariISP(untukhaliniIPpublikharusmasukkeroutersupayabisadiaksesdariinternet,
untuklebihjelasnyasilahkanbacaartikelMembuatserverhostingsendiridenganspeedydanmikrotikdan
SettingMikrotikPPPoEsebagaigatewayspeedy
3.MikrotikRouter(PCRouter/RouterBoard)
LangkahKedua(MembuatscriptPHPuntukmengirimSMS)
OK.. sekarang kita akan mencoba membuat script PHP sederhana untuk mengirim pesan SMS yang
terintegrasidenganGammuini.
LangkahpertamakitabuatformuntukmengirimpesanSMSnyaterlebihdahulu.
form_sms.php
1.
2.No.HPTujuan:
3.Pesan:
4.
5.
Langkahkedua,kitabuatscriptphpuntukmengirimpesannya.send.php
1.
Perintah exec() dalam PHP digunakan untuk menjalankan perintah command DOS dalam hal ini adalah
perintahcommandinjectnyaGammu.
Karena command injectGammupada script di atasmenggunakan formatEMSmakamemungkinkankita
mengirimSMSdenganjumlahkarakterlebihdari160buah.OyasebelumAndamenjalankanscriptdiatas,
pastikanbahwaserviceGammunyatelahAndajalankan,danHPAndatercolokkePCSekarangbagaimana
bilapengirimanSMSdariscriptdiatasmenggunakanqueryINSERT?Inidiascriptnya.
send.php
01.