FoxxMD / multi-scrobbler

Scrobble plays from multiple sources to multiple clients
https://foxxmd.github.io/multi-scrobbler
MIT License
346 stars 16 forks source link

feat: handling device auto-discovery as first class sources #169

Open FoxxMD opened 2 months ago

FoxxMD commented 2 months ago

Chromecast currently uses mdns for autodiscovery (and MPD supports it). However handling discovering within the chromecast source leaves something to be desired:

This same work would need to be done to implement auto-discovery for MPD...it would be a duplication of effort while not utilizing the existing logic for sources.


Instead, we should implement a "discovery manager" service that generates ephemeral sources from auto-discovered devices using the config for that source as a base. This would enable re-using all the stage logic. We could additionally have a removeAfterIdle option for the source to delete the ephemeral source if it disappears for X minutes so that the dashboard and overall list of sources stays lean in the event many short-lived devices are found.

Things to think about: