Kali ini aku akan sedikit membahas tentang membangun server sms sederhana menggunakan perangkat Raspberry dan Modem ZTE MF190.
Karena aplikasi menggunakan Gammu dan Kalkun SMS yang sudah cukup lama, jadi untuk Raspbian saya menggunakan Raspbian (05-07-2017).

Perlu diketahui juga, Kalkun SMS hanya support menggunakan PHP5.x, jadi kalau pakai PHP7.x sudah pasti tidak akan bisa digunakan.

Oke, kita langsung saja pada langkah-langkah untuk melakukan instalasi SMS Server :

$ sudo apt update
$ sudo apt upgrade
$ sudo apt-get install apache2 -y
$ sudo apt-get install php5 php5-mysql php-gettext php5-mbstring libapache2-mod-php5 -y
$ sudo apt install mysql-server mysql-client -y
$ sudo mysql_secure_installation
$ sudo apt-get install phpmyadmin -y
  • Install Gammu
$ sudo apt-get install gammu-smsd gammu python-gammu usb-modeswitch -y
  • Sambungkan modem dengan Raspberry

  • Cek apakah usb sudah terbaca oleh Raspberry
pi@raspberrypi-gammu:~ $ sudo lsusb
Bus 001 Device 004: ID 19d2:0117 ZTE WCDMA Technologies MSM
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
  • Cek modem menggunakan port USB yang mana
pi@raspberrypi-gammu:~ $ sudo dmesg | grep tty
[ 0.000000] Kernel command line: 8250.nr_uarts=0 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=PARTUUID=9ced5596-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles
[ 0.000347] console [tty1] enabled
[ 0.751646] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2
[ 6.176129] usb 1-1.5: GSM modem (1-port) converter now attached to ttyUSB0
[ 6.176674] usb 1-1.5: GSM modem (1-port) converter now attached to ttyUSB1
[ 6.177222] usb 1-1.5: GSM modem (1-port) converter now attached to ttyUSB2

untuk ini, silahkan dicoba satu persatu, karena modem tidak selalu berada di ttyUSB0.

  • Ok, kalau sudah mengetahui kira-kira pakai port USB yang mana langsung setup Gammu
$ sudo gammu-config
  ┌─────────────────────────────────────────┐
  │ Current Gammu configuration             │
  │                                         │
  │  P Port                 (/dev/ttyUSB2)  │
  │  C Connection           (at19200)       │
  │  M Model                ()              │
  │  D Synchronize time     (yes)           │
  │  F Log file             ()              │
  │  O Log format           (nothing)       │
  │  L Use locking          ()              │
  │  G Gammu localisation   ()              │
  │  H Help                                 │
  │  S Save                                 │
  │                                         │
  │                                         │
  │        <Ok>            <Cancel>         │
  │                                         │
  └─────────────────────────────────────────┘

Gammu-config ini akan buat file di home directory ~/.gammurc.

Cek perubahan permission

$ ls -l /dev/ttyUSB*
crw-rw---T 1 root dialout 188, 0 May 14 18:06 /dev/ttyUSB0
crw-rw---T 1 root dialout 188, 1 May 14 16:56 /dev/ttyUSB1
crw-rw---T 1 root dialout 188, 2 May 14 16:56 /dev/ttyUSB2

 

Test gammu sudah bekerja atau belum?

Masukkan command berikut :

pi@raspberrypi-gammu:~ $ sudo gammu --identify
Device : /dev/ttyUSB1
Manufacturer : ZTE CORPORATION
Model : unknown (MF190)
Firmware : BD_MF190V1.0.0B05
IMEI : 861264020613204
SIM IMSI : 510102982137225
pi@raspberrypi-gammu:~ $ sudo gammu --networkinfo
Network state : home network
Network : 510 10 (Telkomsel, Indonesia), LAC DC5, CID CB75
Packet network state : home network
Packet network : 510 10 (Telkomsel, Indonesia), LAC DC5, CID CB75
GPRS : attached
pi@raspberrypi-gammu:~ $ gammu getallsms
0 SMS parts in 0 SMS sequences

Kalau perintah-perintah diatas sudah menunjukkan reply yang benar seperti diatas, bisa ditest untuk kirim sms :

pi@raspberrypi-gammu:~ $ echo "Kirim SMS dari gammu nih" | gammu sendsms TEXT 08xxxxxxxx9
If you want break, press Ctrl+C...
Sending SMS 1/1....waiting for network answer..OK, message reference=7

 

MENGHUBUNGKAN GAMMU DENGAN MYSQL

Tahapan ini yaitu sinkronisasi gammu dengan mysql. salah satu fungsi dari mysql ini yaitu dapat menyimpan pesan masuk dan pesan terkirim bahkan kalau dioprek lebih lanjut ketika ada sms masuk mesin automatis mengirim sms. tapi langkah itu tidak dibahas disini. disini saya hanya membahas sinkronisasi gammu dengan mysql.

Ambil file mysql.sql pada directory berikut:

$ mv /usr/share/doc/gammu/examples/sql/mysql.sql.gz /home/pi/

Extract filenya :

$ gunzip mysql.sql.gz
$ mysql -u root -p

Kemudian masukkan password pada saat install MYSQL, kemudian akan tampil:

Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 41458
Server version: 5.5.32-0ubuntu0.12.04.1 (Ubuntu)
Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>

Buat database baru dengan cara berikut:

$ mysql> CREATE DATABASE gammu_sms;

Kemudian pastikan database telah terbuat. cek dengan cara berikut:

$ mysql> show databases;

Akan tampil:

+--------------------+
| Database           |
+--------------------+
| information_schema |
| gammu_sms          |
| mysql              |
| performance_schema |
| test               |
| zabbix             |
+--------------------+
14 rows in set (0.00 sec)
mysql>

Selanjutnya dump mysql.sql kedalam database kamu. gunakan database kamu dengan ketik perintah berikut:

$ mysql> use gammu_sms;

Import file SQL dengan perintah

$ mysql> source /home/pi/mysql.sql

Cek kembali apakah tabel telah ada:

$ mysql> show tables;

Kemudian muncul daftar table:

+---------------------+
| Tables_in_gammu_sms |
+---------------------+
| daemons             |
| gammu               |
| inbox               |
| outbox              |
| outbox_multipart    |
| pbk                 |
| pbk_groups          |
| phones              |
| sentitems           |
+---------------------+
9 rows in set (0.00 sec)

Keluar dari mysql:

$ mysql> exit

Supaya GAMMU bisa berkomunikasi dengan MYSQL kamu harus mensetting gammu-smsdrc:

$ nano /etc/gammu-smsdrc

Edit konfigurasinya seperti ini:

# Configuration file for Gammu SMS Daemon
 
# Gammu library configuration, see gammurc(5)
[gammu]
# Please configure this!
port = /dev/ttyUSB2
connection = at115200
# Debugging
#logformat = textall
 
# SMSD configuration, see gammu-smsdrc(5)
[smsd]
service = SQL
logfile = /home/pi/gammulog
# Increase for debugging information
debuglevel = 0
PIN=12345
phoneid = modem_1
 
user = root
password = passwordmysql
pc = localhost
database = gammu_sms
driver = native_mysql
runonreceive = /home/pi/www/sms/scripts/daemon.sh
 
# Paths where messages are stored
#inboxpath = /var/spool/gammu/inbox/
#outboxpath = /var/spool/gammu/outbox/
#sentsmspath = /var/spool/gammu/sent/
#errorsmspath = /var/spool/gammu/error/

Test dengan perintah:

echo "Uji mengirim SMS dari gammu-smsd" | sudo -u gammu gammu-smsd-inject TEXT 08xxxxxxxx9
gammu-smsd-inject[2658]: Connected to Database: xxxxxx on xxx.xxx.xxx.xxx
gammu-smsd-inject[2658]: Connected to Database native_mysql: xxxxxx on xxx.xxx.xxx.xxx
gammu-smsd-inject[2658]: Written message with ID 6
Written message with ID 6

Jika berhasil jalankan service gammu.

/etc/init.d/gammu-smsd start

Instalasi CMS untuk management SMS dengan CMS Kalkun

Kalkun SMS merupakan CMS untuk memanagement masuk keluarnya SMS. Program ini Opensource jadi kita bisa download secara gratiss. Download kalkun sms dengan mengetikkan perintah.

cd /var/www/html
wget http://sourceforge.net/projects/kalkun/files/kalkun/0.7.1/kalkun_0.7.1.tar.gz/download
unzip kalkun_0.7.1.zip

setelah di-unzip edit database untuk kalkun sms

$ sudo nano /var/www/html/kalkun/application/database.php

edit pada bagian seperti dibawah ini :

// MySQL
$db['default']['username'] = "root";
$db['default']['password'] = "password";
$db['default']['database'] = "gammu_sms";
$db['default']['dbdriver'] = "mysql";

setelah itu langsung buka url dengan browser http://localhost/kalkun/index.php/install

Instalasi selesai. Kamu harus menghapus folder install di directory root Webserver. ketikkan perintah:

$ rmdir /home/pi/www/install

Login dengan User : kalkun dan Password: kalkun

Sampai disini Gammu dengan Kalkun SMS sudah selesai dan raspberry sms server siap digunakan. Selamat mencoba ….

 

 

 

× Ada yang bisa dibantu?