Hiky is a simple CLI tool that provides commands for enabling remote authentication and listening for access controller events from Hikvision face recognition terminals.
- .NET 9.0 Runtime
- A Hikvision face recognition terminal
- Clone or download the project
- Build the project:
dotnet build
- Run the executable from the output directory or use
dotnet run
dotnet run -- [command] [options]Or if using the built executable:
.\Hiky.exe [command] [options]Configure device connection settings including IP address, port, username, and password.
Options:
-i, --ip-address <ip>- Device IP address-p, --port <port>- Device port number-u, --username <username>- Authentication username-w, --password <password>- Authentication password-s, --show- Show current configuration
Examples:
# Configure device connection
dotnet run -- configure-device -i 192.168.1.100 -p 80 -u admin -w password123
# Show current configuration
dotnet run -- configure-device -s
# Update only the IP address
dotnet run -- configure-device -i 192.168.1.101Check if the device supports listening for events.
Example:
dotnet run -- check-supportGet all configured listening hosts on the device.
Example:
dotnet run -- get-hostsGet details of a specific listening host by ID.
Arguments:
<id>- Host ID number
Example:
dotnet run -- get-host 1Configure a listening host on the device.
Options:
-i, --ip-address <ip>- Host IP address-p, --port-no <port>- Host port number-u, --url <url>- Host URL--id <id>- Host identifier
Example:
dotnet run -- set-hosts -i 192.168.1.200 -p 8080 -u "/events" --id "host1"Start listening for events on the specified port.
Arguments:
<port>- Port number to listen on
Example:
dotnet run -- listen 8080Get access control capabilities from the device.
Example:
dotnet run -- get-ac-capGet access control configuration from the device.
Example:
dotnet run -- get-ac-configEnable or disable remote check functionality on the device.
Options:
-e, --enable <true|false>- Enable (true) or disable (false) remote check
Examples:
# Enable remote check
dotnet run -- enable-remote-check -e true
# Disable remote check
dotnet run -- enable-remote-check -e falseThe application stores device configuration locally and uses it for subsequent API calls. Make sure to configure your device connection details using the configure-device command before using other commands.
Commands.cs- Contains all CLI command definitionsProgram.cs- Application entry point and service configurationServices/- Business logic services for each commandEventListener/- Event listening functionality
- Connection Issues: Ensure the device is accessible and the configuration is correct using
configure-device -s - Authentication Errors: Verify username and password with
configure-devicecommand - Command Not Found: Use
--helpto see available commands
For detailed help on any command, use:
dotnet run -- [command] --helpOr for general help:
dotnet run -- --help