Changelog
Class Rewrite and Plex/Tautulli
- Rewrite most functionality into classes (Source/Client) to make it easier to extend in the future
- Refactor spotify loop so it can only be run once at a time (switch from async to generator)
- Implement Plex/Tautulli endpoints for scrobbling
- Remove spotify dependency for “starting” the app because of new sources
QOL Improvements
- Back off behavior when listening history is idle
- Format datetimes using local timezone from system
- Display connection status and a buffered log of last 50 events on root url GET
- Better handling of file-less configurations (using envs only)
Initial MVP
This is the MVP (stable operation) for scrobbling spotify plays to Majola:
- Triaged configuration possibilities using environment variables json objects, and json files
- Handles spotify authentication when user visits callback, or uses existing access/refresh token if provided
- Handles re-authenticating spotify as needed
- Logging debug/info to stderr/out and rotating log files
- Dockerized config dir and optionally logging dir using environmental variables