Files
home-bro-client/static/index.html
T
Matthias Hinrichs a8a3ec9b9f fixing input device
2026-01-29 22:49:26 +01:00

95 lines
3.5 KiB
HTML

<!doctype html>
<html lang="de">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Home-Bro Client | Satellite Config</title>
<link rel="stylesheet" href="/static/style.css" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link
href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;600;800&family=Outfit:wght@400;700&display=swap"
rel="stylesheet"
/>
</head>
<body>
<div class="background-glow"></div>
<main class="container">
<header>
<div class="logo">
<span class="logo-icon">🛰️</span>
<h1>Home-Bro <span>Satellite</span></h1>
</div>
<div id="status-badge" class="badge checking">Verbindung prüfen...</div>
</header>
<section class="card">
<h2>Konfiguration</h2>
<p class="subtitle">Verbinde diesen Satelliten mit dem Gehirn.</p>
<div class="input-group">
<label for="bro-name">Home-Bro Name</label>
<input type="text" id="bro-name" placeholder="z.B. Chiller-Bro" />
<span class="input-hint">Wie soll dein Mitbewohner heißen?</span>
</div>
<div class="input-group">
<label for="pico-key">Picovoice API Key</label>
<input type="password" id="pico-key" placeholder="Dein Picovoice Access Key" />
<span class="input-hint">Benötigt für die Wake-Word Erkennung.</span>
</div>
<div class="input-group">
<label for="brain-url">Brain API URL</label>
<input
type="text"
id="brain-url"
placeholder="http://192.168.1.50:8000"
/>
<span class="input-hint">Die IP-Adresse deines Home-Bro Brains.</span>
</div>
<div class="input-group">
<label for="wake-word">Wake-Word (Porcupine)</label>
<select id="wake-word">
<option value="porcupine">Porcupine</option>
<option value="bumblebee">Bumblebee</option>
<option value="grasshopper">Grasshopper</option>
<option value="picovoice">Picovoice</option>
<option value="custom">Custom (.ppn File Path)</option>
</select>
<input type="text" id="custom-wake-word" placeholder="/path/to/file.ppn" style="display: none; margin-top: 10px;" />
</div>
<div class="input-group">
<label for="audio-index">Audio Device Index</label>
<input type="number" id="audio-index" placeholder="z.B. 0" />
<span class="input-hint">Index des Mikrofons (siehe Konsolen-Log).</span>
</div>
<button id="save-btn" class="primary-btn">
<span class="btn-text">Einstellungen speichern</span>
<span class="loader"></span>
</button>
</section>
<section class="card secondary">
<h2>Systemstatus</h2>
<div class="status-grid">
<div class="status-item">
<span class="label">Uptime</span>
<span id="uptime" class="value">00:00:00</span>
</div>
<div class="status-item">
<span class="label">Kamera</span>
<span id="camera-status" class="value">Inaktiv</span>
</div>
</div>
</section>
<div id="toast" class="toast">Gespeichert!</div>
</main>
<script src="/static/script.js"></script>
</body>
</html>