Cara Install dan Menggunakan Gammu di Windows

Pada tutorial kali ini kita akan membahas bagaimana cara install Gammu di Windows termasuk cara menggunakannya.

Cara ini dapat diterapkan baik pada Windows XP, maupun Windows 7, 8, dan 10. Perlu diperhatikan bahwa tidak semua versi binary dari gammu dapat berjalan di windows lama, misal gammu versi 1.37.0 tidak dapat berjalan di Windows XP.

I. Download GAMMU

Kali ini saya akan menggunakan gammu versi terbaru yaitu versi 1.38.1 yang direlease tanggal 5 Januari 2017. Untuk mendownloadnya, silakan kunjungi halaman resmi gammu https://wammu.eu/download/gammu/

Silakan pilih sesuai dengan arsitektur windows yang digunakan, 32 atau 64 bit. Pada contoh ini saya menggunakan versi 64 bit.

Perlu diperhatikan bahwa sejak versi 1.33.0, tidak ada versi binary gammu yang berbentuk file zip, adanya bentuk installer (.exe), sehingga, mau tidak mau kita harus menginstallnya

II. Cara Install GAMMU di Windows

Untuk menginstall Gammu, dobel klik file installer, kemudian ikuti wizard yang ada.

Langkah 1 Pilih Add Gammu to the system PATH for All users.

Pilih opsi “Add Gammu to the system PATH for All users”.

Opsi ini akan menambahkan path direktori instalasi gammu ke dalam Windows Environment Variable, sehingga memungkinkan kita dapat menjalankan perintah gammu melalui command prompt termasuk menjalankan / menginstall service sms daemon.

Cara Install Gammu di Windows

Langkah 2

Pilih direktori dimana Gammu akan diinstall atau biarkan apa adanya, misal pada contoh ini, gammu akan diinstall di  C:\Program Files\Gammu 1.38.1

Langkah 3

Pilih nama direktori untuk start menu, atau biarkan apa adanya, pada contoh ini  Gammu 1.38.1

Langkah 4

Pada pilihan components yang ingin diinstall, pilih full. Dengan opsi ini, Gammu akan mengcopy semua file, termasuk contoh file konfigurasi dan contoh file sql, sehingga akan memudahkan kita melakukan konfigurasi.

Tutorial Install Gammu di Windows

Klik Install dan tunggu proses instalasi selesai.

III. Cara 1: Mengirim SMS Dengan GAMMU Melalui Command Prompt

Terdapat dua cara untuk mengirim sms dengan Gammu, yaitu melalui command prompt dan memasukkan data pada database. Mari kita bahas cara yang pertama.

1 Buat File Konfigurasi

Untuk dapat menggunakan Gammu, terlebih dahulu buat file konfigurasi dengan nama gammurc (baca gammu rc) dan tempatkan pada direktori bin  yang ada pada folder instalasi, pada contoh kali ini C:\Program Files\Gammu 1.38.1\bin

Atau, sobat dapat mengcopy contoh file konfigurasi dari folder instalasi di C:\Program Files\Gammu 1.38.1\share\doc\gammu\examples\config

Selanjutnya, isi dengan konfigurasi sebagai berikut:

[gammu]
device = com6:
connection = at460800

Penjelasan:

  • com6 adalah nomor port dari modem, untuk mengetahuinya, klik kanan pada My Computer atau This PC, kemudian klik properties, selanjutnya pilih device manager dan pilih bagian modem.

    Pilih Port Modem

  • Selanjutnya, untuk connection, kita gunakan AT diikuti kecepatan dari port tersebut (seperti pada contoh gambar diatas). Kecepatan port sifatnya opsional, kita dapat mengabaikannya, misal: connection = at

Untuk opsi lainnya, dapat dilihat pada file contoh atau mengunjungi halaman:  https://wammu.eu/docs/manual/config/index.html#gammurc

2 Jalankan Gammu

Sebelum melangkah lebih jauh, pertama-tama kita tes apakah Gammu dapat membaca modem kita.

Jalankan command prompt, arahkan cursor ke direktori bin, kemudian ketikkan perintah gammu identify. Perintah ini untuk memastikan bahwa Gammu dapat membaca modem kita.

Mengidentifikasi Modem

Pada contoh diatas, terlihat bahwa saya menggunakan model M 150-2 (Huawei E3372). Untuk list modem yang sudah didukung, dapat dilihat di:  https://wammu.eu/phones/

Perlu diperhatikan bahwa jika modem digunakan (misal: koneksi internet sedang aktif), maka kita akan mendapatkan pesan error:

C:\Program Files\Gammu 1.38.1\bin>gammu identify
Error opening device. Unknown, busy or no permissions.

Seanjutnya, mari kita tes dengan mengirim sms. Jalankan perintah

Jalankan perintah gammu --sendsms text [nomor-hp], misal gammu -sendsms text 08651360000, kemudian tulis pesan yang ingin dikirim. Setelah selesai, tekan enter, kemudian CTRL+Z (akan mencetak ^Z) kemudian tekan enter lagi. Hasil yang kita peroleh:

Hasil yang kita peroleh:

Kirim SMS Dengan GAMMU Via Command Prompt

Proses ini bisa saja gagal, misal kita memperoleh pesan error:

Sending SMS 1/1....waiting for network answer..error 38, message reference=-1
Unknown error.

Penyebab error bisa bermacam macam, bisa pulsa habis, kartu belum aktif, modem tidak terkoneksi  dengan baik, dll.

IV. Cara 2: Mengirim SMS Dengan Gammu Melalui Insert Data Pada Database

Cara kedua untuk mengirim pesan dengan Gammu adalah memasukkan data ke dalam tabel pada database tertentu. Ketika data dimasukkan, otomatis Gammu akan mengirim pesan sesuai dengan data yang ada.

Cara ini merupakan cara paling fleksibel dan banyak diterapkan oleh berbagai aplikasi pengirim sms massal, karena lebih mudah memasukkan data pada database daripada menjalankan command prompt.

Untuk keperluan tersebut, kita perlu  menjalankan smsd (baca sms daemon). Daemon ini akan mendeteksi aktivitas modem dan server database, sehingga aktivitas terkait sms dapat dilakukan/disimpan pada database.

Pada contoh ini, databas yang kita gunakan adalah MySQL.

1 Cek Driver Database Yang Tersedia

Sebelum menggunakan database, kita perlu mengecek driver database yang tersedia pada paket gammu yang kita install. untuk mengetahuinya, jalankan perintah: gammu-smsd -v, perhatikan gambar berikut:

Driver Database Yang Disertakan Pada Installer Gammu

Pada contoh diatas, terlihat bahwa hanya driver ODBC yang tersedia, untuk itu kita tidak dapat menggunakan driver lain seperti native_mysql.

Sejak versi 1.33.0, driver database yang disertakan pada paket instalasi Gammu adalah ODBC, sehingga semua koneksi database harus melalui ODBC

2 Buat File Konfigurasi

Selanjutnya, buat file konfigurasi smsd dengan nama smsdrc (baca smsd-rc), atau, sobat dapat mengcopy nya dari folder instalasi di C:\Program Files\Gammu 1.38.1\share\doc\gammu\examples\config

Isikan file konfigurasi berikut:

[gammu]
device = com6:
connection = at

[smsd]
service = sql
driver = odbc
sql = mysql
host = mysql_odbc
user = root
password =
database = gammu
LogFile = smsdlog.log

Penjelasan:

  • sql = mysql artinya bahasa sql yang digunakan adalah mysql
  • host diisi dengan nama odbc yang kita buat, bukan localhost seperti yang biasa kita gunakan. Untuk membuat koneksi ODBC, silakan baca tutorial:  Setting ODBC MySQL Untuk Gammu
  • Pada koneksi ODBC, nama database tidak berpengaruh karena database ini ditentukan saat kita membuat koneksi ODBC. Pada contoh diatas, bagian database = gammu hanya sebagai contoh, dapat dihilangkan.
  • Logfile digunakan untuk menyimpan semua aktifitas daemon, file ini akan disimpan pada direktori bin.

3 Buat Database

Selanjutnya, kita perlu untuk membuat database yang akan digunakan Gammu untuk menyimpan semua data. Untuk membuatnya, dump file sql yang ada di folder  C:\Program Files\Gammu 1.38.1\share\doc\gammu\examples\sql

Contoh File SQL Gammu

Pada contoh kali ini saya dump menggunakan phpMyAdmin bawaan XAMPP. Tutorial menginstall XAMPP dapat diikuti disini:  Cara Install XAMPP di Windows

Untuk load file sql: (1) Buat database, misal gammu (2) Klik database tersebut, kemudian klik menu import yang ada di sebelah atas (3) Pilih file .sql, jika berhasil maka akan terbentuk tabel sebagai berikut:

Tabel Database Gammu

Penjelasan:

  • gammu. Tabel ini digunakan untuk menyimpan versi Gammu.
  • inbox. Tabel ini berisi SMS yang masuk.
  • outbox. Tabel ini akan menyimpan pesan yang ingin dikirim. Pengisian data pada tabel ini akan memicu gammu mengirim sms sesuai dengan data yang diisikan.
  • outboxmultipart. Secara default kita hanya dapat menyimpan pesan sebanyak 160 karakter. Untuk karakter lebih dari 160, pesan akan disimpan pada tabel ini.
  • phones. Tabel ini akan digunakan gammu untuk menyimpan  data phone / modem seperti nomor IMEI, NetCode, dll
  • sentitems. Tabel ini akan menyimpan semua pesan dari tabel outbox yang telah dikirim, baik berhasil maupun gagal.
Perlu diperhatikan bahwa pada file sql, terdapat beberapa statemen yang tidak kompatibel dengan MySQL versi 5.7.x, sehingga, jika menemui pesan error, coba turunkan versi MySQL yang digunakan

4 Jalankan Service SMS Daemon

Selanjutnya, jalankan service sms daemon. Jalankan perintah:

gammu-smsd -c smsdrc

Contoh sebagai berikut:

Menjalankan Service Smsd Pada Gammu

Penjelasan:

  • -c merujuk pada file konfigurasi yang akan digunakan, dalam hal ini file smsdrc, untuk opsi lainnya, dapat dilihat dengan menjalankan perintah  gammu-smsd
  • Jika berhasil, maka cursor akan berhenti, tidak kembali ke direktori awal ( C:\Program Files\Gammu 1.38.1\bin )
Penting diperhatikan bahwa untuk dapat menjalankan service, kita perlu hak akses administrator, jalankan command prompt dengan klik kanan » Run as administrator

5 Kirim SMS Via Database

Selanjutnya, kita tes kirim SMS dengan memasukkan data ke tabel outbox.

Tabel tersebut terdiri dari banyak sekali field, namun demikian, kita hanya perlu mengisi 3 field saja, yaitu DestinationNumber berisi nomor tujuan,  TextDecoded  berisi pesan yang dikirim, dan CreatorID berisi ID pembuat pesan (diisi bebas)

Misal, kali ini kita masukkan data menggunakan phpMyAdmin. Buka phpMyAdmin, klik database gammu, kemudian pilih Tab SQL dan jalankan perintah berikut:

INSERT INTO outbox (DestinationNumber, TextDecoded, CreatorID) VALUES ('085866927217', 'Tes kirim SMS dari database', 'agusph');

Gambar:

Kirim SMS dengan Gammu Melalui Database

Tunggu beberapa saat hingga data terkirim. setelah terkirim, maka data akan berpindah ke tabel sentitems.

6 Install Service SMSD

Agar service smsd berjalan secara otomatis ketika widows dijalankan, maka kita perlu menginstall nya ke dalam service windows. Untuk menginstallnya, jalankan perintah:

gammu-smsd -c smsdrc -i

Jika berhasil, maka kita akan memperoleh pesan:

C:\Program Files\Gammu-1.38.1\bin>gammu-smsd -c smsdrc -i
Service GammuSMSD started sucessfully

Service yang telah diinstall dapat di cek pada windows services. Secara default nama service tersebut adalah Gammu SMSD Service (GammuSMSD)

Install Service Gammu di Windows

Secara default, service tersebut belum berjalan, untuk itu, kita perlu menjalankannya. Jalankan perintah

gammu-smsd -c smsdrc -s

 

Penting diperhatikan bahwa meskipun kita memperoleh pesan sukses, namun pada kenyataannya, bisa jadi service tersebut tidak berjalan, untuk itu, agar lebih yakin, kita dapat menjalankannya secara manual:

Start Service Gammu

 

Untuk menghapus service, kita gunakan perintah:

gammu-smsd -c smsdrc -u

V. Penutup

Dengan gammu, kita dapat mengirim sms melalui perangkat komputer. Dengan penggunaan database sebagai trigger pengiriman sms, membuat kita leluasa untuk mengatur berbagai skenario, misal: membuat auto reply sms untuk setiap sms yang masuk, membuat sms terjadwal, membuat sms massal, dll dengan mudah.

Demikian tutorial mengenai cara install dan menggunakan gammu di Windows, semoga bermanfaat.

Subscibe Now

Suka dengan artikel di Jagowebdev.com? jangan sampai ketinggalan, segera join ke milis kami untuk update informasi terbaru dari Jagowebdev.com

Komitmen Kami: Kami senantiasa menghargai privasi Anda dan tidak akan membagikan identitas Anda ke pihak manapun.

52 Feedback dari pembaca

  • tanya gan.. langkah 1 s.d 5 sukses di langkah ke 6, pada saat start gammu service muncuk ” ERROR 77:0x4d

    dimana letak salahnya.. trims

  • gan klo error gini apa yang harus di rubah..?
    Microsoft Windows [Version 6.1.7601]
    Copyright (c) 2009 Microsoft Corporation. All rights reserved.

    C:\Program Files\Gammu 1.38.2\bin>gammu-smsd -c smsdrc
    gammu-smsd: SQLConnect failed, Code = -1, ODBC diagnostics:
    gammu-smsd: IM002:1:0:[Microsoft][ODBC Driver Manager] Data source name not foun
    d and no default driver specified

    gammu-smsd: Initialisation failed, stopping Gammu smsd: Failed to connect to dat
    abase. (DB_CONNECT[77])
    Failed to run SMSD: Failed to connect to database.

    C:\Program Files\Gammu 1.38.2\bin>

  • terimakasih mas artikelnya sangat membantu, penyajiannya juga bagus nyaman dibaca. sukses terus

  • gan klo pake mysql gimana settingan smsdrc nya? kok ada keterangan

    gammu-smsd: The native_mysql driver was not compiled in!
    Failed to read config: Desired functionality has been disabled on compile time.

  • Halo gan saya install gammu di windows 10, proses install sudah selesai. Tapi tidak dapat mengirim sms. Mohon solusi gan.

  • Muncul error “SQLExecDirect failed, check the manual that corresponds to your MySQL server version for the right syntax to use near ‘Signal) …. ”

    Koneksi modem OK, instal services tidak ada masalah

    Note:
    Saya menggunakan MySQL ODBC 5.1
    MySQL Server 1.83 (tapi setelah terinstal keluar MySQL 5.6.20)

    Mohon bimbingannya Pak

  • Mas, semua instalasi berjalan tidak ada msalah, sewaktu coba kirim sms via database, isi di table outbox tidak pindah ke table sentitem.

    masalahnya dimana ya mas?
    mohon pencerahan 😀

  • pesan: Can’t open log file “smsdlog.log”
    pas di cek di direktori bin juga gak ada file log nya mas, gimana ya?

  • Mas, saya mau tanya.
    Ada pesan seperti ini dari cmd
    c:Gammu\bin>gammu-smsd -c smsdrc
    Log filename is “smsdlog”
    gammu-smsd[7932]: No gammu configuration found !
    Failed to read config: Gammu is not configured.

    Seperti itu mas, solusinya seperti apa ya?
    Terima kasih sebelumnya

  • Terimakasih mas atas referensinya, sangat membantu,
    untuk yang lain bisa jadikan referensi ini jadi panduan,
    yang perlu diperhatikan adalah ikuti baik baik langkah di atas..

  • mas. mau nanya. saat jalanin gammu-smsd -c smsdrc, tidak muncul tulisan Log filename is “smsdlog”. tapi sms terkirim. itu kenapa ya?. .awal install gak ada file smsdlog. truz saya buatin sendiri. mohon pencerahannya. terima kasih.

    • Saya sudah tidak menggunakan gammu lagi mas, setahu saya seharusnya bisa, soalnya dia trigger nya ketika data masuk ke database, data masuk kedatabase bisa dibuat otomatis sesuai keperluan

  • Nama file log adalah “smsdlog.log”
    gammu-smsd: SQLConnect gagal, Kode = -1, diagnostik ODBC:
    gammu-smsd: IM002: 1: 0: [Microsoft] [ODBC Driver Manager] Nama sumber data tidak foun
    d dan tidak ada driver standar yang ditentukan

    gammu-smsd: Inisialisasi gagal, menghentikan Gammu smsd: Gagal terhubung ke dat
    menghina. (DB_CONNECT [77])
    Gagal menjalankan SMSD: Gagal terhubung ke basis data.

    bisa ngasi solusi gak bang

  • Mas mau tanya…saya sdh berhasil install dan run service lewat console. Namun pd saat start service lwt service gagal…muncul error “windows could not start the gammu smsd service(gammu smsd) service on local computer. Error 77:0x4d”. Mohon pencerahannya mas. Terima kasih

  • kirim melalui db (outbox) kok tidak bisa ya? trus kalau ada sms masuk tidak ke inbox tp ter create file di c:\gammu….
    mohon pencerahan nya mas. thanks

  • Bang langkah 1 sd 5 sudah saya jalankan dan normal tapi setelah saya mencoba mengirimkan pesan dengna insert data ke database ko sms nya tidak terkirim ya?… mohon solusinya

  • Saya menemukan error ini bang tolong pencerahannya kesalahannya dimana :

    gammu-smsd: Error getting security status: Error writing to the device. (DEVICEWRITEERROR[11])
    gammu-smsd: You might want to set CheckSecurity = 0 to avoid checking security status
    gammu-smsd: Error getting security status: Error writing to the device. (DEVICEWRITEERROR[11])
    gammu-smsd: You might want to set CheckSecurity = 0 to avoid checking security status

  • Mohon pencerahannya kesalahannya di mana… saya menemukan error ini

    gammu-smsd: Can’t open device: Error opening device. Unknown, busy or no permissions. (DEVICEOPENERROR[2])
    Failed to run SMSD: Error opening device. Unknown, busy or no permissions.

  • Untuk yang mengalami ERROR 77:0x4d pada saat gammu run service windows pastikan dulu konfigurasi gammu baik2 saja melalui di commad prompt (cmd) caranya adalah : gammu-smsd -c smsdrc kalau tidak ada muncul warning apa2 brarti gammu normal. selanjutnya periksa setting ODBC. buat koneksi ODBC melalui System DSN (jangan User DSN ini penyebab ERROR 77:0x4d) lalu periksa kembali konfigurasi smsdrc samakan dengan nama koneksi ODBC yang dibuat tadi. silahkan di coba run service kembali. saya sudah mencoba di windows 10 dan sukses.

  • Thanks beraaatt suhuuu, 2 hari nyari masalah ini ga nemu”, artikel jadul semua. ternyata masalahnya di mysql odbc 😀 makasih suhu sangat bermanfaat

  • mau tanya kalau kirim sms emang delay ya , lama buat sampeknya ke nomer yang dituju . Mohon pencerahannya

  • c:\xampp\htdocs\sms\gammu>gammu-smsd -c smsdrc -i

    c:\xampp\htdocs\sms\gammu>gammu-smsd -c smsdrc -s

    c:\xampp\htdocs\sms\gammu>gammu-smsd -c smsdrc

    c:\xampp\htdocs\sms\gammu>gammu-smsd -c smsdrc

    c:\xampp\htdocs\sms\gammu>gammu-smsd -c smsdrc

    c:\xampp\htdocs\sms\gammu>

    kalo gini gimana pak?
    dijalankan kan biasanya ada window cmd baru, ini gak mau muncul new window cmd nya
    tapi dicoba sendsms via command nya bisa, cuman jalaninnya aja yg gabisa pak

  • Gammu yang jalan normal di saya:
    Versi 1.38.1
    https://wammu.eu/download/gammu/1.38.1/
    MySQL Server pakai versi 5.5.62
    https://downloads.mysql.com/archives/community/
    ODBC Connector versi 5.3
    https://dev.mysql.com/downloads/connector/odbc/5.3.html
    Config file smsdrc saya :

    #################
    [gammu]
    #smsdrc

    device = com4:
    connection = at115200

    [smsd]
    service = sql
    sql = mysql
    driver = odbc
    PIN = 1234
    logfile = smsd.log
    debuglevel = 255
    host = gammu
    user = gammu
    password = YeK8Ef345YhhFT55H
    pc = localhost
    database = gammu

    commtimeout = 20
    sendtimeout = 10
    MaxRetries = 2
    RetryTimeout = 300

    #################################
    Sesuaikan port com, setingan odbc dengan punya kalian.
    Mudah2an membantu

  • Siang pak, saya mau tanya, dan semoga masih ada yg jawab. Ada yg pernah error
    “Failed to get SMSC number from phone.”?

    Saya sudah muter untuk cari solusinya masih tetap sama seperti itu. terimakasih

Silakan tinggalkan komentar

Newsletter

Jadilah yang pertama tahu berita terbaru dari Jagowebdev.com