Anda di halaman 1dari 14

Instalasi SMS Gateway / Aplikasi SMS Notif

di Centos 7
Sebuah catatan kecil perjalanan waktu by yudhi.tc@gmail.com in 29/10/2019

Apa yang dibutuhkan untuk ini:

- PC / Server dengan CentOS 7


(telah terinstall, apache, php, mysql, networking)
- Gammu repository, informasi official tentang gammu
gammu sebagai utility SMS dasar
gammu-smsd sebagai service daemon
python-gammu untuk kompilasi perintah perintah python,
- Modem atau Phone dengan koneksi USB yang support gammu
Lihat daftarnya di supported phones
- Secangkir kopi dan kudapan ringan

Asumsi kita memiliki perangkat PC/Server yang telah terinstall Sistem Operasi Centos 7 dengan benar,
termasuk service webserver dan networkingnya, periksa performace CPU, Memory, kapasitas Hardisk,
apakah masih cukup untuk instalasi ini:

1. Periksa sumberdaya CPU, RAM dan Hardisk

# top

Terlihat dari penggunaan memory masih banyak free, maka dalam hal ini tidak perlu perangkat khusus
lain untuk fungsi SMS gateway. Semakin banyak aplikasi membutuhkan resource penyimpanan dan
memori untuk multitasking, pengecekan RAM dan storage penting sebelum mengambil keputusan ini;

2. Update and Upgrade CentOS 7

Update atau upgrade dulu system CentOS 7 untuk menemukan repository terbaru

# yum update && yum upgrade


Jika system lama tidak pernah di update, maka akan banyak file-file repository baru atau terbaru
sehingga proses akan memakan waktu lebih, tunggu hingga proses selesai;

3. Install USB Device Utilities (lsusb)

Cek dahulu apakah daftar device yang menggunakan port usb, dengan perintah lusb

# lsusb

Diatas perintah lusb tidak ditemukan atau belum terinstallJ, cek dan install package tersebut dengan
perintah:

# yum whatprovides lsusb

# yum install usbutils


Hidupkan dan koneksikan modem / phone SMS gateway ke PC/Server perangkat, dan saatnya
mengecek port USB, apakah terdeteksi atau tidak,

# /usr/bin/lsusb

Atau dengan perintah:

# lsusb

Melihat device komunikasi serial/USB/paralel yang terhubung dengan PC, dengan filter tty

# dmesg | grep tty

Terlihat Modem GSM ZTE terdeteksi di sistem, dan telah ditambahkan di port serial ttyUSB0 s/d
ttyUSB2, Ingat port ini nantinya yang akan digunakan untuk setingan gammurc;

4. Install Gammu repository

# yum install gammu-smsd gammu python-gammu usb-modeswitch


Ketik y enter;

5. Test gammu

Jika gammu repository telah terinstall, test perintah :

# gammu

Layar diatas menujukan gammu telah terinstall namun belum dikonfigurasi, langkah selanjutnya
adalah mengkonfigurasi gammu.

6. Konfigurasi Gammu

Pada langkah 3 tadi, kita telah mendapatkan modem GSM terdaftar di port ttyUSB0 – ttyUSB2,
namun tidak ada salahnya kita kembali mengecek deteksi gammu terhadap port modem yang
dihubugkan, dengan perintah:
# gammu-detect

Pada sistem Linux, MacOS X, BSD atau sistem yang berbasis unix Konfigurasi gammu terletak
pada path:
1. $XDG_CONFIG_HOME/gammu/config
2. ~/.config/gammu/config
3. ~/.gammurc
4. /etc/gammurc

Jika login dengan root maka, file setingan akan diletakan di /root/.gammurc

Untuk membuat file konfigurasi gammu (gammurc), bisa menggunakan editor text vi, nano
atau dengan tool:

# gammu-config
Edit dan sesuaikan isian Port dengan /dev/ttyUSB0 atau sesuai yang terdeteksi sistem, Simpan
OK. Hasilnya sebagaimana gambar dibawah:

File setingan terletak di /root/.gammurc , edit kembali file ini, gunakan saja Filezilla dan
Notepad++ untuk memudahkan hidup anda:

Isi file /root/.gammurc:

[gammu]
port = /dev/ttyUSB0
connection = at115200
name = ZTE_AC30
synchronizetime = yes
logfile = gammu.log
logformat = errorsdate
use_locking = no
;model = auto
;gammuloc =
[gammu1]
port = /dev/ttyUSB1
connection = at115200
name = ZTE_AC30
use_locking = no
logfile = gammu1.log
logformat = errorsdate

[gammu2]
port = /dev/ttyUSB2
connection = at115200
name = ZTE_AC30
use_locking = no
logfile = gammu2.log
logformat = errorsdate

Coba buat settingan gammu sebagai multiple, untuk antisipasi jika port USB modem dipindahkan
ke port USB lain, tanda ; atau # artinya diabaikan (belum disetting), isian port sesuai yang
terdeteksi sistem,isian connection sesuikan dengan data modem yang dapat dilihat di daftar
supported phones,

untuk kali ini menggunakan modem ZTE ac30, konfigurasi connection sama dengan modemyang
direkomendasikan Wavecom 1306N, modem lainnyapun tak masalah asal support dengan gammu

ZTE ac30 Wavecom 1306N

Sekarang coba jalankan tool identity port mana yang kena dengan setingan diatas, dengan
perintah:

# gammu identify

Terlihat device port yang ditetapkan adalah /dev/ttyUSB2, inilah port fix yang akan digunakan
nanti untuk settingan deomon gammu (gammu-smsdrc);

Cek monitoring status penerimaan sinyal dll, dengan perintah:


# gammu monitor 1

artinya modem anda telah sukses dikomunikasikan dengan PC atau server perangkat.

Sekarang coba kita mengirim dan menerima SMS langsung dari Commad line (CLI), mengirim SMS
dengan perintah dibawah, JANGAN LUPA MODEM TELAH BERISI SIM CARD AKTIF DAN PULSA.

# gammu sendsms TEXT +6281245583495 -text "Halooo... Test Kirim


dari Centos 7 dengan CLI"

menerima SMS dengan perintah:

# gammu getallsms

Perintah-perintah gammu lainnya dapat anda pelajari lebih lanjut di Link

Sampai ditahapan ini, instalasi gammu dasar sudah selesai, Selamat !!!
7. Instalasi Aplikasi SMS Notif
- Extrak dan unggah file master sms_notif yang dibagikan team devel ke direktori webserver
pada lokasi /var/www/html/sms_notif

- Atur owner dan permision file unggahan, eks:

# chown -R apache:apache /var/www/html/sms_notif

- PENTING !!!, Atur PHP timezone php.ini pada lokasi /etc/php.ini untuk konsistensi dan
sinkronisasi waktu server dengan zona waktu operator GSM, ini penting agar aksi aplikasi
setelah pembacaan sms masuk dan keluar sesuai;

- Buat database smsku dan import database sms_notif dengan SQLYog;


- Konfigurasi database aplikasi pada lokasi
/var/www/html/sms_notif/application/config/database.php

sesuaikan dengan pengaturan server database yang digunakan, untuk server database yang
berbeda server dengan webserver dalam LAN, maka user database harus memiliki privilages
atau hak untuk mengakses database tersebut, contoh diatas lokasi server database berbeda
dengan webserver.

- Edit file sms_config.php pada lokasi /var/www/html/sms_notif/application/config/


sms_config.php
- Akses front-end aplikasi notifikasi di http://ipserver/sms_notif, user pass adalah sama
dengan admin sipp, lakukan konfigurasi di menu lain-lain, cek templatenya apakah sudah
sesuai.

- Sampai tahapan ini aplikasi belum dapat digunakan, karena servis SMS daemon belum
disetting dan dijalankan.

8. Konfigurasi Gammu sebagai service daemon

File setingan terletak di /etc/gammu-smsdrc , edit file ini, gunakan saja Filezilla dan Notepad++
untuk memudahkan hidup anda, device port sesuai identifikasi pada langkah 6. Konfigurasi
gammu, bagian perintah gammu identify, isi file gammu-smsdrc:
[gammu]
device = /dev/ttyUSB2
connection = at115200
name = ZTE_AC30
synchronizetime = yes
logfile = /root/gammu-smsd.log
logformat = errorsdate
use_locking = no
#model = 6110
#gammuloc = gammu.us
startinfo = yes

[smsd]
Service = sql
Driver = native_mysql
commtimeout = 30
sendtimeout = 60
#PIN = 1234
LogFile = /root/smsd.log
User = lan
Password = peradilan
PC = 192.168.2.253
Database = smsku
#PhoneID = first
Simpan file konfigurasi dan coba jalankan gammu-smsd

# systemctl start gammu-smsd

PENTING !!!

Versi database gammu repository pada tulisan ini version 17, sedangkan gammu dalam
database smsku yang dibagi tim per-21 Oktober 2019 adalah versi 16, kemungkinan service
ini tidak dapat dijalankan karena perbedaan struktur database, akan ada “Error Failed
Mysql database structure” ketika systemctl start gammu-smsd dijalankan, solusinya
merubah versi tabel gammu di database smsku dengan yang versi yang sama (17);

Atau jika ingin mengganti tabel-tabel default gammu di database smsku dengan yang
official dapat diunduh dan ditemukan pada url https://wammu.eu/download/gammu/ atau
https://dl.cihar.com/gammu/releases/gammu-1.41.0.zip pada file zip: gammu-
1.41.0.zip\gammu-1.41.0\docs\sql\mysql.sql

Tabel-tabel original gammu yang diperlukan :


- gammu
- inbox
- outbox
- outbox_multipart
- phones
- sentitems

Cek status servis gammu-smsd:

# systemctl status gammu-smsd

Jika servis daemon berhasil dijalankan, maka seperti gambar diatas, artinya servis daemon
gammu-smsd telah aktif, dan Aplikasi SMS Notif siap dioperasikan;
9. Uji coba Aplikasi sms Notif

- Buka alamat http://ipserver/sms_notif/smsku untuk mengaktifkan sistem sms/notifikasi,


jangan ditutup/harus selalu aktif !!!

- Kirim SMS kenomor SIM Card modem dengan format baku antara lain :
 info no_perkara
 sidang no_perkara
 akta no_perkara
 dll, sesuai format baku tim

- Jika system Aplikasi SMS Gateway / SMS Notif berjalan dengan benar maka, balasan SMS
akan diterima sesuai informasi yang di ingikinkan.
More simple more safe
Selamat Berkreasi
Semoga Bermamfaat 

Anda mungkin juga menyukai