This repository contains a Proof of Concept for the Audio Alerts System, an interactive GUI-based application designed to test and manage audio alerts across different categories. The system was developed using Python with tkinter
and pygame
to create an intuitive interface for testing audio notifications. The project is currently in a prototype stage, intended for evaluation and improvement.
- GUI-based Testing Interface: Built with
tkinter
andcustomtkinter
, the interface lets users test various audio alerts by selecting categories and playing predefined sounds. - Alert Categories: Alerts are organized into three main categories:
- Warnings: Critical system alerts.
- Messages: Status updates for program states.
- Reasons: Additional information about system events.
- Logging System: Logs audio playback events for easy monitoring and debugging.
- Real-time Audio Playback: Uses
pygame
's mixer to play.mp3
files directly from the application.
-
Clone the repository:
git clone https://github.com/yourusername/Audio-Alerts-System.git cd Audio-Alerts-System
-
Install dependencies:
pip install pygame customtkinter
-
Ensure the following directories and files are present under
audio/
:Messages
: Contains alert sounds for program states.Reasons
: Holds sounds for possible event explanations.Warnings
: Includes critical system warnings.
-
Run the application:
python system.py
- Select Alerts: Open the app and select audio files under Messages, Reasons, or Warnings.
- Test Alert Sequence: Click "Test Alert Sequence" to play the selected alerts in order.
- View Logs: Check
logs/log.txt
to review all played alerts and application events.
Audio-Alerts-System/
├── audio/
│ ├── Messages/
│ ├── Reasons/
│ └── Warnings/
├── logs/
│ └── log.txt
└── system.py
- Python 3.8+
pygame
customtkinter
- Expand Alert Categories: More categories and audio variations.
- Enhanced Error Handling: Improve robustness in audio file playback.
- Modular Design: Refine code structure for easier customization.
This system is a work-in-progress designed for hands-on testing with potential for integration into broader projects like notification systems or alert monitoring tools.