# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## [Unreleased] ## [1.2.2] - 2025-02-25 ### Added - Improved stream reconnection verification with log entries - Enhanced metadata endpoint discovery with multiple URL patterns - Expanded error handling and logging for metadata fetching ### Changed - Refactored stream monitoring for better stability - Updated metadata parsing to handle varied source formats - General project cleanup and housekeeping ### Fixed - Stream reconnection edge cases and timeout handling - JSON metadata parsing reliability - Various validations ## [1.2.1] - 2025-02-25 ### Added - Improved stream reconnection logic with automatic retry - Enhanced metadata fetching with better error handling - Expanded logging for better troubleshooting ### Fixed - Issue with metadata parsing for certain stream formats - Stream monitoring stability improvements - Connection timeout handling ## [1.2.0] - 2025-02-25 ### Added - New admin commands: - !quiet - Disable song announcements while continuing to monitor the stream - !unquiet - Re-enable song announcements - Terminal commands for controlling announcement behavior: - `quiet` - Disable song announcements via terminal - `unquiet` - Enable song announcements via terminal - Configuration option `quiet_on_start` to control whether the bot starts with announcements enabled or disabled - Background task to monitor for quiet/unquiet requests from terminal commands - Updated documentation in README.md with new commands - Updated usage information in install.sh ### Changed - Enhanced the RestartManager to handle quiet and unquiet commands - Improved the BotManager class to support the new terminal commands - Updated configuration example to include the new quiet_on_start option ## [1.0.1] - 2025-02-24 ### Added - Configurable logging levels via config.yaml - Smart URL resolution for metadata fetching - Connection status verification and reporting - Admin command system with permissions - Automatic restart functionality via bot.sh - Enhanced command handling with prefix configuration - Private message command control - New admin commands: - !start - Start stream monitoring - !stop - Stop stream monitoring - !reconnect - Reconnect to stream with status feedback - !restart - Restart the bot (requires bot.sh) - !quit - Shutdown the bot - !help command showing available commands based on user permissions - ERROR.log file for critical issues - Detailed debug logging for troubleshooting ### Changed - Improved metadata fetching with multiple URL patterns - Enhanced error handling and reporting - Better stream connection status feedback - More informative health check messages - Cleaner logging output with configurable verbosity - Updated documentation with new features and configuration options ### Fixed - Metadata fetching issues with different URL patterns - Command handling in channels vs private messages - Stream reconnection verification - Error reporting and logging clarity - Configuration file structure and validation ### Other - Added version information ## [1.0.0] - 2025-02-23 ### Added - Initial release - Basic Icecast stream monitoring - IRC channel announcements - Simple command system (!np) - Basic error handling and reconnection - Multi-bot support - Configuration via YAML files [Unreleased]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/compare/v1.2.2...HEAD [1.2.2]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/compare/v1.2.1...v1.2.2 [1.2.1]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/compare/v1.2.0...v1.2.1 [1.2.0]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/compare/v1.0.1...v1.2.0 [1.0.1]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/compare/v1.0.0...v1.0.1 [1.0.0]: https://code.cottongin.xyz/cottongin/Icecast-metadata-IRC-announcer/releases/tag/v1.0.0