Control Your Machine With SMS By YadoY666

Pada artikel kali ini saya akan membahas tentang cara mengendalikan komputer dengan menggunakan sms. Untuk melakukan hal tersebut kita membutuhkan sebuah software komputer bernama Gammu dan development tolls yang akan kita gunakan adalah Microsoft Visual Basic. 6.0. Untuk informasi lebih lengkap mengenai gammu dapat dilihat pada link berikut http://www.gammu.org/wiki/index.php

Installing Gammu

Bagi teman-teman yang belum tau apa itu Gammu, saya akan memberikan sedikit gambaran tentang Gammu. Gammu adalah sebuah software yang berguna untuk mengambil sms yang terdapat pada inbox handphone kita dan menyimpannya ke dalam database. Database yang digunakan adalah MySQL. (Untuk saat ini telah banyak database yang disuuport oleh Gammu selain MySQL, untuk info lebih lanjut silahkan kunjungi website resminya). Pada artikel kali ini saya menggunakan Gammu versi lama yaitu versi 1.09.00.

Sebelum kita menginstall Gamu pastikan database MySQL telah terinstall di mesin yang akan digunakan, buat sebuah database dengan nama “smsd” dan kemudian dump file berikut kedalam database MySQL. Yang perlu diperhatikan saat mengintall Gammu adalah dua file konfigurasinya yaitu “gammurc” dan “smsdrc”. Pada file gammurc yang harus kita perhatikan adalah bagian port dan connection. Isi nilai port dengan port yang kita gunakan untuk melakukan koneksi handphone dengan mesin yang digunakan. Untuk connection sesuaikan dengan koneksi yang kita gunakan. Pada percobaan ini saya menggunakan Sony Ericsson W.660i dengan port Com6 dan jenis koneksinya adalah “at”. Untuk mengetahui jenis koneksi yang anda gunakan silahkan klik link berikut http://wammu.eu/phones/ cari jenis handphone yang digunakan dan lihat koneksi yang digunakan.

Setelah port dan jenis koneksi telah kita dapatkan, maka sekarang kita test apakah konfigurasi yang telah kita masukan sudah benar atau belum. Untuk mengetestnya buka command prompt dan masuk ke direktori dimana Gammu kita simpan, dan kemudian ketikan perintah berikut. “gammu –identify” Apabila konfigurasi yang telah kita masukan telah sesuai maka akan tampil imei dari handphone yang kita gunakan.

Gammu --Identify

Setelah handphone kita berhasil di kenali oleh gammu, langkah selanjutnya adalah memasukan konfigurasi untuk file “smsdrc”. Perhatikan pada bagian user, password, pc, dan database. Isi user dengan user yang digunakan untuk login ke database MySQL, isi password dengan password yang digunakan untuk login ke database, isi pc dengan alamat komputer (localhost) dan isi database dengan nama database yang akan kita gunakan, kemudian simpan file tersebut. Lalu saat nya kita melakukan test untuk mengetahui apakah gammu sudah berhasil melakukan koneksi dengan database. Perintah yang kita gunnakan adalah “gammu –smsd MYSQL smsdrc”. Apabila berhasil akan tampil seperti berikut.

gammu --smsd MYSQL smsdrc

Kemudian kita cek ke table Inbox pada database apakah sms-sms yang ada di handphone kita sudah masuk kedalam database, apabila sudah masuk maka pengisntallan telah sukses dilakukan, dan kita bisa ke tahap development untuk membuat sebuah program yang dapat mengedalikan komputer dengan memanfaatkan data-data sms yang telah di masukan oleh gammu kedalam database.

Development

Untuk tahap development ini kita mengguanakan Visual Basic. 6.0. Pada intinya cara kerja program ini adalah membaca sms terakhir yang masuk, dan menterjemahkan sms tersebut untuk menentukan langkah apa yang akan dilakukan si program. Kita juga membutuhkan MySQL Connector untuk melakukan koneksi dari Visual Basic ke MySQL.

YaDoY SMS Control

Berikut sedikit potongan kode program nya. Mengapa saya hanya berikan potongan kode nya saja? Karna tidak mungkin saya paste disini semua, kalo saya paste semua yang ada penuh dengan code aja nanti isi artikel nya. Pada bagian terakhir saya akan memberikan link untuk mendownload full soruce code nya.

Private Sub TimerSMS_Timer()

On Error GoTo errHDL

Dim sSQL As String

Dim rst As RecordSet

Dim sLastID As String

Dim sCommand As String

Dim sID As String

Dim LRet As Long

ucFirefoxWait.Visible = True

ucFirefoxWait.PlayWait

sLastID = getLastID

Set rst = New RecordSet

sSQL = “SELECT * FROM INBOX WHERE ID =’” & sLastID & “‘ AND PROCESSED=’FALSE’ LIMIT 0,1;”

Set rst = clsData.ExecuteQuery(sSQL)

If rst.RecordCount <= 0 Then Exit Sub

If Not rst.BOF Or Not rst.EOF Then

sCommand = IIf(IsNull(rst!TextDecoded), “”, rst!TextDecoded)

sID = rst!ID

Select Case UCase(sCommand)

Case “VER”

ReplyMessage “VER”, Trim(rst!SenderNumber)

Case “CHECKINBOX”

ReplyMessage “CHECKINBOX”, Trim(rst!SenderNumber)

Case “ABOUT”

ReplyMessage “ABOUT”, Trim(rst!SenderNumber)

Case “TUTUPCDROM”

LRet = mciSendString(“set CDAudio door closed”, returnstring, 127, 0)

Case “BUKACDROM”

LRet = mciSendString(“set CDAudio door open”, returnstring, 127, 0)

Case “HELP”

ReplyMessage “HELP”, Trim(rst!SenderNumber)

Case “TURNOFF”

If IsWinNT Then

ShutdownNT True

Else

Shutdown

End If

End Select

sSQL = “UPDATE INBOX SET PROCESSED=’TRUE’ WHERE ID=’” & sID & “‘ AND PROCESSED=’FALSE’;”

clsData.ExecuteQuery (sSQL)

End If

ucFirefoxWait.StopWait

ucFirefoxWait.Visible = False

FillInbox

FillSentItems

Exit Sub

errHDL:

MsgBox “Application Error On : ” & Err.Number & “-” & Err.Description, vbInformation + vbOKOnly

End

End Sub

Private Sub ReplyMessage(ByVal sCommand As String, ByVal SendTo As String)

On Error GoTo errHDL

Dim sSQL As String

Dim sInbox As String

Dim sAbout As String

Dim sHelp As String

sHelp = “VER=VERSION-CHECKINBOX=SUMINBOX-ABOUT=ABOUTAPP-HELP=HELP-TUTUPCDROM-BUKACDROM-TURNOFF-OFFSYSTEM”

sAbout = “YaDoY SMS Control is simple implementation to control your machine with SMS, Using Gammu SMS Service.”

Select Case sCommand

Case “VER”

sSQL = “INSERT INTO OUTBOX(DESTINATIONNUMBER, CODING, TEXTDECODED) VALUES (‘” & _

Trim(SendTo) & “‘,’Default_No_Compression’,'YaDoY SMS Control v.1.2′);”

clsData.ExecuteQuery (sSQL)

Case “CHECKINBOX”

sInbox = getInboxCount

sSQL = “INSERT INTO OUTBOX(DESTINATIONNUMBER, CODING, TEXTDECODED) VALUES (‘” & _

Trim(SendTo) & “‘,’Default_No_Compression’,'Total Message on Inbox is : ” & sInbox & “‘);”

clsData.ExecuteQuery (sSQL)

Case “ABOUT”

sSQL = “INSERT INTO OUTBOX(DESTINATIONNUMBER, CODING, TEXTDECODED) VALUES (‘” & _

Trim(SendTo) & “‘,’Default_No_Compression’,'” & sAbout & “‘);”

clsData.ExecuteQuery (sSQL)

Case “HELP”

sSQL = “INSERT INTO OUTBOX(DESTINATIONNUMBER, CODING, TEXTDECODED) VALUES (‘” & _

Trim(SendTo) & “‘,’Default_No_Compression’,'” & sHelp & “‘);”

clsData.ExecuteQuery (sSQL)

End Select

FillInbox

FillSentItems

Exit Sub

errHDL:

MsgBox “Application Error On ReplyMessage : ” & Err.Number & “-” & Err.Description, vbInformation + vbOKOnly

End

End Sub

Nah, dilihat dari kode tersebut diatas sebuah timer akan terus mengecek sms terakhir kedatabase, apabila ada kemudian program tersebut akan membaca isi dari sms tersebut, apabila isi dari sms tersebut sesuai dengan perintah yang ditentukan maka si program akan memproses langkah selanjutnya. Dalam source code yang saya berikan nanti, program tersebut hanya baru bisa memproses bebrapa perintah antara lain ver yang digunakan untuk mengetahui versi program, check inbox untuk mengetahui jumlah sms yang terdapat dalam table inbox, about untuk mengetahui tentang program, tutupcdrom untuk menutup cd rom, bukacdrom perintah untuk membuka cd rom, turnoff untuk mematikan komputer. Teman-teman dapat menambahkan perintah-perintah lain sesuai dengan yang dikehendaki.

Berikut link download nya

YaDoYSMSSender :

http://www.indowebster.com/YaDoYSMSControl_v122.html (update link download, link yg sebelom nya ada yg ketinggalan)

Gammu v.1.09.00 : http://www.indowebster.com/Gammu109.html

Greets:

Miya Renata, Jack, Don Tukulesto, XShadow, Jerry Maheswara, S3T4N, ServerIsDown, MainHack Brotherhood, Indonesian Coder, Xcode


Source : http://yadoy666.serverisdown.org/control-your-machine-with-sms.666

0 comments:

Posting Komentar