platypush/platypush/plugins/media/chromecast
Fabio Manganiello e123463804
continuous-integration/drone/push Build is passing Details
[media.chromecast] Refactored implementation.
Explicitly use a `CastBrowser` object initialized at plugin boot instead
of relying on blocking calls to `pychromecast.get_chromecasts`.

1. It enables better event handling via callbacks instead of
   synchronously waiting for scan batches.

2. It optimizes resources - only one Zeroconf and one CastBrowser object
   will be created in the plugin, and destroyed upon stop.

3. No need for separate `get_chromecast`/`_refresh_chromecasts` methods:
   all the scanning is run continuously, so we can just return the
   results from the maps.
2024-04-17 03:56:45 +02:00
..
__init__.py [media.chromecast] Refactored implementation. 2024-04-17 03:56:45 +02:00
_listener.py [`media.chromecast`] Full plugin rewrite. 2023-11-12 03:08:54 +01:00
_subtitles.py [media.chromecast] Resource clean up + new API adaptations. 2024-04-17 02:49:31 +02:00
_utils.py [`media.chromecast`] Full plugin rewrite. 2023-11-12 03:08:54 +01:00
manifest.yaml [#316] Added RPM dependencies. 2023-09-21 23:20:06 +02:00