Tags: ffingers/dashkiosk
Tags
Refactor Chromecast integration to use native Avahi and castv2-client This commit updates the Chromecast discovery and control mechanism: - Replaced `nodecastor` with native Avahi for mDNS service discovery, utilizing the `@girs/avahi-0.6` library. This allows the application to use the system's Avahi daemon for finding Chromecast devices (`_googlecast._tcp`). - Replaced `nodecastor`'s Chromecast communication logic with the `castv2-client` library for direct interaction with Chromecast devices. This includes connecting, launching applications (specifically the Dashkiosk receiver URL via DefaultMediaReceiver), monitoring status, and handling device events. - Updated `lib/chromecast.js` extensively to implement the new discovery and communication flow. - Added system dependency documentation to `README.md` and `Dockerfile` to reflect the requirement for `avahi-daemon` and its associated development libraries (e.g., `libavahi-client-dev`, `libavahi-gobject-dev`). **Important Note:** Due to sandbox limitations, I couldn't perform full integration testing in a real-world environment with Chromecasts and a live Avahi daemon. Manual testing of this feature is crucial to ensure correct operation.