- Added Event and Device IO service implementations in `event.go` and `deviceio.go`.
- Created corresponding test files `event_test.go` and `deviceio_test.go` for unit testing.
- Enhanced CLI with new options for Event and Device IO operations, allowing users to interact with these services.
- Introduced example usage in `examples/test-event-deviceio/main.go` to demonstrate functionality.
- Updated golangci-lint configuration to include new files for linting checks.
- Added new linters for the examples directory to improve code quality checks.
- Updated output formatting to direct lint results to stdout for better visibility.
- Cleaned up comments related to error handling in various files for clarity and consistency.
- Updated comments to improve clarity and adhere to best practices in ascii.go, main.go, and diagnostics.
- Removed unnecessary linter directives for improved readability in imaging.go and ptz.go.
- Reformatted function signatures and added helper calls in tests for consistency and clarity.
- Enhanced error handling and logging consistency in various server files, ensuring better maintainability.
- Added constants for test endpoints, usernames, and XML headers in client_test.go and device_certificates_test.go to enhance readability and reduce hardcoded values.
- Updated various test cases to utilize these constants, ensuring consistency across tests.
- Refactored imaging settings and server configurations to use defined constants for default values, improving clarity and maintainability in server/device.go and server/imaging.go.
- Enhanced comments throughout the code to clarify functionality and adhere to best practices.
- Replaced hardcoded values with constants for default dimensions and timeout settings in various files.
- Updated brightness calculation logic to use defined constants for maximum color value and bit shifts.
- Enhanced the ASCII image generation function to utilize new constants for improved readability and maintainability.
- Replaced http.NewRequest with http.NewRequestWithContext in client tests for better context management.
- Updated method names and comments for clarity, including renaming GetWsdlUrl to GetWsdlURL and StorageUri to StorageURI for consistency.
- Enhanced comments across various files to provide clearer descriptions of functionality and ONVIF specifications.
- Introduced CAMERA_TEST_REPORT.md and COMPREHENSIVE_TEST_SUMMARY.md to document testing results for the Bosch FLEXIDOME indoor 5100i IR camera.
- Added detailed analysis of ONVIF Media Service operations and implementation status in MEDIA_OPERATIONS_ANALYSIS.md and MEDIA_WSDL_OPERATIONS_ANALYSIS.md.
- Updated implementation status documentation to reflect the completion of all 79 operations in the ONVIF Media Service.
- Enhanced existing comments and documentation across various files for better clarity and consistency.
- Adjusted formatting in XML response strings for consistency in device_extended_test.go and device_security_test.go.
- Improved readability by aligning XML declaration and body content.
- Updated mock server responses to ensure proper handling of various ONVIF operations.
Enhance device security and storage handling
- Refactored struct field declarations in device_security.go and device_storage_test.go for improved clarity.
- Ensured consistent formatting across struct definitions and XML tags.
Standardize whitespace and formatting across multiple files
- Removed unnecessary blank lines and adjusted indentation in discovery, imaging, media, and PTZ server files.
- Improved overall code readability and maintainability by ensuring consistent formatting.
Update example applications for better readability
- Cleaned up whitespace in example applications to enhance code clarity.
- Ensured consistent formatting in main.go files across various examples.
Refactor server and SOAP handler code for consistency
- Standardized struct field declarations and XML tag formatting in server and SOAP handler files.
- Improved readability by aligning struct fields and ensuring consistent use of whitespace.
General code cleanup and formatting adjustments
- Applied consistent formatting across various files, including types.go and test files.
- Enhanced readability by aligning struct fields and removing unnecessary blank lines.
- Implemented DownloadFile method in client.go to download files with authentication.
- Added ascii.go for converting images to ASCII art with configurable parameters.
- Enhanced main.go to include a new option for capturing and displaying snapshots as ASCII art.
- Introduced non-interactive mode for onvif-cli, allowing command execution via command-line arguments.
- Updated documentation to include usage examples for non-interactive mode and scripting.
- Added error handling and improved user prompts for better user experience.
onvif-cli improvements:
- Add menu option to list network interfaces
- Add interface selection during discovery
- Display detailed interface information (up/down, multicast, addresses)
- Allow discovery by interface name or IP address
- Maintain backward compatibility with default interface
onvif-quick improvements:
- Add menu option to list network interfaces
- Add interface selection during discovery
- Simplified interface list display
- Quick discovery on specific network
Documentation:
- Add comprehensive CLI_NETWORK_INTERFACE_USAGE.md guide
- Include usage scenarios and workflows
- Troubleshooting section
- Integration examples
- Command reference table
These enhancements allow users to easily specify which network interface
to use for camera discovery, solving issues with multi-interface systems.