78 lines
2.3 KiB
Python
78 lines
2.3 KiB
Python
|
|
#!/usr/bin/env python3
|
||
|
|
# -*- coding: utf-8 -*-
|
||
|
|
"""
|
||
|
|
Script para configurar la bocina ESP32
|
||
|
|
Permite cambiar IP, puerto, duración, etc.
|
||
|
|
"""
|
||
|
|
|
||
|
|
import sys
|
||
|
|
import os
|
||
|
|
|
||
|
|
# Agregar el proyecto al path
|
||
|
|
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
|
||
|
|
|
||
|
|
from core.speaker_iot import configurar_ip, mostrar_configuracion
|
||
|
|
from core.speaker_iot.config import config
|
||
|
|
|
||
|
|
def main():
|
||
|
|
print("\n" + "=" * 50)
|
||
|
|
print(" 🎵 CONFIGURACIÓN DE BOCINA IoT")
|
||
|
|
print("=" * 50)
|
||
|
|
|
||
|
|
mostrar_configuracion()
|
||
|
|
|
||
|
|
print("\n" + "-" * 50)
|
||
|
|
print("¿Qué deseas configurar?")
|
||
|
|
print(" 1. Cambiar IP")
|
||
|
|
print(" 2. Cambiar puerto")
|
||
|
|
print(" 3. Cambiar duración del audio")
|
||
|
|
print(" 4. Ver configuración actual")
|
||
|
|
print(" 5. Restaurar valores por defecto")
|
||
|
|
print(" 6. Salir")
|
||
|
|
|
||
|
|
opcion = input("\n👉 Opción (1-6): ").strip()
|
||
|
|
|
||
|
|
if opcion == "1":
|
||
|
|
nueva_ip = input("📡 Nueva IP: ").strip()
|
||
|
|
if nueva_ip:
|
||
|
|
config.actualizar_ip(nueva_ip)
|
||
|
|
print(f"✅ IP actualizada a: {nueva_ip}")
|
||
|
|
|
||
|
|
elif opcion == "2":
|
||
|
|
nuevo_puerto = input("🔌 Nuevo puerto [81]: ").strip()
|
||
|
|
if nuevo_puerto:
|
||
|
|
config.config.set("ESP32", "puerto", nuevo_puerto)
|
||
|
|
with open(config.CONFIG_FILE, 'w') as f:
|
||
|
|
config.config.write(f)
|
||
|
|
print(f"✅ Puerto actualizado a: {nuevo_puerto}")
|
||
|
|
|
||
|
|
elif opcion == "3":
|
||
|
|
nueva_duracion = input("⏱️ Nueva duración en ms [2000]: ").strip()
|
||
|
|
if nueva_duracion:
|
||
|
|
config.config.set("Audio", "duracion_ms", nueva_duracion)
|
||
|
|
with open(config.CONFIG_FILE, 'w') as f:
|
||
|
|
config.config.write(f)
|
||
|
|
print(f"✅ Duración actualizada a: {nueva_duracion}ms")
|
||
|
|
|
||
|
|
elif opcion == "4":
|
||
|
|
mostrar_configuracion()
|
||
|
|
|
||
|
|
elif opcion == "5":
|
||
|
|
confirmar = input("⚠️ ¿Restaurar configuración por defecto? (s/n): ").strip().lower()
|
||
|
|
if confirmar == 's':
|
||
|
|
config._crear_configuracion_default()
|
||
|
|
print("✅ Configuración restaurada")
|
||
|
|
mostrar_configuracion()
|
||
|
|
|
||
|
|
elif opcion == "6":
|
||
|
|
print("\n👋 Hasta luego!")
|
||
|
|
return
|
||
|
|
|
||
|
|
else:
|
||
|
|
print("❌ Opción inválida")
|
||
|
|
|
||
|
|
print("\n✅ Configuración guardada!")
|
||
|
|
input("\nPresiona Enter para salir...")
|
||
|
|
|
||
|
|
if __name__ == "__main__":
|
||
|
|
main()
|