diff --git a/diagnostic/index.html b/diagnostic/index.html
index 341d69e..fa8533c 100644
--- a/diagnostic/index.html
+++ b/diagnostic/index.html
@@ -1624,8 +1624,19 @@
Spart das Abtippen auf dem Fernseher: Host und Token gehen direkt vom
Server an den Agenten — QR-Scan geht am Fire TV ja nicht.
+
+
+
+
+ So spricht ARIA das Gerät an („mach einen Screenshot vom Wohnzimmer Fire TV").
+ Hier am PC eingeben — auf dem Fernseher wäre das Tippen mühsam.
+
+
+
@@ -4731,6 +4742,11 @@
document.getElementById('apk-status').textContent = '';
const log = document.getElementById('apk-log');
log.style.display = 'none'; log.textContent = '';
+ // Namensfeld vorbelegen — aber nicht mit Seriennummern/IP-Platzhaltern,
+ // die die Netz-Erkennung bei Fire TV oft liefert (z.B. 0d94400fa5b63301).
+ const looksTechnical = !name || /^[0-9a-f]{8,}$/i.test(name) ||
+ /^\d{1,3}(\.\d{1,3}){3}$/.test(name);
+ document.getElementById('apk-name').value = looksTechnical ? '' : name;
document.getElementById('apk-modal').classList.add('open');
}
function closeApkDeploy() {
@@ -4755,12 +4771,30 @@
// Server ergaenzt Host/Port/Token — steht bewusst NICHT im Browser-Formular.
if (document.getElementById('apk-provision').checked) {
params.provision = true;
- params.name = apkTarget.name;
+ // Am PC getippter Name gewinnt; sonst der aus der Netz-Erkennung (der
+ // ist bei Fire TV oft nur die Seriennummer).
+ params.name = document.getElementById('apk-name').value.trim() || apkTarget.name;
}
send({ action: 'sat_command', satellite: apkTarget.satId, cmd: 'adb.install',
requestId: apkRequestId, params });
}
+ /** Nur einrichten: RVS-Zugang + Namen setzen, ohne die APK neu zu installieren
+ * (z.B. um ein bereits ausgerolltes Gerät umzubenennen). */
+ function runApkProvision() {
+ if (!apkTarget) return;
+ apkRequestId = 'apk_' + Date.now() + '_' + Math.floor(Math.random() * 100000);
+ document.getElementById('apk-status').innerHTML = 'richte ein …';
+ const log = document.getElementById('apk-log');
+ log.style.display = 'block';
+ log.textContent = 'Übertrage Zugang und Namen an den Agenten …\n' +
+ 'Die App startet dabei kurz auf dem Bildschirm — das ist normal.';
+ send({ action: 'sat_command', satellite: apkTarget.satId, cmd: 'adb.provision',
+ requestId: apkRequestId,
+ params: { ip: apkTarget.ip, provision: true,
+ name: document.getElementById('apk-name').value.trim() || apkTarget.name } });
+ }
+
/** Prüft, ob der Agent auf dem Gerät installiert ist und läuft. */
function runApkStatus() {
if (!apkTarget) return;