Seputar Teknologi World

Breaking

Post Top Ad

Your Ad Spot

Sunday, April 21, 2019

CARA MEMBANGUN SMS GATEWAY DI LINUX 100% WORK!

Saat ini banyak terdengar suara-suara tentang penggunaan SMS Gateway untuk aplikasi penerimaan pesan singkat/SMS pada web browser. SMS Gateway itu sendiri berarti Gerbang SMS, yang jika diimplementasikan adalah sebagai berikut :

SMS Gateway yang saya tuliskan ini menggunakan otak/aplikasi Gammu. Gammu ini akan menjadi pengendali antara hardware (bisa menggunakan modem atau alat seperti yang saya gunakan bermerk Wavecom) agar perpesanan dengan komputer bisa terjalin. Dan dengan aplikasi Kalkun sebagai kulit-nya agar si Gammu itu bisa ditampilkan sebagai antarmuka Web pada Web-Browser (karena Gammu hanya bisa sebagai drive pada terminal/tidak bisa menampilkan secara grafis).

Sebelumnya siapkan terlebih dahulu alat dan juga aplikasi yang akan digunakan, cukup 3 saja yaitu sbb :

  1. Modem atau alat yang saya gunakan (harus kompatibel oleh Gammu, atau lihat disini untuk kompatibelitas hardware anda)
  2. LAMPP (Linux Apache2 Mysql-server PHP5). Karena saya sedang menggunakan OS Linux. Apache2 sebagai aplikasi web-server. Mysql-server sebagai server database. Dan PHP5 sebagai bahasa pemrogaman, serta beberapa ekstensi PHP5 (MySQL, Session, Hash, JSON, MBString).
  3. Kartu GSM/CDMA yang akan digunakan pada SMS Gateway

Hardware yang saya gunakan adalah Wavecom FASTTRACK W1306B, jadi jika anda lihat akan memiliki kompatibitas port=at115200 (sesuaikan dengan hardware anda sendiri) klik di sini

Langkah beserta screenschot-nya : 

1.Instal untuk aplikasi Gammu 

# apt-get install gammu gammu-smsd

2. Lalu colokkan modem/alatnya ke komputer. Cek untuk koneksinya apakah telah kedeteksi dengan benar atatu benar, dengan perintah : 

# dmesg | grep tty
[ 0.000000] console [tty0] enabled
[ 10.094314] usb 3-2: pl2303 converter now attached to ttyUSB0
ttyUSB0 akan dijadikan jalan hardware dari komputer menuju alat sms gateway ini

3. Selanjutnya konfigurasi gammu, denagn cara jalankan perintah tsb: 
# gammu-config 

Akan muncul pertanyaan konfirmasi, jawab dengan >> Yes >> Yes.


Port : sesuaikan dengan hasil perintah “dmesg | grep tty” diatas
Connection : sesuaikan dengan kompatibitas hardware anda 
Synchronize time : Log file /var/log/gammulog 
Log format : textall 
Lalu save, dan akan muncul pertanyaan konfirmasi lagi, jawab dengan >> Yes >> OK 

4. Lalu konfigurasi pada /etc/gammu-smsdrc
[gammu]
# Please configure this!
port = /dev/ttyUSB0          //sesuaikan dengan hasil perintah “dmesg | grep tty” diatas
connection = at115200      //sesuaikan dengan kompatibitas hardware anda
# Debugging
#logformat = textall
# SMSD configuration, see gammu-smsdrc(5)
[smsd]
PIN = ''
service = sql                     //akan menggunakan layanan mysql database
driver = native_mysql
DeliveryReport = sms
logfile = /var/log/smsdlog
# Increase for debugging information
debuglevel = 1
User = root                       //user dari mysql-server
password = a                   //pasword dari mysql-server
pc = localhost                   //host pada komputer linux, default=localhost
database = kalkun            //database saat terhubung dengan kalkun
runonreceive = /var/www/kalkun/scripts/daemon.sh

5. Jika kiita akan mencoba menggunakan command-command pada gammu, terlebih dahulu stop daemon/aplikasi gammu ini. 
# /etc/init.d/gammu-smsd stop
* Stopping Gammu SMS Daemon gammu-smsd [fail]

6. Lalu kita coba untuk menggunakan command-command pada gammu, seperti mengirim pesan singkat/SMS maupun melakukan cek pulsa dan yang paling penting adalah mengecek apakah antara Gammu dengan hardware telah tersambung dengan baik. 

Untuk cek koneksi gammu dengan hardware sbb: 
# gammu --identify
Device : /dev/ttyUSB0
Manufacturer : Wavecom
Model : MULTIBAND 900E 1800 (MULTIBAND 900E 1800)
Firmware : 651b09gg.Q2406B 244 041410 13:45
IMEI : 0123456xxxxxxxx
SIM IMSI : 5100190xxxxxxxx

Berarti antara gammu dengan hardware telah tersambung dengan baik. 

Untuk mengirim pesan, gunakan perintah dibawah ini : 
# gammu --sendsms text 0857xxxxxxxx
Enter the message text and press Ctrl+D:
Test SMS Gateway.....If you want break, press Ctrl+C...
Sending SMS 1/1....waiting for network answer..OK, message reference=239

Untuk mengecek pulsa (pada Operator Indosat, sesuaikan jika anda menggunaka Operator lain): 
# gammu --getussd *555#
Press Ctrl+C to break...
USSD received
Status : Terminated
Service reply : "PulsaUTAMA Rp.30678. Aktif 26/06/14, Tenggang 26/07/14. SMS Harian 0 SMS ke ISAT & 0 SMS ke Oprtr lain. GRATIS Nelp+SMS+Data,Ktk:GRATIS ke123(Rp0)"

7. Lalu jika anda sudah selesai dalam menggunakan command-command pada gammu, silahkan anda start daemon gammu ini lagi untuk aplikasi kalkun(yang selanjutnya gammu ini agar bisa ditampilkan pada antarmuka grafis/web)
# /etc/init.d/gammu-smsd start
* Starting Gammu SMS Daemon gammu-smsd Log filename is "/var/log/smsdlog" [ OK ]

Kalkun...... adalah aplikasi opensource berbasis pengaturan web SMS (Short Sessage Service). Ini akan menggunakan gammu-smsd (bagian dari keluarga gammu) sebagai mesin SMS Gateway untuk menampilkan pesan dari telepon/modem yang kita gunakan ini. Jadi kalkun ini akan menjadi kuit daripada gammu agar SMS Gateway lebih mudah digunakan(ditampilkan pada web) 

Langkahnya adalah Sebagai Berikut : 
1. Buat folder kalkun pada aplikasi penampil web (apache2) yaiu di /var/www/. Lalu pindah ke folder kalkun tsb. Kemudian download paket dari kalkun serta ekstrak kalkun_x.x.x.zip yang telah didownload tadi. 
# mkdir /var/www/kalkun
# cd /var/www/kalkun
/var/www/kalkun# wget http://ncu.dl.sourceforge.net/project/kalkun/kalkun/0.7.1/kalkun_0.7.1.zip /var/www/kalkun#     unzip kalkun_0.7.1.zip

2. Lalu buat database untuk kalkun : 
# mysql –u root –p
mysql> create database kalkun;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| kalkun |
| mysql |
| performance_schema |
+--------------------+
4 rows in set (0.02 sec)
mysql> exit
Bye

3. Lalu konfigurasi pada /kalkun/application/config/database.php :
$db['default']['hostname'] = "localhost"; //default localhost
// MySQL
$db['default']['username'] = "root"; //user mysql-server
$db['default']['password'] = "a"; //password mysql-server
$db['default']['database'] = "kalkun"; //nama database untuk kalkun
$db['default']['dbdriver'] = "mysql"; //driver/pengendalinya adalah mysql-server

4. Lalu setelah membuat database untuk kalkun, import beberap tabel database untuk database “kalkun” tadi. Disini akan melakukan import tabel database dari file gammu.

Ekstrak file di /usr/share/doc/gammu/examples/sql/mysql.sql.gz agar bisa diimport via terminal : 
# gunzip /usr/share/doc/gammu/examples/sql/mysql.sql.gz

Lalu import tabel databasenya dengan perintah : kalkun=sesuaikan dengan database yang anda buat
# mysql kalkun -u root -p < /usr/share/doc/gammu/examples/sql/mysql.sql

5. Konfigurasi juga pada /var/www/kalkun/scripts/daemon.sh, ini akan mengkonfigurasi path/letak dari daemon kalkun tsb:
#!/bin/sh
# Configure this (use absolute path)
PHP=/usr/bin/php # php cli path
DAEMON=/var/www/kalkun/scripts/daemon.php # daemon.php path
# Execute
$PHP $DAEMON

6. Juga konfigurasi juga pada /kalkun/scripts/daemon.php, dimana letak dari daemon.php kalkun. Hal ini silahkan anda sesuaikan, karena tadi saya mengekstrak file kalkun di /var/www/kalkun/, maka konfigurasinya sbb :
// Please configure this
$url = "http://localhost/kalkun";

7. Lalu silahkan anda memulai untuk instalasi kalkun di web-browser anda, akses melalui url di http://localhost/kalkun

Start installation

Status OK berarti Paket-paket tsb telah terinstall pada Linux (PHP5, ekstensi PHP(MySQL, Session, Hash, JSON, MBString))

Run Database Setup

Installastion status: SUCCESS
Removal status: FAILED (You have to remove it manually)

Saat instalasi akan selesai, kalkun akan mencoba untuk menghapus folder install/ miliknya. Tetapi pada kejadian penghapusan ini sering terjadi FAILED, hapus saja secara manual dengan terminal anda (ini tidak akan membuat masalah pada konfigurasi apapun karena memang folder install/ ini harus dihapus setelah instalasi kalkun) 
# rm -rf /var/www/kalkun/install/

Setelah itu refresh halaman kalkun (atau klik Go To Application), dan login dengan username dan password defaultnya kalkun.

Login Kalkun

Troubleshooting : 
Jika status pada kalkun = Unkown, maka restart daemon dari gammu-smsd sampai pada Stopping dan Starting [OK], lalu status kalkun akan Connected. 
# /etc/init.d/gammu-smsd restart
* Stopping Gammu SMS Daemon gammu-smsd [ OK ]
* Starting Gammu SMS Daemon gammu-smsd [fail]

# /etc/init.d/gammu-smsd restart
* Stopping Gammu SMS Daemon gammu-smsd [fail]
* Starting Gammu SMS Daemon gammu-smsd Log filename is "/var/log/smsdlog" [ OK ]

# /etc/init.d/gammu-smsd restart
* Stopping Gammu SMS Daemon gammu-smsd [ OK ]
* Starting Gammu SMS Daemon gammu-smsd Log filename is "/var/log/smsdlog" [ OK ]
Status: Unknown dan Waktu telah tersinkron(Synchronize time = yes)

Status Connected

Jika date-time pada kalkun belum tersinkronisasi dengan komputer, maka silahkan edit pada /kalkun/index.php. Hapus tanda komentar (//..........) pada “date_default_timezone_set” seperti berikut :
*/
error_reporting(0);
//error_reporting(E_ALL);
// Change this to your timezone
// Available timezone: http://www.php.net/manual/en/timezones.php
date_default_timezone_set('Asia/Jakarta');
/*

Maka silahkan anda mencoba melakukan pengiriman dan juda penerimaan SMS melalui kalkun ini (saat melakukan penerimaan SMS relatif cepat, tetapi saat melakukan pengiriman SMS relatif lambat sekitar 10detik untuk sampai terkirim ke nomor tujuan).


Mencoba mengirim pesan



--------------------------------------------------------------------------------------------------------------------------
Silahkan share dan komen artikel ini untuk terus mendapatkan informasi, berita, update seputar teknologi dari acceptechno.

No comments:

Post a Comment

Silahkan Tinggalkan Komentar anda disini :)

Post Top Ad

Your Ad Spot