7 Commits
Author SHA1 Message Date
Chad Auld 3c4d9891e1 Fix template syntax in control_playback function
Use shorthand template syntax for conditions in Extended OpenAI Conversation function scripts instead of verbose condition: template format.
2025-11-22 12:34:56 -07:00
Chad Auld 88f2f6ee27 Rename integration from spotify_search to spotify_voice_assistant
Rename integration for consistent branding:
- User-facing name: "Spotify Voice Assistant"
- Integration name: "Spotify Voice Assistant Search"
- Domain: spotify_voice_assistant

Changes:
- Rename custom_components/spotify_search/ to spotify_voice_assistant/
- Update domain in manifest.json and __init__.py
- Update all service references in examples
- Update all documentation references
2025-11-22 11:57:28 -07:00
Chad Auld 4d477fa218 Update documentation for v1.0.0 release
Major documentation updates:
- Streamline README by removing redundant sections
- Link to example files instead of duplicating configuration
- Fix typos and update model recommendations
- Add GPU acceleration documentation link
- Remove outdated "Prompt Optimization" section

Test suite improvements:
- Add comprehensive queue management tests (5 new tests)
- Add shuffle control tests (3 new tests)
- Fix combined query references to match current system prompt
- Update total test count to 53
- Renumber all test sections for consistency
- TODO refresh
2025-11-20 18:14:06 -07:00
Chad Auld db0303d8a9 Refactor playlist search to check user playlists first
- Playlist searches now automatically check personal playlists before public ones
- Remove 'playlist' and 'playlists' from search queries for better matching
- Eliminate user_playlist type - just use playlist for all playlist searches
- Update all documentation and examples to reflect new behavior
- Add podcast support as future feature to TODO.md
2025-11-18 21:19:08 -07:00
Chad Auld 61ce9c0e09 Add comprehensive playlist support for v1.0.0
Features:
- Exact matching for all search types (artists, albums, tracks, playlists)
- User playlist search (type=user_playlist) with exact and partial matching
- Performance caching for user playlist data
- Comprehensive documentation and test cases
- HACS integration support (hacs.json)

All search types now use limit=10 and prefer exact name matches to avoid
Spotify's personalized recommendations, ensuring you get what you ask for.
2025-11-17 21:34:23 -07:00
Chad Auld ec0bcd174d Add shuffle support for artist radio/dynamic playlists
- Add shuffle_on and shuffle_off actions to control_playback function
- Update prompt to automatically enable shuffle when playing artists
- Add artist radio mode feature to README
- Update all example configurations with shuffle support
- Simplify control_playback YAML syntax (if/then vs choose/conditions)
- Add shuffle examples to voice command demonstrations
2025-11-16 12:28:20 -07:00
Chad Auld bd221b80e8 Initial release v1.0.0
Voice-controlled Spotify playback integration for Home Assistant

Features:
- Natural language music control via Extended OpenAI Conversation
- Exact match artist search (finds Coldplay when you ask for Coldplay)
- Support for artist, album, track, and playlist searches
- Smart caching for 15-50x performance improvement
- Works with any Spotify Connect device
- Zero additional authentication (reuses HA Spotify OAuth)
- Enterprise-grade code quality with defensive programming

Technical improvements:
- Client caching with automatic validation
- Input validation and error handling
- Defensive attribute checks
- Lazy logging for performance
- Clear error messages for users
2025-11-09 19:45:14 -07:00