#!/usr/bin/env bash
set -euo pipefail

# Skull Pi - Voice Service Wrapper
# Description: Démarre le service de synthèse vocale
# Author: DevOps Team

PROJECT_DIR="/opt/Skull"
LOG_FILE="${PROJECT_DIR}/logs/voice.log"
CONFIG_FILE="${PROJECT_DIR}/config/greet.json"

# Activation de l'environnement virtuel
source "${PROJECT_DIR}/venv/bin/activate"

# Chargement des variables d'environnement
if [ -f "${PROJECT_DIR}/config/.env" ]; then
    set -a
    source "${PROJECT_DIR}/config/.env"
    set +a
fi

# Configuration des logs
exec > >(tee -a "${LOG_FILE}")
exec 2>&1

echo "$(date '+%Y-%m-%d %H:%M:%S') - [VOICE] Démarrage du service voice"
echo "$(date '+%Y-%m-%d %H:%M:%S') - [VOICE] Configuration: ${CONFIG_FILE}"

# Vérification du système audio
if command -v aplay >/dev/null 2>&1; then
    echo "$(date '+%Y-%m-%d %H:%M:%S') - [VOICE] Système audio disponible"
else
    echo "$(date '+%Y-%m-%d %H:%M:%S') - [VOICE] ATTENTION: Système audio non disponible"
fi

# Changement vers le répertoire du projet
cd "${PROJECT_DIR}/apps"

# Lancement du module voice avec la configuration
exec python -m voice.main --config "${CONFIG_FILE}"