Oleh: ekoyw | Oktober 5, 2012

Kirim SMS Dengan Gammu dan MySQL

Tulisan ini adalah sambungan dari tulisan sebelumnya, yang berhubungan dengan rencana membuat sebuah koneksi ke BSC lewat Telnet dan kemudian mengambil alarm dan mengirimkannya lewat sebuah SMS Gateway.

Update : koneksi telnet dan SMS Gateway ini sudah diimplementasikan di myOMC

Untuk koneksi telnet, bisa dibaca di sini. Sekarang PR yang kedua adalah membuat SMS Gateway. Ada banyak aplikasi yang beredar di internet. Silahkan googling dan membandingkan satu per satu. Aku memilih memakai SMS Gateway Gammu.

Untuk SMS Gateway Gammu sendiri, ada banyak tulisan yang membahasnya mulai dari fitur, konfigurasi dan pengetesannya. Berikut beberapa tulisan tersebut untuk dibaca – baca:

Untuk setting dan konfigurasi, rasanya lebih baik dibaca-baca di berbagai tulisan yang sudah ada. Jadi aku gak usah capek – capek menulis ulang apalagi meng-copy paste hehehe…
Lebih baik aku sampaikan beberapa problem yang saya alami saat setting dan konfigurasi Gammu ini. Ingat lho yaa… berdasarkan pengalaman, bisa jadi apa yang anda alami belum saya alami :)

Aku menggunakan HP lamaku, Sony Ericsson C702 sebagai modem lengkap dengan sebuah kabel data yang usang dan telah terkelupas kulitnya. Rencana sebelumnya mau pake HP yang lebih tua lagi, misalnya Siemens M65 atau Siemens CX75. Tapi apa daya, kedua HP tersebut telah benar-benar ‘wafat’ alias LCD-nya sudah benar-benar mati :)

Oke.. langkah pertama install Gammu. Juga create database di MySQL memakai MySQL Front. Script untuk create Database ini ada di folder “C:\Program Files\Gammu 1.32.0\share\doc\gammu\examples\sql\mysql.sql”.

Tapi waktu script MySQl ini dijalankan, ada keluar error beberapa field table yang tidak bisa not null. Tinggal buka script, cari mana yang keluar pesan error, edit dan jalankan lagi. Selesai….

Aku menggunakan Gammu 1.32.0 yang sampai tulisan ini dibuat adalah yang terbaru. Dari Phones & Modems di PC data port sudah diketahui yakni di COM 5. Kemudian sesuai dengan data HP yang support di sini didapat setting gammu sebagai berikut :

[gammu]
port = COM5:
connection = at

Tetapi setelah dijalankan, ternyata timbul error speed connection. Lho apanya yang salah? Kan sudah sesuai petunjutk di situsnya wammu. Iseng aku tambahi connectionnya sehingga konfigurasi gammurc di atas menjadi :

[gammu]
port = COM5:
connection = at19200

Ditest lagi dengan command “gammu identify”. Lho HPku bisa dikenali. Coba dinaikkan lagi speednya menjadi berikut :

[gammu]
port = COM5:
connection = at115200

Ditest lagi… dan Soner C702 ku masih bisa dikenali. Akhirnya setting gammurc ini yang aku pakai.

Kemudian setting file smsdrc aku coba test dan start service Gammu. Tetapi bolak – balik keluar pesan error seperti berikut “Error 1053: The service did not respond to the start or control request in a timely fashion”.

Solusi yang aku dapat adalah ada tulisan di situs Gammu bahwa file smsdrc itu terdiri dari dua bagian, yakni gammu dan smsd. Terus ada beberapa yang dirubah disettingnya seperti bisa dibaca di sini. Yakni di bagian service dan driver di smsd.

Kemudian aku coba install dan restart lagi dengan perintah :  gammu-smsd -c smsdrc -i dan gammu -smsd -c smsdrc -s

Done… Service gammu sudah bisa nampang di deretan service windows dan sudah start.

Karena nggak sabar, aku coba test kirim SMS lewat command prompt dengan perintah berikut :

gammu-smsd-inject -c smsdrc TEXT +62816xxxxxx -text “Test”

Aku jalankan command di atas lewat command prompt di C:\Program Files\Gammu 1.32.0\bin\ karena di sinilah file smsdrc aku letakkan.

Senyum lebar tampil dimulutku ketika keluar pesan “Written Message with ID xx”. Tapi lho… mana? Mana SMS yang aku kirim tadi kok gak nongol di nomor +62816xxxxxx yang HP-nya persis terletak di depan mata.

Aku cek database smsd di MySQL yang telah ter-create. Buka table Outbox, dan smsku dengan manis nongol di sana. Tetapi di table sentitems masih kosong melompong.  Aku kirim lagi beberapa sms ke nomor lain. Hasilnya sama. Aku coba benerkan konfigurasi smsd dan restart service. Nah.. kok bisa terkirim. Senyum lebar kembali muncul.

Aku coba restart PC… dan ulangi lagi kirim. Nah lho… kok balik lagi. Hanya pesan “Written Message with ID xx” yang muncul dan SMS kembali tidak terkirim. Nah, terus tadi yang membuat SMS bisa sempat terkirim apa yaa?

Berbagai kemungkinan “tersangka” muncul di benakku. Apa struktur databasenya salah? Cek lagi berulang – ulang dan yakin database dan tabel-tabelnya sudah benar. Apa ada bug di Gammu versi 1.32.0? Coba download dan install yang versi 1.30.0 dan ternyata memberikan hasil yang sama.

Service Gammu tidak berjalan? Tapi kan sudah run? Tapi sepertinya ini nih masalahnya.. dari hasil googling ada solusi yakni, Buka Service Gammu di Control Panel – Administrative Tools – Service.
Klik Gammu SMSD Service, klik Tab Recovery. Nah pada First Failuer, Second Failuer, Subsequent Failures aku pilih “Restart The Service”. Klik Apply dan OK dan aku restart service ini.

Aku buka table outbox, klik F5 untuk refresh dan secara berangsur, antrian SMS yang akan dikirim itu mulai “meninggalkan” table outbox dan masuk ke table sentitems yang berarti SMS telah dikirim. Dan SMS itu pun sampai juga datang beberapakali ke HPku.

Sekarang tinggal men-setting di aplikasi. Dalam beberapa tulisan, ada dua metode kirim SMS melalui Gammu, yakni lewat command prompt, yang juga ada dua metode, yakni mengirim langsung tanpa melalui database atau melalui database.

Jika tanpa database tinggal ketik dari Command Prompt misalnya : gammu –sendsms TEXT +62816xxxxxxx -text “Test”. Alhamdulillah berhasil…

Jika lewat database dari Command Prompt dengan perintah  “gammu-smsd-inject” seperti perintah di atas. Atau dengan perintah Insert SQL ke tabel Outbox misalnya seperti berikut “

INSERT INTO outbox(DestinationNumber, TextDecoded, CreatorID) VALUES ('+62811000001', 'Hello World', 'Gammu')"

Mana yang aku gunakan? Aku pilih menggunakan Command prompt dengan alasan gak perlu lagi create connection ke MySQL. Maka diaplikasiku, aku tambahkan procedure yang aku dapat di code project untuk execute command prompt sebagai berikut :

/// <summary>
/// Executes a shell command synchronously.
/// </summary>
/// <param name=”command”>string command</param>
/// <returns>string, as output of the command.</returns>
public void ExecuteCommandSync(object command)
{
try
{
// create the ProcessStartInfo using “cmd” as the program to be run,
// and “/c ” as the parameters.
// Incidentally, /c tells cmd that we want it to execute the command that follows,
// and then exit.
System.Diagnostics.ProcessStartInfo procStartInfo =
new System.Diagnostics.ProcessStartInfo(“cmd”, “/c ” + command);
procStartInfo.WorkingDirectory = @”C:\\Program Files\\Gammu 1.32.0\\bin\\”;
// The following commands are needed to redirect the standard output.
// This means that it will be redirected to the Process.StandardOutput StreamReader.
procStartInfo.RedirectStandardOutput = true;
procStartInfo.UseShellExecute = false;
// Do not create the black window.
procStartInfo.CreateNoWindow = true;
// Now we create a process, assign its ProcessStartInfo and start it
System.Diagnostics.Process proc = new System.Diagnostics.Process();
//procStartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Normal;
proc.StartInfo = procStartInfo;
proc.Start();
// Get the output into a string
string result = proc.StandardOutput.ReadToEnd();
// Display the command output.
Console.WriteLine(result);
}
catch (Exception objException)
{
// Log the exception
}
}

Dan semua command untuk gammu, mulai inisialisasi, install service, start service, stop service dan uninstall service  aku lewatkan memakai procedure di atas.

Contohnya untuk mengirim SMS bahwa semua BTS di BSC tersebut tidak faulty dengan penggalan script berikut :

string sms = ‘”‘ + “myOMC ” + this.BSC + ” : No Faulty” + ‘”‘;
this.ExecuteCommandSync(“Gammu Identify”);
this.ExecuteCommandSync(“gammu-smsd -c smsdrc -i”);
this.ExecuteCommandSync(“gammu-smsd -c smsdrc -s”);
string sqlarea = “SELECT bscarea.bscarea_id, bscarea.Nama, bsc.BSC, area.Area FROM bscarea INNER JOIN bsc ON bsc.bsc_id = bscarea.bsc_id ” +
“INNER JOIN area ON bscarea.area_id = area.area_id WHERE bsc.BSC LIKE ‘” + this.BSC + “‘”;
DataTable GetArea = this.myQuery.GetData(sqlarea);
string userarea, myarea;
for (int e = 0; e <= GetArea.Rows.Count-1; e++)
{
myarea = GetArea.Rows[e]["Area"].ToString();
userarea = “SELECT smsuser.Nama_User, smsuser.No_HP, area.Area FROM smsuser INNER JOIN area ON area.area_id = smsuser.area_id ” +
“WHERE area.Area LIKE ‘” + myarea + “‘”;
DataTable Hasil = this.myQuery.GetData(userarea);
for (int b = 0; b <= Hasil.Rows.Count – 1; b++)
{
string user = Hasil.Rows[b]["No_HP"].ToString();
this.ExecuteCommandSync(“gammu-smsd-inject -c smsdrc TEXT ” + user + ” -text ” + sms);
this.toolStripStatusLabel3.Text = “Mengirim SMS ke ” + user;
}
}

Sebelumnya telah aku buat tabel BSC, Area dan User yang akan dikirimi SMS tersebut.  Sehingga setiap SMS yang aku kirim, aku install dan start Service Gammu baru dikirim ke user. Begitu terus menerus. Kemudian saat aplikasi ditutup, service aku stop dan un-install.

Done… SMS sudah bisa dikirim meski masih menyisakan pertanyaan kenapa Service Gammu ini ga stabil, statusnya start tetapi ternyata tidak bisa kirim SMS.

Sudah cukuplah… toh ini bukan TA atau Skripsi seperti jaman kuliah yang harus sempurna. Yang penting jalan dulu sambil diperbaiki sana – sini…

Ternyata masih banyak nih PR-nya…

Sholat Jum’at dulu ah…..

Update…

Saat menggunakan HP Sony Ericsson C702 sebagai modem minggu lalu, selang beberapa hari banyak timbul sms yang dikirim dengan status “SendingError”. Setelah cek sana – sini, kecurigaan pada koneksi kabel data yang digunakan sudah gak bagus lagi. Akhirnya aku ganti dengan modem ZTE MF636. Alhamdulillah sejak itu SMS dengan status “SendingError” sudah berkurang drastis, nyaris nggak ada.

Masalah kemudian timbul karena SMS yang diterima modem tidak masuk ke database MySQL. SMS hanya tersimpan di inbox software bawaan modem dan tidak masuk ke tabel inbox Gammu. Setelah browsing sana – sini, ditemukan hal ini disebabkan software bawaan modem sedang aktif sehingga gammu kalah dengan software bawaan ini.

Tetapi, ketika software bawaan ini dimatikan, Gammu malah tidak bisa kirim sms kembali meski di cek dengan gammu identify semua OK dan servicenya jalan. Dan saat dilihat ke modem, lampu modem berwarna kuning, tanda tidak aktif, dari biasanya biru jika mendapat sinyal 3G.  Jadi jika software bawaan ditutup/dimatikan, modem terdeteksi tetapi fungsi penerima sinyal tidak bekerja.

Setelah googling lagi, ketemu caranya berikut :

  1. Masukkan modem ke portnya dan catat COM berapa dia aktif. Biarkan software bawaan modem bekerja. Software connection manager saat bekerja maka otomatis juga akan me-load driver modem.
  2. Masuk ke Hyper Terminal dengan konfigurasi sebagai berikut : COM sesuai dengan COM dari modem.  Bits per second = 115200, Data bits = 8, Parity = None, Stop bits = 1, Flow Control = Non.
  3. Ketikkan perintah berikut :
  • AT+ZOPRT = 5 -> Ini untuk membuat modem tetap online.
  • AT+ZCDRUN=8 -> Ini untuk membuat auto run/auto play software bawaan tidak muncul
  • AT+CGDCONT=4,”IP”,”APN”,,0,0, -> dengan APN diisi sesuai APN SIM Card kita. Jadi misal aku pake kartu Indosat Broadband maka perintah ini menjadi AT+CGDCONT=4,”IP”,”indosat3g”,,0,0

Keluarkan modem, masuk ke regedit dan edit registry ini :

‘HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run’

Jika ada value berisi “autodetect”, tinggal klik kanan dan delete.

Terakhir, restart Windows…. Dan akhirnya, ini membuat modem otomatis bekerja tanpa perlu mengaktifkan atau mengklik software bawaannya. Dan juga membuat SMS yang diterima modem otomatis masuk ke database Gammu.

Update :

Aku telah memakai 3 modem untuk Gammu ini. Perbandingan pemakaian ketiganya bisa dibaca di sini.

Semoga bermanfaat….

About these ads

Responses

  1. aku sudah masuk pesan saya di sentitem…tp tidak msuk di hp saya..???
    yg bermasalah apa gan???

    • Status pengirimannya apa Bro? Coba cek di Field Status Tabel Sentitems. SendingError? Kalo Sending Error, cek apakah service smsd sudah jalan, bisa di stop-uninstall-start-install service. Jika pakai HP, cek fisik kabel. Pengalaman pakai HP, sering sending error karena kabel data yang jelek. Bisa coba unplug-plug modem.
      Intinya pastikan service jalan, port ke HP/modem OK dan utamanya pulsa masih ada.

      • D:\gammu 1.32.0\bin>gammu-smsd-inject -c smsdrc TEXT +6281804265747 -text “test”

        gammu-smsd-inject[6312]: mysql service is deprecated. Please use SQL service wit
        h correct driver.
        gammu-smsd-inject[6312]: Connected to Database: sms on localhost
        gammu-smsd-inject[6312]: Connected to Database native_mysql: sms on localhost
        gammu-smsd-inject[6312]: Written message with ID 6
        Written message with ID 6

        ini gan kesalahan saya…cuma nampang di outbox tidak terkirim ke nmer dan tidak msuk ke database senditem

      • Gammu versi berapa bro? Bisa share config file smsdrc-nya?
        Juga cek apakah versi database dan smsd-nya sama di log-nya.
        Kalo baca lognya, sepertinya versi MySQL-nya perlu diupgrade.

      • # This is a sample Gammu SMSD configuration file. It’s required for gammu-smsd,
        # see gammu-smsdrc(5) for documentation.

        # Gammu configuration, this section is like section “gammu” in “gammurc” file,
        # see gammurc(5) for documentation.
        [gammu]
        device = com20:
        #model = 6110
        connection = at
        #synchronizetime = yes
        #logfile = gammulog # this is not used at all in SMSD mode
        #logformat = textall
        #use_locking = yes
        #gammuloc = gammu.us
        #startinfo = yes

        # When uncomment this section and insert numbers here, smsd will process
        # incoming sms only from numbers written here (incoming sms from all other
        # numbers will be deleted)
        #[include_numbers]
        #number1 = 1234

        # When uncomment this section and insert numbers here, smsd will process
        # incoming sms from all numbers not written here (incoming sms from numbers
        # written here will be deleted). This is “black” list.
        # Note: after using “include_numbers” section this one will be ignored
        #[exclude_numbers]
        #number1 = 1234

        # General SMSD settings, see gammu-smsdrc(5) for detailed description.
        [smsd]
        # SMSD service to use, one of FILES, MYSQL, PGSQL, DBI
        service = mysql
        # PIN for SIM card
        PIN = 1234
        # File (or stderr, syslog, eventlog) where information will be logged
        logfile = smsdlog
        # Amount of information being logged, each bit mean one level
        debuglevel = 0
        # Configuration for using more phones on same database
        #phoneid = MyPhone1
        # Script to be executed when new message has been received
        #runonreceive = /some/script
        # Commication frequency settings
        commtimeout = 30
        sendtimeout = 30
        #receivefrequency = 0

        # Phone communication settings
        #checksecurity = 1
        #resetfrequency = 0

        # Delivery report configuration
        #deliveryreport = no
        #deliveryreportdelay = 10

        # Ignoring broken SMSC
        #skipsmscnumber = +48602123456

        # Database backends congfiguration
        user = root
        password =
        pc = localhost
        # pc can also contain port or socket path after colon (eg. localhost:/path/to/socket)
        database = sms

        # DBI configuration
        driver = sqlite
        # driverspath = /usr/lib/dbd/
        # Database directory for sqlite
        # dbdir = /var/lib/smsd

        # Files backend configuration
        #inboxpath = /var/spool/sms/inbox/
        #outboxpath = /var/spool/sms/outbox/
        #sentsmspath = /var/spool/sms/sent/
        #errorsmspath = /var/spool/sms/error/
        #inboxformat = unicode
        #transmitformat = auto
        #outboxformat = detail

        ni gan smsdrc saya…

      • Ini pake MySQL kan?
        Coba ganti bagian ini :
        service = mysql
        driver = sqlite
        Menjadi :
        service = SQL
        driver = native_mysql

        Ini smsdrc milikku :
        [gammu]
        device = com32:
        connection = at115200
        logfile = C:\Program Files\Gammu 1.32.0\bin\gammu.txt
        logformat = textalldate
        [smsd]
        maxretries = 30
        debuglevel = 255
        CheckSecurity = 0
        ResetFrequency = 3600
        logfile = C:\Program Files\Gammu 1.32.0\bin\smsd.txt
        service = SQL
        driver = native_mysql
        user = xxxx
        password = xxxx
        pc = localhost
        database = smsd

  2. Saya mengalami error 28 saat mencoba mengirim melalui command prompt, apa yang salah ya?

    • Notifikasi lengkap dari errornya apa mbak? apa seperti ini “Sending SMS 1/1….waiting for network answer..error 28, message reference=-1
      Unknown error.”?
      Coba pastikan sinyal seluler dan SIM Card OK. Atau coba ganti dengan SIM Card lain.

  3. Bos ekoyw,
    Kalo di tabel sentitems status=’Sending error’ tapi faktanya sms sampai ke tujuan…ada apa bos?
    Aplikasi sy jd looping terus nih tp dah sy batasi (kl gak bisa berabe pulsanya). Soale kl sending error aplikasi akan mengirim ulang…padahal dah terkirim jadinya dobel2 terus.
    Pnya pengalaman/solusi…? Tks.

    • Wah aneh juga nih. Jadi sms yang sama, jika status sending error maka pengirimannya akan diulang? Ingin tanya, berarti jumlah SMS yang sama, yang berstatus sending error (alias hasil looping) sama dengan jumlah SMS yang diterima? Misal, jumlah Sending Error 20 kali dan SMS yang diterima juga 20 SMS?
      Coba di-setiap looping, diberi tambahan ID, misalnya diberi angka untuk dicocokkan apakah benar statusnya pengiriman tersebut Sending Error.

  4. Maap Bos ekoyw, telat jwb…jarang OL (kl cari solusi ajah, kebetulan nyasar di mari…sangat bermanfaat)

    Iya looping 3 kali diterima 3x (cuma 3 ajah kok biar g jebol, itupun emaneman).

    Nih fakta lagi Bos ekoyw (tp menggembirakan/melegakan..)
    “SENDING ERROR” skrng sdh tidak lagi, padahal sy tidak melakukan perubahan yg berarti hanya menambahkan cek utk kondisi sending error di aplikasi sy. Jika centang maka app akan kirim ulang bila statusnya sending error, defaultnya tidak kirim ulang (tdk dicentang).
    Kesimpulan untuk “SENDING ERROR” :
    Kemungkinan saat itu jaringan operator seluler pd applikasi (Mentari) sedang sibuk/padat shg mengirim kode ke modem atau modem menangkap kembalian dgn kode sending error.
    Jadi status sending error bisa disebabkan oleh kondisi jaringan, BUKAN pd modem,koneksi,database,OS/Service,aplikasi dsb…(tp tetap mungkin juga ya).
    Semoga membantu

    • Yup bro…
      Sending Error, bisa disebabkan keduanya. Baik dari sisi modem maupun jaringan seluler. Kesimpulanku sih, Sending Error terjadi manakala SMS tidak terkirim/tidak mencapai SMSC (SMS Center) operator seluler. Jika sudah sampai SMSC, maka pengiriman selanjutnya ke no yang dituju adalah urusan SMSC.
      Sehingga problemnya bisa dimana saja. Bisa di database/service jika ga bisa mem-push pesan sms ke modem. Bisa di modem jika sms yang diterima dari service tidak bisa dikirimkan selayaknya lewat hp. Bisa di jaringan seluler jika tiba – tiba sinyal hilang, full traffic dll yang mengakibatkan sms yang dikirim modem tidak sampai SMSC.
      Untuk Mentari, sepertinya beberapa minggu terakhir Indosat memang sedang ada upgrade software di sisi Core seluler.
      Thanks.

  5. Tambahan bos ekoyw,
    Teknik loopingnya begini :
    - Tabel sentitems ditambah 1 field = kirim untuk mencatat pengulangan jika gagal
    - Pakai timer (VB6)
    - Sebelum cek/query di inbox, Sub timer melakukan query ke sentitems dulu apakah ada sendingerror dan kirim=0
    - Setelah itu baru query di inbox -> status = false
    - Jadi tidak dalam statmen looping (do while, while do, when ..,…)

    Begitu boss…btw skrng dah lancar kembali koq. Tks.

    • Alhamdulillah jika begitu….

  6. pak, masih dapet kendala setelah sms masuk outbox DB, tp ngg mau pindah ke sentitems, dah dicoba refresh DB, setting services Tab Recovery, First Failuer, Second Failuer, Subsequent Failures sdh diubah “Restart The Service” masih aja betah di outbox sms ny, la seharian ngituin ini maseh dak biso2 pak, tolong bntuanyo, mkasi sblmny pak :)

    • oio, saat import sql dari gammu, masih ada Error pada bagian delimeter kalo ngg salah, apakah ini penyebabnya y pak?

      • Kalo aku, saat import SQL, bagian yang bertulis “delimeter” dihapus saja. Juga termasuk “delimeter;” dihapus juga.
        Jika sudah masuk outbox tapi ga bisa pindah ke sentitems, pengalamanku selain masalah service bisa juga karena problem struktur database-nya, misal karena PLN mati saat ada pesan yang dikirim/masuk. Bisa di-repair databasenya. Atau, delete database-nya dan import lagi database SQL-nya. Jangan lupa hapus delimeter-nya jika muncul error.
        Semoga membantu.

      • setelah disetting lg, saat restart service ny,dapet error kek ini pak “Windows could not start the Gammu SMSD service (GammuSMSD) service on local computer. Error 2: The system cannot find the file specified.”. pada start awal bisa, tp pas mau direstart, service ny stop, kalo djalanin lg bsa lg, tp tetep aja sms nya ngg mau masuk ke HP, masalahnya dmn ya pak?

      • setting smsdrc sudah benar? lokasi file smsdrc juga sudah benar?
        Untuk masalah service ga bisa jalan, bisa banyak sebab. Mulai dari setting di PC sampai masalah modemnya sendiri. Tapi paling sering masalah modem.
        Setting smsdrc saya ga berubah, hanya modemnya yang berubah dan sekarang Alhamdulillah lancar jaya….

    • setting smsdrc service udah SQL, driver udah native_mysql dan sdh ddlm folder bin, bareng sama gammu.exe dll,, lalu pas gammu-smsd -c smsdrc -s muncul “Error starting GammuSMSD service. Error 1053:…fashion” mohon pencerahan pak, di log nya muncul “Unknown DB Driver” , makasih seblumnya telah balas

      • Bisa di-share file smsdrc-nya?

      • [gammu]
        device = com13:
        connection = at115200
        logfile = C:\Program Files\Gammu-1.32.0-Windows\bin\gammulog.txt
        logformat = textall
        [smsd]
        maxretries = 30
        debuglevel = 255
        CheckSecurity = 0
        ResetFrequency = 3600
        service = SQL
        PIN = 1234
        logfile = C:\Program Files\Gammu-1.32.0-Windows\bin\smsdlog.txt
        debuglevel = 0
        commtimeout = 30
        sendtimeout = 30

        # Database backends congfiguration
        user = root
        password =
        pc = localhost
        database = sms

        # DBI configuration
        driver = native_mysql

      • dah dapet jalan keluar pak, saya uninstall gammu 1.32 trus saya install gammu 1.25, sebetulnya dr error2 yg saya alami kesalahannya pada database yg lama dicoba pada gammu yg baru, saya sadar kek ngehindarin masalah sih, but makasih atas tutornya pak :)

      • Oooh… makanya gak jalan. Tetapi Alhamdulillah…

  7. gan gammu — identify ga jalan
    yang keluar panjang / banyak banget
    yang paling bawah ada tulisan Bad Option !
    kira-kira error dimana yah gan
    plis ini menyangkut TA saya gan

    • Nulisnya gammu –identify. Tidak ada spasi antara — dan identify.

  8. bang cara melihat conection atxxxxxx itu gimana ?

    • Control Panel – Phone and Modem Options – Modem, jika tidak muncul portnya, meskipun driver sudah terinstal, maka Anda masih dapat melihat portnya melalui Control Panel – System – Hardware – Device Manager – Ports (COM & LPT). Seandainya nomor port muncul baik di Control Panel – Phone and Modem Options – Modem maupun Control Panel – System – Hardware – Device Manager – Ports (COM & LPT) dan ternyata nomor portnya berbeda, maka pilih nomor port yang di Control Panel – Phone and Modem Options – Modem. sumber: blog.rosihanari.com

  9. Maaf saya mau tanya, service gammu saya sudah jalan, modem juga sudah ke detect, tp sms masih nyangkut di outbox ya? saya menggunakan gammu 1.28 dan modem wavecom

    • Pesan error-nya apa?

  10. hai,,, punya q ntah knapa muncul error kyk gni

    Sat 2013/10/19 07:57:50 gammu-smsd[1260]: Unknown DB driver

    padahal setting
    service dah sql dan driver pke native_mysql
    klo pake service mysql malah errror mysql could not compile in,,,

    • pake mySQL juga? boleh share file smsdrc dan log lengkapnya?

  11. pak eko,,,saya mau bertanya,ketika saya menjalan sms dari command tanpa saving ke database muncul error sperti ini pak : function not suported by phone, bagaimana cara mengatasinya pak ? terima kasih sebelumnya.

    • Pake modem/HP apa? Beberapa device ada yang tidak support dengan gammu. Lengkapnya bisa dibaca di situs gammu.

  12. gan minta bantuanya
    ini smsdrc saya, yang salahnya dimana?
    Driver DB error terus.

    [gammu]
    # isikan no port di bawah ini
    port = COM3:
    # isikan jenis connection di bawah ini
    connection = at

    [smsd]
    service = SQL
    driver = native_mysql
    # service = mysql
    logfile = smsdlog
    debuglevel = 0
    phoneid = Server1
    commtimeout = 10
    sendtimeout = 10
    PIN = 1234
    #runonreceive = D:/xampp/htdocs/smsku/daemon.bat

    #[SQL]
    # —————————–
    # Konfigurasi koneksi ke MySQL
    # —————————–

    pc = localhost
    # isikan user untuk akses ke MySQL
    user = root
    # isikan password user untuk akses ke MySQL
    password =
    # isikan nama database untuk Gammu
    database = smskudb

  13. bang numpang tanya.. klo ada pesan error 2 : the system cannot find the file specified

    • Coba cek lokasi instalasi gammu atau gammurc dan smsdrc-nya.

  14. permisi agan2 master2 gammu…saya mw bertanya…
    gammu saya pakai 1.33.0

    kendalanya, saya tidak bisa kirim sms dr gamu via sql command
    insert into (parameter) values (values of parameter)

    data bisa masuk ke kolom outbox tapi pesan tidak terkirim kirim.

    sedangkan apabila saya kirim sms via command prompt
    gammu sendsms TEXT destinationnumber -text “message”

    bisa terkirim dengan sukses. tapi bila melalui sql command gagal mengirim pesan tapi pesan masuk bisa di databasenya.

    mohon pencerahannya

    • Service Gammu-nya pastikan sudah jalan bro.

  15. mau nanya mas, saya kan udah install gammu tapi ketika saya start servicenya error. ini error di lognya
    Wed 2014/04/30 21:11:50 gammu-smsd[5980]: SQLConnect failed, Code = -1, ODBC diagnostics:
    Wed 2014/04/30 21:11:50 gammu-smsd[5980]: IM002:1:0:[Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified

    Wed 2014/04/30 21:11:50 gammu-smsd[5980]: Initialisation failed, stopping Gammu smsd: Unknown error. (UNKNOWN[27])

    mohon pencerahannya. terimakasih

    • Kok sampe ada error ODBC. Database-nya sudah jalan kan?
      Pake database apa Mbak?
      Ada contoh isi gammurc dan smsdrc-nya?

  16. permisi agan2, SMS yang saya kirim lewat terminal linux tidak bisa masuk ke no tujuan dan tidak bisa pindah ke sentitems. padahal service gammu sudah berjalan..
    Apakah ada yang tahu solusinya, saya sudah mencoba semua solusi diatas tapi blum berhasil

  17. missi pak saya mau tanya.. saya sudah coba install beberapa kali d cmd dengan mengetikan gammu-smsd -c smsdrc -i tapi muncul pesan error
    error 1073 : the specified service already exist. tu knp ya pak? klo di start servicenya gak jalan.. error 1053. tapi untuk pengiriman sms lewat cmd sudah jalan dan sukses.. ini salinan file smsdrc saya pak..
    ———————————————————————————————-
    # This is a sample Gammu SMSD configuration file. It’s required for gammu-smsd,
    # see gammu-smsdrc(5) for documentation.

    # Gammu configuration, this section is like section “gammu” in “gammurc” file,
    # see gammurc(5) for documentation.
    [gammu]
    #device = com3:
    #model = 6110
    #connection = at115200
    #synchronizetime = yes
    #logfile = gammulog # this is not used at all in SMSD mode
    #logformat = textall
    #use_locking = yes
    #gammuloc = gammu.us
    #startinfo = yes

    # When uncomment this section and insert numbers here, smsd will process
    # incoming sms only from numbers written here (incoming sms from all other
    # numbers will be deleted)
    #[include_numbers]
    #number1 = 1234

    # When uncomment this section and insert numbers here, smsd will process
    # incoming sms from all numbers not written here (incoming sms from numbers
    # written here will be deleted). This is “black” list.
    # Note: after using “include_numbers” section this one will be ignored
    #[exclude_numbers]
    #number1 = 1234

    # General SMSD settings, see gammu-smsdrc(5) for detailed description.
    [smsd]
    # SMSD service to use, one of FILES, MYSQL, PGSQL, DBI
    service = files
    # PIN for SIM card
    PIN = 1234
    # File (or stderr, syslog, eventlog) where information will be logged
    logfile = smsdlog
    # Amount of information being logged, each bit mean one level
    debuglevel = 0
    # Configuration for using more phones on same database
    #phoneid = MyPhone1
    # Script to be executed when new message has been received
    #runonreceive = /some/script
    # Commication frequency settings
    commtimeout = 30
    sendtimeout = 30
    #receivefrequency = 0

    # Phone communication settings
    #checksecurity = 1
    #resetfrequency = 0

    # Delivery report configuration
    #deliveryreport = no
    #deliveryreportdelay = 10

    # Ignoring broken SMSC
    #skipsmscnumber = +48602123456

    # Database backends congfiguration
    user = root
    password =
    pc = localhost
    # pc can also contain port or socket path after colon (eg. localhost:/path/to/socket)
    database = smskudb

    # DBI configuration
    driver = sqlite
    # driverspath = /usr/lib/dbd/
    # Database directory for sqlite
    # dbdir = /var/lib/smsd

    # Files backend configuration
    #inboxpath = /var/spool/sms/inbox/
    #outboxpath = /var/spool/sms/outbox/
    #sentsmspath = /var/spool/sms/sent/
    #errorsmspath = /var/spool/sms/error/
    #inboxformat = unicode
    #transmitformat = auto
    #outboxformat = detail
    ————————————————————————————————
    ini salinan gmmurc nya pak

    ; This is a sample ~/.gammurc file.
    ; In Unix/Linux copy it into your home directory and name it .gammurc
    ; or into /etc and name it gammurc
    ; In Win32 copy it into directory with Gammu.exe and name gammurc
    ; More about parameters later
    ; Anything behind ; or # is comment.
    ; —————————————————————————–

    [gammu]

    device = com3:
    connection = at115200
    ; Do not use model configuration unless you really need it
    ;model = 6110
    ;synchronizetime = yes
    ;logfile = gammulog
    ;logformat = textall
    ;use_locking = yes
    ;gammuloc = locfile
    ;startinfo = yes
    ;gammucoding = utf8
    ;usephonedb = yes

    [gammu1]

    device = com3:
    ;model = 6110
    connection = at115200
    ;synchronizetime = yes
    ;logfile = gammulog
    ;logformat = textall
    ;use_locking = yes
    ;gammuloc = locfile
    ;startinfo = yes
    ;gammucoding = utf8

    ; Step 1. Please find required Connection parameter and look into assigned
    ; with it device type. With some Connection you must set concrete model

    ; ================================================================ cables =====
    ; New Nokia protocol for FBUS/DAU9P
    ; Connection “fbus”, device type serial
    ; New Nokia protocol for DLR3/DLR3P
    ; Connection “fbusdlr3″/”dlr3″, device type serial
    ; New Nokia protocol for DKU2 (and phone with USB converter on phone mainboard
    ; like 6230)
    ; Connection “dku2phonet”/”dku2″, device type dku2 on Windows
    ; Connection “fbususb” on Linux
    ; New Nokia protocol for DKU5 (and phone without USB converter on phone
    ; mainboard like 5100)
    ; Connection “dku5fbus”/”dku5″, device type dku5
    ; New Nokia protocol for PL2303 USB cable (and phone without USB converter
    ; on phone mainboard like 5100)
    ; Connection “fbuspl2303″, device type usb
    ; Old Nokia protocol for MBUS/DAU9P
    ; Connection “mbus”, device type serial
    ; Variants:
    ; You can modify a bit behaviour of connection using additional flags
    ; specified just after connection name like connection-variant.
    ; If you’re using ARK3116 cable (or any other which does not like dtr
    ; handling), you might need -nodtr variant of connection, eg. dlr3-nodtr.
    ; If cable you use is not powered over DTR/RTS, try using -nopower variant of
    ; connection, eg. fbus-nopower.
    ; —————————————————————————–
    ; AT commands for DLR3, DKU5 or other AT compatible cable (8 bits, None
    ; parity, no flow control, 1 stop bit). Used with Nokia, Alcatel, Siemens, etc.
    ; Connection “at19200″/”at115200″/.., device type serial
    ; AT commands for DKU2 cable
    ; Connection “dku2at”, device type dku2
    ; ============================================================== infrared =====
    ; Nokia protocol for infrared with Nokia 6110/6130/6150
    ; Connection “fbusirda”/”infrared”, device type serial
    ; Nokia protocol for infrared with other Nokia models
    ; Connection “irdaphonet”/”irda”, device type irda
    ; —————————————————————————–
    ; AT commands for infrared. Used with Nokia, Alcatel, Siemens, etc.
    ; Connection “irdaat”, device type irda
    ; —————————————————————————–
    ; OBEX for infrared
    ; Connection “irdaobex”, device type irda.
    ; ============================================================= Bluetooth =====
    ; Nokia protocol with serial device set in BT stack (WidComm, other) from
    ; adequate service and Nokia 6210
    ; Connection “fbusblue”, device type serial
    ; Nokia protocol with serial device set in BT stack (WidComm, other) from
    ; adequate service and other Nokia models
    ; Connection “phonetblue”, device type serial
    ; —————————————————————————–
    ; Nokia protocol for Bluetooth stack with Nokia 6210
    ; Connection “bluerffbus”, device type BT
    ; Nokia protocol for Bluetooth stack with DCT4 Nokia models, which don’t inform
    ; about services correctly (6310, 6310i with firmware lower than 5.50, 8910,..)
    ; Connection “bluerfphonet”, device type BT
    ; Nokia protocol for Bluetooth stack with other DCT4 Nokia models
    ; Connection “bluephonet”, device type BT
    ; —————————————————————————–
    ; AT commands for Bluetooth stack and 6210 / DCT4 Nokia models, which don’t
    ; inform about BT services correctly (6310, 6310i with firmware lower
    ; than 5.50, 8910,..)
    ; Connection “bluerfat”, device type BT
    ; AT commands for Bluetooth stack with other phones (Siemens, other Nokia,etc.)
    ; Connection “blueat”, device type BT
    ; —————————————————————————–
    ; OBEX for Bluetooth stack with DCT4 Nokia models, which don’t inform about
    ; BT services correctly (6310, 6310i with firmware lower than 5.50, 8910,…)
    ; Connection “bluerfobex”, device type BT
    ; OBEX for Bluetooth stack with other phones (Siemens, other Nokia, etc.)
    ; Connection “blueobex”, device type BT.
    ; —————————————————————————–
    ; Connection “bluerfgnapbus”, device type BT, model “gnap”
    ; Connection “irdagnapbus”, device type irda, model “gnap”

    ; Step2. According to device type from Step1 and used OS set Port parameter

    ; —————————————————————————–
    ; Port type | “Port” parameter in Windows/DOS | “Port” parameter in Linux/Unix
    ; ———-|———————————|——————————–
    ; serial | “com*:” | “/dev/ttyS*”
    ; | (example “com1:”) | (example “/dev/ttyS1″)
    ; | | or “/dev/tts/**” (with DevFS)
    ; | | virtual serial ports like
    ; | | “/dev/ircomm*” or “/dev/rfcomm*”
    ; ———-|———————————|——————————–
    ; irda | ignored (can be empty) | ignored (can be empty)
    ; ———-|———————————|——————————–
    ; BT | Bluetooth device address (example “00:11:22:33:44:55″).
    ; | Optionally you can also include channel after slash
    ; | (example “00:11:22:33:44:55/12″). Can be also empty.
    ; ———-|———————————|——————————–
    ; dku2 | ignored (can be empty) | /dev/ttyUSB* or /dev/ttyACM*
    ; ———-|———————————|——————————–
    ; dku5 | ignored (can be empty) | connection with it not possible
    ; ———-|———————————|——————————–
    ; usb | connection with it not possible | “/dev/ttyUSB*”

    ; Step3. Set other config parameters

    ; —————————————————————————–
    ; Parameter name | Description
    ; —————-|————————————————————
    ; Model | Should not be used unless you have a good reason to do so.
    ; | If Gammu doesn’t recognize your phone model, put it here.
    ; | Example values: “6110″, “6150″, “6210″, “8210″
    ; SynchronizeTime | if you want to set time from computer to phone during
    ; | starting connection. Do not rather use this option when
    ; | when to reset phone during connection (in some phones need
    ; | to set time again after restart)
    ; GammuLoc | name of localisation file
    ; StartInfo | this option allow to set, that you want (setting “yes”)
    ; | to see message on the phone screen or phone should enable
    ; | light for a moment during starting connection. Phone
    ; | WON’T beep during starting connection with this option.
    ; GammuCoding | forces using specified codepage (in win32 – for example
    ; | “1250″ will force CP1250) or UTF8 (in Linux – “utf8″)
    ; —————-|————————————————————
    ; Logfile | Use, when want to have logfile from communication.
    ; Logformat | What debug info and format should be used:
    ; | “nothing” – no debug level (default)
    ; | “text” – transmission dump in text format
    ; | “textall” – all possible info in text format
    ; | “errors” – errors in text format
    ; | “binary” – transmission dump in binary format
    ; —————-|————————————————————
    ; Features | Custom features for phone. This can be used as override
    ; | when values coded in common/gsmphones.c are bad or
    ; | missing. Consult include/gammu-info.h for possible values
    ; | (all Feature values without leading F_ prefix).
    ; | Please report correct values to Gammu authors.
    ; —————-|————————————————————
    ; Use_Locking | under Unix/Linux use “yes”, if want to lock used device
    ; | to prevent using it by other applications. In win32 ignored

    ; vim: et ts=4 sw=4 sts=4 tw=78 spell spelllang=en_us
    ————————————————————————————————

    mohon bantuannya pak karna ini proyek tugas akhir kuliah saya.. dtunggu bantuannya pak bisa langsung ke email saya rizqiadikarta@yahoo.com
    trima kasih sebelumnya pak..

    • Berarti service gammu sudah ada di daftar service windows. Coba cek lagi di Control Panel – Administrative tools – Services.
      Atau coba uninstall dulu gammu-nya sehingga pastikan sudah bersih. Install lagi, dan amati di services, apakah sudah ada service gammu atau tidak.

  18. mas eko… sy kirim sms dr comand prompt dapat terkirim dengan baik, tapi pake mysql tidak bisa (kirim maupun terima), saya pake modem huawei, instal service pake comand prompt dinyatakan sukses, tapi pake service.msc tidak bisa start, berbagai langkah yg sampeyan sampaikan sudah dicoba (restart service sdh dilaksanakan) tapi tetap aja tidak bisa start, saya sudah gonta ganti xampp tdk ada perubahan, ganti gammu dr yg versi 1.30 sampai 1.32..masih juga belum ada perubahan.

    ini copi an Gammurc nya

    [gammu]

    device = com19:
    connection = at115200
    ; Do not use model configuration unless you really need it
    ;model = 6110
    ;synchronizetime = yes
    ;logfile = gammulog
    ;logformat = textall
    ;use_locking = yes
    ;gammuloc = locfile
    ;startinfo = yes
    ;gammucoding = utf8
    ;usephonedb = yes

    [gammu1]

    device = com19:
    ;model = 6110
    connection = at115200
    ;synchronizetime = yes
    ;logfile = gammulog
    ;logformat = textall
    ;use_locking = yes
    ;gammuloc = locfile
    ;startinfo = yes
    ;gammucoding = utf8

    ini copian smsdrc nya

    [gammu]
    #device = com19:
    #model = 6110
    #connection = at115200
    #synchronizetime = yes
    #logfile = gammulog # this is not used at all in SMSD mode
    #logformat = textall
    #use_locking = yes
    #gammuloc = gammu.us
    #startinfo = yes

    # When uncomment this section and insert numbers here, smsd will process
    # incoming sms only from numbers written here (incoming sms from all other
    # numbers will be deleted)
    #[include_numbers]
    #number1 = 1234

    # When uncomment this section and insert numbers here, smsd will process
    # incoming sms from all numbers not written here (incoming sms from numbers
    # written here will be deleted). This is “black” list.
    # Note: after using “include_numbers” section this one will be ignored
    #[exclude_numbers]
    #number1 = 1234

    # General SMSD settings, see gammu-smsdrc(5) for detailed description.
    [smsd]
    # SMSD service to use, one of FILES, MYSQL, PGSQL, DBI
    service = SQL
    # PIN for SIM card
    PIN = 1234
    # File (or stderr, syslog, eventlog) where information will be logged
    logfile = smsdlog
    # Amount of information being logged, each bit mean one level
    debuglevel = 0
    # Configuration for using more phones on same database
    #phoneid = MyPhone1
    # Script to be executed when new message has been received
    #runonreceive = /some/script
    # Commication frequency settings
    commtimeout = 30
    sendtimeout = 30
    #receivefrequency = 0

    # Phone communication settings
    #checksecurity = 1
    #resetfrequency = 0

    # Delivery report configuration
    #deliveryreport = no
    #deliveryreportdelay = 10

    # Ignoring broken SMSC
    #skipsmscnumber = +48602123456

    # Database backends congfiguration
    user = root
    password =
    pc = localhost
    # pc can also contain port or socket path after colon (eg. localhost:/path/to/socket)
    database = pemilu

    # DBI configuration
    driver = native_mysql
    # driverspath = /usr/lib/dbd/
    # Database directory for sqlite
    # dbdir = /var/lib/smsd

    # Files backend configuration
    #inboxpath = /var/spool/sms/inbox/
    #outboxpath = /var/spool/sms/outbox/
    #sentsmspath = /var/spool/sms/sent/
    #errorsmspath = /var/spool/sms/error/
    #inboxformat = unicode
    #transmitformat = auto
    #outboxformat = detail

    makasih pencerahannya

    • Hasil gammu-identify bagaimana mas? Bisa terdeteksi?


Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Logout / Ubah )

Twitter picture

You are commenting using your Twitter account. Logout / Ubah )

Facebook photo

You are commenting using your Facebook account. Logout / Ubah )

Google+ photo

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

Kategori

Ikuti

Get every new post delivered to your Inbox.

Bergabunglah dengan 711 pengikut lainnya.

%d bloggers like this: