Commit Graph

122 Commits

Author SHA1 Message Date
0x524a de752f249e refactor: standardize constants and improve brightness calculations
- 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.
2025-12-02 08:53:13 -05:00
0x524a 96ac509c24 refactor: update HTTP request handling and improve documentation
- 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.
2025-12-02 08:41:37 -05:00
0x524a 9e3b5e0170 feat: add comprehensive ONVIF test reports and enhance documentation
- 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.
2025-12-02 02:29:51 -05:00
0x524a e530575bc1 refactor: improve error handling and code clarity in client methods
- Enhanced error messages in the client methods to provide more context on failures.
- Updated test cases to correct terminology and ensure accurate error expectations.
- Refactored function signatures in media service methods for better readability and consistency.
2025-12-02 01:38:50 -05:00
0x524a 2ea36220f7 refactor: improve media service client methods and clean up test files
- Introduced helper methods `getMediaEndpoint` and `getMediaSoapClient` in the media client for better code reuse and clarity.
- Updated various media service methods to utilize the new helper methods, enhancing maintainability.
- Cleaned up test files by standardizing formatting and removing unnecessary blank lines for improved readability.
2025-12-02 01:22:06 -05:00
0x524a 202218e24e chore: enhance media service documentation and CI workflows
- Added documentation for GetAudioOutputConfiguration method, including a note on code duplication.
- Updated coverage workflow to include an ID for coverage checks and output the coverage percentage.
- Modified release workflow to allow manual triggering and improved version handling based on event type.
2025-12-02 01:14:37 -05:00
0x524a 808498d1a0 chore: update linter configuration and enhance CI workflow
- Replaced 'exportloopref' with 'copyloopvar' in .golangci.yml for improved linting accuracy.
- Updated 'goerr113' to 'err113' for consistency in linter naming.
- Added Go setup step in the GitHub Actions workflow to specify Go version 1.23.
- Enhanced the gosec report upload process and added a step to display scan results in the CI workflow.
- Improved error handling in the unmarshalBody function to provide clearer error messages.
2025-12-02 01:06:28 -05:00
0x524a 3498b7d3a8 chore: refine .golangci.yml configuration
- Removed unnecessary skip-dirs and skip-files settings to streamline linter checks.
- Updated linters by replacing 'gomnd' with 'mnd' for better naming consistency.
- Removed the govet section to simplify configuration.
- Adjusted output formats for clearer reporting of linter results.
2025-12-02 01:01:36 -05:00
0x524a 00e2e0d46f chore: update CI/CD workflows and configuration
- Enhanced .golangci.yml with additional linters and settings for improved code quality checks.
- Updated CI workflow to include multiple branches for pull requests and improved caching strategies.
- Added new workflows for documentation checks, dependency reviews, and security scans.
- Refined coverage analysis workflow to provide detailed reports and comments on pull requests.
- Removed outdated test workflow and consolidated testing strategies into extended tests.
- Improved release workflow with better version handling and artifact management.
2025-12-02 00:53:20 -05:00
0x524a 0551d28f61 feat: add comprehensive tests for Bosch FLEXIDOME indoor 5100i IR camera
- Introduced new test files for device and media service operations using real camera responses.
- Implemented tests for GetDeviceInformation, GetMediaServiceCapabilities, and user management functions.
- Enhanced documentation with a detailed testing flow and coverage reports.
- Added JSON test reports for tracking operation success and response times.
- Updated the README and other documentation to reflect new testing capabilities and structure.
2025-12-02 00:43:17 -05:00
0x524a 08d55b4cb9 test: add concurrency test for digestAuthTransport to ensure thread safety
- Introduced a new test, TestDigestAuthTransportConcurrency, to validate concurrent access to the digestAuthTransport.
- Implemented checks to ensure the nonce count (nc) is correctly incremented and protected from race conditions using a mutex.
- Enhanced the digestAuthTransport struct to include a mutex for safe concurrent operations.
2025-12-01 23:35:15 -05:00
0x524a 1f68023dbe feat: enhance media service capabilities and add comprehensive tests
- Implemented methods to retrieve media service capabilities and video encoder configuration options.
- Added new types for media service capabilities, video encoder options, and audio configurations.
- Introduced unit tests for media service operations, including GetProfiles, GetProfile, and GetStreamURI, ensuring proper functionality and response validation.
- Improved error handling and response parsing in media-related methods.
2025-12-01 23:26:46 -05:00
ProtoTess d7f7fe966e Merge pull request #43 from 0x524a/fix/ci-workflow-permissions
ci: add explicit permissions for workflow jobs
2025-11-30 22:28:04 -05:00
ProtoTess b0ff5e5380 test: add minimal workflow to test GitHub Actions execution 2025-12-01 03:24:39 +00:00
ProtoTess a85a109c17 ci: add status check job to debug workflow execution 2025-12-01 03:24:24 +00:00
ProtoTess 78a7ca319b ci: add explicit permissions for workflow jobs 2025-12-01 03:21:44 +00:00
ProtoTess e61f00ba9b Merge pull request #42 from 0x524a/13-feature-improve-test-coverage-server
fix: improve handling of nil imaging settings and adjust SOAP fault r…
2025-11-30 22:19:29 -05:00
ProtoTess 7c6634dc02 trigger: re-run CI workflow for PR checks 2025-12-01 03:18:16 +00:00
ProtoTess 2350a350fe ci: configure CI to run on all PRs targeting master branch 2025-12-01 03:18:16 +00:00
ProtoTess df7d476e14 fix: improve handling of nil imaging settings and adjust SOAP fault response status codes 2025-12-01 03:18:16 +00:00
ProtoTess b7292bb6cd Merge pull request #41 from 0x524a/13-feature-improve-test-coverage-server
Add unit tests for SOAP handler and server types
2025-11-30 21:48:11 -05:00
ProtoTess 37065e3057 Add unit tests for SOAP handler and server types
- Implement comprehensive tests for the SOAP handler, covering scenarios such as handler registration, valid and invalid SOAP requests, action extraction, and authentication.
- Introduce tests for server configuration types, ensuring default values, resolution validation, range checks, and profile configurations are correctly validated.
- Validate service endpoint generation based on configuration settings, including host and port variations.
2025-12-01 02:46:54 +00:00
ProtoTess 7909c2ee09 Merge pull request #40 from 0x524a/36-feature-add-more-devicemgmt-operations
docs: enhance README with comprehensive API coverage summary and deta…
2025-11-30 21:16:01 -05:00
ProtoTess 6bb4edbf14 docs: enhance README with comprehensive API coverage summary and detailed Device Management features 2025-12-01 02:14:48 +00:00
ProtoTess 47547fd35c Merge pull request #39 from 0x524a/36-feature-add-more-devicemgmt-operations
refactor: rename project from go-onvif to onvif-go
2025-11-30 21:06:27 -05:00
ProtoTess d8c2f291dc refactor: rename project from go-onvif to onvif-go
- Updated project name in documentation and metadata to reflect new branding.
- Removed outdated documentation files related to CLI and network interface summary.
- Consolidated implementation summaries for network interface discovery and ONVIF server.
- Updated sonar project properties to align with new project name.
- Ensured backward compatibility and comprehensive testing across all changes.
2025-12-01 02:06:04 +00:00
ProtoTess c22d796aa8 Merge pull request #38 from 0x524a/36-feature-add-more-devicemgmt-operations
test: enhance loopback interface detection in network tests
2025-11-30 20:27:22 -05:00
ProtoTess 84a5f7255d test: enhance loopback interface detection in network tests 2025-12-01 01:26:21 +00:00
ProtoTess bc37b57c83 Merge pull request #37 from 0x524a/36-feature-add-more-devicemgmt-operations
Add device security tests and enhance device capabilities
2025-11-30 20:19:52 -05:00
ProtoTess c085aaa545 chore: update output format in golangci-lint config and improve response handling in tests 2025-12-01 01:16:01 +00:00
ProtoTess 24b3b1d1c9 chore: update output format in golangci-lint config and improve response writing in tests 2025-12-01 01:14:00 +00:00
ProtoTess 518924772a chore: specify golangci-lint version and remove version declaration from config 2025-12-01 01:11:32 +00:00
ProtoTess b8e437c28b chore: update golangci-lint action to use the latest version 2025-12-01 01:10:06 +00:00
ProtoTess ceb86c279f chore: update GitHub Actions to use specific versions for checkout, cache, and other actions 2025-12-01 01:08:27 +00:00
ProtoTess fc4749720b chore: update setup-go action to use v5 in CI workflow 2025-12-01 01:06:42 +00:00
ProtoTess 32a308d21a chore: update setup-go action to v5.0.1 in CI workflow 2025-12-01 01:05:36 +00:00
ProtoTess 28c3ecaca0 chore: update SonarCloud action to specific version and refine CI workflow steps 2025-12-01 01:05:13 +00:00
ProtoTess 6436e8b40b chore: update GitHub Actions to use specific versions for checkout, setup-go, cache, and download actions 2025-12-01 01:03:13 +00:00
ProtoTess a700ddcba6 chore: update golangci-lint action to skip cache 2025-12-01 01:00:41 +00:00
ProtoTess 21965a893f chore: update golangci-lint version to v2.0.0 in CI workflow 2025-12-01 00:58:43 +00:00
ProtoTess a4d20addfc chore: pin golangci-lint version to v1.64.8 in CI workflow 2025-12-01 00:57:06 +00:00
ProtoTess fbb18785da chore: update GitHub Actions to use latest versions of checkout, setup-go, cache, and download actions 2025-12-01 00:55:21 +00:00
ProtoTess 753ab5a6ae chore: downgrade actions/checkout to v4.1.7 in CI workflows 2025-12-01 00:52:46 +00:00
ProtoTess ec451017b5 chore: Update actions/cache to version 4.2.0 in CI workflows 2025-12-01 00:51:09 +00:00
ProtoTess b4e4982876 Refactor XML response handling in device extended and security tests
- 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.
2025-12-01 00:49:36 +00:00
ProtoTess 856f49c82d feat: Add coverage reporting and analysis workflows, enhance CI with additional tests for older Go versions 2025-12-01 00:44:34 +00:00
ProtoTess 4f3e2a6df0 feat: Add device storage and WiFi management functionalities
- Implemented storage configuration management in device_storage.go:
  - GetStorageConfigurations
  - GetStorageConfiguration
  - CreateStorageConfiguration
  - SetStorageConfiguration
  - DeleteStorageConfiguration
  - SetHashingAlgorithm

- Added unit tests for storage configuration operations in device_storage_test.go.

- Implemented WiFi management functionalities in device_wifi.go:
  - GetDot11Capabilities
  - GetDot11Status
  - GetDot1XConfiguration
  - GetDot1XConfigurations
  - SetDot1XConfiguration
  - CreateDot1XConfiguration
  - DeleteDot1XConfiguration
  - ScanAvailableDot11Networks

- Added unit tests for WiFi management operations in device_wifi_test.go.

- Updated types.go to include new structures for geo location and access policy.
2025-12-01 00:05:35 +00:00
ProtoTess 3f343370ce Add device security tests and enhance device capabilities
- Introduced comprehensive tests for device security features including GetRemoteUser, SetRemoteUser, GetIPAddressFilter, SetIPAddressFilter, and more.
- Implemented mock server responses for various ONVIF device security SOAP actions.
- Added new types and constants for device services, capabilities, and network protocols in types.go.
- Enhanced existing tests for device services, discovery modes, and network configurations.
- Ensured proper handling of service capabilities and network protocols in the client.
2025-11-30 23:11:51 +00:00
ProtoTess 9d83a7c2da Merge pull request #35 from 0x524a/tls-verification
Tls verification
2025-11-18 14:27:37 -05:00
ProtoTess 50a545697a refactor: remove framerate estimation from RTSP stream inspection 2025-11-18 19:18:33 +00:00