Kamis, 04 Desember 2008

Contoh Tray Icons Sederhana

Beberapa hari yg lalu Temen aku tanya tentang VB, sayangnya pertanyaannya di luar topik bahasan Blog aku. Blog aku hanya membahas SMS Server, Webcam, Barcode, Billing warnet dan Sistem parkir. So, setelah dipikir-pikir kayaknya blog aku ok juga kalo bisa sedikit membantu teman2 menyediakan wadah pertanyaan seputar VB di luar pokok bahasan... Rencananya aku mau kasih label 'Other'.

Salah satu pertanyaannya adalah

"Mbak punya contoh aplikasi VB untuk TrayIcon, mbak pernah jalankan Portabel Office ?, sintax trayicon-nya gimane menampilkan "Starting" ato pada saat di open Portabel Office trayicon memunculkan pesan "Selamat Datang". Mohon bantuannya, trims."

yang aku tangkep idenya adalah tray icons itu gimana sich... Tray itu maksudnya System tray nya windows, bagaimana menempatkan icons di system tray windows. Biasanya kalo blom diubah2 lho yach.. itu adanya di pojok kanan bawah desktop kamu. Tempatnya sama dengan jamnya windows kamu. Aku kasih contoh aja programnya yang sangat2 sederhana modifikasi dari internet juga. Sangat mendasar tapi cukup hebat sehingga dapat memotivasi temen2 untuk blajar.

File Download :
>>Tray Icons Sederhana
Password : sholat


Segitu dulu yach... Smoga membantu...

Selasa, 02 Desember 2008

Mencetak Barcode 1 Dimensi dengan PictureBox

Melanjutkan tulisan aku yg dulu... hehehe... abis dah lama banget aku lupa tuh lanjutin tulisannya lagi... Secara gitu loh banyak juga yang minta aku ngelanjutin cetak barcode ini pake vb cepet2 diupload di blog. hmm. Alhamdulillah baru ini deh aku sempet nulis lagi.. Maklum dah sering ke dokter nih tunggu tanggal mainnya.

Nah ini contoh program barcode yang bisa print. Memang sangat sederhana tapi cukup hebat untuk merangsang temen2 membuat yang lebih ok lagi...

Selamat mencoba.

File Download :
>>Cetak Barcode
>>Password : sholat

wass.

Arnie

Jumat, 21 November 2008

Yuk Kita Bikin Billing Warnet Sendiri (3)

Pengaturan Waktu Billing Server Sederhana

Melanjutkan tulisan aku tempo hari, walaupun agak lambat progresnya.. hehehe... tapi insya Allah pasti nih.. doain aja yach... Idenya kali ini aku mau bikin pengaturan waktu dengan cara mengambil waktu windows terkini dan kemudian timer menambahkannya setiap detik. Kalo
pewaktuan ini sudah berjalan dengan baik, maka kita bisa konversikan ke nilai uang, diskon, atau pun minimal pemakaian. Model pewaktuan yg kita gunakan adalah dalam satuan detik. So, kalo kamu mau tentuin satuannya adalah menit harus konversi lebih lanjut dimana 1 menit sama dengan 60 detik. jadi selama belum satu menit maka pulsa belum jalan atau belum bertambah. Nah, satuannya untuk konversi ke uang kita pake pulsa aja. jgn menit atau detik yach. Nanti kita atur aja 1 pulsa itu untuk member tertentu berapa menit minimalnya. maksudnya kalo dah sampe 'n' menit maka pulsa baru bertambah. Trus jgn lupa juga, 1 pulsanya ditampilkan terlebih dahulu pada detik pertama. hehehe. yach biar yg baru pake kurang dari satu pulsa tetep bayar 1
pulsa dong... hihihi...

Bahasa Vb nya sich gak sulit2 banget kayaknya. VB dah nyediain komponen dan fungsinya lengkap. Kamu gak perlu lagi pake komponen di luar VB. sip kan? Kali ini kita bikin billing server sederhana dengan 12 clients yang dapat menampilkan pulsa yang berjalan dan sekaligus bisa distop secara manual. Indikator warna yang aku pake merah brarti gak ada yg pake, trus kuning lagi dipake, trus kalo hijau udahan.

Fungsi2 yang ada sebagai berikut :

1. Mulai menghitung, dalam fungsi ini perhitungan dimulai untuk display client tertentu. So, kamu harus tentukan dulu display yang mana yang mau dimulai perhitungannya. Fungsinya adalah sebagai berikut :

Private Sub Mulai(indeKs As Integer)
On Error GoTo erh
konterNya(indeKs) = 1
faktorNya(indeKs) = 60 * MenitUlang(Index)
strDate(indeKs) = Now()
Timer1(indeKs).Enabled = True
Nonota(indeKs).Caption = indeks & Format(strDate(indeKs), "ddmmyyhhmmss")
Frame1(indeKs).BackColor = &HC000& 'IJO
Exit Sub
erh:

MsgBox err.Description
End Sub

2. Stop, berfungsi untuk menghentikan timer perhitungan. Kode vb nya adalah sebagai berikut :

Private Sub Brenti(indeKs As Integer)
On Error GoTo erh
Timer1(indeKs).Enabled = False
Frame1(indeKs).BackColor = &H80FFFF 'kuning
Exit Sub
erh:
MsgBox err.Description
End Sub

3. Timer perhitungan, berfungsi menghitung pulsa berjalan. Kode vb nya sebagai berikut :

Private Sub Timer1_Timer(Index As Integer)
On Error GoTo erh
konterNya(Index) = konterNya(Index) + 1
currDate(Index) = DateAdd("s", konterNya(Index), strDate(Index))
PulsaNya(Index) = IIf(konterNya(Index) / faktorNya(Index) - Int(konterNya(Index) / faktorNya(Index)) < caption =" strDate(Index)" caption =" currDate(Index)" caption =" ConvertSeconds(konterNya(Index))" caption = "(1 pulsa="> " & PulsaNya(Index)
lblBesarUang(Index).Caption = Format(subtotalNya(Index), "##,0")
Exit Sub
erh:
MsgBox err.Description
End Sub

4. Print Nota, berfungsi untuk mencetak nota display yang diinginkan. Kode vb nya sebagai berikut :

Sub printNota(indeksNya As Integer)
On Error GoTo erh

Printer.FontSize = 8
' Printer.PaperSize = 256

Printer.Print "Warnetxx"
Printer.Print "Tomang Tinggi xxx"
Printer.Print ""
Printer.Print "No nota : " & Nonota(indeksNya)
Printer.Print ""
Printer.Print "User : " & User(indeksNya).Caption
Printer.Print "Komputer : " & NKomp(indeksNya).Caption
Printer.Print "IP : " & IP(indeksNya).Caption
Printer.Print "Start Time : " & StartTime(indeksNya).Caption
Printer.Print "End Time : " & EndTime(indeksNya).Caption
Printer.Print "Duration : " & lblDurasiLembur(indeksNya).Caption
Printer.Print "Rate : " & RateUser(indeksNya).Caption
Printer.Print "Subtotal : " & lblBesarUang(indeksNya).Caption
Printer.Print " "
Printer.Print ":) " & LoginName
Printer.Print " "
Printer.Print " "
Printer.EndDoc
Exit Sub
erh:
MsgBox err.Description
End Sub

Kode program vb ini hanyalah dasar dari billing server sederhana, aku bikin hanya untuk memberikan gambaran bagaimana cara kerja billing server tsb. Beberapa parameter adalah perumpamaan seperti perhitungan 1 pulsa adalah setiap 15 menit dimana 1 pulsa harganya 1250 rupiah. User2 yang diwakilkan dengan no display pada program diset sebagai 'Guest'. Pada pembahasan selanjutnya di artikel mendatang aku bahas lebih dalam Billing server ini disesuaikan dengan fitur yang diinginkan pada tulisan aku sebelumnya. Perumpamaan2 diganti dengan program sesungguhnya. Sampe sini dulu yach. Nti kapan2 aku lanjutin lagi deh ngetiknya.. capek boo... Gratis gitu loh.... Aku cuma butuh komentar kamu trus jangan lupa isi pollingnya yach..

File Download :
>>Biling Server Sederhana
>>Password : sholat

Wass,


Arnie.

Rabu, 19 November 2008

Yuk Kita Bikin Billing Warnet Sendiri (2)

Fitur-fitur Aplikasi Billing Warnet

Melanjutkan pokok bahasan kita yg lalu, sebelum melangkah pembuatan program billing warnet kita harus tahu dan mengerti betul apa yg akan kita buat. Minimal fitur-fitur apa saja yang harus ada di aplikasi kita. Idenya kali ini adalah mendaftarkan fitur-fitur aplikasi billing warnet yang biasanya ada sebagai berikut:

Fitur2 ini hasil pengamatan ke warnet-warnet terhadap software2 mereka. Karena rata2 mirip2 so, aku ambil sampel aja kayak di bawah ini deh,
1. Pengelompokan pelanggan berdasar tipe keanggotan (member)
2. Diskon. Masing-masing keanggotaan dapat diperlakukan besar diskon yang berbeda-beda, misal:
- UMUM: discount 0%
- SILVER:discount 10%, minimal voucher Rp. 10000
- GOLD:disconut 15%, minimal voucher Rp. 25000
- HappyHour, dapat diatur beban potongan/discount untuk jam yang berbeda-beda, misal:
  • 00.00-06.00: discount 25%
  • 06.00-08.00: discount 10%
  • 08.00-20.00: discount 0%
  • 20.00-24.00: discount 25%
perhitungan bisa menyeleksi pemakaian antar waktu, misal mulai jam 07.00 selesai jam 9.00.
3. Tarif. Masing-masing pc.klien bisa beda-beda, misal:
  • VIP.01: Rp. 100/menit, minimal pakai 10 menit
  • KOM.01: Rp. 60/menit, minimal pakai 30 menit
4. Dapat memberikan waktu gratis pada user, misal 10 jam pakai gratis 1 jam.
5. AutoLock (optional), pc.klien otomatis terkunci ketika user logout.
6. AutoPrint (optional), otomatis cetak nota saat user logout.
7. ReLogin, apabila salah satu server/klien billing restart/reboot. Dengan tarif tetap dilanjutkan seperti sebelumnya.
8. Tidak menggunakan file sharing sama sekali. Koneksi menggunakan protokol TCP/IP dengan port yang bisa ditentukan sendiri. Dapat mengirim file antar klien dan server atau sebaliknya.

Segitu dulu deh fiturnya. Kalo kebanyakan soalnya nti gak semangat bikinnya. Udah nyerah duluan.. hehehe. Kalo kita lihat fitur di atas, ujung-ujungnya nih, duit yg keluar dihitung berdasarkan waktu (time based). Nah, kalo aku ngeliat sich secara gitu loh aku ini pelanggan warnet yang setia, ada waktu di mana operator bisa ngakalin jam windows. So, pinter2nya kita deh. kalo gak jam windowsnya di lock atau pas mulai perhitungan ngambil jam windows trus perhitungan waktunya jangan ngambil jam lagi tapi kalo bisa jam berikutnya adalah jam awal ditambah detik yang kita bikin sendiri pake object timernya vb. So, kalo pas software ngitung, trus jam windowsnya diganti si operator jadinya gak ngaruh kaleee... Nah, kalo dari sisi pelanggan nih... biasanya suka ngakalin ngerestart/reboot komputer secara paksa dengan cara mencet tombol power di komputernya. Mereka berharap billing akan relogin dengan perhitungan yg ngaco, atau perhitungan sebelumnya hilang. Atau mereka berharap koneksi billing ke klien terputus so kalo mereka udahan tapi billing masih jalan di server maka mereka bisa komplain gak mau bayar. Yach pokoknya banyak cara deh.. Ribet kan...

Segini dulu yach... Insya Allah pada topik pembahasan selanjutnya kita langsung membahas pake vb. Biar ada yang bisa didownload dan di coba di rumah.. hehehe..


Wass,

Arnie

Jumat, 14 November 2008

OKE GAK SICH PUNYA SMS SERVER (5)

Pada pokok bahasan kali ini aku mau tulis tentang program VB buat bantu kamu komunikasi dengan device kamu (HP/modem GSM). Ini hanya Hyperterminal kecil buat debugging program kamu. Di dalamnya gak ada tuh library kirim sms gimana atau baca sms. Tools ini sifatnya umum dan terbuka. So, kamu bisa ketik AT Command sesuka kamu dan kamu bisa lihat langsung respons dari device di layar. yach... mirip2 hyperterminal deh.

Komponen yang aku pergunakan masih sama dengan penjelasan artikel aku sebelumnya. Aku masih pake MsComm kok! Aku masih suka memanfaatkan event MsComm_onComm untuk memunculkan respons dari device. Kali ini respons tersebut aku tempatkan di Textbox dan aku tampilkan apa adanya tanpa di olah terlebih dahulu. Aku tidak melakukan pengolahan regex atau concatenation... ciee... bule banget sich istilahnya... so, untuk pengolahan lebih lanjut sebaiknya kamu bikin program kamu sendiri yach..

Cara Pake Programnya,
1. klik menu "CommPort", udah itu klik "properties". Jendela baru yg muncul adalah Properties untuk device kamu. Kamu tentukan deh device kamu itu nempel di Com brapa, Trus Speednya, databit, parity, dan stopbit. Kalo dah kelar klik "OK".
2. Nah, di bagian ini kamu tinggal pake Hyperterminal kecil ini. Tapi sebelumnya koneksinya di sambung dulu. Caranya klik "CommPort" trus lanjutin klik "Port Open". Maka nyambung atau tidaknya ketauan dari status di bawah atau image bulat di sudut kanan atas. Kalo nyambung warnanya Hijau tapi kalau putus warnanya merah. Cara lain untuk konek dan putus yaitu langsung klik image bulatnya. Gitu deh... Inget yach konek gaknya ditentukan properties yang kamu masukin sebelumnya.
3. Kalo dah konek, kamu tinggal ketik AT commandnya seperti di hyperterminal. Dari sini cara kerjanya sama dengan hyperterminal.

Kamu coba-coba deh. Dari sini smoga ada gambaran gimana caranya bikin sendiri program SMS Server kamu. Smoga berhasil yach... Insya Allah aku akan tulis lagi untuk pembahasan lanjut. Tapi aku blom tahu dan blom mood sampe sekarang nih. hehehe...

Download File :

>>Download Hyperterminal Aku di sini nih
>>Password : sholat

Wass.

Arnie

Rabu, 12 November 2008

OKE GAK SICH PUNYA SMS SERVER (4)

Utak-Atik SMS Mode Teks Dengan Visual Basic

Pada bahasan yang lalu kita dah maen-maen dan berkenalan erat sama hyperterminal. Idenya kali ini adalah mungkin gak sich kalo kita ganti hyperterminal dengan program kita sendiri. Jadi kita gak perlu lagi deh ketik sintaks yang ngejelimet, berulang-ulang and nyusahin bikin pusing kepala di hyperterminal. So pasti pake Visual Basic dong... Aku coba untuk membedah sintaks yang penting2 aja yach. Kalo masalah parsing dkk kamu pasti bisa deh sendiri. Banyak loh literaturnya. Yang penting kan bisa nyambung antara vb dan device kamu, trus bisa baca sms, kirim sms and jangan lupa bisa juga hapus sms. Kalo kita persempit lagi, secara teknis yang kita butuhin kan cuma gimana cara koneksinya, trus cara kirim perintah ke device dan terakhir gimana cara nangkep respons yang dikirim device. tul gak? Nah masalah pemrograman database untuk menyimpan data sms dari device atau data sms ke device kamu pikirin sendiri yach. Kalo sempet di bahasan selanjutnya aku kupas juga deh. hehehe.

Visual Basic punya komponen yang kerjanya mirip hyperterminal. Namanya MsComm. Nah, gak perlu repot kan?

Kali ini kita pake MsComm untuk utak-atik smsnya. So, jgn lupa di project VB kamu masukin dulu yach komponen MsCommnya. dah itu baru deh kita bisa mulai coding.

Koneksi ke Device

Kamu harus tentuin dulu port dan baud rate, parity, dan kon?gurasi lain yang digunakan oleh device kamu.

Di dalam bahasa Visual Basic, kurang lebih kode programnya akan seperti di bawah ini:

MSComm1.CommPort = 3
MSComm1.Settings = “115200,N,8,1”
MSComm1.PortOpen = True

Artinya,
- Baris 1: "3" itu maksudnya kamu melakukan hubungan ke device yang ada di Com3. Nah karenanya kita harus tahu HP/modem GSm kamu itu nempelnya di mana? eh gak ding. Nempelnya terserah, mo di slot USB kek atau di Slot serial yang penting windows ngebacanya sebagai Com brapa? Cek aja di Phone/Modem Setting di Control Panel.
- Baris 2: “115200,N,8,1” maksudnya device kamu disuruh bekerja dengan baud rate 115200, parity = N, databit = 8, dan stop bit =1. Parameter2 ini kamu bisa contek di Phone/Modem Setting di Control Panel. Itu kalo kalo device kamu dah kebaca sama windows. hehehe.
- Baris 3: "True" itu maksudnya koneksi dibuka. Berhasil atau tidaknya kita lihat dari respons "OK" atau "ERROR" seperti di hyperterminal. Kalo pake MsComm cara nangkepnya pake property Input. Property Output digunakan untuk memberikan command/perintah kepada device, sedangkan property Input menghasilkan data dari buffer penerima.

Mengirim AT Command ke Device

Tes Koneksi:
MSComm.Output = “AT” & Chr$(13)

Chr$(13) adalah Enter.

Masuk Mode Teks:
MSComm..Output = “AT+CMGF=1” & Chr$(13)

Kirim SMS:
MSComm.Output = “AT+CMGS=”6281316932077" & Chr$(13)
MSComm.Output = "Hello, welcome to our SMS tutorial" & Chr$(26)

"Chr$(26)" adalah Karakter "Ctrl+Z"

Terima SMS:
Untuk menerima SMS sama artinya dengan kita menangkap semua data yang masuk ke MsComm baik itu Telepon masuk, isi SMS, maupun respons "OK" dan "ERROR". Alhamdulillah MsComm memiliki event OnComm. Event ini mencatat semua data yang masuk ke MsComm. Nah pinter2nya kamu deh untuk parsing / memilah dan menyusun semua data yang masuk. Nah, untuk sms masuk:

MSComm.Output = “AT+CMGL=”ALL" & Chr$(13)

lalu ambil datanya di event OnComm seperti di bawah ini.

Private Sub MSComm_OnComm()
Dim stComChar As String * 1

Do
Loop Until MSComm.InBufferCount > 0
Do While MSComm.InBufferCount > 0
stComChar = MSComm.Input
tempBuffer = tempBuffer + stComChar
Loop

Debug.Print tempBuffer

End Sub

Kalo gak ada masalah, maka setiap kali SMS masuk (ataupun terjadi event lainnya seperti telpon masuk), maka event ini akan dijalankan dan program akan menuliskan isi dari data yang diterima. Sampe sini dulu yach. Ntar lanjut lagi pada pokok pembahasan yang lebih kompleks. Insya Allah...

OKE GAK SICH PUNYA SMS SERVER (3)

Utak-Atik SMS Mode Teks Dengan Hyperterminal

Pada bahasan terdahulu aku udah jelasin sekilas cara make hyperterminal untuk berkomunikasi dengan HP/modem kamu. Nah, topik kali ini aku pengen banget ngebantu temen-temen yang pengen koding VB tapi gak punya HP/Modem. Kayaknya gak masuk akal yach? tapi bisa kok. Idenya sich sederhana aja, aku kasihan banget sama temen aku yg lg bikin program SMS Server. Tahu gak, masak dia bela2in beli modem GSM hanya untuk coba2 bikin SMS Server. Yach minimal pinjem dulu kek ama yg udah punya HP/modem GSM. Kan mahal tahu gak! Kalo beli HP Nokia 5110 yg second aja sampe 200 ribu plus kabel bisa sampe 300 ribu tuh. Bagi sebagian orang sich duit segitu gak seberapa. tapi kan gak semua orang punya duit segitu. So, aku kasih contoh-contoh keluaran (output) yang di respon HP/Modem GSM atas input yang dikirim ke device tersebut. Yach, gak banyak sich.. Aku Pilihin yang penting2 aja menurut aku. Nah dari sini kamu bisa coba-coba program kamu secara offline. Yach, minimal pas dipake dengan device sesungguhnya kekurangan program kamu (Bug) gak banyak-banyak banget. Maaf ya, kali ini aku hanya ngebahas SMS dalam mode teks aja. Yang PDU ntar lain kali kalo ada waktu lagi. OK?

Hal-hal yang perlu kamu perhatiin sebelum memulai ngobrol dengan device kamu,
1. Pastiin SIM Card kamu tuh gak pake PIN. Kalo emang dah terlanjur pake PIN dan kepengen tetep pake PIN brarti kamu harus kirim perintah ke device kalo kamu dah masukin PIN yang valid. Perintahnya kira-kira gini nih :

AT+CPIN="PIN", isi PIN dengan PIN SIM Card kamu, ok?

2. Trus kamu harus tentuin Kamu baca SMS nya itu yang di HP/Modem atau yang di kartunya (SIM Card). Sintaksnya gini nih :

AT+CPMS="ME","SM","MT"

Maksudnya,
- ME: Tempat nyimpen SMS nya di Device
- SM: Tempat nyimpen SMS nya di SIM Card
- MT: Semua tempat nyimpen yg ada, baik di device maupun di kartu.
Tulisnya boleh salah satu atau semuanya... suka2 aja deh... Sesuain aja ama penjelasan di atas dan situasi kamu.

3. Pastiin juga kalo si kartu kamu tuh nomor SMS Centernya dah diset. Kalo belom, yaa kamu set dulu. Manual aja pake HP kamu. tahu kan tempatnya? itu lho di message setting... Nah kalo kamu mau set pake sintaks,

AT+CSCA="+85290000000",145
OK

Artinya,
- "+85290000000": Nomor di atas tuh no SMS Center. Contoh doang...
- 145: kode ini cuma format penulisan doang. Kalo kamu pake 145 brarti penulisannya pake tanda "+". Kalo di negara kita sich modelnya kayak "+6281300000" gitu deh... aku lupa SMS Center di Indonesia... hehehe. Nah kalo kamu gak mau pake tanda "+" alias botak cuma angka doang, so pasti kamu harus kasih angka 129. Atau biarin aja kosong kayak gini nih "AT+CSCA="+85290000000"".

4. Terakhir nih, kalo mau kirim perintah ke HP/modem, mbok ya di tes dulu koneksinya nyambung gak? So, always slalu kamu tes. kasih aja sintaks "AT". Trus responsnya harus "OK". Kalo "ERROR" brarti koneksi kamu benerin dulu dong... Untuk nyambungin Hyperterminal ke Device kamu dah aku bahas di tulisan sebelumnya. Baca yach. Yang Penting device kamu kebaca sama windows sebagai "Com1" atau "Com2" yg penting "Com" deh. Trus Settingnya jgn lupa juga. Kalo dah kebaca windows sich kamu gak perlu tentuin lagi karena otomatis. Tapi kalo untuk coding dengan visual basic kamu masih harus tentuin Baudrate, parity, Databit, sama Stop bitnya. Kalo dah smua tinggal "Open" atau "Connect".

Membaca SMS dari HP/Modem GSM

Untuk membaca SMS dari device coba kamu ketik di hyperterminal kayak gini nih :

AT
OK
AT+CMGF=1
OK
AT+CMGL="ALL"
+CMGL: 1,"REC READ","+85291234567",,"06/11/11,00:30:29+32"
Hello, welcome to our SMS tutorial.
+CMGL: 2,"REC READ","+85291234567",,"06/11/11,00:32:20+32"
A simple demo of SMS text messaging.

OK

Aku jelasin dulu yach baris per baris sintaks di atas,
- Baris 1: "AT" dikirim ke device untuk tes koneksi. Kalo jawaban pada baris 2 adalah "OK" artinya koneksi komputer ke device kamu tuh dah bener.
- Baris 3: "AT+CMGF=1" digunakan untuk memerintahkan device agar bekerja pada SMS Mode Teks. Kalo respon dari device pada baris 4 adalah "OK" brarti device siap bekerja pada SMS Mode teks. Tapi kalo hasilnya "ERROR" brarti device kamu gak support untuk SMS mode teks.
- Baris 5-9: "AT+CMGL="ALL"" dipake untuk mengeluarkan semua daftar SMS yang ada di device kamu. Nah kalo kamu liat jelas banget kan SMS nya itu ada dua. Ada nomor indeksnya juga yaitu "1" dan "2". yang pertama "Hello, welcome to our SMS tutorial." trus yang kedua "A simple demo of SMS text messaging.". "+85291234567" adalah nomor pengirimnya. trus "06/11/11,00:30:29+32" sama "06/11/11,00:32:20+32" itu waktu SMS itu diterima SMS Center. Angkanya agak aneh ya? "+32" itu maksudnya zona waktu SMSC. Zona waktunya itu GMT+8. Inget yach, pokoknya Zona waktunya 1/4 (seperempat) dari angka yang tertera. Nah kalo "REC READ" itu maksudnya SMS itu dah pernah dibaca. Bukan SMS baru.
- Baris 11: "OK" itu maksudnya perintah "AT+CMGL="ALL"" telah berhasil dieksekusi. Kamu harus perhatiin bener2 nih untuk setiap respon "OK" artinya sintaks berhasil. Kalo gagal "ERROR".

Mengirim SMS Ke HP/Modem GSM

Sintaks yang kamu ketik di hyperterminal kayak gini nih,

AT+CMGS="+85291234567",145
> It is easy to send text messages.
+CMGS: 12

OK

Penjelasannya,
- Baris 1: "+85291234567" adalah nomor tujuan, inget karena pake tanda "+" makanya ditambahin embel2 "145". Udah itu jgn lupa juga tekan enter supaya muncul prompt seperti pada baris 2. Itu artinya kamu siap ketik isi SMS kamu. Contohnya di sini "It is easy to send text messages.".
- Baris 2: Di sini ini isi SMS yg harus kamu ketik. Jangan lupa kalo dah kelar pencet Ctrl+z.
- Baris 3-5: "12" itu no referensi yg dikasih device kamu ke SMS yg kamu kirim. Trus di baris 5, "OK" itu brarti pesen kamu dah terkirim dari device. Kalo "ERROR" brarti gagal.

Menghapus SMS dari Storage HP/Device

Ini penting2 gak penting sich. Tapi kadang perlu juga dipikirin biar kepala kita botak kayak professor. hehehe. Device kamu kan akan penuh kalo terus-terusan nerima SMS. Trus kalo dah full gak bisa lagi deh terima SMS. Alias Pendiiiiiiing. Alias SMS Orang kagak sampe-sampe. So, kamu harus rajin ngapus tuh SMS yang pernah diterima. Kalo gak pernah ya gak usah. Soalnya itu brarti SMS di hP orang lain. Bukan HP kamu. hehehe. Kerajinan kaleee ngapus SMS di HP orang laen.. hihihi. Sintaks di Hyperterminal,

AT+CMGD=1
OK

Penjelasan,
- Baris 1: "AT+CMGD" itu perintah yang dikirim ke device untuk menghapus SMS. Sedangkan "1" maksudnya nomor indeks sms yang dihapus adalah indeks 1. Kalo mo ngapus banyak indeks boleh kok dalam satu perintah misalnya indeks 1,2,3,4,7,9. brarti perintahnya "AT+CMGD=1,2,3,4,7,9". Nomor indeks ini didapet waktu kamu kirim perintah untuk baca SMS pake sintaks "AT+CMGL".
- Baris 2: "OK" itu respons dari device kalo perintah tadi berhasil. Kalo gagal "ERROR".

Sekian Dulu yach.. Ntar aku lanjutin lagi gimana Kalo otomatis gak perlu ketik di hyperterminal alias pake Visual Basic. Aku ngantuk BGT. Jgn lupa kasih komentar biar aku tahu artikel ini penting gak sich buat kamu-kamu.

Senin, 10 November 2008

OKE GAK SICH PUNYA SMS SERVER (2)

Memahami Format data SMS

Format data SMS yang dikirim ke Operator atau sebaliknya yang kita terima dari Operator adalah dalam bentuk PDU (Protokol Data Unit). Operator di sini maksudnya Telkomsel, Indosat, Telkom, dkk. PDU Ini isinya adalah bilangan Heksadesimal. Tau kan? itu tuh bilangan yg pas SD dulu kita namain jam 16-an. Maksudnya bilangannya cuma sampe angka 15 trus nol lagi deh. Nah Penulisannya tuh terdiri dari 0, 1, 2 , 3, 4, 5 , 6 ,7 ,8 ,9 ,A ,B ,C ,D ,E ,F. Kok gak ada angka 10, 11, 13, 14, 15? kan bilangan 10 dah di pake angka satunya di awal setelah 0 begitu juga 0 dah dipake kan di awal deretan bilangan 16. so gak boleh dipake lagi... Gitu deh... Contohnya gini deh supaya ngerti dikit apa sich heksadesimal itu... Soalnya nanti kita harus terbiasa dengan bilangan ini untuk pembahasan selanjutnya. Kalo angka desimal 1000, maka bilangan heksadesimalnya tuh 3E8. Cara kutak-katiknya begini :

1000 dibagi 16 = 62 sisanya 8. trus lanjutin,
62 dibagi 16 = 3 sisanya 14,
3 dibagi 16 = 0 sisanya 3.

nah kan kita dapet konversinya jadi 3 14 8. Jangan lupa bilangan 16 tuh gak ada angka 10, 11, 12, 13, 14, 15. so, Kita ganti jadi 3E8. Gampang kan....

Format SMS yang kita buat pake program sebelum kirim ke device HP/modem sebenarnya bisa kita set ke mode teks gak perlu PDU. kalo berhasil maka device yang akan bantu kita untuk konversi secara otomatis SMS format PDU dari dan ke Operator. Kita tinggal kirim / terima SMS dari operator dalam bentuk teks. so, gak perlu repot deh bikin prosedur konversi PDU. Tetapi masalahnya adalah gak semua device HP/modem itu support mode teks. Nyebelin kan? Tapi jgn khawatir dan jgn bingung. Daripada cari2 device yg support mode teks atau nggak lebih baik kita pelajarin aja mode PDU. Soalnya semua device tuh pasti support mode ini. hehehe, soalnya emang format aslinya boooo...

Format PDU untuk kirim SMS dan Terima SMS itu beda bgt. Untuk Kirim SMS PDUnya terdiri dari 8 header sebagai berikut :

Format PDU Untuk SMS Kirim

1. Nomor SMS-Center (Operator)
2. Tipe SMS
3. Nomor Referensi SMS
4. Nomor HP Penerima
5. Bentuk SMS
6. Skema Encoding Data I/O
7. Jangka Waktu SMS sebelum expire
8. Isi SMSnya dong....
Trus ke delapan header tersebut digabung jadi satu.. Nah kalo berhasil berarti SMS siap dikirim deh ke Operator via Device HP/Modem. Gimana sich cara bikin 8 header tadi? Caranya gini nih... cieee sok pinter nih yee.. Gak kok... becanda... Caranya begini nih :

1. Nomor Operator
Header pertama ini terdiri dari 3 bagian sub header, yaitu :
- Jumlah pasangan heksadesimal Operator dalam bilangan heksa
- Kode Nasional/Internasional. Nasional kodenya 81 trus kalo internasional kodenya 91
- Nomor Operatornya. urutannya dibolak-balik dalam bilangan heksa. kalo gak ada pasangan sisa 1 maka dipasangin huruf F di depannya. Ada 2 cara bikinnya,
Cara 1 (Nasional) :
1. Telkomsel (0811000000) ----> 06818011000000
2. Satelindo (0816124) ----> 0581806121F4
3. Excelcom (0818445009) ----> 06818081440590
4. Indosat-M3 (0855000000) ----> 06818055000000, caranya :
Dengan cara pembagian 3 sub header di atas, untuk excelcom dengan nomor SMS-Center 0811000000 maka :
- Jumlah pasangan heksa 6 pasang, yaitu : 08, 11, 00, 00, 00 = 5 + 1 pasang, ditulis 06
- Kode nasional/Internasional = 81
- Nomor Operator dibolak-balik = 80-11-00-00-00.
Proses penggabungan menjadi 06818011000000
Cara 2 (Internasional) :
1. Telkomsel (62811000000) ----> 07912618010000F0
2. Satelindo (62816124) ----> 059126181642
3. Excelcom (62818445009) ----> 07912618485400F9
4. Indosat-M3 (62855000000) ----> 07912658050000F0, caranya :
0811000000 diubah menjadi 62811000000, sehingga :
- Jumlah pasangan heksa 7 pasang, yaitu : 62, 81, 10, 00, 00, F0 = 6 + 1 pasang, ditulis 07
- Kode nasional/Internasional = 91
- Nomor Operator dibolak-balik = 26-18-01-00-00-F0.
Proses penggabungan menjadi 07912618010000F0

2. Tipe SMS,
Tipe SMSnya SEND (kirim), so di set 1. Jadi bilangan heksanya ditulis 01

3. Nomor Referensi SMS,
Nomor referensi ini otomatis diset oleh device HP/Modem. Untuk kita dummy aja di tulis 00.

4. Nomor HP penerima,
Penulisan PDU Headernya mirip dengan point 1, yaitu :
- Jumlah bilangan desimal nomor tujuan dalam bilangan heksa.
- Kode Nasional/Internasional. Nasional ditulis 81, internasional ditulis 91.
- Nomor tujuan ditulis bolak-balik dalam pasangan heksa kalo sisa satu dipasangin dengan F didepannya. Contoh, untuk pengiriman ke nomor 6281316932077 PDUnya menjadi :
Cara 1 : (081316932077)
- Ada 12 angka, jadi ditulis 0C
- 81
- 80-31-61-39-02-77
Kalo digabungin menjadi 0C81803161390277
Cara 2 : 6281316932077
- ada 13 angka, jadi ditulis oD
- 91
- 26-18-13-96-23-70-F7
Kalo digabungin menjadi 0D91261813962370F7

5. Bentuk SMS,
SMS = 0, ditulis 00. Kalo telex=01 trus fax=02.

6. Skema Encoding Data I/O
Di pasaran rata2 menggunakan Skema 7 Bit. Apa tuh? Pokoknya tulis aja 00. Gak usah dipikirin. Urusan pabriknya tuh...

7. Jangka Waktu SMS Expire
Klo poin ini gak dipake artinya gak ada expire. Kalo mo dipake ada itung-itungan rumusnya. gak rumit2 amat kok... Biasanya ditulis dalam bilangan integer. Daftarnya,
- 0-143 ----> (INT +1) x 5 menit. Artinya antara 5 menit s.d 12 jam.
- 144-167 ----> 12 jam + (INT - 143) x 30 menit
- 197-255 ----> (INT - 192) x 1 minggu
yaahh, kalo pengen smsnya pasti sampe, kamu gak usah kasih limit waktunya... cepet atau lambat pasti sampe... Insya Allah.. :)

8. Isi SMS
Untuk isi SMS ini keliatannya susah... Tapi sebenernya gampang banget lho... Cuma cara penyajian literatur yang ada dan telah banyak beredar saat ini ngejelimet bgt bikin pusing yang bacanya. Makanya di tulisan ini aku kasih simplenya aja yach... Konversi isi SMS menjadi bilangan heksa itu prosesnya adalah konversi dari kode 7 bit menjadi kode 8 bit. Maksudnya kita punya bilangan biner (jam duaan) yang isinya cuma angka 0 dan 1 itu loh. kita bagi2 atau digrup-grupin atau dikelompok-kelompokin dari masing2 7 bit menjadi masing2 8 bit. Untuk membentuk kata atau huruf menjadi biner kode 7 bit gak usah pusing soalnya dah ada tabelnya resmi seperti di bawah ini.


Misalnya isi pesan kita adalah hello, maka kalo kita petakan ke kode 7 bit menjadi :

h ----> 110 1000 (inget yach baca dari bit 1 dulu trus tulis dari kiri berurut B7-B6-B5-B4-B3-B2-B1)
e ----> 110 0101
l ----> 110 1100
l ----> 110 1100
o ----> 110 1111

Trus kita ubah jadi kode 8 bit. ini gak pake tabel lho. cuma disusun masing2 jadi 8 bit... caranya gini nih... kita tulis deretan bitnya dari belakang yach...

hello ----> olleh ----> 1101111 1101100 1101100 1100101 1101000. Nah deretan ini kan tersusun masing2 7 bit. kita jadiin masing2 8 bit. Jadinya gini nih : 00000110 11111101 10011011 00110010 11101000. bit sisanya (yang paling depan) aku tambahin 5 bit angka 0 supaya jadi 8 bit. hehehe. yg penting nilainya gak berubah kan? Nah, udah itu baru deh kita konversi jadi heksa. Caranya gampang bgt. Setiap 8 bit itu mewakili 2 bilangan heksa. Jadi 1 bilangan heksa itu 4 bit. Jadinya gini deh (jgn lupa urutannya disusun lagi seperti semula dari olleh menjadi hello. hehehe),

1110 1000 ----> E 8
0011 0010 ----> 3 2
1001 1011 ----> 9 B
1111 1101 ----> F D
0000 0110 ----> 0 6

Hasil akhir menjadi E8329BFD06

Nah Jadi isi SMS hello dari ke delapan header kita gabungin, dalam arti Untuk mengirimkan kata “hello” ke nomor handphone 6281316932077 lewat SMS-Centre Telkomsel, tanpa membatasi jangka waktu valid, maka PDU lengkapnya adalah:

07912618010000F0,01,00,0D91261813962370F7,00,00,00,E8329BFD06 (Ntar nulisnya tanpa koma yach...)

Gampang kan..... Kita lanjutin lagi yuk untuk membahas format PDU SMS terimanya.


Format PDU Untuk SMS terima dari SMS-Center

Alhamdulillah ternyata PDU untuk SMS terima gak jauh beda bgt dengan SMS Kirim. So, kalo kamu dah ngerti konversi PDU untuk SMS kirim brarti untuk SMS terima gak ada masalah. Smoga. Amien. PDU SMS Terima terdiri dari 8 header juga, yaitu :

1. No SMS Center / Operator
2. Tipe SMS,
SMS Terima = 4 ditulis 04
3. Nomor HP Pengirim
4. Bentuk SMS
5. Skema Encoding
6. Tanggal dan Waktu SMS di SMS Center,
diwakilin 12 bilangan heksadesimal (6 pasang) formatnya yy/mm/dd hh:mm:ss (Jgn lupa dibolak-balik dulu yach. hehehe). Contoh : 201101903254 ----> 02-11-10-09-23-45 ----> 10 Nov 2002 09:23:45 WIB
7. Expired
8. Isi SMS

Arti dari PDU Berikut :

07912658050000F0040C9126581610739800002070225123800005E8329BFD06 ---->

07912658050000F0,04,0C91265816107398,00,00,207022512380,00,05E8329BFD06

Disesuaikan dengan bahasan 8 header tadi yach, menjadi :
1. SMS tersebut dikirim lewat SMS-Centre:62855000000
2. SMS tersebut merupakan SMS-Terima
3. SMS tersebut dikirim dari hadnphone dengan nomor Sim Card:628561013789
4. SMS tersebut diterima dalam bentuk SMS
5. SMS tersebut memiliki skema encoding 7 bit
6. SMS tersebut sampai di SMS-Centre pada tanggal 22-07-02, pukul: 15:32:08 Wib
7. SMS tersebut tidak memiliki batas waktu valid
8. SMS tersebut isinya adalah “hello”.

Sekian dulu bahasan kali ini. Selanjutnya kita akan bahas bagaimana berinteraksi dengan device HP/modem untuk mengirim dan menerima SMS dengan format PDU dengan komponen FBUS atau dengan menggunakan AT Command.

Download File :

>>Prosedur PDU to Text
>>Prosedur Text to PDU
>>Password : sholat

Wassalam,

Arnie

Rabu, 23 Juli 2008

Main-main Sama WebCam Yuk...

Webcam emang bukan barang baru bagi para chatter. Buat yang sering pake Yahoo Messenger, MSN, Skype, dll pasti asyik kalo bisa ngobrol sekaligus tatap muka. Gak cuma ngetik doang lho. Capee deh... :) paling gampang sich tinggal pake aja webcam di warnet biasanya dah lengkap tuh ada kamera trus headset + mic nya. tinggal pake deh. Tapi kalo komputer rumahan??? jgn harap deh bakalan lengkap... Cuma yang serius pengen chatting aja yang biasanya lengkap.

Kepengen gak sich kira2 kamu tahu gimana tuh Messenger2 bisa nampilin gambar kamu di aplikasi mereka??? Apalagi kalo kita bisa video chat. Wah seru kali yeee. Tapi untuk pokok bahasan kali ini aku cuma kepengen fokus dulu sama gimana caranya gabungin webcam di aplikasi kamu. Ntar kali yee untuk video Chat aku bikin topik baru lagi... Oke Bos???

Pada topik kali ini kita akan berhubungan dengan yang namanya Programming Video For Windows. Sebelum kita memulai, pastikan komputer kamu sudah ada webcamnya. trus kalo bisa dah diinstall juga drivernya. pokoknya kamu bisa lihat wajah kamu sendiri. alias dah dicoba dulu gitu loh.. Cara nyobanya, buka windows explorer (Windows XP yaa). trus lanjutkan klik webcam kamu di bawah drive. kalo gak salah deket2 sama My Network Places deh.. Kalo emang dah bener install drivernya pasti gambar kamu muncul deh... hihihi... lanjut ya..
Aplikasi kita kali ini memanfaatkan Win32 API nya windows XP. Melalui Win32 API ini kita capture gambar video kamu trus dimasukkan ke window aplikasi kamu. Ada beberapa langkah yang harus dilakukan untuk proses capturing ini :
1. Buat window untuk nampung cap
Pada proses ini kita manfaatkan capCreateCaptureWindowA function.
Waktu fungsi ini dipanggil handlenya tuh window baru trus kamu bisa bagusin deh window kamu dengan mengubah-ubah style paramaternya.

lwndC = capCreateCaptureWindowA("My Capture Window", WS_CHILD Or WS_VISIBLE, 0, 0, 160, 120, Me.hwnd, 0)

Ini cuma contoh aja. definisi fungsi, parameter dan konstantanya dah aku buatin di modul VB6.

2. Nyambungin Window yang tadi dah dibuat ke video drivernya
iya dong... kan supaya aplikasi tahu yang mo dicapture tuh webcam yang mana.. tul gak??? Perintahnya adalah :
SendMessage lwnd, WM_CAP_DRIVER_CONNECT, 0, 0. Tapi aku dah modif jadi gampang :

capDriverConnect lwnd, 0
  • passing String ke SendMessage :
Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Integer, ByVal lParam As Long) As Long

Declare Function SendMessageS Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Integer, ByVal lParam As String) As Long
  • Passing Struktur ke SendMessage :
Dengan menggunakan fungsi Built in VARPTR() bisa diketahui lokasi struktur yang dipassing di memori. Cara gampangnya untuk capture parameter kayak gini deh...

Dim CAP_PARAMS As CAPTUREPARMS
capCaptureGetSetup lwndC, VarPtr(CAP_PARAMS), Len(CAP_PARAMS)
  • Proses Gambar dari Video Stream :
Pertanyaannya adalah bagaimana cara ngambil / capture gambar dari video yang lagi muter / play atau streaming. ribet kan? Udah ada sih fungsinya... namanya Fungsi Call Back. Untuk proses frame2 ketika Mode Preview kamu pake aja capSetCallbackonFrame. Trus kalo pada saat mode Capturenya kamu pake capSetCallbackOnVideoStream. Contohnya

capSetCallbackOnFrame lwndC, AddressOf MyFrameCallback

MyFrameCallback, Itu fungsi yang setiap kali pasti dipanggil kalo ada frame baru yang diterima dari video drivernya. Trus kamu tangkep handlenya yang didefinisikan sebagai VIDEOHDR.
Type VIDEOHDR

lpData As Long '// address of video buffer
dwBufferLength As Long '// size, in bytes, of the Data buffer
dwBytesUsed As Long '// see below
dwTimeCaptured As Long '// see below
dwUser As Long '// user-specific data
dwFlags As Long '// see below
dwReserved(3) As Long '// reserved; do not use

End Type
dimana lpData adalah data aktual dari devicenya. Berikut ini contoh fungsinya yang dah siap dipake.
Function MyFrameCallback(ByVal lwnd As Long, ByVal lpVHdr As Long) As Long

Debug.Print "FrameCallBack"

Dim VideoHeader As VIDEOHDR
Dim VideoData() As Byte

'//Fill VideoHeader with data at lpVHdr
RtlMoveMemory VarPtr(VideoHeader), lpVHdr, Len(VideoHeader)

'// Make room for data
ReDim VideoData(VideoHeader.dwBytesUsed)

'//Copy data into the array
RtlMoveMemory VarPtr(VideoData(0)), VideoHeader.lpData, VideoHeader.dwBytesUsed

Debug.Print VideoHeader.dwBytesUsed
Debug.Print VideoData

End Function
RtlMoveMemory, itu juga harus dideklarasikan dulu lho... kayak gini nih contohnya :

Declare Sub RtlMoveMemory Lib "kernel32" (ByVal hpvDest As Long, ByVal hpvSource As Long, ByVal cbCopy As Long)

Udahan dulu yach... Aku punya source code lengkap untuk webcam sederhana ini... Jgn lupa kasih komentar yg bagus2 yach... Aku kan capek dah nulis lho! hihihi....

Download File :

>>Webcam-Simple
>>Webcam-Advanced
>>Password : sholat

Wass,

Arnie

OKE GAK SICH PUNYA SMS SERVER (1)

SMS Server??? iya, emang aku kepengen dan gregetan bikin sms server. Aku dah banyak nyoba yang gratisan. Softwarenya lho yang gratis (kayak bengkelprogram.com)... Sourcecodenya sich gak dikasih. ada juga yang kasih komponen activex / OCX (kayak www.softwarecave.com) nya tapi cuma khusus buat nokia. Gimana dong kalo pake HP yang lain, misalnya siemens, motorola atau GSM/GPRS modem atau CDMA modem??? kan report bikinnya kalo protokol atau bahasa komunikasinya beda2. tul gak???
Banyak orang yang bilang SMS Gateway yang bener, bukan SMS Server. tapi kalo aku lebih cocok pake SMS Server. soalnya aku kepingin bikin Server/Komputer buat nampung sms yang datang. sukur-sukur kalo aku bisa jawab otomatis ke si pengirimnya. Sedangkan kalo SMS Gateway...?? ya namanya juga gateway otomatis Servernya sebagai gatewaynya dari SMS dong. Link komunikasinya tidak hanya dengan modem/HP tapi juga pake yg namanya http/smpp, dll. lebih kompleks kan??? please deh.,..

Banyak temen2ku yang tanya apakah bisa server kirim dan terima sms nya beda jalur, misalnya kirim pake HP trus terimanya pake Modem GSM/CDMA. ide bagus tuh. aku bilang yaa bisa aja. malahan tidak terbatas jumlahnya. Pokoknya selama windows masih bisa ngenalin device kamu sebagai COM Port artinya gak masalah. Mau lewat serial kek atau USB kek terserah. Permasalahannya adalah gimana caranya Server bisa baca sms dan kirim sms melalui device?? Brarti kita harus tahu cara komunikasinya bagaimana... Hampir semua device yang ada di pasaran baik HP maupun GSM/CDMA Modem itu support AT Command. So, kita mulai blajar apa itu AT Command?? Untuk literatur AT Command ini kamu cari aja di internet yach... banyak kok.. Kalo dah dapet, kita langsung praktek...

Apa aja yang perlu disiapin dulu nih. So pasti kamu harus punya HP/Modem GSM/CDMA trus disambungin deh ke komputer kamu. Misalnya kamu pake Modem GSM Huawei punya. Kalo emang ada drivernya mbok ya diinstall dulu biar windows bisa baca modem kamu. Coba tes deh windows kamu dah ngebaca device kamu blom??? Caranya masuk (Control Panel) ke trus pilih (Phone&Modem Options). Trus kamu pilih tab (modem) (Kalo gak ada kamu isi dulu lokasi kamu dan kode wilayah kamu trus klik OK). Nah di dalamnya ada daftar device kamu deh. yang perlu kamu perhatikan adalah device kamu terdaftar di COM Brapa??? Kalo gak ada, please deh di trus detect deh device kamu. Kalo gak ada juga brarti kamu kudu install drivernya. Nah selanjutnya coba kamu buka Hyperterminal kamu di (Start)(All Programs)(Accessories)(Communications)(Hyperterminal)

Kamu isi deh misalnya huawei trus tekan OK.










Nah pas di sini kamu harus pilih device kamu di Com Barapa... Kalo emang dah bener muncul deh cursor kamu di Hyperterminal. Artinya Hyperterminal siap kirim AT Command kamu ke device. Coba deh ketik AT. harusnya keluar pesen OK. trus coba deh ketik AT+CGMI. kluar pesen apa hayo???

Coba kamu main di mode text. Caranya ketik AT+CMGF=1. hasilnya harus OK lho. kalo gak brarti device kamu gak support mode text. Udah itu coba kamu lanjutkan dengan :
1. Untuk baca SMS coba kamu ketik AT+CMGL="All". Tuh kan muncul semua daftar sms di device kamu. hihihi.
2. Untuk kirim SMS coba kamu ketik

AT
AT+CMGF=1
AT+CMGS=08xxxxxxx
> testing kirim

Setiap baris pada contoh perintah di atas diakhiri dengan penekanan tombol enter, kecuali untuk baris pengirisan pesan, yang diakhiri dengan CTRL + Z. AT command umumnya ditulis pake huruf besar, tetapi banyak modem GSM dan ponsel yang ngebolehin AT command dalam huruf besar maupun huruf kecil.

Setelah berhasil menjalankan AT command pada HyperTerminal, maka kamu dah siap untuk melangkah lebih lanjut, yaitu menuliskan kode program pada bahasa pemrograman favorit kamu untuk bikin sebuah SMS Server. Kalo aku pake VB6. Pokoknya kode program yang mo dibikin itu intinya menuliskan AT command di dalam aplikasi kamu, yaaa kayak yang kamu tulis tadi di HyperTerminal. OK!!!

Sampe sini dulu yach... Ntar lanjut lagi.. JGN Lupa kirim komentar dong... hihihi.

Selasa, 22 Juli 2008

Yuk Kita Bikin Billing Warnet Sendiri (1)

Banyak Lho warnet-warnet bertebaran di jakarta khususnya di sekitar kampus atau kos-kosan mahasiswa/i. di bandung apalagi. wuihhh buaaanyak banget deh... Blom lagi pada perang tarif 3000/jam. Kita sebagai pelanggan diuntungin banget deh... hehehe... maklum kantong aku gak tebel2 banget.. alias Tongpes.. Gak Punya duit. Ide bikin billing warnet itu begini nih,
Setiap warnet pasti membutuhkan sarana untuk mencatat transaksinya setiap hari yang tidak mungkin dilakukan secara manual. Blom lagi tangan2 jahil operator yang sering ngutilin uang si majikan warnet ditambah lagi pelanggan warnetnya yang pengennya pake lama tapi bayar maunya dikit. Kejadian deh pelanggan ngeboongin operator warnet. hehehe. Saat ini banyak bermunculan software-software billing warnet yang dapat mencatat semua transaksi warnet mulai dari jasa penggunaan internet, scan, print, atau bahkan hingga minuman ringan yang mendukung usaha warnet. Di samping itu, software tersebut juga memberikan fitur-fitur beraneka ragam mulai dari yang berhubungan dengan sistem operasinya, hingga laporan keuangan warnet itu sendiri. Namun harga software billing warnet yang ditawarkan begitu beragam dan cukup mahal.
Kita bisa juga kok bikin sendiri software billing warnet. Gampang kok... cieee... Kalo buat di satu komputer aja sich emang gampang... pake excel juga kelar (Yang excel ini juga boleh kok dijadikan pokok bahasan. Tapi gak di sini yach. Tunggu aja di postingan aku yang lain.. OKE!!!). Yang aku maksud di sini bikinnya untuk smua komputer. So, si operator bisa mengendalikan client, mengobok-obok client, trus ya ngeprint tagihan pemakaian internet si client juga dong...
Yang paling asyik dan menantang..... eng ing eng.... Gimana caranya client gak bisa ngakalin operatornya... seru kan... Makanya ayo kita bikin deh programnya. Orang-orang bilang sich program ini termasuk jenis Client-Server. Untuk memulainya apa aja yang kamu butuhkan???
1. Pengetahuan cara menggunakan Visual basic
2. Pengetahuan Tentang windows Registry
3. Pengetahuan tentang Winsock
4. Pengetahuan tentang Perhitungan waktu dan harga per jam

segitu dulu deh... aku capek hari ini...
Note :
kalo dah jadi kamu bisa jualan seperti situs Billing warnet yang cukup terkenal di http://www.billingexplorer.com.

Mari Membuat dan Mencetak Barcode

Wah ide apalagi nih. Barcode itu apaan sich? Kenapaaaaaa..... susah-susah harus dibahas. Emangnya penting banget gitu??
Sebelum kita jawab penting atau tidak penting barcode bagi kita ada baiknya kita lihat hewan seperti apa sich barcode itu... hihihi... Pernah lihat kode barang dagangan di swalayan, di warung, atau di toko pokoknya tanda deretan garis tebal dan tipis yang menempel pada barang dagangan. Seperti ini loh :







Ini dia yang namanya barcode. Tanda barcode di setiap barang dagangan tidak sama, sifatnya unik untuk setiap jenis barang. hanya barang-barang sejenis aja yang sama. Misalnya Indomie Goreng sama Indomie Ayam Bawang pasti beda tandanya. Simbol-simbol ini diatur oleh badan perdagangan. setiap produsen memiliki kode tersendiri. Bagaimana aturan simbol tersebut? yach coba cari sendiri deh. capek... hihihi. Yang perlu diinget itu bahwa Tanda barcode untuk setiap barang dagangan itu UNIK.
Cara baca kode ini juga gampang kok. Gak Perlu dipikirin. Udah banyak alatnya untuk baca tanda barcode namanya Scanner Barcode. Tinggal beli trus pasang di komputer trus bisa deh dipake baca tanda barcode. hasilnya adalah deretan kode angka yang muncul sesuai cursor kamu. kalo cursor kamu lagi di notepad dalam mode ketik.. yaa brarti kode angkanya akan muncul di notepad. begitu juga kalo cursor kamu diarahkan ke textbox maka deretan angka tanda barcode akan muncul di textbox setelah di scan pada barcode. Gampang kan....???
Bagaimana cara bikin Tanda Barcode??? Perlu gak sich bikin / cetak sendiri tanda barcode??? Sebenarnya di pasaran itu dah ada printer barcode yang handal cuma masalahnya kita kepengen punya layout barcode sendiri dan tentunya dengan biaya yang murah. Soalnya printer barcode tuh lumayan mahal lho...
Bikin kode dagang sendiri yuk! eh, ngapain bikin kode dagang sendiri...??? kan dah ada yang buatin. yang perlu kita buat itu kode kita sendiri yang berbeda dan tidak sesuai dengan aturan kode dagang. Tanda barcode itu banyak jenisnya. Kode Barcode dagang biasanya pake kode simbol EAN13. cuma bisa cetak angka dan terbatas hanya 13 digit. Karena kita pengen kode bebas cocoknya tuh pake kode simbol 128. kode ini bisa menampung angka dan huruf trus bisa banyak lagi digitnya... seru kan???
Untuk Literatur Simbol kode barcode EAN13 masuk aja ke http://www.easesoft.net/Upc-ean13.html. Kalo untuk simbol Kode Barcode 128 masuk aja ke http://www.easesoft.net/Code128-ean128.html.
Kamu baca-baca deh... kalo dah selesai aku dah buatin program untuk membuat dan mencetak barcode yang merupakan realisasi dari bacaan kamu itu.. So pasti yang kode 128 dong... hehehe
Kalo pengen kodenya kasih komentar dulu yach... trus imel ke aku... cieee... ntar aku kasih...

Download File :
>>Code128 Modul
>>Password : sholat

Wass,

Arnie

Mari Membuat Program Sistem Parkir (2)

Menyambung tulisan yang lalu, untuk merealisasikan sistem parkir dibutuhkan perangkat keras dan perangkat lunak. Apa aja sich...???

Perangkat Keras :

1. Komputer (So pasti dong... kalo gak ada, kamu mau pake apa kodingnya... hihihihi..)
2. Printer Struk
3. Kamera, pake webcam juga boleh... kan untuk latihan dulu...
4. Palang pintu otomatis... (untuk yang ini, gak ada juga gak apa2... mahal sich...)
5. Proximity Card + Reader / atau boleh juga pake kartu barcode (Ini dipake kalo gak pake struk...)

Perangkat Lunak :

1. Microsoft Windows XP
2. Microsoft Visual Basic 6
3. Microsoft Office

Gambarnya kira2 begini nih...


Lihat deh... Banyak juga yach yang harus disiapin.. Sambil nyiapin (kali aja kamu belanja dulu ke manggadua beli komputer dan lain2...) kita bahas dulu aja proses kerja sistem parkir itu gimana sich. Gini loh... cieee kayak yang pinter ajee.. gak kok aku cuma sharing doang. kalo salah dimaklumi yach. Prosesnya ada dua, yang pertama proses kendaraan masuk dan yang kedua proses kendaraan keluar.

Proses Kendaraan masuk : Proses Kendaraan Keluar :




















Data-data apa aja yang kita perlukan untuk disimpen??? trus tampilannya gimana?? ntar lanjut lagi yach.... Pokoknya blajar sampe bisa... Ayo maju pantang mundur.... Jangan lupa kasih komentar yach!!!

Mari Membuat Program Sistem Parkir (1)

Ide membuat sistem parkir bukanlah sebuah ide yang konyol ataupun ide yang sudah ketinggalan zaman. Ide ini masih tetap hangat di Indonesia. Buktinya pemain besar sistem perparkiran di Indonesia saat ini hanya 2. Yang paling lama bermain di bidang ini sebut saja Secure Parking. Beliau Sudah kurang lebih 25 tahun berkecimpung di bisnis parkir. Sedangkan saingannya adalah Sun Parking. Beliau ini walaupun terhitung baru di bisnis parkir tapi bisa disebut jagoan karena hampir menguasai 25% bisnis parkir Indonesia hanya dalam jangka waktu 5 tahun saja. Hebat kan!!!

Cerita awalnya sich dimulai dari beberapa gedung perkantoran atau mall / swalayan yang memiliki lahan parkir di halaman gedung mereka yang tidak tertata dengan baik. Mereka kepikiran apakah bisa lahan parkir disewakan seperti halnya menyewakan ruang2 kantor, ruang2 kios ataupun sewa gedung dan sebagainya. Kalo emang bisa pasti gak ada space yang terbuang dong. smua bisa jadi duit.. hihihi.. Pertanyaan selanjutnya adalah siapa yang mo nyewa nih lahan??? Trus bagaimana sistem pembayaran dan sebagainya.??? Misalnya nih... lahan parkirnya disewa oleh Sun parking bulanan tapi bisa juga tahunan sih.. hihihi.. sebulan 40 Juta per 1000 meter persegi. so, tinggal Sun Parking deh yang usaha gimana caranya ngatur motor dan mobil supaya parkir bayar trus nutupin biaya bulanannya tadi itu loh... Gimana caranya duit yang masuk gak dinakalin sama petugas parkir... dan lain-lain...


Brarti kan Butuh manajemen Parkir yang handal. yang diantaranya bisa mengatur :

1. Brapa tarif mobil / motor.
2. Dicatet gak identitas mobil / motor nya..
3. Kapan boleh masuk
4. Kapan boleh keluar.
5. Siapa Petugasnya.
6. Siapa aja yg kena tarif normal siapa aja yang kena tarif khusus atau gratis... kali ajee..
7. kalo bisa sich pake kamera supaya yakin mobil/motor yang masuk sama dengan yang keluar untuk identitas yang sama. jangan sampe identitas xxxxx masuk mobil mercy keluar jadi mobil kijang atau sebaliknya. hehehe...
8. pake kartu atau struk buat pegangan mobil/motor.
9. Pas masuk/keluar pake palang pintu gak?

Sekian dulu.... ntar lanjut apa aja yang perlu disiapkan supaya sistem perparkiran bisa direalisasikan

Note :

Perlu diperhatikan bahwa ada perda khususnya di DKI yang mengatur tentang perparkiran ini. salah satu bunyi klausulnya sich mereka tidak bertanggung jawab kalo ada kehilangan mobil/motor. alasannya karena mereka hanya menyewakan lahan parkir. bukan ngejagain.. gitu deh... tapi Secure parking kena batunya di pengadilan kalah dan harus membayar ganti rugi...

Peraturan & Tata tertib

Bismillahirrohmanirrohiim, Assalamu'alaikum wr. wb,

Sourcecode yang aku sharing di sini dijelaskan terlebih dahulu alurnya disertai pembahasannya dan sifatnya GRATIS dengan syarat :

1. Kamu-kamu smua kasih komentar
2. Setiap pembuatan program dengan sourcecode dari BLOG aku dan sifatnya komersil WAJIB dan KUDU menyertakan NAMA dan BLOG aku lho!
3. Kamu-kamu jangan lupa isi Polling blog aku yach...

NB :
Donasi :
Rek mandiri No. 117-0005202486.
Arniaty Arsyad
















Wassalam,

Arnie