See Readme.md
$ dotnet add package BiometricDevices.NETBiometricDevices.NET is a comprehensive .NET library for interfacing with various biometric devices. It provides a high-level, easy-to-use interface for managing biometric devices, user data, and attendance records.
Currently, this library supports the following devices:
We are continuously working to expand support for additional biometric devices.
Install-Package BiometricDevices.NET
Or via .NET CLI:
dotnet add package BiometricDevices.NET
Here's a comprehensive example of how to use the library with a ZKTeco UFace 800 device:
using BiometricDevices.NET.Abstract;
using BiometricDevices.NET.Concrete.ZKUFace800;
using BiometricDevices.NET.Enums;
class Program
{
static async Task Main(string[] args)
{
ZKUFace800Device device = new ZKUFace800Device();
// Connect to the device
Dictionary<ConnectionParameterKey, string> connectionParams = new Dictionary<ConnectionParameterKey, string>
{
{ ConnectionParameterKey.IP, "YOUR_IP" },
{ ConnectionParameterKey.Port, "YOUR_PORT" },
{ ConnectionParameterKey.Password, "YOUR_PASSWORD" } // Use only if needed
};
bool isSuccess = await device.ConnectAsync(ConnectionType.TCP, connectionParams);
// Initialize the device
await device.InitializeAsync();
// Set up event handling
device.OnAttendanceRecorded += HandleOnAttendanceRecorded;
// Create a new user
var user = new ZKUFace800BiometricUser
{
Id = "100",
FullName = "John Doe",
CardNumber = "100", // Numeric only
Password = "12345678", // Max 8 characters
Privilege = UserPrivilege.CommonUser,
IsActive = true
};
isSuccess = await device.CreateUserAsync(user);
// Enroll user's fingerprint
isSuccess = await device.EnrollUserFinger(user.Id, Finger.RightIndexFinger);
// Enroll user's face
isSuccess = await device.EnrollUserFace(user.Id);
// Retrieve all users
var users = await device.GetAllUsersAsync();
// Find our newly created user
user = users.First(a => a.Id == user.Id);
Console.ReadLine();
}
static void HandleOnAttendanceRecorded(object sender, ZKUFace800AttendanceRecord attendanceRecord)
{
// Handle attendance record
}
}
We welcome contributions to expand device support and improve functionality.
This library is released under the MIT License. See the LICENSE file for details.
If you encounter any issues or have questions, please file an issue on the GitHub repository.
Happy coding with BiometricDevices.NET!