Skip to content

Conversation

KesterJJ
Copy link
Contributor

No description provided.

root and others added 2 commits June 11, 2025 14:09
Add comprehensive Sony Bravia display driver supporting REST API control with:
- Power management (on/off/standby with status polling)
- Volume control (set, mute/unmute, volume up/down with state polling)
- Input switching (HDMI1-4, Component, Composite, etc. with current input polling)
- Extended functionality (apps, picture settings, IR codes, system info)
- Thread-safe API calls with mutex protection
- Robust error handling and PSK authentication validation
- Full interface compliance (Powerable, Muteable, Switchable)
- Comprehensive test suite with edge case coverage

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
- Add Sony PTZ Camera HTTP CGI protocol driver
- Compatible with existing VISCA driver interface
- Implements all camera interfaces (Powerable, Camera, Moveable, Zoomable, Stoppable)
- Includes PTZ auto framing functionality from Sony documentation
- Full test coverage with comprehensive spec file
- Maintains same functionality as VISCA driver but uses HTTP CGI protocol

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <[email protected]>
@KesterJJ KesterJJ requested review from stakach and w-le June 20, 2025 16:29
@w-le
Copy link
Contributor

w-le commented Jul 28, 2025

Using placeos/drivers test harness, currently the ptz_cgi.cr driver compiles, but fails the spec run with:

{
    "error": "In drivers/sony/camera/ptz_cgi_spec.cr:3:13

 3 | DriverSpecs.mock_driver \"Sony::Camera::PtzCGI\" do
                 ^----------
Error: instantiating 'DriverSpecs.mock_driver(String)'


In drivers/sony/camera/ptz_cgi_spec.cr:3:13

 3 | DriverSpecs.mock_driver \"Sony::Camera::PtzCGI\" do
                 ^----------
Error: instantiating 'DriverSpecs.mock_driver(String)'


In drivers/sony/camera/ptz_cgi_spec.cr:18:3

 18 | update_settings({\"uri_base\" => \"http://192.168.1.100\"})
      ^--------------
Error: undefined method 'update_settings' for DriverSpecs (with ... yield) and top-level (current scope)
"
}

However I have just noticed that there is actually already a 4 year cgi_protocol.cr driver in the same folder, by Steve. No idea if this has ever been used, but we have 2 options now. I will e2e test with the older cgi_protocol.cr driver first.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants