Stock Announcement Skill
Daily stock portfolio analysis with Gmail report delivery and Sonos voice announcement.
What it does
- Fetches portfolio performance via yfinance
- Sends an HTML email report via Gmail API
- Announces a summary on a Sonos speaker via TTS + sonoscli
Prerequisites
- Python 3.9+ with
yfinance,pandas,google-api-python-client,google-auth-oauthlib,gtts sonosCLI installed and speakers discoverable on the network- Gmail OAuth token at
config/token.json(relative to workspace root) - Environment variables:
RECIPIENT_EMAIL,SONOS_SPEAKER(optional, defaults to "Living Room")
Usage
python scripts/daily_stock_announcement.py
Changelog (v1.1.0)
- Fix: Gmail token path now resolved as absolute from script directory
- Fix: Sonos announcement uses TTS audio generation +
sonos queue playinstead of unsupportedsonos say - Fix: Retry with exponential backoff for Gmail and Sonos (3 retries, 5s base)
- Fix: Non-zero exit code on critical step failure
微信扫一扫