Membuat SMS Gateway dgn Modem GSM Itegno, Kannel, & Playsms

Attention: open in a new window. PDFPrintE-mail

Membuat SMS Gateway sendiri memiliki tantangan yang cukup berat. Di internet sebenarnya telah tersedia banyak dokumentasinya, namun yang masih kurang adalah tutorial yang benar2 cocok untuk newbie. Setelah bergadang hampir 2 minggu akhirnya penulis berhasil menyetelnya. Berbeda dengan program SMS bawaan dari telepon genggam, dengan Kannel dan Playsms, kita bisa menjadikannya multi-user dan bisa diakses dari mana saja.
Pertama2 penulis ingin berterima kasih kepada semua rekan yang telah banyak membantu, terutamanya:
1. Developer modem Itegno yang telah memberikan daftar AT command modemnya.
2. Mas Anton Rahardja dan team yang telah menyediakan playsms dan bersedia ditanya2 jam 2 dini hari :)
3. Pak Adi Prasaja yang telah memberikan kunci2 settingan modem gsm.
4. Semua rekan2 yang telah berbaik hati berdiskusi, Mas Dave Muhammad, Mas Rist. Andy Nugroho, Arief Suherlan, dll.
5. Oom Google dan Pakde Milist :)

Baiklah mari kita mulai. Hal2 yang diperlukan adalah:
1. Modem GSM. Dalam hal ini penulis menggunakan Itegno 3000 yang menggunakan koneksi USB (http://www.dsc.co.id/?page=category&catid=5&pid=120). Sebenarnya kita dapat pula menggunakan telepon genggam GPRS kita, tapi mungkin di lain artikel yah.
2. Kannel (http://www.kannel.org) sebagai sms engine.
3. Playsms (http://playsms.sourceforge.net) sebagai web-based Mobile Portal System.
4. Linux OS dgn MySQL, kali ini penulis menggunakan Fedora Core 4, dengan kernel terbaru 2.6.15-1.1830.
5. Kopi kental, roti bakar, dan mie instant sesuai selera sebagai teman bergadang :)

Langkah2 yang harus dilakukan adalah:
1. Mensetting Modem GSM.
2. Menginstall dan mensetup kannel.
3. Menginstall dan mensetup playsms.
4. Mentesting

A. Mensetting Modem GSM
Masukkan kartu GSM ke dalam modem GSM, dan jangan lupa pasang tutupnya. Sebab kalau tidak terpasang, modem tidak akan berfungsi dengan baik.
Hidupkan Linux, dan colokkan modem ke port USB.
Buka terminal, dan lakukan tail -f /var/log/messages. Di dalam /var/log/messages itu akan terlihat ini bila Linux berhasil mengenali modem GSM kita:

Feb  18 19:36:01 fc4 kernel: usb 2-2: new full speed USB device using uhci_hcd and address 3
Feb  18 19:36:01 fc4 kernel: usbcore: registered new driver usbserial
Feb  18 19:36:01 fc4 kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered for generic
Feb  18 19:36:01 fc4 kernel: usbcore: registered new driver usbserial_generic
Feb  18 19:36:01 fc4 kernel: drivers/usb/serial/usb-serial.c: USB Serial Driver core
Feb  18 19:36:02 fc4 kernel: drivers/usb/serial/usb-serial.c: USB Serial support registered for pl2303
Feb  18 19:36:02 fc4 kernel: pl2303 2-2:1.0: pl2303 converter detected
Feb  18 19:36:02 fc4 kernel: usb 2-2: pl2303 converter now attached to ttyUSB0
Feb  18 19:36:02 fc4 kernel: usbcore: registered new driver pl2303
Feb  18 19:36:02 fc4 kernel: drivers/usb/serial/pl2303.c: Prolific PL2303 USB to serial adaptor driver

Secara fisik kita bisa melihat apakah Modem telah dikenali dengan baik dari lampunya yang berkedip2.

B1. Menginstall kannel.
Kita bisa menginstall dari source, ataupun dari binary. Tidak masalah. Menggunakan FC4, kita dapat menginstallnya dengan cara:

yum install kannel kannel-devel

Ia berada di dalam repository extras.

B2. Mensetup kannel.
Selanjutnya yang cukup sulit adalah mensetting kannel. Sangat disarankan kita mendownload dan mempelajari kannel userguide dari kannel.org. Playsms telah menyediakan settingan awal untuk kita, kita tinggal melengkapinya sesuai perlengkapan yang kita gunakan.

Berikut ini adalah file /etc/kannel.conf penulis:
# CORE
group = core
admin-port = 13000
admin-password = pwd
status-password = pwd
log-file = "/var/log/kannel/kannel.log"
log-level = 0
access-log = "/var/log/kannel/access.log"
smsbox-port = 13001
store-file = "/var/log/kannel/kannel.store"


# SMSC Fake
#group = smsc
#smsc = fake
#host = localhost
#port = 13013

#SMSC modem gsm
group = smsc
smsc = at
host = localhost
port = 13013
smsc-id = linuxku
modemtype = wavecom
device = /dev/ttyUSB0
speed = 115200
sms-center = 0816124

group = modems
id = WAVECOM
name = wavecom
detect-string = WAVECOM
init-string = "AT+CNMI=1,2,0,1,0;+CMEE=1"

# SMSBOX SETUP
group = smsbox
bearerbox-host = localhost
sendsms-port = 13131
sendsms-chars = "0123456789+"
log-file = "/var/log/kannel/smsbox.log"
log-level = 0
access-log = "/var/log/kannel/access.log"


# SEND-SMS USERS
group = sendsms-user
username = playsms
password = pwd


# SMS SERVICE 'Default'
# there should be default always
group = sms-service
keyword = default
max-messages = 0
exec = /usr/local/bin/kannel_incoming %t %q %a
#get-url = "http://localhost/~playsms/plugin/gateway/kannel/geturl.php?t=%t&q=%q&a=%a"

Penjelasan:
Bagian SMSC Fake kita comment out sebab dia berfungsi untuk testing saja. Kita tidak akan bisa mengirimkan sms yang sesungguhnya menggunakan SMSC Fake ini. Sebaliknya, kita definisikan group smsc modem gsm. sms-center juga kita sesuaikan dengan kartu gsm kita.

Kita definisikan juga group modems. Yang penting disini adalah init-stringnya yaitu "AT+CNMI=1,2,0,1,0;+CMEE=1", CMEE=1 itu berarti kita menginstruksikan modem agar menyebutkan jenis error yang terjadi pada Mobile Equipment kita. Kalau tidak dibuat verbose, maka ketika terjadi error misalnya pulsa kita habis sehingga tidak bisa kirim sms, modem gsm kita cuma bilang error tapi tidak disebutkan kenapa, sehingga kannel tidak mengetahui error apa yang terjadi:

2006-02-18 10:20:46 [8984] [7] ERROR: AT2[/dev/ttyUSB0]: Error occurs: ERROR (error number not known to us. ask google and add it.)

Setelah dibuat verbose menjadi keliatan sebab errornya:

2006-02-18 10:25:20 [8984] [7]  CMS ERROR: +CMS ERROR: 38 (Network out of order)

Kemudian yang juga penting adalah bagian max-messages = 0 di group sms-service. Option max-message = 0 ini berguna agar modem kita tidak mengirimkan reply ketika menerima sms. Sebab akan terjadi kesalahan yang sangat fatal yaitu looping send-receive, dimana jika kita mengirimkan sms ke diri sendiri, maka modem akan mengirimkan reply ke diri sendiri, dan selanjutnya reply ini akan di reply, begitu seterusnya, sampai pulsa kita habis.

Bagaimana kannel bekerja?
Kannel sebenarnya lebih dari sekedar sms engine, dia juga dapat berfungsi sebagai wap engine. Ada 3 komponen utama kannel, yaitu: bearerbox, smsbox, dan wapbox. Bearerbox ini adalah inti dari kannel. Dia berfungsi sebagai koordinator dari 2 komponen lainnya yaitu smsbox dan wapbox. Kira2 demikian deh :)


C. Menginstall dan mensetup playsms

Untuk lengkapnya, baca file INSTALL dari playsms yah! Berikut cuplikannya:
1.  It is important to meet all minimum requiments above (Its a must!)
2.  Setup a system user named 'playsms' to manage PlaySMS
    # adduser playsms
    # passwd playsms
    Note: on some Linux distributions adduser and passwd combined
3.  On most Linux distributions actions (2) will create system user and group named playsms
    with home directory /home/playsms, there you will install all PlaySMS files
4.  Create public_html on user's home directory, if its not already exists
    # mkdir /home/playsms/public_html
5.  Extract PlaySMS package somewhere (Place in /usr/local/src if you want to)
    # tar -zxvf playsms-x.x.x.tar.gz -C /usr/local/src
    # cd /usr/local/src/playsms-x.x.x
6.  Copy 'web' directory to public_html directory and set owner back to user playsms again
    (for security reason)
    # cp -rR web/* /home/playsms/public_html
    # chown -R playsms /home/playsms/public_html
    # chmod 701 /home/playsms
7.  Setup database (import database)
    # mysqladmin -u root -p create playsms
    # mysql -u root -p playsms < /usr/local/src/playsms-x.x.x/db/playsms.sql
    Note: you dont need to use MySQL root access nor this method to setup PlaySMS
    database, but this is beyond our scope, you should read MySQL manual's for custom
    installation method
8.  Edit config.php on playsms web directory (/home/playsms/public_html/config.php)
    Please read and fill all required fields carefully
9.  Enter bin directory and copy playsmsd and playsmsd_start to /usr/local/bin
    # cd /usr/local/src/playsms-x.x.x
    # cd bin
    # cp playsmsd playsmsd_start /usr/local/bin/
10. Enter /etc/init.d or /etc/rc.d/init.d and look for file rc.local, im sure you'll
    found it. Edit that file and put "/usr/local/bin/playsmsd_start" (without quotes) on the
    bottom of the file (before exit if theres exit). This way playsmsd_start will be run
    everytime the system startup. You need 'root' access for this purpose.
11  Browse http://localhost/~playsms and login using default administrator user
    username: admin
    password: admin
12. At this point you should be able to logon PlaySMS webbased interface.
    Lets move on to gateway module part, the hard one :)

If you decide to use kannel gateway module, then you must install kannel on the same
server where PlaySMS installed. There are discussion on hoto install Kannel on separate machine
with PlaySMS.
Due to complexity of installation process for kannel, we decide to leave this module for experts.
Well experts, there's something you should see on this package contrib/kannel/kannel.conf,
sms service 'Default' part.

Dont forget to:
1.  Create kannel cache directory and make it writable to the web servers user
    # mkdir /usr/local/cache
    # mkdir /usr/local/cache/smsd
    # chmod -R 777 /usr/local/cache
    Note:
    - make it writable to the world (chmod -R 777) just to simplify installation
    - it is better if you know what is the web server's user (eg: 'nobody')
      and instead chmod -R 777 you use:
      # chown -R nobody /usr/local/cache
2.  Create log directory
    # mkdir /var/log/kannel
3.  Enter bin directory in this package, and copy kannel_incoming to /usr/local/bin

If you decide to use kannel gateway module, but you dont want to use 'exec' method in sms service,
just replace you kannel.conf near to sms service 'Default' part, with sms service 'Default' part in
this package contrib/kannel/kannel-geturl.conf
After copying sample configuration, dont forget to change 'CHANGE_THIS_TO_YOUR_PLAYSMS_URL'
in your kannel.conf near to sms service 'Default' part, to your working PlaySMS URL

Catatan:
Di FC4, secara default direktori home user ngga bisa diakses dari web. Untuk membuatnya aktif, kita edit file /etc/httpd/conf/httpd.conf. Cari baris berikut dan beri tanda comment di depan UserDir disable:
# UserDir: The name of the directory that is appended onto a user's home
    # UserDir is disabled by default since it can confirm the presence
#    UserDir disable

Ok, sekarang kita restart apache, dan kemudian kita coba buka web playsmsnya. Kalau ada di localhost, kita ketik ini di browser:

http://localhost/~playsms

Loginlah dengan username: admin, password: admin


D. Mentesting
Setelah semua siap, marilah kita testing.
- Jalankan bearerbox
bearerbox /etc/kannel.conf

2006-02-16 09:11:48 [6196] [0] INFO: Kannel bearerbox II version 1.4.0 starting
2006-02-16 09:11:48 [6196] [0] INFO: Loading store file `/var/log/kannel/kannel.store'
2006-02-16 09:11:48 [6196] [0] INFO: Store-file size 0, starting to unpack
2006-02-16 09:11:48 [6196] [0] INFO: Retrieved 0 messages, non-acknowledged messages: 0
2006-02-16 09:11:48 [6196] [7] DEBUG: Thread 7 (gw/smsc/smsc_at.c:at2_device_thread) maps to pid 6196.
2006-02-16 09:11:48 [6196] [0] INFO: MAIN: Start-up done, entering mainloop
2006-02-16 09:11:48 [6196] [0] DEBUG: AT2[linuxku]: start called
2006-02-16 09:11:48 [6196] [8] DEBUG: Thread 8 (gw/bb_smscconn.c:sms_router) maps to pid 6196.
2006-02-16 09:11:48 [6196] [8] DEBUG: sms_router: time to sleep
2006-02-16 09:11:48 [6196] [8] DEBUG: sms_router: list_len = 0
2006-02-16 09:11:48 [6196] [7] DEBUG: AT2[linuxku]: detecting modem type
2006-02-16 09:11:48 [6196] [7] INFO: AT2[linuxku]: opening device
2006-02-16 09:11:48 [6196] [7] DEBUG: AT2[linuxku]: device opened
2006-02-16 09:11:49 [6196] [7] DEBUG: AT2[linuxku]: device opened
2006-02-16 09:11:49 [6196] [7] INFO: AT2[linuxku]: speed set to 115200
2006-02-16 09:11:49 [6196] [7] DEBUG: AT2[linuxku]: --> ^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: --> AT^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- AT
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: --> AT&F^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- AT&F
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: --> ATE0^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- ATE0
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: --> ATI^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- WAVECOM MODEM
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- MULTIBAND  900E  1800
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: found string <WAVECOM>, using modem definition <wavecom>
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: --> AT+CSMS=?^M
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- +CSMS: (0,1)
2006-02-16 09:11:51 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:11:51 [6196] [7] INFO: AT2[linuxku]: Phase 2+ is supported
2006-02-16 09:11:51 [6196] [7] INFO: AT2[linuxku]: closing device
2006-02-16 09:11:52 [6196] [7] INFO: AT2[linuxku]: opening device
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: device opened
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: device opened
2006-02-16 09:11:52 [6196] [7] INFO: AT2[linuxku]: init device
2006-02-16 09:11:52 [6196] [7] INFO: AT2[linuxku]: speed set to 115200
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: --> ATZ^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: --> AT^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <-- AT
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: --> AT&F^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <-- AT&F
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: --> ATE0^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <-- ATE0
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: --> AT+IFC=2,2^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: --> AT+CPIN?^M
2006-02-16 09:11:52 [6196] [7] DEBUG: AT2[linuxku]: <-- +CPIN: READY
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: --> AT+CSCA="0816124"^M
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: --> AT+CMGF=0^M
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: --> AT+CSMS=?^M
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <-- +CSMS: (0,1)
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:12:03 [6196] [7] INFO: AT2[linuxku]: Phase 2+ is supported
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: --> AT+CSMS=1^M
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <-- +CSMS: 1,1,1
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: --> AT+CNMI=1,2,0,1,0;+CMEE=1^M
2006-02-16 09:12:03 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:12:03 [6196] [7] INFO: AT2[linuxku]: AT SMSC successfully opened.

- Jalankan smsbox:
smsbox /etc/kannel.conf

2006-02-12 13:36:20 [7002] [0] DEBUG: Kannel smsbox version 1.4.0 starting
2006-02-12 13:36:20 [7002] [0] DEBUG: Started thread 4 (gw/smsbox.c:obey_request_thread)
2006-02-12 13:36:20 [7002] [0] DEBUG: Started thread 5 (gw/smsbox.c:url_result_thread)
2006-02-12 13:36:20 [7002] [0] DEBUG: Started thread 6 (gw/smsbox.c:http_queue_thread)
2006-02-12 13:36:20 [7002] [0] INFO: Connected to bearerbox at localhost port 13001.
2006-02-12 13:36:20 [7002] [0] DEBUG: Started thread 7 (gw/heartbeat.c:heartbeat_thread)
2006-02-12 13:36:20 [7002] [2] DEBUG: Thread 2 (gwlib/http.c:server_thread) maps to pid 7002.
2006-02-12 13:36:20 [7002] [3] DEBUG: Thread 3 (gw/smsbox.c:sendsms_thread) maps to pid 7002.
2006-02-12 13:36:20 [7002] [1] DEBUG: Thread 1 (gwlib/fdset.c:poller) maps to pid 7002.
2006-02-12 13:36:20 [7002] [4] DEBUG: Thread 4 (gw/smsbox.c:obey_request_thread) maps to pid 7002.
2006-02-12 13:36:20 [7002] [5] DEBUG: Thread 5 (gw/smsbox.c:url_result_thread) maps to pid 7002.
2006-02-12 13:36:20 [7002] [6] DEBUG: Thread 6 (gw/smsbox.c:http_queue_thread) maps to pid 7002.
2006-02-12 13:36:20 [7002] [7] DEBUG: Thread 7 (gw/heartbeat.c:heartbeat_thread) maps to pid 7002.

- Buka playsms dan coba kirim sms ke temen kita:


Di /var/log/kannel/kannel.log akan terlihat:

2006-02-16 09:12:16 [6196] [6] DEBUG: Started thread 9 (gw/bb_boxc.c:function)
2006-02-16 09:12:16 [6196] [9] DEBUG: Thread 9 (gw/bb_boxc.c:function) maps to pid 6196.
2006-02-16 09:12:16 [6196] [9] INFO: Client connected from <127.0.0.1>
2006-02-16 09:12:16 [6196] [9] DEBUG: Started thread 10 (gw/bb_boxc.c:boxc_sender)
2006-02-16 09:12:16 [6196] [10] DEBUG: Thread 10 (gw/bb_boxc.c:boxc_sender) maps to pid 6196.
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: <-- +CMT: ,35
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: <-- 059126181642040C9126189519497500006020619041628212502B284C6EA7DDA0B03C0D5297D9E535
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: Numeric sender (international) <+628153314433>
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: User data length read as (18)
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: Udh decoding done len=18 udhi=0 udhlen=0 udh=''
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: --> AT+CNMA^M
2006-02-16 09:15:06 [6196] [10] DEBUG: send_msg: sending msg to box: <127.0.0.1>
2006-02-16 09:15:06 [6196] [10] DEBUG: boxc_sender: sent message to <127.0.0.1>
2006-02-16 09:15:06 [6196] [7] DEBUG: AT2[linuxku]: <-- OK
2006-02-16 09:15:07 [6196] [9] DEBUG: boxc_receiver: got ack
2006-02-16 09:15:07 [6196] [1] DEBUG: Dumping 0 messages and 0 acks to store
2006-02-16 09:15:16 [6196] [9] DEBUG: boxc_receiver: heartbeat with load value 0 received

Di /var/log/kannel/smsbox.log akan terlihat:

2006-02-17 11:08:30 [9423] [3] INFO: smsbox: Got HTTP request </cgi-bin/sendsms> from <127.0.0.1>
2006-02-17 11:08:30 [9423] [3] INFO: sendsms used by <playsms>
2006-02-17 11:08:30 [9423] [3] INFO: sendsms sender:<playsms:+62816195566> (127.0.0.1) to:<+628153314433> msg:<Test kirim sms - fajar>
2006-02-17 11:08:30 [9423] [3] DEBUG: message length 56, sending 1 messages
2006-02-17 11:08:30 [9423] [3] DEBUG: Status: 202 Answer: <Sent.>
2006-02-17 11:08:30 [9423] [3] DEBUG: HTTP: Destroying HTTPClient area 0x91794e0.
2006-02-17 11:08:30 [9423] [3] DEBUG: HTTP: Destroying HTTPClient for `127.0.0.1'.
2006-02-17 11:08:35 [9423] [4] INFO: Starting delivery report <playsms> from <+628161922701>
2006-02-17 11:08:35 [9423] [4] DEBUG: Started thread 8 (gwlib/fdset.c:poller)
2006-02-17 11:08:35 [9423] [4] DEBUG: Started thread 9 (gwlib/http.c:write_request_thread)
2006-02-17 11:08:35 [9423] [8] DEBUG: Thread 8 (gwlib/fdset.c:poller) maps to pid 9423.
2006-02-17 11:08:35 [9423] [9] DEBUG: Thread 9 (gwlib/http.c:write_request_thread) maps to pid 9423.
2006-02-17 11:08:35 [9423] [9] DEBUG: Parsing URL `http://localhost/~playsms/plugin/gateway/kannel/dlr.php?type=8&slid=93&uid=1':
2006-02-17 11:08:35 [9423] [9] DEBUG:   Scheme: http://
2006-02-17 11:08:35 [9423] [9] DEBUG:   Host: localhost
2006-02-17 11:08:35 [9423] [9] DEBUG:   Port: 80
2006-02-17 11:08:35 [9423] [9] DEBUG:   Username: (null)
2006-02-17 11:08:35 [9423] [9] DEBUG:   Password: (null)
2006-02-17 11:08:35 [9423] [9] DEBUG:   Path: /~playsms/plugin/gateway/kannel/dlr.php
2006-02-17 11:08:35 [9423] [9] DEBUG:   Query: type=8&slid=93&uid=1
2006-02-17 11:08:35 [9423] [9] DEBUG:   Fragment: (null)

Kalau kita lihat di Outboxnya playsms, akan kelihatan apakah sms kita sampai (delivered) atau tidak:


Penutup
Demikianlah tutorial membuat gateway sms menggunakan Modemn GSM Itegno, Kannel, dan Playsms. Tutorial ini tentu saja masih jauh dari sempurna, namun begitu diharapkan dapat bermanfaat sebagai panduan langkah awal bagi kita yang ingin memiliki sms gateway sendiri.

Merdeka!
v.1.0 by ari_stress a.k.a tiger74 a.k.a Fajar Priyanto

Bukit Sentul, 19 February 2006. Email: fajarpri at arinet dot org

Penulis adalah Microsoft Certified Professional, yang jatuh cinta kepada Linux. Bekerja di sebuah group otomotif di Jakarta


Comments (33)
  • adhe
    mahal, kalo modal beli lagi. pake aja teknologi yang udah ada. misalnya bikin sms gateway pake hp gprs
  • tanjidor
    gue kira bikin sms center sendiri,
    kalo cuman gini mah , gak usah pake kannel segala, pake program bawaan hp,kayak MA660 IRDA Manager juga bisa...
    ngapain pusing2?
  • antispam
    kenapa sih arinet.org suka nyepam di milis?
  • zaky
    Harga SMSGAteway-nya berapa? klo ada yg murah dan Support Linux..merk yg lain apa, selain diatas?
  • a2xm
    Tujuan dan kegunaan dari SMSgateway ini sebetulnya apa sih? saya kok gak gitu ngerti banget nih. bisa kirim sms dr komputer gratis? ke semua operator? bisa dijelasin lagi. thanks ;-)
  • navstar
    itegno memang mahal, tapi jempol tangan nggak jadi bengkak hehehe....
  • tommy
    wah.. lumayan juga buat juwalan managed sms
    btw, kalo satu mesin buat banyak nomer gimana mas?
    dulu aku pernah coba pake VB, satu server buat colokin 3 gsm modem.... 3 nomer, 1 aplikasi
  • riki
    waaah... salut banget sama risetnya.... sangat berguna dan bermanfaat. Semoga bisa terus berkarya dan lebih sukses lagi!
    jangan hiraukan orang2 sumbang yang ga paham visi dan misi pejuang FOSS
  • Andy Ariestianto
    mas ... apa playsms bs digunakan utk koneksi dari smsc operator seluler? Misal, kt kerjasama ama Telkomsel. Apakah SMSC Telkomsel bs terhubung dengan playsms melalui protokol HTTP?
  • ari
    Mestinya bisa aja. Tapi mungkin perlu modifikasi sana-sini. Coba ditanya di milis playsms-devel@yahoogroups.com
  • Hendra
    Mas, kalau setting2 tapi tidak tahu konsep bingung juga.
    Bisa minta tutorial kannel dalam bahasa indonesia ?
    Jadi bisa belajar konsepnya. Thanks.
    Krn lagi butuh neh utk belajar sms gateway dgn kannel,
    trus kalau mau belajar langsung praktek bgmn caranya? dan hardware/software apa aja yg harus disiapkan?
  • arigato
    saya sedang nyoba mbuat sms gateway pake kannel, tp gak menggunakan modem gsm, melainkan memenfaatkan hp kuno saya (Nokia 3310). apakah sama untuk settingan smsc-nya antara siemens dan nokia, (kalo menggunakan gammu, nokia akan di set ke fbus, sedangkan untuk siemens di set ke at19200). selama ini, jika bearerbox di jalankan,selalu mandeg pada saat inisialisasi setting speed-nya (setting speed saya isi dengan 19200). tapi kalo smsboxnya di aktifkan, di console bearerboxnya akan terdeket "smsbox .... at port xxx", atau muncul pesen semacam itulah,trus pertanyaan 1 lg tentang maksud dr tulisan AT+CNMI=1,2,0,1,0;, di init-sting-nya, maksud dari AT+CNMI, kemudian angka-angka yang terisi tuh maksudnya apa ya?, mohon jawaban di publis dan kalo bisa di cc ke alamat email slamet@jogja.go.id, untuk temen2 yang gabung di dalam linux2.arinet.org, kalo punya solusi mohon di tulis di sini aja, he he he
  • rednux
    mas faj tanya nih :
    saya sudah bisa kirim sms menggunaka kannel+playsms.
    namun sewaktu menerima ada pesan :
    from to
    2006-04-25 10:46:27 [18446] [4] DEBUG: executing sms-service
    '/usr/local/bin/kannel_incoming 2006-04-25+02:55:44 %2B628125543754 Test+diterima%2C+ganti.'
    2006-04-25 10:46:27 [18446] [4] INFO: No reply sent, denied

    saya cek di /usr/local/cache/smsd/ emang ada beberapa file disana hasil kiriman dari luar yang tdk masuk.

    1. Bagaimana solusinya agar bisa menerima sms dari luar tersebut?
    2. di playsms,bagian outbox, status 'pending' semua..padahal sms nya udah kekirim :), bagaimana nih ??

    terimakasih
  • henry
    Mas Ari, bolehkah saya memiliki daftar AT command dari iTegno 3000?
  • By
    Mas, apa bisa saya minta daftar AT command dari iTegno 3000nya? makasih mas..
  • sudiono
    gimana saya masih awam ada yang bisa beri saran
  • ahmad yani
    Perusahaan kami menjual berbagai macam modem yang support untuk SMS GATEWAY al:wavecom fastrack,Itegno,Aircard,dll
  • paul
    saya tidak ada komentar cuma mau nanya apakah sms getway ini bisa diterapkan pada monitoring network, maksudnya apabila ada jaringan yang terputus Modem GSM Itegno ini langsung mengirim sms pada operator, jadi kita gak perlu lagi ping satu persatu atau lihat melalui software tertentu secara manual jaringan yang putus. jadi langsung secara otomatis dia mengirim sms selama 24 jam.
  • Donny Christiaan
    Om Fajar,

    Kl saya mau setting Kannel+Siemens ME45 apa you punya file configuration (kannel.conf) nya? bagi dong ... pleaseeee....
  • anton
    kembangkan terus site nya bro..
    banyak yg merasakan manfaatny koq.

    keep on fire dude.. ^^
  • aden
    mas fajar mau minta solusi nich ,
    saya pake nokia 9210 kannel+ playsms kalau ngirim bisa delivered
    tapi kok kenapa inboxnya selalu kosong , kalau ada msg masuk ada log seperti nich
    2007-04-16 08:45:09 [3074] [8] DEBUG: data: 3e 0a >.
    2007-04-16 08:45:09 [3074] [8] DEBUG: Octet string dump ends.
    2007-04-16 08:45:09 [3074] [5] INFO: No reply sent, denied.
    saya dah check di yahoo group tp blm dapet solusinya
    thks
  • farsamail
    artikel keren, bookmark dolooo ahh!
  • JOKERz
    Ku uda ikutin tutorialnya tapi ku pake siemens c55.

    Tapi koq ga bisa konek ya??
    Apa c55 ga support kannel??
    Kalo support minta tulung dunk info untuk kannel.conf nya.

    Thanx be4
  • deanz
    Waduh aku gak bisa buka webnya, disitu keluar pesan: ERROR: No selected gateway module available - please contact system administrator, padahal kemarin playsmsnya sudah bisa kebuka, apakah karena config.phpnya berubah ya
  • Phroteus
    to mas ari, ada site job yg mungkin mas ari tertarik, karena ini berhubungan dengan membuat sms gateway, untuk informasinya saya tunggu mas ari di nomor saya 0813 806 37443 atau di 93885398
    (urgent needed)
  • zaki
    mas mau tanya nihhh gimana seting kannel dilunux buat hp 2..jadi gini mas saya maunya 1 hp tuk reply ama 1 nya tuk nerima sms
    gimana cara setingannya mas
    tq
  • Pranoto Suwiknyo
    mas apa harus pake fedora core 4 untuk setting SMS gate way
  • Karuna.K
    O/S linux versi apa yang terbaik utk setup SMS gateway ini..??
  • alan
    ipotong.........
    2008-02-05 17:02:21 [17395] [6] DEBUG: AT2[GSMModem]: device opened
    2008-02-05 17:02:21 [17395] [6] INFO:AT2[GSMModem]: init device
    2008-02-05 17:02:21 [17395] [6] INFO: AT2[GSMModem]: speed set to 96000
    2008-02-05 17:02:21 [17395] [6] DEBUG: AT2[GSMModem]: --> ATZ^M
  • alan
    om kenapa ya?
    infonya seperti yang diatas
  • bengbeng
    Para Suhu yang terhormat,
    Saya sedang mencoba menggunakan playSMS dengan Kannel sebagai SMS gateway. Saat ini saya sudah berhasil mengirimkan baik PV maupun Broadcast. Yang menjadi masalah adalah:
    1. Setiap mengirim SMS selalu muncul pesan status 'failed' padahal SMS terkirim ke nomor HP tujuan;
    2. Selain itu, playSMS juga tidak bisa mengubah status delivery SMS;
    3. Saya mencoba melihat fungsi 'kannel_hook_getsmsstatus' di 'playsms/plugin/gateway/kannel/fn.php' dan ternyata fungsi tersebut masih kosong. Saya belum tahu cara membuat fungsi ini.
    Dapatkah para Suhu membantu saya?
    Oh ya, sistem yang saya gunakan:
    - PC: Intel Pentium 4, 1 GB RAM
    - OS: Linux Fedora 7
    - Kannel: 1.4.1
    - playSMS: 0.9.3
    - modem: iTegno 3000.
    Atas perhatian dan pertolongan dari para Suhu, saya sangat berterima kasih.
  • mansur efendi
    mas kalo di ubuntu ( mint ) gmana. nih kanpake FC..makasih
  • dede Prasetia
    mas bkin nya pake linux apa??
    thanks b4.
Only registered users can write comments!