#!/bin/bash # Script pour lancer Chrome avec Web Bluetooth activé sur Linux echo "==========================================" echo "Lancement de Chrome avec Web Bluetooth" echo "==========================================" echo "" PORT=8443 URL="https://localhost:$PORT" # Vérifier si le serveur tourne déjà if ! curl -k -s "$URL" > /dev/null 2>&1; then echo "📡 Démarrage du serveur HTTPS..." python3 server.py & SERVER_PID=$! echo " Serveur PID: $SERVER_PID" sleep 2 else echo "✓ Serveur HTTPS déjà en cours d'exécution" fi echo "" echo "🚀 Lancement de Chrome avec Web Bluetooth..." echo "" echo "⚠️ Sur Linux, Web Bluetooth nécessite des flags expérimentaux" echo "" # Détecter le navigateur disponible if command -v google-chrome &> /dev/null; then CHROME="google-chrome" elif command -v chromium &> /dev/null; then CHROME="chromium" elif command -v chromium-browser &> /dev/null; then CHROME="chromium-browser" else echo "❌ Chrome/Chromium non trouvé!" echo " Installez-le avec: sudo apt install chromium-browser" exit 1 fi echo "📌 Utilisation de: $CHROME" echo "" echo "🔵 Chrome va s'ouvrir avec les flags nécessaires pour Web Bluetooth" echo "" echo "Dans Chrome:" echo " 1. Acceptez le certificat auto-signé (Avancé > Continuer)" echo " 2. Cliquez sur 'Connecter un module'" echo " 3. Sélectionnez votre ESP32" echo "" echo "Appuyez sur Ctrl+C pour tout arrêter" echo "==========================================" echo "" # Lancer Chrome avec les flags nécessaires pour Web Bluetooth sur Linux $CHROME \ --enable-features=WebBluetooth \ --enable-experimental-web-platform-features \ --enable-web-bluetooth-new-permissions-backend \ "$URL" \ 2>/dev/null & CHROME_PID=$! # Fonction pour nettoyer à la sortie cleanup() { echo "" echo "🛑 Arrêt du serveur..." if [ ! -z "$SERVER_PID" ]; then kill $SERVER_PID 2>/dev/null fi exit 0 } trap cleanup SIGINT SIGTERM # Attendre wait $CHROME_PID