Anda di halaman 1dari 23

Fingerspot Easy Touch SDK Software Development Kit

Developer Guide Indonesian Version Release 1.0.0 2010 - 2011

Fingerspot EasyTouch SDK adalah cara termudah untuk menambahkan fitur pengenalan sidik jari ke aplikasi dengan menggunakan sensor U.are.U dari Digital Persona. SDK ini dirancang sesederhana mungkin, mudah untuk dipelajari dan diintegrasikan ke aplikasi. Fungsi-fungsi yang disertakan berkonsep instan, cukup memanggil fungsi-fungsi yang dibutuhkan seperti registrasi dan verifikasi sidik jari maka SDK akan melakukan seluruh proses registrasi dan verifikasi yang rumit tanpa developer perlu terlibat secara langsung didalamnya. Keunggulan Fingerspot Easy Touch SDK Kecepatan pengenalan sidik jari sampai 200 contoh sidik jari per detik. Mendukung penggunaan multi sensor dalam satu aplikasi. Mendukung DSN, OLE DB & ODBC sehingga contoh sidik jari dapat disimpan menggunakan berbagai database seperti Access dan SQL Server. Gambar sidik jari dapat ditampilkan terintegrasi ke aplikasi ataupun disimpan sebagai file image. Mendukung verifikasi 1 ke N atau berdasarkan kriteria filter tertentu.

Perhatian ! Untuk pengguna Fingerspot Ultimate SDK dan Fingerspot Ultimate Pro SDK yang ingin menggunakan Fingerspot Easy Touch SDK maka diperlukan konversi template agar template kedua SDK tersebut dapat digunakan di Fingerspot Easy Touch SDK. Untuk mengkonversi template, hubungi support@fingerspot.com.

MELIHAT CONTOH PROGRAM Untuk melihat contoh program dibutuhkan program Visual Basic 6.0, Delphi 7 atau Visual Basic.NET 2005. Contoh program ada di folder Samples di CD instalasi. CONTOH SIDIK JARI Contoh sidik jari dapat disimpan di dalam database terpisah atau digabung dengan database aplikasi. Penyimpanan contoh sidik jari ini tidak dalam bentuk gambar tetapi dalam bentuk kode angka atau umumnya di sebut template sidik jari. Dari contoh sidik jari yang disimpan di database ini, tidak dapat diubah kembali menjadi gambar sidik jari. Easy Touch SDK mendukung penggunaan DSN, OLE-DB dan ODBC. Database yang dapat digunakan adalah database yang mendukung tipe data bineri atau OLE Object seperti di database Access. Tambahkan satu tabel baru ke database aplikasi atau database baru dengan struktur sebagai berikut :

Fingerprint_T Field ID Finger FingerData Tipe Text Number Bineri Ukuran 10 Byte Key Primary Primary

Field ID berisi nomor identitas contoh sidik jari. Setiap ID bisa memiliki sampai sepuluh contoh sidik jari, walaupun demikian sebaiknya setiap ID hanya diambil satu atau dua contoh sidik jari saja karena semakin banyak jumlah contoh sidik akan sangat mempengaruhi kecepatan verifikasi. Isi field ID sebaiknya dalam bentuk angka dengan panjang maksimal 10 digit. Field Finger berisi nomor indeks jari yaitu nilai 0 sampai 9. Field FingerData berisi contoh sidik jari. Field ID dan Finger adalah primary key dari tabel ini. Selain field-field di atas, bisa ditambahkan field-field lain untuk keperluan pencarian contoh sidik jari. SDK mempunyai fasilitas pencarian contoh sidik jari berdasarkan kriteria tertentu. Contoh field yang dapat ditambahkan untuk keperluan pencarian, misalnya field jenis kelamin, field nama dan sebagainya. Tetapi perlu diingat semakin banyak field yang ditambahkan, maka semakin besar juga ukuran database dan semakin banyak kebutuhan memory oleh SDK saat meload contoh sidik jari. Tambahkan hanya field yang benar-benar dianggap perlu.

Gunakan fungsi ActiveConnection untuk menghubungkan antara SDK dan database contoh sidik jari. Input dari fungsi ini adalah connection string dari Visual Basic seperti contoh dibawah. Fungsi ini akan mengembalikan nilai sc_Success bila sukses atau sc_Fail bila gagal. Jika koneksi database sukses, maka selanjutnya bisa dilakukan proses registrasi atau verifikasi sidik jari. Fungsi ActiveConnection hanya digunakan jika diperlukan mengakses tabel Fingerprint_T untuk keperluan registrasi atau verifikasi sidik jari. Nama tabel dan struktur dasar tabel harus sama agar dapat diakses oleh SDK. Contoh
Dim FPDatabase As New FingerspotETouchSDK.FinFPDatabase If FPDatabase.ActiveConnection("DRIVER={Microsoft Access Driver (*.mdb)};" & _ "pwd=;" & _ "UID=Admin;" & _ "DBQ=" & App.Path & "\SampleDB.mdb") = sc_Fail Then MsgBox "Database Connection Fail" Else MsgBox "Database Connection Success" End If

Berikut ini kode indeks jari : Fn_LeftPinkie =0 Fn_LeftRing =1 Fn_LeftMiddle =2 Fn_LeftIndex =3 Fn_LeftThumb =4 Fn_RightThumb =5 Fn_RightIndex =6 Fn_RightMiddle =7 Fn_RightRing =8 Fn_RightPinkie =9 Fn_None = 10

REGISTRASI SIDIK JARI Registrasi sidik jari adalah proses pengambilan contoh sidik jari. Setiap jari diambil contohnya 4 kali kemudian hasil registrasi ini disimpan dalam satu record di tabel Fingerprint_T. Proses penyimpanan contoh sidik jari ke database ini ditangani langsung oleh SDK. Untuk memulai proses registrasi, hubungkan terlebih dahulu SDK dan database contoh sidik jari. SDK akan menciptakan file temporary berisi gambar sidik jari yang di-scan. Path dan nama file dari file temporary tersebut diisi di properties PictureSamplePath. Untuk menampilkan gambar sidik jari, siapkan obyek PictureBox. SDK menggunakan satuan (scale mode) Twip. SDK akan menyesuaikan ukuran gambar sidik jari yang ditampilkan berdasarkan tinggi dan lebar dari obyek PictureBox. Masukkan lebar PictureBox di properties PictureSampleWidth dan tingginya di properties PictureSampleHeight. Contoh Deklarasi
Dim WithEvents Registration As FingerspotETouchSDK.FinFPRegistration Set Registration = New FingerspotETouchSDK.FinFPRegistration Registration.PictureSamplePath = App.Path & "\FPTemp.BMP" Registration.PictureSampleHeight = picSample.Height Registration.PictureSampleWidth = picSample.Width

Gunakan perintah FPRegistration untuk memulai proses registrasi. Ada dua parameter input prosedur ini yaitu ID yang berupa text angka dengan panjang maksimal 10 digit. Input kedua adalah indeks jari yang berisi angka antara 0 sampai 9. Perintah ini tidak dapat berjalan di background, jadi selama proses registrasi, form registrasi harus dalam keadaan on focus. Perintah ini juga tidak mendukung multi sensor, jika ada lebih dari

satu sensor terpasang di komputer maka SDK akan mengaktifkan salah satu sensor, umumnya sensor yang pertama kali ditancapkan ke port USB dikomputer tersebut. Contoh
Registration.FPRegistration 100, 0

Peletakan sidik jari di scan di atas sensor akan memicu event Registration_FPRegistrationImage. Tampilkan gambar sidik jari yang disimpan SDK di file temporary yang telah disiapkan di atas. Contoh
Private Sub Registration_FPRegistrationImage() picSample = LoadPicture(App.Path & "\FPTemp.BMP") End Sub

Normalnya SDK akan mengambil empat contoh sidik jari kecuali ada kualitas scan contoh sidik jari yang tidak memadai sehingga perlu diulang. SDK akan menginformasikan berapa contoh sidik jari lagi yang diperlukan untuk proses registrasi di event Registration_FPSamplesNeeded. Contoh
Private Sub Registration_FPSamplesNeeded(Samples As Integer) Msgbox Samples End Sub

Setelah proses registrasi selesai, SDK akan memicu event Registration_FPRegistrationStatus. Pesan yang dikeluarkan oleh event ini adalah status registrasi yaitu r_OK jika registrasi sukses. r_RegFailed jika registrasi gagal. r_WrongFingerNr jika indeks jari tidak berupa angka antara 0 dan 9. r_FpIdAlreadyExist jika nomor identitas (ID) dan indeks jari sudah ada. Dan r_NoDevice jika SDK tidak menemukan sensor sidik jari

tertancap di port USB. SDK akan mengembalikan nilai r_DevNotRegistered jika sensor belum diaktifasi, lakukan proses aktifasi yang akan dibahas lebih lanjut di halaman 16. Simpanlah gambar contoh sidik jari jika diperlukan, karena SDK tidak menyimpan gambar-gambar tersebut. Dari contoh sidik jari yang disimpan di database tidak dapat diubah kembali menjadi gambar sidik jari. Caranya salin dan ganti nama file temporary tersebut menjadi nama lain misalnya disimpan dengan nama berdasarkan ID. Untuk membatalkan proses registrasi sidik jari, gunakan fungsi FPRegistrationCancel. Contoh
Registration.FPRegistrationCancel

Untuk mengetahui sensor yang sedang digunakan, gunakan fungsi ActiveDeviceKey dan ActiveDeviceSN. Kedua fungsi ini baru mengembalikan nilai setelah dilakukan scan jari di atas sensor. Contoh
Msgbox Registration.ActiveDeviceKey Msgbox Registration.ActiveDeviceSN

VERIFIKASI SIDIK JARI Verifikasi adalah proses pencocokan sidik jari dengan contoh sidik jari yang telah ada di tabel Fingerprint_T di database. Ada tiga cara verifikasi yang dapat digunakan yaitu satu ke satu, satu ke semua contoh sidik jari yang ada di tabel Fingerprint_T atau satu ke contoh sidik jari yang memenuhi kriteria tertentu. Untuk memulai proses verifikasi, hubungkan terlebih dahulu SDK dan database contoh sidik jari. SDK akan menciptakan file temporary berisi gambar sidik jari yang di-scan. Path dan nama file dari file temporary tersebut diisi di properties PictureSamplePath. Untuk menampilkan gambar sidik jari, siapkan obyek PictureBox. SDK menggunakan satuan (scale mode) Twip. SDK akan menyesuaikan ukuran gambar sidik jari yang ditampilkan berdasarkan tinggi dan lebar dari obyek PictureBox. Masukkan lebar PictureBox di properties PictureSampleWidth dan tingginya di properties PictureSampleHeight. Contoh Deklarasi
Dim WithEvents Verification As FingerspotETouchSDK.FinFPVerification Set Verification = New FingerspotETouchSDK.FinFPVerification Verification.PictureSamplePath = App.Path & "\FPTemp.BMP" Verification.PictureSampleHeight = picSample.Height Verification.PictureSampleWidth = picSample.Width

Gunakan perintah FPVerification untuk memulai proses verifikasi. Perintah ini berjalan di background. Saat jari diletakan di atas sensor, akan memicu SDK untuk mengambil gambar sidik jari dan dilanjutkan dengan proses verifikasi jari yang di-scan dengan contoh sidik jari di database. Perintah ini mendukung multi sensor. Contoh
Verification.FPVerification

Peletakan sidik jari di scan di atas sensor akan memicu event Verification_FPVerificationImage. Tampilkan gambar sidik jari yang disimpan SDK di file temporary yang telah disiapkan di atas. SDK secara mandiri mengambil contoh sidik jari dari database. Jika dibutuhkan pencarian berdasarkan kriteria tertentu, maka isilah kriteria pencarian di properties FPVerificationFilter. Cara penulisan kriteria ini adalah seperti penulisan perintah filter di Visual Basic. Misalnya untuk mencari seluruh karyawan dengan nama depan Budi maka diberikan perintah Nama like Budi%. Untuk mencari karyawan dengan nama Budi Setiawan maka diberikan kriteria Nama = Budi Setiawan. Contoh menampilkan gambar sidik jari
Private Sub Verification_FPVerificationImage() picSample = LoadPicture(App.Path & "\FPTemp.BMP") End Sub

Contoh meng-filter sidik jari

Dim strFilter as string strFilter = "Budi" Verification.FPVerificationFilter "ID LIKE '" & strFilter & "%'"

Jika SDK menemukan sidik jari yang cocok maka SDK akan memicu event Verification_FPVerificationID. Pesan yang dikeluarkan oleh event ini adalah nomor indentitas (ID) dan indeks jarinya. Informasi ini bisa diolah oleh aplikasi lebih lanjut. Event ini bisa dipanggil oleh SDK lebih dari satu kali dalam satu proses verifikasi, hal ini disebabkan karena ada lebih dari satu contoh sidik jari yang sama. Bisa terjadi karena satu jari telah diregistrasi lebih dari satu kali atau ada jari yang template-nya sangat mirip dengan template jari lain.

Contoh

Private Sub Verification_FPVerificationID(ID As String, _ FingerNr As FingerspotETouchSDK.FingerNumber) MsgBox ID & " " & CStr(FingerNr) End Sub

Setelah proses verifikasi selesai, SDK akan memicu event Verification_FPVerificationStatus yang memberikan informasi hasil verifikasi. Pesan yang dikeluarkan oleh event ini adalah status verifikasi yaitu v_NotFound jika tidak ada satu pun contoh sidik jari yang cocok. v_OK jika hanya ada satu contoh sidik jari yang cocok. v_MultiplelMatch jika ditemukan lebih dari satu contoh sidik jari yang cocok. v_VerFailed jika verikasi gagal. Hal ini sebabkan antara lain contoh sidik jari yang disimpan di database rusak. v_NoDevice jika SDK tidak menemukan sensor sidik jari tertancap di port USB. SDK akan mengembalikan nilai v_DevNotRegistered jika sensor belum diaktifasi, lakukan proses aktifasi yang akan dibahas lebih lanjut di halaman 16. Untuk membatalkan proses verifikasi, gunakan perintah FPVerificationCancel Contoh
Verification.FPVerificationCancel

Untuk mengambil ulang data contoh sidik jari dari database, gunakan perintah FPReload Contoh
Verification.FPReload

Untuk menghapus contoh sidik jari dari database dalam kondisi verifikasi aktif maka gunakan fungsi FPDelete. Fungsi ini akan mengembalikan UnL_OK jika sukses dan UnL_Failed jika gagal. Contoh
Verification.FPDelete 100, 0

Untuk mengetahui sensor yang sedang digunakan, gunakan fungsi ActiveDeviceKey dan ActiveDeviceSN. Kedua fungsi ini baru mengembalikan nilai setelah dilakukan scan jari di atas sensor. Contoh
Msgbox Verification.ActiveDeviceKey Msgbox Verification.ActiveDeviceSN

MENGAMBIL GAMBAR SIDIK JARI SDK juga menyediakan fasiltas untuk keperluan mengambil gambar sidik jari saja tanpa disertai proses registrasi ataupun verifikasi. Proses ini tidak membutuhkan koneksi ke database. SDK akan menciptakan file temporary berisi gambar sidik jari yang di-scan. Path dan nama file dari file temporary tersebut diisi di properties PictureSamplePath. Untuk menampilkan gambar sidik jari, siapkan obyek PictureBox. SDK menggunakan satuan (scale mode) Twip. SDK akan menyesuaikan ukuran gambar sidik jari yang ditampilkan berdasarkan tinggi dan lebar dari obyek PictureBox. Masukkan lebar PictureBox di properties PictureSampleWidth dan tingginya di properties PictureSampleHeight. Contoh
Dim WithEvents FPImage As FingerspotETouchSDK.FinFPImage Set FPImage = New FingerspotETouchSDK.FinFPImage FPImage.PictureSamplePath = App.Path & "\FPSampleImage.BMP" FPImage.PictureSampleHeight = picSample.Height FPImage.PictureSampleWidth = picSample.Width FPImage.GetFPImage

Gunakan perintah GetFPImage untuk memulai proses pengambilan gambar sidik jari. Perintah ini berjalan di background dan mendukung multi sensor. Contoh
FPImage.GetFPImage

Peletakan jari di atas sensor akan memicu event FPImage_FPImage. Pesan yang dikeluarkan oleh event ini adalah Fi_OK jika gambar berhasil di ambil, tampilkan gambar sidik jari yang disimpan SDK di file temporary yang telah disiapkan di atas. Fi_NoDevice jika SDK tidak menemukan sensor sidik jari tertancap di port USB. Fi_FPImageFailed jika pengambilan gambar sidik jari gagal. SDK akan mengembalikan nilai Fi_DevNotRegistered jika sensor belum diaktifasi, lakukan proses aktifasi yang akan dibahas lebih lanjut di halaman 16. Untuk mengetahui sensor yang sedang digunakan, gunakan fungsi ActiveDeviceKey dan ActiveDeviceSN. Kedua fungsi ini baru mengembalikan nilai setelah dilakukan scan jari di atas sensor. Contoh
Msgbox FPImage.ActiveDeviceKey Msgbox FPImage.ActiveDeviceSN

AKTIVASI SENSOR Sensor sidik jari harus diaktifasi terlebih dahulu sebelum digunakan oleh SDK. Aktifasi ini membutuhkan nomor seri sensor, CD Key dan kode aktifasi yang dapat ditemui di label yang terdapat di CD Instalasi. Setiap sensor memiliki CD Key dan kode aktifasi yang berbeda. Untuk melakukan aktifasi, gunakan fungsi DeviceActivation. Fungsi ini akan mengembalikan nilai da_Success jika aktifasi berhasil dan sebaliknya da_Fail, jika nomor seri, CD Key atau kode aktifasi salah. Contoh
Dim Device As New FingerspotETouchSDK.FinFPDevice Dim Result As DeviceActivationStatus Result = Device.DeviceActivation(Text1.Text, Text2.Text, Text3.Text) Select Case Result Case da_Success MsgBox "Device Registration Success" Case da_Fail MsgBox "Device Registration Fail" End Select

MENDISTRIBUSIKAN Fingerspot Easy Touch SDK Untuk menginstal aplikasi anda ke komputer lain, maka anda perlu menyertakan file EasyTouchSDK.dll dan Device.ini. Kedua file ini terletak di folder program files di sub folder Fingerspot\EasyTouchSDK. Kedua file ini bisa dimasukkan dalam CD instalasi aplikasi anda. Saat instalasi aplikasi anda di komputer lain, kedua file ini sebaiknya diletakkan di folder aplikasi anda. Jika anda tidak menyertakan file Device.ini maka SDK akan meminta aktifasi sensor. File EasyTouchSDK.dll dan Device.ini harus berada di folder yang sama.

MENGGUNAKAN DATABASE SELAIN DATABASE ACCESS Fingerspot Easy Touch SDK mendukung penggunaan database selain database Access. Untuk menggunakan database selain database Access maka Anda perlu mengubah isi parameter FPDatabase.ActiveConnection sesuai dengan Connection Strings dari database yang Anda gunakan. Untuk mengetahui Connection Strings dari database yang Anda gunakan, silahkan kunjungi www.connectionstrings.com. Berikut ini contoh koneksi ke SQL Server : Contoh
If FPDatabase.ActiveConnection("Provider=SQLOLEDB.1;Password=12345;Persist Security Info=True;User ID=sa;Initial Catalog=FingerprintDB;Data Source=Fingerspot") = sc_Success Then MsgBox "Database Connection Success" Else MsgBox "Database Connection Fail" End If

Hal yang perlu dicermati dalam menggunakan database selain database Access adalah tipe data (datatype) yang disediakan database tersebut dan ukuran field (length) yang perlu kita sediakan. Misalnya di SQL Server, struktur tabel Fingerprint_T menjadi seperti berikut : ID Varchar 10 Finger TinyInt 1 FingerData Binary ? Ukuran field FingerData ini bisa berbeda antara database satu dengan yang lain dan tergantung pada versi driver yang digunakan, silahkan isi ukuran field ini sebesar mungkin terlebih dahulu misalnya 2000, kemudian setelah data terisi Anda bisa mencari ukuran sebenarnya.

INSTALASI COMPONENT Fingerspot Easy Touch SDK DI DELPHI

Sebelum menginstal component Delphi, pastikan contoh program dalam VB6 dapat dijalankan. Di menu utama Delphi pilih menu Component kemudian pilih sub menu Install Component

Di form Install Component, pilih halaman Into new package. Klik tombol Browse untuk mencari folder penyimpanan komponen FingerspotETouchSDK.pas. Kemudian masukkan nama paketnya misalnya PaketBaru.dpk. Klik tombol Save untuk keluar dari form ini.

Di uses di setiap source project Delphi tambahkan FingerspotETouchSDK.

Jika component FingerspotETouchSDK.pas berhasil diinstall, maka akan keluar tab baru pada component Delphi dengan nama tab Fingerspot. Semua komponen yang dibutuhkan ada di tab ini.

FUNGSI-FUNGSI Fingerspot Easy Touch SDK DI DELPHI Database

[FinFPDatabase1]ActiveConnection(var DBConnectionString:WideString); [FinFPDevice1]DeviceActivation(var SN:WideString; var CDKey:WideString; var Activation:WideString):DeviceActivationStatusl [FinFPDevice1]SDKVersion():WideString; [FinFPDevice1]SDKSupport():WideString;

Device

Registration [FinFPRegistration1]FPRegistrationImage(); [FinFPRegistration1]FPRegistrationStatus(Asender:TObject; var Status: RegistrationStatus); [FinFPRegistration1]FPRegistrationCancel(); [FinFPRegistration1]FPRegistration(var ID: WideString; var FingerNr: FingerNumber);

[FinFPRegistration1]ActiveDeviceKey():WideString; [FinFPRegistration1]ActiveDeviceSN():WideString; [FinFPRegistration1]FPSamplesNeeded(Asender:TObject; var Samples:SmallInt);

Verification [FinFPVerification1]FPVericationFilter(var FPFilter: WideString); [FinFPVerification1]FPVerificationID(Asender:TObject; var ID: WideString; var FingerNr: FingerNumber); [FinFPVerification1]FPVerificationImage(); [FinFPVerification1]FPVerificationStatus(Asender:TObject; var Status: VerificationStatus); [FinFPVerification1]FPVerificationCancel(); [FinFPVerification1]FPReload(); [FinFPVerification1]FPDelete(var ID: WideString; var FingerNr: FingerNumber); [FinFPVerification1]ActiveDeviceKey():WideString; [FinFPVerification1]ActiveDeviceSN():WideString; Fingerprint Image [FinFPImage1]GetFPImage();

[FinFPImage1]FPImageStatus(Asender:TObject; var Status: FPImageStatus); [FinFPImage1]FPImage(); [FinFPImage1]ActiveDeviceKey():WideString; [FinFPImage1]ActiveDeviceSN():WideString;

Untuk informasi & bantuan teknis, silahkan kirimkan email ke : Informasi umum : info@fingerspot.com Layanan teknis : support@fingerspot.com Online Support : www.fingerspot.com Atau kunjungi website Fingerspot di www.fingerspot.com

Anda mungkin juga menyukai