Selasa, 30 Desember 2014
Cara Setting Wifi dengan Access Point Wireless Router Linksys Menggunakan Koneksi Telkom Speedy
Beberapa waktu lalu saya memasang speedy untuk koneksi internet di kost dikarenakan SMART sedang mengalami “gangguan”. Saya belikan Wireless Router menggunakan LinkSys WRT54G seharga 600rb (info : sekarang harganya sudah turun di Malang Jawa Timur jadi 565rb). Wireless Router LinkSys seri ini memang banyak diminati karena harganya yang murah dan cukup bisa diandalkan. Meskipun ada juga yang lebih suka dengan merek enGenius dlsb.
Setelah ADSL aktif, saya coba untuk hubungkan antara modem ADSL dan Linksys, tapi rupanya koneksi internet ga bisa tersambung.
Saya ubek-ubek nyari tutorial di google, tapi rupanya banyak yang hasil copas. Masih belum nemu solusinya, saya urungkan niat untuk memasang wifi. Lagian koneksi SMART juga sudah diperbaiki dan lancir banget…
Lalu saya pulang ke rumah di Blitar. Saya reset setingan di linksys. Lalu saya masukkan CD programnya, saya hubungkan speedy > Modem ADSL > LinkSys > Laptop via LAN. Saya ikuti petunjuk di CD. Dan saat tes koneksi internet rupanya tidak berhasil. Lalu saya setting web base saja. Dan ternyata internetnya sudah bisa diakses secara LAN maupun Wifi… sip dah.
Nah, langkah-langkah setting AP Linksys adalah sebagai berikut :
Konfigurasi Software
1. Setting modem TP-LINK
Colok kabel ke port LAN modem.
Ketik http://192.168.1.1 pada web browser.
(Kalau Anda menginstal XAMPP ataupun Appserver, silahkan dinonaktifkan terlebih dahulu)
Login dengan admin, password: admin
Settingan dari speedy tidak perlu di ubah, hanya saja matikan DHCP server.
DNS sudah diisikan lebih dulu oleh teknisi speedy. Biasanya : 202.134.1.10 dan 202.134.0.155
Catat 2 alamat DNS tersebut. DNS ini akan digunakan pada router nantinya.
2. Settingan di router linksys
Colok kabel ke salah satu dari empat port LAN.
Ketik http://192.168.1.1 pada web browser
Default, Jika setting username belum di ubah…
Username : kosongkan saja
Password : admin
Di menu BASIC SETUP
Pilih static IP
Internet IP Address: 192.168.1.10 (Ini adalah IP Linksys yang dikenali oleh si modem)
Subnet Mask: 255.255.255.0
Gateway: 192.168.1.1 (Ini adalah gateway dari si modem, port perantara yang terhubung ke jalur speedy)
Static DNS 1: 202.134.1.10 (Sesuai setingan dari speedy)
Static DNS 2: 202.134.0.155 (Sesuai setingan dari speedy)
Local IP Address: 192.168.2.1 (ini adalah IP Wireless-LAN dari si router Linksys, yang dikenali oleh computer client)
Subnet Mask: 255.255.255.0
Tekan apply, kemudian continue
Keterangan tambahan:
Jika mengetikkan http://192.168.1.10 hasilnya akan sama dengan 192.168.2.1, karena kedua nya adalah alamat IP dari si router, untuk konfigurasi.
DHCP Server: Enable
Starting IP Address: 192.168.2.100 (IP device, semisal laptop anda yang akan diberikan IP ketika terdeteksi oleh router Linksys)
Maximum Number of DHCP Users: 10 (isi dengan jumlah client yang di inginkan)
Client Lease Time : 0 minutes (0 means one day)
WINS : 0.0.0.0
Tekan apply, kemudian continue.
Di menu WIRELESS >>>Basic Wireless Settings
Network Mode: Mixed
Network Name (SSID): ADAbisnis Hotspot (sesuai keinginan anda)
Radio Band: auto
Wide Channel: auto
Standard Channel: auto
Wireless SSID Broadcast: Enable
Tekan apply, kemudian continue
SECURITY
Jika ingin menggunakan password untuk koneksi:
Wireless -> Wireless Security -> Enabled
Pilih WEP, WPA, dst
Isi passphrase. Pada WEP, key akan di generate, pilih saja Key 1. Kemudian gunakanlah key tersebut pada computer client.
Ini digunakan untuk memproteksi internet anda dari pencolong koneksi.
Tekan apply, kemudian continue.
3. Hubungkan Semua Devicenya
Konfigurasi Hardware
Alur koneksi:
KONEKSI SPEEDY –> MODEM TP-LINK –> Wireless Router LINKSYS –> WIRELESS DEVICE (Computer Client)
Keterangan:
Koneksi speedy ke modem menggunakan kabel telpon melalui splitter.
Kokeksi modem ke linksys menggunakan kabel biru standard (RJ-45, kabel jaringan LAN).
Koneksi linksys ke laptop, secara wireless, tidak perlu kabel.
4. Testing
Dari command prompt
Ping 192.168.1.1
Jika ada reply, berarti modem bisa diconfigurasi secara wireless
Ping 192.168.1.10
Atau
Ping 192.168.2.1
Jika ada reply, berarti wireless router bisa dikonfigurasi secara wireless.
Ping www.google.com
Jika ada reply berarti anda sudah siap nyebur ke dunia maya!
5. Saatnya Browsing….
Koneksi sudah siap pakai, speedy sudah bisa diakses dari jarak bermeter-meter secara nirkabel!
Untuk memastikan ketik : google.com pada web browser
Minggu, 28 Desember 2014
Cara Seting Dan Reset Modem Speedy TP-Link TD-W8151N
Seperti yang sudah saya janjikan pada artikel sebelumnya, kali ini saya akan berbagi tutorial cara seting maupun cara reset modem Speedy TP-Link TD-W8151N. Seharusnya sebagai pemilik modem Speedy,
anda diharuskan bisa mengatasi masalah kalau hanya cuma seting modem,
dalam arti seting username dan password modem. Jadi jika suatu saat
modem anda error atau tidak bisa konek ke internet maka anda tidak perlu
susah payah mendatangkan teknisi Speedy ke rumah jika kerusakan hanya terletak pada setingan yang berubah. Belum tentu juga teknisi Speedy bisa langsuing datang, paling juga besoknya baru datang.
Trus pertanyaannya, kenapa kok sampai modem diseting ulang, padahal kan sebelumnya sudah disetingkan oleh teknisi Speedy? Biasanya modem perlu diseting ulang setelah kita mereset modem. Nah setahu saya, reset modem terjadi ada 3 penyebab (kalau kurang mohon ditambahkan ya).
1. Pada waktu listrik tiba-tiba mati, kemudian setelah listrik nyala kembali tiba-tiba modem sudah tidak bisa konek internet. Sudah dihidupkan matikan tetap saja tidak mau konek. Ini saya sudah pernah mengalaminya sendiri. Nah setelah saya lihat disetingannya ternyata username dan password Speedy nya sudah tidak ada alias menghilang. Kok bisa? Kesimpulan saya sih mungkin listrik mati mendadak bisa juga menyebabkan modem TP-Link TD-W8151N ini bisa mereset sendiri. Jika anda memiliki masalah yang sama seperti saya, setelah listrik mati modem Speedy tidak bisa konek internet berarti modem anda mereset sendiri.
2. Kemudian reset modem terjadi pada saat modem tidak bisa konek ke internet (bukan karena listrik mati), melainkan tiba-tiba saja modem tidak mau konek ke internet. Biasanya jalan yang ditempuh adalah mereset modem. Setelah reset modem otomatis kita harus seting kembali dengan memasukkan username dan password Speedy kita kan. Kebanyakan setelah proses reset ini maka modem akan berjalan normal lagi, bisa konek ke internet.
3. Reset modem terjadi bila saja kita lupa akan IP modem. Kalau lupa IP modem otomatis kan tidak bisa masuk ke admin panel modem. Ini biasa terjadi pada modem yang sebelumnya sudah diubah IP address nya. Biasanya dilakukan pada mereka yang menggunakan router, sehingga IP modem disesuaikan dengan IP public router. Bisa saja kan suatu saat lupa IP address, salah satu cara ya direset tadi agar IP modem kembali ke IP default modem. Atau bisa juga anda hafal IP modem tetapi lupa password admin panel, nah sama saja tidak bisa masuk ke admin panel modem. Saran saya sih sebaiknya IP modem, username maupun password admin jangan sampai diubah, biarkan secara default saja.
Sekarang bagaimana cara reset modem Speedy TP-Link TD-W8151N ini? Di bagian belakang kan ada port-port buat LAN, ADSL, adaptor, dan juga ada tombol reset yang letaknya agak ke dalam.
Jika anda ingin merest, anda memerlukan alat yang runcing (misal pulpen) untuk menusuk tombol reset. Dalam keadaan modem Speedy masih hidup, tekan tombol reset menggunakan pulpen selama kurang lebih 8-10 detik, kemudian lepaskan. Tunggu hingga lampu modem nyala semua.
Setelah ini baru kita masuk ke panel admin modem untuk melakukan seting ulang username dan password, caranya adalah sebagai berikut.
1. Hubungkan modem Speedy ke komputer menggunakan kabel LAN. Buka browser Mozilla Firefox atau Google Chrome, ketikkan di address bar IP default modem TP-Link TD-W8151N yaitu 192.168.1.1 kemudian tekan enter maka akan muncul jendela untuk memasukkan username dan password, default username dan password nya adalah admin.
2. Setelah masuk ke admin panel, pilih tab Quick Start >> Run Wizard
3. Jendela selanjutnya klik Next
4. Pilih time zone anda, misal Jakarta, kemudian klik Next
5. Pilih ISP connection type. Jika modem anda langsung terhubung ke komputer (sebagai dial up) maka pilih PPPoE/PPPoA. Tapi jika anda menggunakan router atau mikrotik maka pilih Bridge mode. Tapi di sini saya contohkan modem langsung colok ke komputer sebagai dial up jadi pilih PPPoE/PPPoA. Klik Next
6. Setelah itu masukkan username dan password Speedy anda, yang lainnya biarkan secara default. Klik Next
7. Jendela berikutnya adalah seting Wireless atau Wifi, apakah anda ingin mengaktifkan Wifi atau tidak tinggal pilih Activated atau Deactivated. SSID adalah nama Wifi yang akan muncul nanti sedangkan Pre-shared Key adalah password Wifi. Yang lain biarkan default kemudian klik Next.
8. Sampai di sini seting modem Speedy TP-Link TD-W8151N sudah selesai
Pastikan semua lampu modem nyala kecuali lampu tanda gembok.
Seting modem Speedy TP-Link TD-W8151N telah selesai, silahkan anda browsing seperti biasa. Jika modem masih juga tidak mau konek ke internet pastikan username dan password Speedy yang anda masukkan sudah benar. Kalu masih saja tidak mau konek berarti gangguan terjadi pada pusat, hubungi kantor Telkom terdekat.
Trus pertanyaannya, kenapa kok sampai modem diseting ulang, padahal kan sebelumnya sudah disetingkan oleh teknisi Speedy? Biasanya modem perlu diseting ulang setelah kita mereset modem. Nah setahu saya, reset modem terjadi ada 3 penyebab (kalau kurang mohon ditambahkan ya).
1. Pada waktu listrik tiba-tiba mati, kemudian setelah listrik nyala kembali tiba-tiba modem sudah tidak bisa konek internet. Sudah dihidupkan matikan tetap saja tidak mau konek. Ini saya sudah pernah mengalaminya sendiri. Nah setelah saya lihat disetingannya ternyata username dan password Speedy nya sudah tidak ada alias menghilang. Kok bisa? Kesimpulan saya sih mungkin listrik mati mendadak bisa juga menyebabkan modem TP-Link TD-W8151N ini bisa mereset sendiri. Jika anda memiliki masalah yang sama seperti saya, setelah listrik mati modem Speedy tidak bisa konek internet berarti modem anda mereset sendiri.
2. Kemudian reset modem terjadi pada saat modem tidak bisa konek ke internet (bukan karena listrik mati), melainkan tiba-tiba saja modem tidak mau konek ke internet. Biasanya jalan yang ditempuh adalah mereset modem. Setelah reset modem otomatis kita harus seting kembali dengan memasukkan username dan password Speedy kita kan. Kebanyakan setelah proses reset ini maka modem akan berjalan normal lagi, bisa konek ke internet.
3. Reset modem terjadi bila saja kita lupa akan IP modem. Kalau lupa IP modem otomatis kan tidak bisa masuk ke admin panel modem. Ini biasa terjadi pada modem yang sebelumnya sudah diubah IP address nya. Biasanya dilakukan pada mereka yang menggunakan router, sehingga IP modem disesuaikan dengan IP public router. Bisa saja kan suatu saat lupa IP address, salah satu cara ya direset tadi agar IP modem kembali ke IP default modem. Atau bisa juga anda hafal IP modem tetapi lupa password admin panel, nah sama saja tidak bisa masuk ke admin panel modem. Saran saya sih sebaiknya IP modem, username maupun password admin jangan sampai diubah, biarkan secara default saja.
Sekarang bagaimana cara reset modem Speedy TP-Link TD-W8151N ini? Di bagian belakang kan ada port-port buat LAN, ADSL, adaptor, dan juga ada tombol reset yang letaknya agak ke dalam.
Jika anda ingin merest, anda memerlukan alat yang runcing (misal pulpen) untuk menusuk tombol reset. Dalam keadaan modem Speedy masih hidup, tekan tombol reset menggunakan pulpen selama kurang lebih 8-10 detik, kemudian lepaskan. Tunggu hingga lampu modem nyala semua.
Setelah ini baru kita masuk ke panel admin modem untuk melakukan seting ulang username dan password, caranya adalah sebagai berikut.
1. Hubungkan modem Speedy ke komputer menggunakan kabel LAN. Buka browser Mozilla Firefox atau Google Chrome, ketikkan di address bar IP default modem TP-Link TD-W8151N yaitu 192.168.1.1 kemudian tekan enter maka akan muncul jendela untuk memasukkan username dan password, default username dan password nya adalah admin.
2. Setelah masuk ke admin panel, pilih tab Quick Start >> Run Wizard
3. Jendela selanjutnya klik Next
4. Pilih time zone anda, misal Jakarta, kemudian klik Next
5. Pilih ISP connection type. Jika modem anda langsung terhubung ke komputer (sebagai dial up) maka pilih PPPoE/PPPoA. Tapi jika anda menggunakan router atau mikrotik maka pilih Bridge mode. Tapi di sini saya contohkan modem langsung colok ke komputer sebagai dial up jadi pilih PPPoE/PPPoA. Klik Next
6. Setelah itu masukkan username dan password Speedy anda, yang lainnya biarkan secara default. Klik Next
7. Jendela berikutnya adalah seting Wireless atau Wifi, apakah anda ingin mengaktifkan Wifi atau tidak tinggal pilih Activated atau Deactivated. SSID adalah nama Wifi yang akan muncul nanti sedangkan Pre-shared Key adalah password Wifi. Yang lain biarkan default kemudian klik Next.
8. Sampai di sini seting modem Speedy TP-Link TD-W8151N sudah selesai
Pastikan semua lampu modem nyala kecuali lampu tanda gembok.
Seting modem Speedy TP-Link TD-W8151N telah selesai, silahkan anda browsing seperti biasa. Jika modem masih juga tidak mau konek ke internet pastikan username dan password Speedy yang anda masukkan sudah benar. Kalu masih saja tidak mau konek berarti gangguan terjadi pada pusat, hubungi kantor Telkom terdekat.
Minggu, 14 Desember 2014
CARA SETTING WIFI DENGAN ROUTER LINKSYS
Cara setting Wireless Router menggunakan LinkSys WRT54G sebagai berikut :
Konfigurasi Software
1. Setting modem TP-LINK
Colok kabel ke port LAN modem .
Ketik http://192.168.1.1 pada web browser .
( Kalau anda menginstal XAMPP ataupun Appserver , silahkan dinonaktifkan terlebih dahulu )
Login dengan admin , password : admin
Settingan dari speedy tidak perlu di ubah , hanya saja dimatikan DHCP server .
2. Settingan di router linksys
Colok kabel ke salah satu dari empat port LAN
Ketik http://192.168.1.1 pada web browser
Default , Jika setting username belum ubah .
Username : kosongkan saja .
Password : admin
Di menu BASIC SETUP
Pilih static IP
Internet IP Address : 192.168.1.10 ( ini adalah IP Linksys yang dikenal oleh si modem )
Subnet Mask : 255.255.255.0
Gateway : 192.168.1.1 ( ini adalah gateway dari si modem , port perantara yang terhubung ke jalur speedy )
Static DNS 1 : 202.134.1.10 ( Sesuai setingan dari speedy )
Static DNS 2 : 202.134.0.155 ( Sesuai setingan dari speedy )
Local IP Address : 192.168.2.1 ( ini adalah IP Wireless-LAN dari si router Linksys , yang dikenali oleh komputer client )
Subnet Mask : 255.255.255.0
Tekan apply , kemudian continue
Keterangan tambahan :
Jika mengetikkan http://192.168.1.10 hasilnya akan sama dengan 192.168.2.1 , karena keduanya adalah alamat IP dari si router , untuk konfigurasi .
DHCP Server : Enable
Starting IP Address : 192.168.2.100 ( IPdevice , semisal laptop anda akan diberikan IP ketika terdeteksi oleh routerLinksys )
Maximum Number of DHCP Users : 10 ( isi dengan jumlah client yang di inginkan )
Client Lease Time : 0 minutes ( 0 means one day )
WINS : 0.0.0.0
Tekan apply , kemudian continue .
Di menu WIRELESS >>> Basic Wireless Settings .
Network Mode : Mixed
Network Name ( SSID ) : ADAbisnis Hotspot ( sesuai keinginan anda )
Radio Band : Auto
Wide Channel : Auto
Standard Channel : Auto
Wireless SSID Broadcast : Enable
Tekan apply , kemudian continue .
SECURITY
Jika ingin menggunakan password untuk koneksi :
Wireless -> Wireless Security -> Enable
Pilih WEP , WPA , dst .
Isi passphrase . Pada WEP , key akan di generate , pilih saja Key 1 . Kemudian gunakanlah Key tersebut pada komputer client .
Ini digunakan untuk memproteksi internet anda dari pencolong koneksi .
Tekan apply , kemudian continue .
3. Hubungkan Semua Devicenya
Konfigurasi Hardware .
Alur koneksi :
KONEKSI SPEEDY -> MODEM TP-LINK -> Wireless Router LINKSYS -> WIRELESS DEVICE (Computer Client)
Keterangan :
Koneksi speedy ke modem menggunakan kabel telepon mealui splitter .
Koneksi modem ke linksys menggunakan kabel biru standard ( RJ-45 , kabel jaringan LAN ).
Koneksi linksys ke laptop , secara wireless , tidak perlu kabel .
4. Testing
Dari command prompt
Ping 192.168.1.1
Jika ada reply , berarti modem bisa diconfigurasi secara wireless
Ping 192.168.1.10
Atau
Ping 192.168.2.1
Jika ada reply , berarti wireless router bisa diconfigurasi secara wireless .
Ping www.google.com
Jika ada reply berarti anda siap meluncur ke dunia maya !
5. Setting Selesai
Koneksi siap pakai , speedy sudah bisa diakses nirkabel . Untuk memastikan ketik :
google.com pada web browser .
Minggu, 16 November 2014
SMS GATEWAY MENGGUNAKAN VISUAL BASIC
SMS Gateway Visual Basic
SMS Gateway Dengan Visual Basic
Sangat banyak tutorial SMS Gateway jika Anda browsing lewat om
google.com, tinggal pilih mau yang bersifat open source menggunakan
Kannel di Linux atau dengan gammu yang bisa digunakan di Windows atau di
Linux, dan bagi Anda penggemar windows dan familiar dengan program
Visual Basic atau Delphi pasti sangat banyak sekali Anda temukan, saya
pernah berkunjung ke situs http://bengkelprogram.com, disitu sangat
banyak sekali membahas tentang SMS Gateway dengan menggunakan program
Delphi dan Visual Basic.
Walaupun saya tidak begitu banyak mengerti SMS Gateway menggunakan Visual Basic dan Delphi tapi ini ada sedikit sharing buat rekan2 yang membutuhkannya, yang saya temukan dari beberapa artikel. YUp langsung saja contoh koneksi handphone ke program dengan visual basic:
1. Program Visual Basic harus sudah terinstall dikomputer Anda pastinya.
2. Download file Mfbus (sudah saya sertakan bersama contoh program), kemudian ekstrak ke folder windows\system32.
3. Registrasi dulu MFbus nya melalui command promt atau di klik aja tuh yang sudah ada di folder contoh prograh yang bertuliskan Regsvr32), jika dengna command promt caranaya ketik di kotak Run "regsvr32 Mfbus15.ocx "
4. Jangna lupa kabel datanya harus sudah terhubung dengan komputer Anda.
Setelah persiapan diatas Anda lakukan, tahap selanjutnya buat form seperti ini di program VB Anda:
- Double klik commandbutton "Connect" kemudian beri script berikut:
Private Sub Command1_Click()
'Untuk koneksi antara Handphone
'dengan Komputer. Nilai "COM1" dapat
'berubah-ubah sesuai dengan nomor
' COM yang digunakan namun
'jika menggunakan fbus biasanya
'antara COM1 atau COM2
MFBUS15Control1.Connect "COM1"
'Untuk menampilkan signal Handphone
Label1.Caption = "Signal : " & MFBUS15Control1.RfLevel
'Untuk mencek apakah koneksi berhasil atau gagal
If MFBUS15Control1.Connected = True Then
MsgBox "KONEKSI BERHASIL"
Else
MsgBox "KONEKSI GAGAL"
End If
End Sub
- Untuk Disconnectnya tempelkan program berikut:
Private Sub Command2_Click()
' Script memutus koneksi
MFBUS15Control1.Disconnect
'Untuk menyembunyikan tampilan nilai signal
Label1.Caption = "Signal : "
End Sub
Ingat yang ada gambar tulisan Fbus disana muncul jika Activex Mfbus sudah diaktifin. Setelah semuanya beres coba jalankan programnya.
Untuk mengetahui port berapa yang digunakan lihat di Device Manager.
Contoh program visual basic untuk sms gateway informasi valas dapat di download disini:
http://rapidshare.com/files/216611750/Program_SMS.rar.html
Walaupun saya tidak begitu banyak mengerti SMS Gateway menggunakan Visual Basic dan Delphi tapi ini ada sedikit sharing buat rekan2 yang membutuhkannya, yang saya temukan dari beberapa artikel. YUp langsung saja contoh koneksi handphone ke program dengan visual basic:
1. Program Visual Basic harus sudah terinstall dikomputer Anda pastinya.
2. Download file Mfbus (sudah saya sertakan bersama contoh program), kemudian ekstrak ke folder windows\system32.
3. Registrasi dulu MFbus nya melalui command promt atau di klik aja tuh yang sudah ada di folder contoh prograh yang bertuliskan Regsvr32), jika dengna command promt caranaya ketik di kotak Run "regsvr32 Mfbus15.ocx "
4. Jangna lupa kabel datanya harus sudah terhubung dengan komputer Anda.
Setelah persiapan diatas Anda lakukan, tahap selanjutnya buat form seperti ini di program VB Anda:
- Double klik commandbutton "Connect" kemudian beri script berikut:
Private Sub Command1_Click()
'Untuk koneksi antara Handphone
'dengan Komputer. Nilai "COM1" dapat
'berubah-ubah sesuai dengan nomor
' COM yang digunakan namun
'jika menggunakan fbus biasanya
'antara COM1 atau COM2
MFBUS15Control1.Connect "COM1"
'Untuk menampilkan signal Handphone
Label1.Caption = "Signal : " & MFBUS15Control1.RfLevel
'Untuk mencek apakah koneksi berhasil atau gagal
If MFBUS15Control1.Connected = True Then
MsgBox "KONEKSI BERHASIL"
Else
MsgBox "KONEKSI GAGAL"
End If
End Sub
- Untuk Disconnectnya tempelkan program berikut:
Private Sub Command2_Click()
' Script memutus koneksi
MFBUS15Control1.Disconnect
'Untuk menyembunyikan tampilan nilai signal
Label1.Caption = "Signal : "
End Sub
Ingat yang ada gambar tulisan Fbus disana muncul jika Activex Mfbus sudah diaktifin. Setelah semuanya beres coba jalankan programnya.
Untuk mengetahui port berapa yang digunakan lihat di Device Manager.
Contoh program visual basic untuk sms gateway informasi valas dapat di download disini:
http://rapidshare.com/files/216611750/Program_SMS.rar.html
Artikel
ini merupakan kelanjutan dari artikel sebelumnya yang berjudul
“Mengenal Cara Kerja SMS”, disini akan dijelaskan mengenai cara kerja
SMS Gateway. Jika kita mendengar istilah SMS Gateway maka kita akan
membayangkan sebuah sistem aplikasi yang dapat menerima dan melakukan
pengiriman sms, dan biasanya sistem tersebut terdiri dari sebuah
receiver, misal: GSM modem atau HP yang terhubung ke sebuah PC/Komputer
dan aplikasi yang berjalan didalamnya. Namun, penjelasan dalam artikel
ini akan sedikit berbeda, disini akan dijelaskan mengenai cara kerja SMS
Gateway yang digunakan disisi provider telekomunikasi (operator),
seperti Telkomsel, XL, Indosat dll. Anda juga akan mengetahui bagaimana
proses yang terjadi pada layanan polling, sms premium, sms-banking, sms
Broadcast dll di Operator.
Apa itu SMS Gateway ?
SMS
gateway adalah sebuah perangkat yang menawarkan layanan transit SMS,
mentransformasikan pesan ke jaringan selular dari media lain, atau
sebaliknya, sehingga memungkinkan pengiriman atau penerimaan pesan SMS
dengan atau tanpa menggunakan ponsel. (wikipedia).
Sebagaimana
penjelasan diatas, SMS Gateway dapat terhubung ke media lain seperti
perangkat SMSC dan server milik Content Provider melalui link IP untuk
memproses suatu layanan SMS.
Sebuah
sistem SMS Gateway, umumnya terdiri komponen Hardware ( Server/Komputer
yang dilengkapi dengan perangkat jaringan) dan Software (Aplikasi yang
digunakan untuk pengolahan pesan). Dan untuk sebuah sistem yang besar
umumnya menggunakan Database untuk penyimpanan data.
Kedudukan SMS Gateway dalam Network GSM.
Berikut ini adalah contoh kedudukan SMS Gateway di dalam jaringan milik operator beserta protokol komunikasi yang dipakai.
Dari
gambar diatas terlihat bahwa SMS Gateway berfungsi sebagai penghubung
yang melakukan relay sms antara ESME (External Short Message Entitiy)
dan SMSC dan sebaliknya. Komunikasi antara ESME dan SMS Gateway dapat
menggunakan protokol SMPP atau dengan HTTP, sementara ke SMSC
menggunakan SMPP.
ESME
adalah entitas luar yang dapat berupa server aplikasi penyedia layanan
(Application Service Provider) yang dimiliki oleh Content Provider,
aplikasi Perbankan, server polling, dan lain-lain yang dapat menerima
pesan, memproses pesan dan mengirim respons atas pesan yang masuk ,
serta perangkat lain seperti email gateway, WAP proxy server , Voice
mail server.
Protokol SMPP (Short Message Peer to Peer )
SMPP
adalah protokol yang cukup populer yang terbuka, protokol standar
industri yang dirancang untuk menyediakan antarmuka komunikasi data yang
fleksibel untuk transfer data pesan singkat antar entitas SMS, seperti
ESME dan SMSC. SMPP yang banyak digunakan sekarang adalah SMPP v3.4.
SMPP cukup populer dipakai karena memberikan kapasitas yang besar dan
kecepatan transfer sms yang cepat.
Dalam
komunikasi dengan menggunakan SMPP protokol, ada yang berfungsi sebagai
SMPP server dan yang lain sebagai SMPP Client. Sebagaimana diagram
diatas SMS Gateway selain berfungsi sebagai SMPP server juga dapat
berfungsi sebagai SMPP Client.
[ ESME ] ————–> [ SMSGW]
ESME = SMPP Client, SMSGW = SMPP Server
[ SMPP ] ————–> [ SMSC ]
SMSGW = SMPP Client, SMSC = SMPP Server
Sebuah
SMPP Client setidaknya memerlukan 4 buah parameter untuk dapat
berkomunikasi dengan SMPP Server, seperti: IP Address SMPP Server, Nomor
Port, User name dan Password.
Protokol HTTP ( Hypertext Transfer Protocol)
HTTP
adalah sebuah protokol jaringan lapisan aplikasi yang digunakan untuk
sistem informasi terdistribusi, kolaboratif, dan menggunakan hipermedia.
Kita semua cukup familiar dengan protokol ini, protokol yang digunakan
untuk aplikasi web. Sebagaimana SMPP, dalam komunikasinya bersifat
client-server, misal : Web Browser sebagai client dan Web Server.
Ada dua metode dalam protokol HTTP, yaitu metode GET dan POST. Dua metode tersebut dapat dipilih sesuai kebutuhan.
Contoh Alur SMS
Dari keterangan diatas kita dapat membayangkan bagaimana alur suatu layanan berbasis sms berjalan, misal: Sms premium.
1) Customer/Mobile Station(MS) melakukan pengiriman pesan.
2) SMS masuk ke SMSC melalui jaringan mobile.
3) Dari SMSC, pesan akan ditransfer ke Content Provider melewati SMS Gateway.
4) Pesan yang masuk ke Content Provider akan diproses oleh aplikasi, kemudian respons dikirim ke MS.
Teknologi SMS Gateway dengan AT Command
Sekilas Tentang SMS Gateway
Layanan pesan singkat atau Surat masa singkat (bahasa Inggris: Short Message Service disingkat SMS) adalah sebuah layanan yang dilaksanakan dengan sebuah telepon genggam untuk mengirim atau menerima pesan-pesan pendek. Pada mulanya SMS dirancang sebagai bagian daripada GSM, tetapi sekarang sudah didapatkan pada jaringan bergerak lainnya termasuk jaringan UMTS.
Sebuah pesan SMS maksimal terdiri dari 140 bytes, dengan kata lain sebuah pesan bisa memuat 140 karakter 8-bit, 160 karakter 7-bit atau 70 karakter 16-bit untuk bahasa Jepang, bahasa Mandarin dan bahasa Korea yang memakai Hanzi (Aksara Kanji / Hanja). Selain 140 bytes ini ada data-data lain yang termasuk. Adapula beberapa metode untuk mengirim pesan yang lebih dari 140 bytes, tetapi seorang pengguna harus membayar lebih dari sekali.
SMS bisa pula untuk mengirim gambar, suara dan film. SMS bentuk ini disebut MMS.
Pesan-pesan SMS dikirim dari sebuah telepon genggam ke pusat pesan (SMSC dalam bahasa Inggris), di sini pesan disimpan dan mencoba mengirimnya selama beberapa kali. Setelah sebuah waktu yang telah ditentukan, biasanya 1 hari atau 2 hari, lalu pesan dihapus. Seorang pengguna bisa mendapatkan konfirmasi dari pusat pesan ini.
SMS Gateway merupakan pintu gerbang bagi penyebaran Informasi dengan menggunakan SMS. Anda dapat menyebarkan pesan ke ratusan nomor secara otomatis dan cepat yang langsung terhubung dengan database nomor-nomor ponsel saja tanpa harus mengetik ratusan nomor dan pesan di ponsel anda karena semua nomor akan diambil secara otomatis dari database tersebut. Selain itu, dengan adanya SMS Gateway anda dapat mengcustomisasi pesan-pesan yang ingin dikirim. Dengan menggunakan program tambahan yang dapat dibuat sendiri, pengirim pesan dapat lebih fleksibel dalam mengirim berita karena biasanya pesan yang ingin dikirim berbeda-beda untuk masing-masing penerimanya.
SMS Gateway adalah jenis sms dua arah. Menariknya bahwa semua tarif yang diberlakukan adalah tarif sms normal sesuai dengan apa yang diberlakukan oleh operator. Karena sifatnya yang dua arah, maka jenis sms ini sangat cocok digunakan sebagai SMS Center sebuah organisasi atau perusahaan dalam rangka meningkatkan kualitas komunikasi antara anggota komunitas organisasi atau pegawai di dalam perusahaan.
Selain itu, dengan adanya SMS Gateway, Anda dapat mengatur pesan-pesan yang ingin dikirim. Dengan menggunakan program tambahan yang dapat dibuat sendiri, pengiriman pesan dapat lebih fleksibel dalam mengirim berita karena biasanya pesan yang ingin dikirim berbeda-beda untuk masing-masing penerimanya (kustomisasi pesan).
Kebutuhan Hardware
Untuk kebutuhan SMS Gateway tidak terlalu belebihan dan juga fleksibel karena bisa dibuat dengan :
1. PC maupun Notebook. Yang mutlak dibutuhkan adalah sebuah komputer tentunya ada USB atau port serial COM
2. Sebuah ponsel atau modem yang mendukung AT Command
3. Kabel data (Kabel berantarmuka serial yang dapat menghubungi ponsel dengan PC) atau dapat munggunakan InfraRed dan piranti lunak sebagai SMS Gateway.
Untuk menggunakan InfraRed anda membutuhkan sebuah ponsel yang juga memiliki fasilitas tsb, tapi tidak dianjurkan untuk kebutuhan SMS gateway karena komunikasi dengan InfraRed tidak terlalu baik (jika tergeser gampang putus).
Kebutuhan Software
Disini penulis menggunakan bahasa pemrograman Visual Basic 6.0 dan untuk pengertian perintah yang dipakai menggunakan AT Command. AT Command adalah perintah-perintah yang digunakan dalam komunikasi dengan serial port. Dengan AT Command kita dapat mengetahui vendor dari Handphone yang digunakan, kekuatan sinyal, membaca pesan yang ada pada SIM Card, megirim pesan, mendeteksi pesan SMS baru yang masuk secara otomatis, menghapus pesan pada SIM Card dan masih banyak lagi.
Dalam program SMS Gateway yang akan kita buat nanti, tidak semua perintah AT Command digunakan. Kita hanya menggunakan beberapa perintah AT yang ada hubungannya dengan sistem kerja dari program SMS Gateway. Adapun perintah yang akan digunakan adalah sebagai berikut :
Command - Keterangan
AT Mengecek apakah Handphone telah terhubung
AT+CMGF Untuk menetapkan format mode dari terminal
AT+CSCS Untuk menetapkan jenis encoding
AT+CNMI Untuk mendeteksi pesan SMS baru masuk secara otomatis
AT+CMGL Membuka daftar SMS yang ada pada SIM Card
AT+CMGS Mengirim pesan SMS
AT+CMGR Membaca pesan SMS
AT+CMGD Menghapus pasan SMS
ATE1 Mengatur ECHO
ATV1 Mengatur input dan output berupa naskah
AT+CGMI Mengecek Merek HP
AT+CGMM Mengecek Seri HP
AT+CGMR Mengecek Versi Keluaran HP
AT+CBC Mengecek Baterai
AT+CSQ Mengecek Kualitas Sinyal
AT+CCLK? Mengecek Jam (waktu) pada HP
AT+CALM=< n > Mengecek Suara/dering HP saat di Telepon (ada Telepon Masuk)
‘n’ adalah adalah angka yang menunjukkan jenis dering
0 = berdering
1 dan 2 = Silent (Diam)
AT^SCID Mengecek ID SIM CARD
AT+CGSN Mengecek Nomor IMEI
AT+CLIP=1 Menampilkan nomor telepon pemanggil
AT+CLCC Menampilkan nomor telepon yang sedang memanggil
AT+COPN Menampilkan Nama Sumua Operator di dunia
AT+COPS? Menampilkan nama operator dari SIM yang digunakan
AT+CPBR=< n > Membaca nomor telepon yang disimpan pada buku telepon (SIM CARD)
‘n’ adalah nomor urut penyimpanan
AT+CPMS=< md > Mengatur Memori dari HP
‘md’ adalah memori yang digunakan
ME = Memori HP
SM = Memori SIM CARD
Langkah-langkah pengcodingan:
Nah sekarang buka Program Microsoft Visual Basic Anda dan ikuti langkah berikut ini:
1. Buka aplikasi VB 6 anda dan pilih standard exe lalu open
2. Tambahkan 1 modul dengan cara klik menu project - add module lalu tambahkan koding dibawah ini :
5. Set boudrate dan lainnya sesuai dengan setingan HP atau modem anda lalu pada form load isikan perintah inisialisasi modem/hp.
6. Silahkan test send sms dengan menggunakan fungsi SendSMS dan silahkan coba-coba fungsi lainnya.
7. Selamat mencoba.
Layanan pesan singkat atau Surat masa singkat (bahasa Inggris: Short Message Service disingkat SMS) adalah sebuah layanan yang dilaksanakan dengan sebuah telepon genggam untuk mengirim atau menerima pesan-pesan pendek. Pada mulanya SMS dirancang sebagai bagian daripada GSM, tetapi sekarang sudah didapatkan pada jaringan bergerak lainnya termasuk jaringan UMTS.
Sebuah pesan SMS maksimal terdiri dari 140 bytes, dengan kata lain sebuah pesan bisa memuat 140 karakter 8-bit, 160 karakter 7-bit atau 70 karakter 16-bit untuk bahasa Jepang, bahasa Mandarin dan bahasa Korea yang memakai Hanzi (Aksara Kanji / Hanja). Selain 140 bytes ini ada data-data lain yang termasuk. Adapula beberapa metode untuk mengirim pesan yang lebih dari 140 bytes, tetapi seorang pengguna harus membayar lebih dari sekali.
SMS bisa pula untuk mengirim gambar, suara dan film. SMS bentuk ini disebut MMS.
Pesan-pesan SMS dikirim dari sebuah telepon genggam ke pusat pesan (SMSC dalam bahasa Inggris), di sini pesan disimpan dan mencoba mengirimnya selama beberapa kali. Setelah sebuah waktu yang telah ditentukan, biasanya 1 hari atau 2 hari, lalu pesan dihapus. Seorang pengguna bisa mendapatkan konfirmasi dari pusat pesan ini.
SMS Gateway merupakan pintu gerbang bagi penyebaran Informasi dengan menggunakan SMS. Anda dapat menyebarkan pesan ke ratusan nomor secara otomatis dan cepat yang langsung terhubung dengan database nomor-nomor ponsel saja tanpa harus mengetik ratusan nomor dan pesan di ponsel anda karena semua nomor akan diambil secara otomatis dari database tersebut. Selain itu, dengan adanya SMS Gateway anda dapat mengcustomisasi pesan-pesan yang ingin dikirim. Dengan menggunakan program tambahan yang dapat dibuat sendiri, pengirim pesan dapat lebih fleksibel dalam mengirim berita karena biasanya pesan yang ingin dikirim berbeda-beda untuk masing-masing penerimanya.
SMS Gateway adalah jenis sms dua arah. Menariknya bahwa semua tarif yang diberlakukan adalah tarif sms normal sesuai dengan apa yang diberlakukan oleh operator. Karena sifatnya yang dua arah, maka jenis sms ini sangat cocok digunakan sebagai SMS Center sebuah organisasi atau perusahaan dalam rangka meningkatkan kualitas komunikasi antara anggota komunitas organisasi atau pegawai di dalam perusahaan.
Selain itu, dengan adanya SMS Gateway, Anda dapat mengatur pesan-pesan yang ingin dikirim. Dengan menggunakan program tambahan yang dapat dibuat sendiri, pengiriman pesan dapat lebih fleksibel dalam mengirim berita karena biasanya pesan yang ingin dikirim berbeda-beda untuk masing-masing penerimanya (kustomisasi pesan).
Kebutuhan Hardware
Untuk kebutuhan SMS Gateway tidak terlalu belebihan dan juga fleksibel karena bisa dibuat dengan :
1. PC maupun Notebook. Yang mutlak dibutuhkan adalah sebuah komputer tentunya ada USB atau port serial COM
2. Sebuah ponsel atau modem yang mendukung AT Command
3. Kabel data (Kabel berantarmuka serial yang dapat menghubungi ponsel dengan PC) atau dapat munggunakan InfraRed dan piranti lunak sebagai SMS Gateway.
Untuk menggunakan InfraRed anda membutuhkan sebuah ponsel yang juga memiliki fasilitas tsb, tapi tidak dianjurkan untuk kebutuhan SMS gateway karena komunikasi dengan InfraRed tidak terlalu baik (jika tergeser gampang putus).
Kebutuhan Software
Disini penulis menggunakan bahasa pemrograman Visual Basic 6.0 dan untuk pengertian perintah yang dipakai menggunakan AT Command. AT Command adalah perintah-perintah yang digunakan dalam komunikasi dengan serial port. Dengan AT Command kita dapat mengetahui vendor dari Handphone yang digunakan, kekuatan sinyal, membaca pesan yang ada pada SIM Card, megirim pesan, mendeteksi pesan SMS baru yang masuk secara otomatis, menghapus pesan pada SIM Card dan masih banyak lagi.
Dalam program SMS Gateway yang akan kita buat nanti, tidak semua perintah AT Command digunakan. Kita hanya menggunakan beberapa perintah AT yang ada hubungannya dengan sistem kerja dari program SMS Gateway. Adapun perintah yang akan digunakan adalah sebagai berikut :
Command - Keterangan
AT Mengecek apakah Handphone telah terhubung
AT+CMGF Untuk menetapkan format mode dari terminal
AT+CSCS Untuk menetapkan jenis encoding
AT+CNMI Untuk mendeteksi pesan SMS baru masuk secara otomatis
AT+CMGL Membuka daftar SMS yang ada pada SIM Card
AT+CMGS Mengirim pesan SMS
AT+CMGR Membaca pesan SMS
AT+CMGD Menghapus pasan SMS
ATE1 Mengatur ECHO
ATV1 Mengatur input dan output berupa naskah
AT+CGMI Mengecek Merek HP
AT+CGMM Mengecek Seri HP
AT+CGMR Mengecek Versi Keluaran HP
AT+CBC Mengecek Baterai
AT+CSQ Mengecek Kualitas Sinyal
AT+CCLK? Mengecek Jam (waktu) pada HP
AT+CALM=< n > Mengecek Suara/dering HP saat di Telepon (ada Telepon Masuk)
‘n’ adalah adalah angka yang menunjukkan jenis dering
0 = berdering
1 dan 2 = Silent (Diam)
AT^SCID Mengecek ID SIM CARD
AT+CGSN Mengecek Nomor IMEI
AT+CLIP=1 Menampilkan nomor telepon pemanggil
AT+CLCC Menampilkan nomor telepon yang sedang memanggil
AT+COPN Menampilkan Nama Sumua Operator di dunia
AT+COPS? Menampilkan nama operator dari SIM yang digunakan
AT+CPBR=< n > Membaca nomor telepon yang disimpan pada buku telepon (SIM CARD)
‘n’ adalah nomor urut penyimpanan
AT+CPMS=< md > Mengatur Memori dari HP
‘md’ adalah memori yang digunakan
ME = Memori HP
SM = Memori SIM CARD
Langkah-langkah pengcodingan:
Nah sekarang buka Program Microsoft Visual Basic Anda dan ikuti langkah berikut ini:
1. Buka aplikasi VB 6 anda dan pilih standard exe lalu open
2. Tambahkan 1 modul dengan cara klik menu project - add module lalu tambahkan koding dibawah ini :
Option Explicit
Public Function RemoveInternationalDiallingCode _
(ByVal tTelNumber As String) As String
RemoveInternationalDiallingCode = "0" & Mid(tTelNumber, 4)
End Function
Public Function GetSMSNum(ByVal tSMSNotification As String) As String
Dim lCRPos As Long
lCRPos = InStrRev(tSMSNotification, vbCr)
If lCRPos > 0 Then GetSMSNum = Mid(tSMSNotification, lCRPos - 2, 2)
If Left(GetSMSNum, 1) = "," Then GetSMSNum = Right(GetSMSNum, 1)
End Function
Public Function ReadSMS(comms As MSComm, _
ByVal tSMSNum As String, tMessage As String, _
tSender As String, tDate As String, _
tTime As String, bRead As Boolean) As Boolean
Dim tChar As String * 1
Dim i As Long
Dim tRead As String
Dim lQuoteNum As Long
Dim tDateTime As String
Dim tData As String
Const TIMEOUT = 10000
On Error GoTo ErrHandler
tData = "AT+CMGR=" & tSMSNum & vbCr
comms.InBufferCount = 0
comms.Output = tData
tData = ""
i = timeGetTime
Do While timeGetTime - i <= TIMEOUT And InStr(tData, "OK" & vbCrLf) = 0 And InStr(tData, "ERROR" & vbCrLf) = 0
DoEvents
If comms.InBufferCount > 0 Then
tChar = comms.Input
tData = tData & tChar
End If
Loop
If InStr(tData, "ERROR") = 0 And tData <> "" Then
For i = 1 To Len(tData)
tChar = Mid(tData, i, 1)
If tChar = """" Then lQuoteNum = lQuoteNum + 1
If lQuoteNum = 1 And tChar <> """" Then tRead = tRead & tChar
If lQuoteNum = 3 And tChar <> """" Then tSender = tSender & tChar
If lQuoteNum = 5 And tChar <> """" Then tDateTime = tDateTime & tChar
If lQuoteNum = 6 And tChar <> """" Then tMessage = tMessage & tChar
Next i
bRead = (tRead = "REC READ")
tDate = Left(tDateTime, 8)
tTime = Mid(tDateTime, 10, 8)
tMessage = Mid(tMessage, 3)
tMessage = Mid(tMessage, 1, InStr(tMessage, vbCr) - 1)
ReadSMS = True
End If
Exit Function
ErrHandler:
ReadSMS = False
End Function
Public Function DeleteAllSMSes(comms As MSComm) As Boolean
Dim i As Long
For i = 1 To 15
DeleteAllSMSes = InStr(TransmitAndReceiveData(comms, "AT+CMGD=" & i & vbCr), "OK")
Next i
End Function
Public Function DeleteSMS(comms As MSComm, ByVal lSMSNum As Long) As Boolean
DeleteSMS = InStr(TransmitAndReceiveData(comms, "AT+CMGD=" & lSMSNum & vbCr), "OK")
End Function
Public Function SendSMS(comms As MSComm, ByVal tSMSNum As String, ByVal tMessage As String) As Boolean
SendSMS = InStr(TransmitAndReceiveData(comms, "AT+CMGS=" & """" & tSMSNum & """" & vbCr & tMessage & Chr(26)), "OK")
End Function
Public Function TestModem(comms As MSComm) As String
TestModem = TransmitAndReceiveData(comms, "AT")
End Function
Public Function ManufacturerInfo(comms As MSComm) As String
ManufacturerInfo = TransmitAndReceiveData(comms, "AT+CGMI")
End Function
Public Function ModelInfo(comms As MSComm) As String
ModelInfo = TransmitAndReceiveData(comms, "AT+CGMM")
End Function
Public Function FirmwareInfo(comms As MSComm) As String
FirmwareInfo = TransmitAndReceiveData(comms, "AT+CGMR")
End Function
Public Function IMEIInfo(comms As MSComm) As String
IMEIInfo = TransmitAndReceiveData(comms, "AT+CGSN")
End Function
Public Function IMSIInfo(comms As MSComm) As String
IMSIInfo = TransmitAndReceiveData(comms, "AT+CIMI")
End Function
Public Function EF_CCIDInfo(comms As MSComm) As String
EF_CCIDInfo = TransmitAndReceiveData(comms, "AT+CCID")
End Function
Public Function NetworkRegStatus(comms As MSComm) As String
NetworkRegStatus = TransmitAndReceiveData(comms, "AT+CREG?")
End Function
Public Function AvailablePLMNs(comms As MSComm) As String
AvailablePLMNs = TransmitAndReceiveData(comms, "AT+COPS?")
End Function
Public Function NetworkFieldStrength(comms As MSComm) As String
NetworkFieldStrength = TransmitAndReceiveData(comms, "AT+CSQ")
End Function
Public Function MainCellMainParams(comms As MSComm) As String
MainCellMainParams = TransmitAndReceiveData(comms, "AT+CCED=0")
End Function
Public Function TransmitAndReceiveData(comms As MSComm, ByVal tData As String) As String
Dim lTime As Long
Const TIMEOUT = 10000
tData = tData & vbCr
With comms
.InBufferCount = 0
.Output = tData
tData = ""
lTime = timeGetTime
tData = ""
Do While timeGetTime - lTime <= TIMEOUT And InStr(tData, "OK") = 0 And InStr(tData, "ERROR" & vbCrLf) = 0
DoEvents
If .InBufferCount > 0 Then tData = tData & .Input
Loop
End With
TransmitAndReceiveData = tData
End Function
4. Tambahkan komponen mscomm punyanya microsoftPublic Function RemoveInternationalDiallingCode _
(ByVal tTelNumber As String) As String
RemoveInternationalDiallingCode = "0" & Mid(tTelNumber, 4)
End Function
Public Function GetSMSNum(ByVal tSMSNotification As String) As String
Dim lCRPos As Long
lCRPos = InStrRev(tSMSNotification, vbCr)
If lCRPos > 0 Then GetSMSNum = Mid(tSMSNotification, lCRPos - 2, 2)
If Left(GetSMSNum, 1) = "," Then GetSMSNum = Right(GetSMSNum, 1)
End Function
Public Function ReadSMS(comms As MSComm, _
ByVal tSMSNum As String, tMessage As String, _
tSender As String, tDate As String, _
tTime As String, bRead As Boolean) As Boolean
Dim tChar As String * 1
Dim i As Long
Dim tRead As String
Dim lQuoteNum As Long
Dim tDateTime As String
Dim tData As String
Const TIMEOUT = 10000
On Error GoTo ErrHandler
tData = "AT+CMGR=" & tSMSNum & vbCr
comms.InBufferCount = 0
comms.Output = tData
tData = ""
i = timeGetTime
Do While timeGetTime - i <= TIMEOUT And InStr(tData, "OK" & vbCrLf) = 0 And InStr(tData, "ERROR" & vbCrLf) = 0
DoEvents
If comms.InBufferCount > 0 Then
tChar = comms.Input
tData = tData & tChar
End If
Loop
If InStr(tData, "ERROR") = 0 And tData <> "" Then
For i = 1 To Len(tData)
tChar = Mid(tData, i, 1)
If tChar = """" Then lQuoteNum = lQuoteNum + 1
If lQuoteNum = 1 And tChar <> """" Then tRead = tRead & tChar
If lQuoteNum = 3 And tChar <> """" Then tSender = tSender & tChar
If lQuoteNum = 5 And tChar <> """" Then tDateTime = tDateTime & tChar
If lQuoteNum = 6 And tChar <> """" Then tMessage = tMessage & tChar
Next i
bRead = (tRead = "REC READ")
tDate = Left(tDateTime, 8)
tTime = Mid(tDateTime, 10, 8)
tMessage = Mid(tMessage, 3)
tMessage = Mid(tMessage, 1, InStr(tMessage, vbCr) - 1)
ReadSMS = True
End If
Exit Function
ErrHandler:
ReadSMS = False
End Function
Public Function DeleteAllSMSes(comms As MSComm) As Boolean
Dim i As Long
For i = 1 To 15
DeleteAllSMSes = InStr(TransmitAndReceiveData(comms, "AT+CMGD=" & i & vbCr), "OK")
Next i
End Function
Public Function DeleteSMS(comms As MSComm, ByVal lSMSNum As Long) As Boolean
DeleteSMS = InStr(TransmitAndReceiveData(comms, "AT+CMGD=" & lSMSNum & vbCr), "OK")
End Function
Public Function SendSMS(comms As MSComm, ByVal tSMSNum As String, ByVal tMessage As String) As Boolean
SendSMS = InStr(TransmitAndReceiveData(comms, "AT+CMGS=" & """" & tSMSNum & """" & vbCr & tMessage & Chr(26)), "OK")
End Function
Public Function TestModem(comms As MSComm) As String
TestModem = TransmitAndReceiveData(comms, "AT")
End Function
Public Function ManufacturerInfo(comms As MSComm) As String
ManufacturerInfo = TransmitAndReceiveData(comms, "AT+CGMI")
End Function
Public Function ModelInfo(comms As MSComm) As String
ModelInfo = TransmitAndReceiveData(comms, "AT+CGMM")
End Function
Public Function FirmwareInfo(comms As MSComm) As String
FirmwareInfo = TransmitAndReceiveData(comms, "AT+CGMR")
End Function
Public Function IMEIInfo(comms As MSComm) As String
IMEIInfo = TransmitAndReceiveData(comms, "AT+CGSN")
End Function
Public Function IMSIInfo(comms As MSComm) As String
IMSIInfo = TransmitAndReceiveData(comms, "AT+CIMI")
End Function
Public Function EF_CCIDInfo(comms As MSComm) As String
EF_CCIDInfo = TransmitAndReceiveData(comms, "AT+CCID")
End Function
Public Function NetworkRegStatus(comms As MSComm) As String
NetworkRegStatus = TransmitAndReceiveData(comms, "AT+CREG?")
End Function
Public Function AvailablePLMNs(comms As MSComm) As String
AvailablePLMNs = TransmitAndReceiveData(comms, "AT+COPS?")
End Function
Public Function NetworkFieldStrength(comms As MSComm) As String
NetworkFieldStrength = TransmitAndReceiveData(comms, "AT+CSQ")
End Function
Public Function MainCellMainParams(comms As MSComm) As String
MainCellMainParams = TransmitAndReceiveData(comms, "AT+CCED=0")
End Function
Public Function TransmitAndReceiveData(comms As MSComm, ByVal tData As String) As String
Dim lTime As Long
Const TIMEOUT = 10000
tData = tData & vbCr
With comms
.InBufferCount = 0
.Output = tData
tData = ""
lTime = timeGetTime
tData = ""
Do While timeGetTime - lTime <= TIMEOUT And InStr(tData, "OK") = 0 And InStr(tData, "ERROR" & vbCrLf) = 0
DoEvents
If .InBufferCount > 0 Then tData = tData & .Input
Loop
End With
TransmitAndReceiveData = tData
End Function
5. Set boudrate dan lainnya sesuai dengan setingan HP atau modem anda lalu pada form load isikan perintah inisialisasi modem/hp.
6. Silahkan test send sms dengan menggunakan fungsi SendSMS dan silahkan coba-coba fungsi lainnya.
7. Selamat mencoba.
[Seri Tutorial SMS Gateway] Membuat Aplikasi Mengirim dan Menerima SMS dengan Visual Basic 6 dan Lawoo SMS Gateway
Lawoo SMS Gateway dapat dikolaborasikan dengan bahasa pemrograman apapun
yang Anda kuasai. Pada tutorial sebelumnya telah disajikan cara membuat
script PHP untuk mengirim SMS, maka kali ini akan dibahas pembuatan
aplikasi Kirim dan Terima SMS menggunakan Bahasa Pemrograman Visual
Basic 6.
Sebelum masuk ke lingkungan pemrograman Visual Basic 6, ada beberapa langkah yang harus dilakukan terlebih dahulu, yaitu membuat USER DSN menggunakan ODBC. Langkah-langkahnya adalah sebagai berikut:
1. Pada Sistem Operasi Windows, Klik START -> CONTROL PANEL, selanjutnya ketik "ODBC" dibagian SEARCH (pojok kanan atas jendela Control Panel), lebih jelasnya lihat gambar di bawah ini:
2. Masih di jendela Control Panel seperti gambar di atas, klik Set up data sources (ODBC).
3. Selanjutnya akan muncul jendela ODBC Data Source Administrator dan klik saja tombol [Add...] seperti gambar di bawah ini:
4. Selanjutnya akan muncul jendela Create New Data Source, pada daftar yang ada, pilih saja MySQL ODBC 3.51 Driver, kemudian klik Next. Lebih jelasnya perhatikan gambar berikut ini:
5. Selanjutnya akan muncul jendela Connector/ODBC - Add Data Source Name. Pada jendela ini isikan parameter-parameter berikut ini:
Data Source Name : LawooVB
Server : localhost
User : root
Password:
Database: lawoo_db
Perhatikan gambar di bawah ini agar lebih jelas:
Setelah mengisi dengan parameter diatas, klik tombol TEST, dan pastikan muncul informasi bahwa pembuatan koneksi berhasil:
Klik OK untuk menutup jendela konfigurasi data source.
6. Tahap pembuatan koneksi ke MySQL sudah selesai. Tahap berikutnya adalah mulai membuat program dengan Visual Basic 6. Dan Saya asumsikan bahwa Anda setidaknya sudah memahami dasar-dasar pemrograman Visual Basic 6.
7. Buka Microsoft Visual Basic 6, buat sebuah form kosong.
8. Kemudian Klik Menu PROJECT --> COMPONENTS. Pada daftar komponen, pilih: (a) Microsoft ADO Data Control 6.0, dan (b) Microsoft DataGrid Control 6.0 kemudian klik OK. Lebih jelasnya perhatikan gambar berikut:
9. Selanjutnya desainlah sebuah form seperti pada gambar berikut ini:
Adapun komponen-komponen yang ditambahkan ke dalam form dan properti yang diatur adalah sebagai berikut:
10. Selanjutnya memulai pembuatan kode programnya. Untuk masuk ke editor program, klik menu VIEW-CODE. kemudian ketik baris-baris kode berikut:
Private Sub IsiModem()
With adoMODEM
.CommandType = adCmdText
.RecordSource = "SELECT * FROM modem"
.Refresh
If .Recordset.RecordCount > 0 Then
cboModem.Clear
.Recordset.MoveFirst
While Not .Recordset.EOF
cboModem.AddItem .Recordset.Fields("IMEI").Value
.Recordset.MoveNext
Wend
End If
End With
If cboModem.ListCount > 0 Then cboModem.ListIndex = 0
End Sub
==========================
Private Sub TampilkanOutbox()
With adoOUTBOX
.CommandType = adCmdText
.RecordSource = "SELECT DESTINATIONNUMBER, MESSAGES, SENDINGDATETIME, PRIORITY, IMEI FROM outbox"
.Refresh
lblStatusOutbox.Caption = "Jumlah Antrian SMS: " & .Recordset.RecordCount
End With
With dgOUTBOX
.RowHeight = 600
Set .DataSource = adoOUTBOX
.Columns(0).Caption = "No. Tujuan"
.Columns(1).Caption = "Pesan"
.Columns(2).Caption = "Tgl. Jam"
.Columns(3).Caption = "Prioritas"
.Columns(4).Caption = "IMEI"
.Columns(0).Width = 1100
.Columns(1).Width = 3500
.Columns(2).Width = 800
.Columns(3).Width = 800
.Columns(4).Width = 800
.Columns(0).WrapText = True
.Columns(1).WrapText = True
.Columns(2).WrapText = True
.Columns(3).WrapText = True
.Columns(4).WrapText = True
End With
End Sub
==========================
Private Sub TampilkanInbox()
With adoINBOX
.CommandType = adCmdText
.RecordSource = "SELECT NOOA, UD, SCTS_D, SCTS_T FROM inbox ORDER BY ID DESC"
.Refresh
lblStatusInbox.Caption = "Jumlah SMS di Inbox: " & .Recordset.RecordCount
End With
With dgINBOX
.RowHeight = 600
Set .DataSource = adoINBOX
.Columns(0).Caption = "No. Pengirim"
.Columns(1).Caption = "Pesan"
.Columns(2).Caption = "Tgl"
.Columns(3).Caption = "Jam"
.Columns(0).Width = 1000
.Columns(1).Width = 3500
.Columns(2).Width = 800
.Columns(3).Width = 800
.Columns(0).WrapText = True
.Columns(1).WrapText = True
.Columns(2).WrapText = True
.Columns(3).WrapText = True
End With
End Sub
==========================
Private Sub cmdKirim_Click()
Dim vIMEI As String
Dim vNoTujuan As String
Dim vPesan As String
Dim vTimeStamp As String
Dim vPriority As Integer
vIMEI = cboModem.Text
vNoTujuan = txtNoTujuan.Text
vPesan = txtPesan.Text
vTimeStamp = Format(Now, "yyyy-MM-dd HH:mm")
vPriority = 5 'Normal
With adoOUTBOX
.Recordset.AddNew
.Recordset.Fields("SENDINGDATETIME").Value = vTimeStamp
.Recordset.Fields("MESSAGES").Value = vPesan
.Recordset.Fields("DESTINATIONNUMBER").Value = vNoTujuan
.Recordset.Fields("PRIORITY").Value = vPriority
.Recordset.Fields("IMEI").Value = vIMEI
.Recordset.Update
End With
txtNoTujuan.Text = ""
txtPesan.Text = ""
End Sub
==========================
Private Sub cmdTutup_Click()
Unload Me
End Sub
==========================
Private Sub Form_Load()
adoINBOX.ConnectionString = "DSN=LawooVB"
adoOUTBOX.ConnectionString = "DSN=LawooVB"
adoMODEM.ConnectionString = "DSN=LawooVB"
IsiModem
TampilkanOutbox
TampilkanInbox
End Sub
==========================
Private Sub Timer1_Timer()
TampilkanOutbox
TampilkanInbox
End Sub
==========================
11. Selesai, Simpan form dan project Anda, kemudian Jalankan program dengan menekan tombol F5 atau ikon START.
12. Saatnya mengujicoba mengirim dan menerima SMS dengan Lawoo SMS Gateway. Pastikan Server Lawoo SMS Gateway sudah berjalan agar program yang Anda buat diatas dapat mengirim dan menerima SMS dengan lancar.
13. Selamat berkarya. Untuk source code program pada tutorial ini dapat di download di sini.
Catatan: Saya asumsikan bahwasanya Lawoo SMS Gateway sudah terinstall di Sistem Operasi Windows Anda, dan sudah Anda lakukan konfigurasi seperti yang tercantum di dalam buku manual.
Sebelum masuk ke lingkungan pemrograman Visual Basic 6, ada beberapa langkah yang harus dilakukan terlebih dahulu, yaitu membuat USER DSN menggunakan ODBC. Langkah-langkahnya adalah sebagai berikut:
1. Pada Sistem Operasi Windows, Klik START -> CONTROL PANEL, selanjutnya ketik "ODBC" dibagian SEARCH (pojok kanan atas jendela Control Panel), lebih jelasnya lihat gambar di bawah ini:
2. Masih di jendela Control Panel seperti gambar di atas, klik Set up data sources (ODBC).
3. Selanjutnya akan muncul jendela ODBC Data Source Administrator dan klik saja tombol [Add...] seperti gambar di bawah ini:
4. Selanjutnya akan muncul jendela Create New Data Source, pada daftar yang ada, pilih saja MySQL ODBC 3.51 Driver, kemudian klik Next. Lebih jelasnya perhatikan gambar berikut ini:
5. Selanjutnya akan muncul jendela Connector/ODBC - Add Data Source Name. Pada jendela ini isikan parameter-parameter berikut ini:
Data Source Name : LawooVB
Server : localhost
User : root
Password:
Database: lawoo_db
Perhatikan gambar di bawah ini agar lebih jelas:
Setelah mengisi dengan parameter diatas, klik tombol TEST, dan pastikan muncul informasi bahwa pembuatan koneksi berhasil:
Klik OK untuk menutup jendela konfigurasi data source.
6. Tahap pembuatan koneksi ke MySQL sudah selesai. Tahap berikutnya adalah mulai membuat program dengan Visual Basic 6. Dan Saya asumsikan bahwa Anda setidaknya sudah memahami dasar-dasar pemrograman Visual Basic 6.
7. Buka Microsoft Visual Basic 6, buat sebuah form kosong.
8. Kemudian Klik Menu PROJECT --> COMPONENTS. Pada daftar komponen, pilih: (a) Microsoft ADO Data Control 6.0, dan (b) Microsoft DataGrid Control 6.0 kemudian klik OK. Lebih jelasnya perhatikan gambar berikut:
9. Selanjutnya desainlah sebuah form seperti pada gambar berikut ini:
Adapun komponen-komponen yang ditambahkan ke dalam form dan properti yang diatur adalah sebagai berikut:
10. Selanjutnya memulai pembuatan kode programnya. Untuk masuk ke editor program, klik menu VIEW-CODE. kemudian ketik baris-baris kode berikut:
Private Sub IsiModem()
With adoMODEM
.CommandType = adCmdText
.RecordSource = "SELECT * FROM modem"
.Refresh
If .Recordset.RecordCount > 0 Then
cboModem.Clear
.Recordset.MoveFirst
While Not .Recordset.EOF
cboModem.AddItem .Recordset.Fields("IMEI").Value
.Recordset.MoveNext
Wend
End If
End With
If cboModem.ListCount > 0 Then cboModem.ListIndex = 0
End Sub
==========================
Private Sub TampilkanOutbox()
With adoOUTBOX
.CommandType = adCmdText
.RecordSource = "SELECT DESTINATIONNUMBER, MESSAGES, SENDINGDATETIME, PRIORITY, IMEI FROM outbox"
.Refresh
lblStatusOutbox.Caption = "Jumlah Antrian SMS: " & .Recordset.RecordCount
End With
With dgOUTBOX
.RowHeight = 600
Set .DataSource = adoOUTBOX
.Columns(0).Caption = "No. Tujuan"
.Columns(1).Caption = "Pesan"
.Columns(2).Caption = "Tgl. Jam"
.Columns(3).Caption = "Prioritas"
.Columns(4).Caption = "IMEI"
.Columns(0).Width = 1100
.Columns(1).Width = 3500
.Columns(2).Width = 800
.Columns(3).Width = 800
.Columns(4).Width = 800
.Columns(0).WrapText = True
.Columns(1).WrapText = True
.Columns(2).WrapText = True
.Columns(3).WrapText = True
.Columns(4).WrapText = True
End With
End Sub
==========================
Private Sub TampilkanInbox()
With adoINBOX
.CommandType = adCmdText
.RecordSource = "SELECT NOOA, UD, SCTS_D, SCTS_T FROM inbox ORDER BY ID DESC"
.Refresh
lblStatusInbox.Caption = "Jumlah SMS di Inbox: " & .Recordset.RecordCount
End With
With dgINBOX
.RowHeight = 600
Set .DataSource = adoINBOX
.Columns(0).Caption = "No. Pengirim"
.Columns(1).Caption = "Pesan"
.Columns(2).Caption = "Tgl"
.Columns(3).Caption = "Jam"
.Columns(0).Width = 1000
.Columns(1).Width = 3500
.Columns(2).Width = 800
.Columns(3).Width = 800
.Columns(0).WrapText = True
.Columns(1).WrapText = True
.Columns(2).WrapText = True
.Columns(3).WrapText = True
End With
End Sub
==========================
Private Sub cmdKirim_Click()
Dim vIMEI As String
Dim vNoTujuan As String
Dim vPesan As String
Dim vTimeStamp As String
Dim vPriority As Integer
vIMEI = cboModem.Text
vNoTujuan = txtNoTujuan.Text
vPesan = txtPesan.Text
vTimeStamp = Format(Now, "yyyy-MM-dd HH:mm")
vPriority = 5 'Normal
With adoOUTBOX
.Recordset.AddNew
.Recordset.Fields("SENDINGDATETIME").Value = vTimeStamp
.Recordset.Fields("MESSAGES").Value = vPesan
.Recordset.Fields("DESTINATIONNUMBER").Value = vNoTujuan
.Recordset.Fields("PRIORITY").Value = vPriority
.Recordset.Fields("IMEI").Value = vIMEI
.Recordset.Update
End With
txtNoTujuan.Text = ""
txtPesan.Text = ""
End Sub
==========================
Private Sub cmdTutup_Click()
Unload Me
End Sub
==========================
Private Sub Form_Load()
adoINBOX.ConnectionString = "DSN=LawooVB"
adoOUTBOX.ConnectionString = "DSN=LawooVB"
adoMODEM.ConnectionString = "DSN=LawooVB"
IsiModem
TampilkanOutbox
TampilkanInbox
End Sub
==========================
Private Sub Timer1_Timer()
TampilkanOutbox
TampilkanInbox
End Sub
==========================
11. Selesai, Simpan form dan project Anda, kemudian Jalankan program dengan menekan tombol F5 atau ikon START.
12. Saatnya mengujicoba mengirim dan menerima SMS dengan Lawoo SMS Gateway. Pastikan Server Lawoo SMS Gateway sudah berjalan agar program yang Anda buat diatas dapat mengirim dan menerima SMS dengan lancar.
13. Selamat berkarya. Untuk source code program pada tutorial ini dapat di download di sini.
Mengirim SMS dengan Visual Basic .NET
Pada
kesempatan ini, Anda akan mempelajari bagaimana mengirim pesan singkat
melalui Visual Basic .NET menggunakan Modem GSM Wavecom. Modem Wavecom
memiliki beberapa perintah AT Command yang berhubungan dengan SMS,
diantara untuk mengirim, menghapus, membaca, dan lainnya. Komunikasi
antara modem GSM dengan VB .NET melalui port serial. Sehingga Anda akan
mudah melakukannya karena pada VB .NET sudah tersedia tool untuk
komunikasi melalui port serial.
Mengirim SMS
Untuk mengirim SMS melalui modem, lakukan langkah-langkah berikut ini:
1. AT
balasan “OK” jika modem berfungsi
2. AT+CMGF=1
mengatur mode Teks
3. AT+CSCA= ”+XXXX”
nomer SMS Center, tergantung SIM Card yang digunakan
Untuk mengirim pesan:
4. AT+CMGS= ”+NNNN” <Enter>
nomer handphone yang akan dituju
5. Pesan_yang_akan_kita_kirim <Ctrl+Z>
Kemudian, bagaimanakah jika menggunakan VB .NET?
Langkah-langkahnya sama dengan diatas.
1. SerialPort1.WriteLine(“AT”)
mengirim perintah AT ke port serial
2. SerialPort1.WriteLine(“AT+CMGF=1″ & vbCrLf)
mengirim perintah AT+CMGF=1 dan Enter, yaitu kita mengatur modem agar bekerja dalam mode teks.
3. SerialPort1.WriteLine(“AT+CSCA=” & Chr(34) & txtCenter.Text & Chr(34) & vbCrLf)
mengirim perintah AT+CSCA diikuti nomer SMS Center dan Enter. Nomer SMS Center di sini tergantung dari operator SIM card yang dipakai, sehingga bisa disesuaikan
4. SerialPort1.WriteLine(“AT+CMGS=” & Chr(34) & txtNotujuan.Text & Chr(34) & vbCrLf)
mengirim perintah AT+CMGS diikuti nomer tujuan SMS dan enter. Nomer tujuan bisa semua operator.
5. SerialPort1.WriteLine(txtPesan.Text & Chr(26)) ‘SMS sending
mengirim isi pesan diikuti Ctrl+z
dengan demikian isi SMS akan terkirim sukses.
Untuk lebih jelasnya, silakan pelajari pada code VB .NET yang disertakan. Semoga bermanfaat.
Mengirim SMS
Untuk mengirim SMS melalui modem, lakukan langkah-langkah berikut ini:
1. AT
balasan “OK” jika modem berfungsi
2. AT+CMGF=1
mengatur mode Teks
3. AT+CSCA= ”+XXXX”
nomer SMS Center, tergantung SIM Card yang digunakan
Untuk mengirim pesan:
4. AT+CMGS= ”+NNNN” <Enter>
nomer handphone yang akan dituju
5. Pesan_yang_akan_kita_kirim <Ctrl+Z>
Kemudian, bagaimanakah jika menggunakan VB .NET?
Langkah-langkahnya sama dengan diatas.
1. SerialPort1.WriteLine(“AT”)
mengirim perintah AT ke port serial
2. SerialPort1.WriteLine(“AT+CMGF=1″ & vbCrLf)
mengirim perintah AT+CMGF=1 dan Enter, yaitu kita mengatur modem agar bekerja dalam mode teks.
3. SerialPort1.WriteLine(“AT+CSCA=” & Chr(34) & txtCenter.Text & Chr(34) & vbCrLf)
mengirim perintah AT+CSCA diikuti nomer SMS Center dan Enter. Nomer SMS Center di sini tergantung dari operator SIM card yang dipakai, sehingga bisa disesuaikan
4. SerialPort1.WriteLine(“AT+CMGS=” & Chr(34) & txtNotujuan.Text & Chr(34) & vbCrLf)
mengirim perintah AT+CMGS diikuti nomer tujuan SMS dan enter. Nomer tujuan bisa semua operator.
5. SerialPort1.WriteLine(txtPesan.Text & Chr(26)) ‘SMS sending
mengirim isi pesan diikuti Ctrl+z
dengan demikian isi SMS akan terkirim sukses.
Untuk lebih jelasnya, silakan pelajari pada code VB .NET yang disertakan. Semoga bermanfaat.
Mengirim dan menerima SMS menggunakan HyperTerminal melalui Modem GSM Serial
Pada
kesempatan ini akan saya berikan sedikit contoh bagaimana mengirim dan
menerima sms menggunakan hyperterminal melalui modem GSM serial. Seperti
kita sudah ketahui, bahwa program bawaan Windows® adalah sebuah program
yang sangat familiar bagi orang yang hobby ataupun seorang teknisi yang
sering berhubungan dengan interfacing. Hyperterminal merupakan software
yang universal dan mudah penggunaannya.
Dengan menggunakan hyperterminal kita bisa mengatur setting serial port sesuai dengan hardware yang akan kita gunakan. Seperti seting baud rate, stop bit, parity, data bit, dan flow control.
Bagaimanakah cara membuat sebuah koneksi interface dengan hyperterminal? Berikut langkah-langkah yang bisa dilakukan:
1. Buka Hyperterminal
2. Selanjutnya akan muncul dialog box berikut, pilih Cancel
3. Kemudian pilih Yes
4. Pilih OK
5. Pada Connection Description berikut, berilah nama SMS
6. Kemudian pilihlah Serial Port yang akan digunakan dengan memilih dari combo boxConnect using. Kemudian klik OK.
7. Selanjutnya kita tentukan Port setting seperti berikut. Kemudian pilih OK
8. Tampilan dibawah ini adalah workspace hyperterminal yang akan kita gunakan untuk berkomunikasi dengan modem
Untuk melakukan komunikasi dengan modem GSM serial, kita menggunakan AT+Command. AT+Command adalah kumpulan perintah yang diawali dengan AT untuk berkomunikasi dengan modem. Modem yang saya gunakan adalah Wavecom® Fastrack yang murah dan mudah dibeli. Modem yang saya gunakan memiliki sekumpulan AT+Command yang terangkum pada panduan yang dapat dilihat disini. Pada dasarnya modem yang dapat digunakan adalah modem yang support dengan AT+Command, walaupun pada beberapa merk modem mungkin memiliki beberapa perintah yang berbeda tergantung dari vendor pembuatnya.
Selanjutnya saya akan mencoba mengakses modem dengan perintah AT+Command. Diantaranya, informasi yang dapat saya ambil adalah: Manufacturer identification, Request model identification, Request revision identification, Product Serial Number, Request IMSI, Card Identification, Capabilities list, dan lain-lain. Lebih lengkapnya dapat dilihat pada wavecom command.
Saya akan mendapatkan informasi diatas dari modem yang saya gunakan.
Dan untuk informasi lainnya dapat merujuk pada AT+Command yang ada.
Selanjutnya kita akan mencoba menggunakan hyperterminal untuk mengirim dan menerima SMS melalui Modem GSM serial. Perintah-perintah yang digunakan adalah: AT+CMGF, AT+CSCA, AT+CMGS, AT+CNMI, AT+CMGR, AT+CMGD.
Mengirim SMS
Tes koneksi hyperterminal dengan Modem GSM menggunakan perintah AT diikuti Enter. Jika koneksi terhubung maka akan muncul OK. Selanjutnya kita ketik berikut:
AT balasan “OK” jika modem berfungsi
AT+CMGF=1 mengatur mode Teks
AT+CSCA= ”+XXXX” nomer SMS Center, tergantung SIM Card yang digunakan
Untuk mengirim pesan:
AT+CMGS= ”+NNNN” <Enter> nomer handphone yang akan dituju
Pesan_yang_akan_kita_kirim <Ctrl+Z>
Menerima SMS
Kemudian bagaimanakan jika kita ingin menerima pesan? Modem GSM dapat disetting dengan dua cara, pertama Immediate, dan kedua Notification. Berikut langkah yang dapat dilakukan.
Tes koneksi hyperterminal dengan Modem GSM menggunakan perintah AT diikuti Enter. Jika koneksi terhubung maka akan muncul OK. Selanjutnya kita ketik berikut:
a. Immediate, ketika kita ingin hyperterminal menerima pesan yang masuk secara detil. GSM modem akan langsung mengirim pesan ke komputer dengan perintah +CMT.
AT+CMGF=1
AT+CNMI=1,2,0,0,0 mengatur agar modem mengirim pesan ke computer saat diterima
Saat pesan diterima, maka computer akan menerima
+CMT: “+nnnn”,,”10/12/06,06:04:10+28”
Pesan_balasan_dari_handphone
Computer akan memantau port serial secara kontinyu dan menampilkan pesan jika telah diterima.
b. Notification, ketika pesan diterima, maka GSM akan mengirim notifikasi ke computer menggunakan perintah +CMTI diikuti nomer memori pesan tersimpan.
AT+CMGF=1
AT+CNMI=1,1,0,0,0
mengatur agar modem mengirim notifikasi ke computer saat diterima
Saat pesan diterima, maka computer akan menerima
+CMTI: “SM”,9 pesan tersimpan pada memori nomer 9
Ketik AT+CMGR=9 untuk membaca pesan dari memori nomer 9
Balasan dari modem:
+CMGR: “REC UNREAD”,”+nnnnn”,”10/12/06,06:13:06+28”
Pesan_balasan
OK
Kemudian ketik AT+CMGD=9 menghapus pesan pada nomer memori 9
Demikian langkah-langkah untuk mengirim dan menerima sms menggunakan hyperterminal. Pada dasarnya untuk mengirim dan menerima SMS dapat menggunakan program-program yang lain, misalnya: Visual Basic 6.0, Visual Basic .NET, C++, Delphi atau pun yang lainnya dengan prinsip yang sama.
SMS dapat digunakan untuk pengukura jarak jauh (telemetri), pengendalian jarak jauh (telecommand), SMS gateway, dan lainnya.
Semoga bermanfaat.
Dengan menggunakan hyperterminal kita bisa mengatur setting serial port sesuai dengan hardware yang akan kita gunakan. Seperti seting baud rate, stop bit, parity, data bit, dan flow control.
Bagaimanakah cara membuat sebuah koneksi interface dengan hyperterminal? Berikut langkah-langkah yang bisa dilakukan:
1. Buka Hyperterminal
2. Selanjutnya akan muncul dialog box berikut, pilih Cancel
3. Kemudian pilih Yes
4. Pilih OK
5. Pada Connection Description berikut, berilah nama SMS
6. Kemudian pilihlah Serial Port yang akan digunakan dengan memilih dari combo boxConnect using. Kemudian klik OK.
7. Selanjutnya kita tentukan Port setting seperti berikut. Kemudian pilih OK
8. Tampilan dibawah ini adalah workspace hyperterminal yang akan kita gunakan untuk berkomunikasi dengan modem
Untuk melakukan komunikasi dengan modem GSM serial, kita menggunakan AT+Command. AT+Command adalah kumpulan perintah yang diawali dengan AT untuk berkomunikasi dengan modem. Modem yang saya gunakan adalah Wavecom® Fastrack yang murah dan mudah dibeli. Modem yang saya gunakan memiliki sekumpulan AT+Command yang terangkum pada panduan yang dapat dilihat disini. Pada dasarnya modem yang dapat digunakan adalah modem yang support dengan AT+Command, walaupun pada beberapa merk modem mungkin memiliki beberapa perintah yang berbeda tergantung dari vendor pembuatnya.
Selanjutnya saya akan mencoba mengakses modem dengan perintah AT+Command. Diantaranya, informasi yang dapat saya ambil adalah: Manufacturer identification, Request model identification, Request revision identification, Product Serial Number, Request IMSI, Card Identification, Capabilities list, dan lain-lain. Lebih lengkapnya dapat dilihat pada wavecom command.
Saya akan mendapatkan informasi diatas dari modem yang saya gunakan.
- Manufacturer identification
Hyperterminal –> Modem | AT+CGMI | Mendapatkan nama pembuat |
Modem à Hyperteminal | WAVECOM MODEMOK | Perintah valid, Wavecom modem |
- Request model identification
Hyperterminal –> Modem | AT+CGMM | Mendapatkan versi hardware |
Modem à Hyperteminal | MULTIBAND 900E 1800OK |
- Request revision identification
Hyperterminal à Modem | AT+CGMR | Mendapatkan versi software |
Modem à Hyperteminal | 641b09gg.Q2403A 1320676 061804 14:38OK |
- Product Serial Number
Hyperterminal –> Modem | AT+CGSN | Mendapatkan IMEI |
Modem à Hyperteminal | 352129002454434OK | IMEI yang ada di EEPROM |
Hyperterminal à Modem | AT+CGSN | Meminta IMEI |
Modem à Hyperteminal | +CME ERROR: 22 | IMEI tidak ditemukan di EEPROM |
Dan untuk informasi lainnya dapat merujuk pada AT+Command yang ada.
Selanjutnya kita akan mencoba menggunakan hyperterminal untuk mengirim dan menerima SMS melalui Modem GSM serial. Perintah-perintah yang digunakan adalah: AT+CMGF, AT+CSCA, AT+CMGS, AT+CNMI, AT+CMGR, AT+CMGD.
Mengirim SMS
Tes koneksi hyperterminal dengan Modem GSM menggunakan perintah AT diikuti Enter. Jika koneksi terhubung maka akan muncul OK. Selanjutnya kita ketik berikut:
AT balasan “OK” jika modem berfungsi
AT+CMGF=1 mengatur mode Teks
AT+CSCA= ”+XXXX” nomer SMS Center, tergantung SIM Card yang digunakan
Untuk mengirim pesan:
AT+CMGS= ”+NNNN” <Enter> nomer handphone yang akan dituju
Pesan_yang_akan_kita_kirim <Ctrl+Z>
Menerima SMS
Kemudian bagaimanakan jika kita ingin menerima pesan? Modem GSM dapat disetting dengan dua cara, pertama Immediate, dan kedua Notification. Berikut langkah yang dapat dilakukan.
Tes koneksi hyperterminal dengan Modem GSM menggunakan perintah AT diikuti Enter. Jika koneksi terhubung maka akan muncul OK. Selanjutnya kita ketik berikut:
a. Immediate, ketika kita ingin hyperterminal menerima pesan yang masuk secara detil. GSM modem akan langsung mengirim pesan ke komputer dengan perintah +CMT.
AT+CMGF=1
AT+CNMI=1,2,0,0,0 mengatur agar modem mengirim pesan ke computer saat diterima
Saat pesan diterima, maka computer akan menerima
+CMT: “+nnnn”,,”10/12/06,06:04:10+28”
Pesan_balasan_dari_handphone
Computer akan memantau port serial secara kontinyu dan menampilkan pesan jika telah diterima.
b. Notification, ketika pesan diterima, maka GSM akan mengirim notifikasi ke computer menggunakan perintah +CMTI diikuti nomer memori pesan tersimpan.
AT+CMGF=1
AT+CNMI=1,1,0,0,0
mengatur agar modem mengirim notifikasi ke computer saat diterima
Saat pesan diterima, maka computer akan menerima
+CMTI: “SM”,9 pesan tersimpan pada memori nomer 9
Ketik AT+CMGR=9 untuk membaca pesan dari memori nomer 9
Balasan dari modem:
+CMGR: “REC UNREAD”,”+nnnnn”,”10/12/06,06:13:06+28”
Pesan_balasan
OK
Kemudian ketik AT+CMGD=9 menghapus pesan pada nomer memori 9
Demikian langkah-langkah untuk mengirim dan menerima sms menggunakan hyperterminal. Pada dasarnya untuk mengirim dan menerima SMS dapat menggunakan program-program yang lain, misalnya: Visual Basic 6.0, Visual Basic .NET, C++, Delphi atau pun yang lainnya dengan prinsip yang sama.
SMS dapat digunakan untuk pengukura jarak jauh (telemetri), pengendalian jarak jauh (telecommand), SMS gateway, dan lainnya.
Semoga bermanfaat.
SMS Gateway Menggunakan Gammu Dan MySQL
Pendahuluan
SMS Gateway adalah
sebuah gerbang yang menghubungkan antara komputer dengan client melalui
SMS, jadi secara garis besar, SMS Gateway dapat digambarkan seperti
gambar di atas.
Client secara tidak
langsung berinteraksi dengan aplikasi / sistem melalui SMS Gateway. Saat
melakukan SMS, maka informasi terpenting yang diperlukan adalah nomor
tujuan dan pesan, maka itulah yang sebenarnya diolah oleh SMS Gateway.
Contoh aplikasi SMS
Gateway dalam penerapannya di dunia akademik saat ini adalah pengumuman
beasiswa, pengumuman ruang tes, dan lain sebagainya.
Pengumuman-pengumuman tersebut dilakukan secara otomatis satu arah oleh
sistem. Saat informasi internal sudah terkumpul, maka sistem akan
melakukan penulisan ke dalam database yang selanjutnya diolah oleh gammu
agar dapat dikirimkan kepada nomor yang bersangkutan.
Berkas-berkas
pengumuman berupa file spreadsheet ataupun file-file terformat lainnya,
jika berkas belum berupa file terformat maupun berkas yang masih berupa
kertas berisi tulisan, maka masih menjadi tugas kami untuk
men-digitalkan-nya, agar dapat dibaca oleh aplikasi pemgirim SMS.
Aplikasi tidak hanya membaca dari berkas-berkas digital, tetapi juga
dapat membaca informasi dari database BAAK.
Entitas
Aplikasi Pengirim SMS
dapat berupa apa
saja asalkan memiliki kemampuan untuk membaca-tulis database, dan
membaca berkas digital yang sudah disebutkan di atas. Dalam kasus ini,
penulis menggunakan PHP untuk membangun aplikasi pengirim SMS. Kenapa
PHP, karena menurut penulis, bahasa PHP lebih mudah dicerna dan memiliki
banyak fungsi bahkan untuk background process (daemon) sekalipun
(tanpa webserver), PHP mampu. Jadi menurut penulis PHP adalah bahasa
yang paling fleksibel baik untuk web-based maupun program lepas.
Database
dapat berupa apa
saja, dalam penjelasannya, gammu dapat menggunakan database MySQL,
PostgreSQL, bahkan gammu juga menyertakan libdbi untuk mengakses
database seperti SQLite, Ms.SQL Server, Sybase, Firebird, dll. Penulis
menggunakan database MySQL karena memang belum familiar dengan yang
lain.
Dalam database SMS
Gateway yang digenerate otomatis oleh Gammu, berisi layaknya aplikasi
SMS di handphone anda, terdapat inbox, outbox, serta sentitem.
GAMMU
adalah sebuah
aplikasi cross-platform yang digunakan untuk menjembatani /
mengomunikasikan antara database SMS Gateway dengan sms devices.
Aplikasi Gammu berupa daemon yang berjalan secara background. Setiap
saat, gammu memonitor sms devices dan database sms gateway. Saat ada sms
masuk ke sms devices, maka gammu langsung memindahkannya ke dalam inbox
dalam database sms gateway. Sebaliknya saat Aplikasi Pengirim SMS
memasukkan sms ke dalam outbox dalam database sms gateway, maka gammu
mengirimkannya melalui sms devices, dan memindahkan sms ke sentitem
dalam database.
SMS Devices
merupakan alat
pengirim SMS yang berupa modem ataupun handphone. Agar dapat digunakan
dengan semestinya, maka devices ini harus memenuhi syarat-syarat
tertentu agar dapat terintegrasi dengan gammu.
Client
adalah anda yang
sudah menerima informasi pengumuman beasiswa, pengumuman ruang, dan
sebagainya. Semua informasi yang sampai ke tangan anda dilakukan oleh
sistem karena tidak mungkin mengirimkan SMS ke ribuan mahasiswa secara
manual.
Ruang Lingkup
Dalam pengimplementasian, penulis menggunakan
OS : Ubuntu Lucid 10.04,
MySQL : Ver 14.14 Distrib 5.1.41, for debian-linux-gnu (x86_64) using readline 6.1,
Modem : Wavecom GSM Modem M1306B
Instalasi dan Konfigurasi
Gammu adalah
aplikasi open source multi-platform, artinya gammu dapat dijalankan di
sistem operasi yang bermacam-macam. Hal pertama yang harus dilakukan
adalah mendapatkan paket gammu dari website http://wammu.eu/download/gammu/ dan lakukan instalasi seperti pada umumnya. Setelah proses instalasi selesai, pasangkan modem di port USB.
Hal terpenting dari
gammu adalah file konfigurasi, contoh lengkap file konfigurasi
disertakan dalam manual dan website gammu. Ada 2 file konfigurasi untuk 2
sub-aplikasi gammu. Aplikasi tersebut adalah :
-
-
$ gammu
-
$ gammu-smsd
-
Perintah no.1
digunakan untuk melakukan baca tulis modem secara manual, sedangkan
perintah no.2 adalah aplikasi background untuk memonitor database.
Perintah no.1 tidak banyak digunakan, dalam ruang lingkup penulis
menggunakannya sekedar untuk mendeteksi modem.
File konfigurasi untuk aplikasi no.1 bisa bernama apa saja, untuk memudahkan, diberi nama ./gammurc
Isi dari file ./gammurc adalah :
[gammu]
port = /dev/ttyUSB0
connection = at115200
port : letak modem,
connection : menentukan jenis koneksi yang diinginkan. Untuk penjelasan
rinci dapat dilihat di manual maupun website gammu.
Deteksi modem dan integrasinya dengan gammu menggunakan perintah : $ sudo gammu -c ./gammurc identify dan akan dihasilkan :
Manufacturer : Wavecom
Model : unknown (MULTIBAND 900E 1800)
Firmware : 641b09gg.Q2403A 1320676 061804 14:38
IMEI : 012345678901234
SIM IMSI : 510015300171610
Jika sudah muncul seperti di atas, maka modem anda sudah terintegrasi dengan gammu.
Untuk menjalankan
gammu-smsd yang merupakan aplikasi monitor database, maka kita siapkan
dulu database untuk gammu. Persiapkan user dan database dengan nama
tertentu, sesuaikan struktur tabel yang ada menurut http://wammu.eu/docs/manual/smsd/mysql.html
Setelah MySQL
tersesuaikan dengan struktur gammu, atur file konfigurasi untuk aplikasi
background (aplikasi no.2). File konfigurasi kita namakan ./smsdrc dan berisi :
[gammu]
port = /dev/ttyUSB0
connection = at115200
[smsd]
service = MYSQL #database
logfile = /var/log/smsdlog #letak log file
debuglevel = 1 #level debugging, semakin tinggi semakin dalam
commtimeout = 15
sendtimeout = 15
checksecurity = 0
user = user #user database
password = password #password database
pc = localhost #alamat database
database = sms #nama database
Untuk section [gammu] kita sesuaikan seperti yang ada di dalam file ./smsdrc
Section [smsd] adalah pengaturan bagaimana aplikasi background berjalan. Penjelasan lebih lanjut dapat dilihat di manual.
Setelah database dan file konfigurasi tersesuaikan, maka jalankan aplikasi dengan menggunakan perintah : $ gammu-smsd -c ./smsdrc
Untuk mengirim atau
membaca SMS yang masuk, maka operasi database yang berperan. Sebagai
contoh untuk mengirim SMS, maka dilakukan query :
INSERT
INTO `sms`.`outbox` (`UpdatedInDB`, `InsertIntoDB`, `SendingDateTime`,
`Text`, `DestinationNumber`, `Coding`, `UDH`, `Class`, `TextDecoded`,
`ID`, `MultiPart`, `RelativeValidity`, `SenderID`, `SendingTimeOut`,
`DeliveryReport`, `CreatorID`) VALUES (CURRENT_TIMESTAMP, '0000-00-00
00:00:00', '0000-00-00 00:00:00', NULL, '08199999999999',
'Default_No_Compression', NULL, '-1', 'coba', NULL, 'false', '-1', NULL,
'0000-00-00 00:00:00', 'default', '');
dimana `DestinationNumber` adalah nomor yang dituju dan `TextDecoded` adalah isi SMS
Untuk membaca SMS yang masuk, maka dilakukan query :
SELECT * FROM `inbox`
Untuk integrasi
lebih lanjut, semisal pengiriman SMS secara masal, ataupun menyeleksi
SMS masuk, membuat SMS autoreply, bahkan mengintegrasikan dengan
aplikasi yang sudah ada. Semua tertuju pada database gammu, sekarang
silahkan anda berkreasi dengan aplikasi berbahasa apa saja untuk
mengutak atik database sehingga terbentuk aplikasi SMS terintegrasi.
Demikian penjelasan singkat mengenai SMS Gateway menggunakan Gammu dan MySQL.
Terima Kasih dan selamat berkreasi.
Sumber:
Langganan:
Postingan (Atom)