<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.megbes.de/index.php?action=history&amp;feed=atom&amp;title=MUTEC_%E2%80%93_Mobile_Apps</id>
	<title>MUTEC – Mobile Apps - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.megbes.de/index.php?action=history&amp;feed=atom&amp;title=MUTEC_%E2%80%93_Mobile_Apps"/>
	<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;action=history"/>
	<updated>2026-11-03T18:26:05Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in MegBes Wiki</subtitle>
	<generator>MediaWiki 1.45.6</generator>
	<entry>
		<id>https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=196&amp;oldid=prev</id>
		<title>Clawtronics: Root-Aktivierung der Trailer-Automatik und Testumfang bestaetigt</title>
		<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=196&amp;oldid=prev"/>
		<updated>2026-10-21T16:14:18Z</updated>

		<summary type="html">&lt;p&gt;Root-Aktivierung der Trailer-Automatik und Testumfang bestaetigt&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 21. Oktober 2026, 16:14 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l133&quot;&gt;Zeile 133:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 133:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Frontend-Sicherung und Paket: outputs/MUTEC-Inaktivitaet-Frontend-Sicherung-20261021 und MUTEC-Inaktivitaet-Frontend.zip. Serverpaket: MUTEC-Inaktivitaet-server.tar.gz mit Prüfsumme und apply-idle-update.sh. Installer prüft den aktuellen Code-Ausgangsstand, sichert geänderte Dateien, führt alle Tests aus und startet nur den Relay neu. DISPLAY_KEY, Umgebungsdatei, Bestenlisten, MegBes-Programme, sources/ und Ticketablauf-Wächter bleiben erhalten. Nach Aktivierung liefert /health idleReturn:true; Smartphone-Seiten neu laden.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Frontend-Sicherung und Paket: outputs/MUTEC-Inaktivitaet-Frontend-Sicherung-20261021 und MUTEC-Inaktivitaet-Frontend.zip. Serverpaket: MUTEC-Inaktivitaet-server.tar.gz mit Prüfsumme und apply-idle-update.sh. Installer prüft den aktuellen Code-Ausgangsstand, sichert geänderte Dateien, führt alle Tests aus und startet nur den Relay neu. DISPLAY_KEY, Umgebungsdatei, Bestenlisten, MegBes-Programme, sources/ und Ticketablauf-Wächter bleiben erhalten. Nach Aktivierung liefert /health idleReturn:true; Smartphone-Seiten neu laden.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Inaktivitaets-Update aktiviert, 21.10.2026 ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Root-Installation vom Betreiber bestätigt: 204 Tests bestanden, keine Fehler; /health meldet idleReturn:true. Relay und Ticketablauf-Wächter sind active. Sicherung: /var/backups/mutec-realtime/idle-20261021T161249Z-2398303. Die zuvor als vorbereitet dokumentierte Trailer-Automatik ist damit aktiviert. Smartphone-Seiten neu laden, damit die neue Hintergrund-/Ablaufbehandlung verwendet wird.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Die Testliste umfasst aktuelle Funktionen sowie weiterhin vorhandene ältere Schnittstellen (z. B. QR-/Anfrage-Beitritt). Testnamen beschreiben nicht zwingend die aktuelle Benutzeroberfläche. Solange solche Schnittstellen unterstützt werden, bleiben ihre Rechte-/Ablaufprüfungen sinnvoll. Bereinigung erst zusammen mit gezielter Entfernung ungenutzter Schnittstellen. Künftige Installationsausgaben sollen Zusammenfassung und Fehler anzeigen und die vollständigen Testergebnisse in einem Detailprotokoll ablegen.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clawtronics</name></author>
	</entry>
	<entry>
		<id>https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=195&amp;oldid=prev</id>
		<title>Clawtronics: Automatische Sitzungsrueckkehr und vorbereitetes Inaktivitaets-Update dokumentiert</title>
		<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=195&amp;oldid=prev"/>
		<updated>2026-10-21T16:07:46Z</updated>

		<summary type="html">&lt;p&gt;Automatische Sitzungsrueckkehr und vorbereitetes Inaktivitaets-Update dokumentiert&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 21. Oktober 2026, 16:07 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l120&quot;&gt;Zeile 120:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 120:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Drei Frontend-/Dokumentationsdateien vorab gesichert und veröffentlicht. Geprüft über echte lokale WebSocket-Verbindung mit simuliertem YouTube-Player: automatischer Start, versteckter Regler, Play/Pause/Seek, laufendes Wasser mit Smartphone-Ton und Regler, URL- und Einbettungsfehler mit Wiederaufnahme, Tab-Übernahme, Trailer und schmale Mobilansichten. Kein Relay-/Electron-Update. Smartphone-Seite neu laden.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Drei Frontend-/Dokumentationsdateien vorab gesichert und veröffentlicht. Geprüft über echte lokale WebSocket-Verbindung mit simuliertem YouTube-Player: automatischer Start, versteckter Regler, Play/Pause/Seek, laufendes Wasser mit Smartphone-Ton und Regler, URL- und Einbettungsfehler mit Wiederaufnahme, Tab-Übernahme, Trailer und schmale Mobilansichten. Kein Relay-/Electron-Update. Smartphone-Seite neu laden.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Automatische Auswahl und Trailer bei Inaktivitaet ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Stand 21.10.2026: Frontend aktualisiert, Relay-Paket vorbereitet und auf VPS getestet; die Server-Aktivierung erfolgt noch durch root mit &amp;lt;code&amp;gt;bash /home/clawtronics/mutec-idle-update/apply-idle-update.sh&amp;lt;/code&amp;gt; bei freier Station 50.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Abgelaufene Steuersitzungen führen automatisch zur Auswahl, sowohl bei API-Fehler als auch WebSocket-Code 4001. Ein weiterhin gültiges MegBes-Ticket bleibt erhalten. Ist das Ticket selbst ungültig, gilt weiter die normale Ticket-Prüfung/Dankeseite. Reine Netzfehler werden nicht als Sitzungsablauf behandelt; doppelte Steuerverbindungen geben keine fremde Sitzung frei. Gäste mit eigener angemeldeter Ticket-Sitzung kehren ebenfalls zur Auswahl zurück, anonyme Gäste behalten die Dankeseite. Eine alte automatische Rückkehr kann einen zwischenzeitlich neu gescannten Tab nicht übernehmen.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Smartphone-Seiten verlängern die Sitzung im Hintergrund nicht mehr. Beim Wiederanzeigen wird geprüft. Die vorhandene Steuersitzungsfrist beträgt ca. 45 Sekunden; nach Relay-Update startet auch deren automatischer Ablauf 50-Trailer vor der Freigabe. Bei Fehler wird Steuerung sofort gesperrt und die Trailer/Freigabe zur Wiederholung vorgemerkt. Vor jedem erneuten Trailer werden gültiges Ticket und die eigene REMOTE-Belegung geprüft; IDLE oder fremde Belegungen werden nicht umgeschaltet. Der vorhandene interne Ticketablauf-Wächter bleibt für tatsächlich abgelaufene Tickets unverändert zuständig.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Neue Serverfristen: 60 Sekunden ohne Bedienung nach Spiel-/Filmende, sonst 120 Sekunden ohne Eingabe. Unveränderte Steuer-Keepalives, Statusmeldungen und Sensorrauschen zählen nicht als Bedienung. Tatsächliche Tasten-/Touch-/Texteingaben werden bei Erneuerung gemeldet; zulässige geänderte Steuerdaten beider Spieler zählen ebenfalls. Spiel-Endebildschirme werden nicht durch weiterlaufende Steuerimpulse künstlich aktiv gehalten. Ein laufender Film mit aktiver Smartphone-Verbindung und frischer Display-Rückmeldung bleibt erhalten. Gemeinsam genutztes Farbenspektakel kehrt erst beim letzten Teilnehmer zum Trailer zurück. Aquarium-Editoren reservieren weiterhin keinen Counter und schalten fremde Anwendungen nicht um.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;204 Servertests lokal und auf dem VPS bestanden, einschließlich Rückkehr, Fehler/Wiederholung, fremder Besitzer, IDLE, ungültiger Tickets, gemeinsamem Farbraum, Schluss-/Eingabefristen, Filmwiedergabe und Gastrechten. Browserprüfungen: automatischer Rückweg ohne Fehlbox, Ticket erhalten, Hintergrund ohne Erneuerung, einmalige Aktivitätsmeldung statt Heartbeats, alte Seite/Media-Sitzung und gleichzeitiger Ablauf/Tab-Scan. Bestehender Pong-/Login-Ablauf geprüft.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Frontend-Sicherung und Paket: outputs/MUTEC-Inaktivitaet-Frontend-Sicherung-20261021 und MUTEC-Inaktivitaet-Frontend.zip. Serverpaket: MUTEC-Inaktivitaet-server.tar.gz mit Prüfsumme und apply-idle-update.sh. Installer prüft den aktuellen Code-Ausgangsstand, sichert geänderte Dateien, führt alle Tests aus und startet nur den Relay neu. DISPLAY_KEY, Umgebungsdatei, Bestenlisten, MegBes-Programme, sources/ und Ticketablauf-Wächter bleiben erhalten. Nach Aktivierung liefert /health idleReturn:true; Smartphone-Seiten neu laden.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clawtronics</name></author>
	</entry>
	<entry>
		<id>https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=194&amp;oldid=prev</id>
		<title>Clawtronics: YouTube-Autostart und Entfernung des Lautstaerkereglers dokumentiert</title>
		<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=194&amp;oldid=prev"/>
		<updated>2026-10-21T10:41:42Z</updated>

		<summary type="html">&lt;p&gt;YouTube-Autostart und Entfernung des Lautstaerkereglers dokumentiert&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 21. Oktober 2026, 10:41 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l113&quot;&gt;Zeile 113:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 113:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[https://www.tinetronics.de/mutec/video/README-YouTube.md Technische Anleitung] · [https://developers.google.com/youtube/iframe_api_reference Offizielle YouTube-API] · [https://developers.google.com/youtube/terms/required-minimum-functionality Einbettung und Client-Identifikation]&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[https://www.tinetronics.de/mutec/video/README-YouTube.md Technische Anleitung] · [https://developers.google.com/youtube/iframe_api_reference Offizielle YouTube-API] · [https://developers.google.com/youtube/terms/required-minimum-functionality Einbettung und Client-Identifikation]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== YouTube: automatischer Start ohne Lautstärkeregler ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Update 21.10.2026: Der Lautstärkeregler ist für YouTube entfernt; der Ton bleibt am Counter. Lokale Filme behalten Smartphone-Ton und dessen Lautstärkeregler.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;„Video laden“ sendet die Videoauswahl; erst die Bestätigung des Counters löst unmittelbar Play aus. Kein zweiter Start-Klick und keine geschätzte Ladeverzögerung. Zeitposition und Wiedergabestatus kommen weiter vom Counter. Fehler und Verbindungsverlust verwerfen den vorgemerkten automatischen Start. Neue YouTube-Links verwenden den festen Player-Ausgangswert 100 Prozent. Die physische Audioanlage bestimmt die gewünschte Lautstärke vor Ort.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Drei Frontend-/Dokumentationsdateien vorab gesichert und veröffentlicht. Geprüft über echte lokale WebSocket-Verbindung mit simuliertem YouTube-Player: automatischer Start, versteckter Regler, Play/Pause/Seek, laufendes Wasser mit Smartphone-Ton und Regler, URL- und Einbettungsfehler mit Wiederaufnahme, Tab-Übernahme, Trailer und schmale Mobilansichten. Kein Relay-/Electron-Update. Smartphone-Seite neu laden.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clawtronics</name></author>
	</entry>
	<entry>
		<id>https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=193&amp;oldid=prev</id>
		<title>Clawtronics: YouTube-Medienbutton mit Counter-Steuerung und Ton dokumentiert</title>
		<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=193&amp;oldid=prev"/>
		<updated>2026-10-21T09:59:15Z</updated>

		<summary type="html">&lt;p&gt;YouTube-Medienbutton mit Counter-Steuerung und Ton dokumentiert&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 21. Oktober 2026, 09:59 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l102&quot;&gt;Zeile 102:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 102:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Sieben Dateien vorab lokal und vom Webserver gesichert, installiert und geprüft. Isolierte Prüfungen für beide Formulare, Befehle, gemeinsame Reservierung, Belegungssperre, Trailer, Reload/Tab-Übernahme sowie bestehender Pong-/Login-Ablauf. PHP-Syntax und reale Ablehnung nicht authentifizierter POSTs geprüft; öffentlicher Browsertest mit simuliertem Speichern und simulierten Befehlen, ohne Counter-Umschaltung. Kein Relay-Update und keine Änderungen an sources/.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Sieben Dateien vorab lokal und vom Webserver gesichert, installiert und geprüft. Isolierte Prüfungen für beide Formulare, Befehle, gemeinsame Reservierung, Belegungssperre, Trailer, Reload/Tab-Übernahme sowie bestehender Pong-/Login-Ablauf. PHP-Syntax und reale Ablehnung nicht authentifizierter POSTs geprüft; öffentlicher Browsertest mit simuliertem Speichern und simulierten Befehlen, ohne Counter-Umschaltung. Kein Relay-Update und keine Änderungen an sources/.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== YouTube als steuerbarer Medienbeitrag ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Stand 21.10.2026: YouTube ist jetzt ein eigener Medien-Button wie Wasser und Drotschmann. Der bisherige YouTube-iFrame im Hauptmenü entfällt; Messages bleibt erhalten. Nach Öffnen zeigt die bestehende Filmsteuerung ein zusätzliches YouTube-URL-Feld. Play/Pause, Fortschrittsregler, ±10 Sekunden und Lautstärke steuern den Counter. Der YouTube-Ton läuft auf Wunsch am Counter. Beim Wechsel zu lokalen Filmen bleiben Smartphone-Ton, Sprachspuren und Kapitel erhalten.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Die offizielle YouTube IFrame Player API wird im vorhandenen Electron-Reiter video eingesetzt (166-video / 50-maps). Kein neuer Reiter, kein neuer Schlüssel, kein Relay- oder Electron-Programmupdate. Der aktuelle VPS-Validator wurde auf Kompatibilität geprüft. youtube.js akzeptiert nur bekannte YouTube-Hostnamen und gültige einzelne Video-IDs. WebSocket nutzt unverändert video.command / video.listener / video.status; begrenzte Medienkennungen youtube_&amp;lt;Video-ID&amp;gt;_v&amp;lt;Lautstärke 0–100&amp;gt; übertragen Videoauswahl und Lautstärke. Eine Lautstärkeänderung desselben Videos erhält Abspielposition und Play/Pause. Roh-URLs oder beliebige Netzwerkziele werden nicht übertragen.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Referrer-Policy strict-origin-when-cross-origin und origin sind gesetzt. Keine Stream-Extraktion, keine separate YouTube-Audiospur und keine verdeckenden MUTEC-Overlays über dem YouTube-Player. Einbettungs-/Netzwerk-/Autoplay-Fehler werden angezeigt. YouTube-eigene Freigaben, Werbung und Verfügbarkeit gelten weiterhin; Live-Streams ohne bekannte Dauer haben keinen normalen Fortschrittsregler. Exklusive Ticket-Sitzung, Sperre bei fremder Belegung, Tab-Übernahme und Trailer-Rückkehr bleiben erhalten.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Zwölf Dateien vorab lokal und auf dem Webserver gesichert und installiert. Geprüft mit echter lokaler WebSocket-Verbindung und simuliertem YouTube-Player: Medienauswahl, URL-Prüfung, Play/Pause/Seek, Counter-Ton/Lautstärke ohne Sprung, laufende Wasser-Wiedergabe mit Smartphone-Ton, Fehler/Wiederaufnahme, Tab-Übernahme, Trailer und Mobilansichten. Bestehender Pong-/Login-Ablauf geprüft. Echte YouTube-API sowohl lokal als auch über die veröffentlichte HTTPS-Herkunft erfolgreich mit Video-Metadaten geprüft; öffentlicher Bedienoberflächentest mit simulierten Stationsbefehlen. Physischer Hör-/Bildtest am LED-Counter steht nach Neuladen/Neustart von Electron aus. views.json ist bereits passend eingerichtet. sources/ unverändert.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[https://www.tinetronics.de/mutec/video/README-YouTube.md Technische Anleitung] · [https://developers.google.com/youtube/iframe_api_reference Offizielle YouTube-API] · [https://developers.google.com/youtube/terms/required-minimum-functionality Einbettung und Client-Identifikation]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clawtronics</name></author>
	</entry>
	<entry>
		<id>https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=192&amp;oldid=prev</id>
		<title>Clawtronics: Messages und YouTube im Medien-Tab wiederhergestellt</title>
		<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=192&amp;oldid=prev"/>
		<updated>2026-10-21T09:37:05Z</updated>

		<summary type="html">&lt;p&gt;Messages und YouTube im Medien-Tab wiederhergestellt&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 21. Oktober 2026, 09:37 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l95&quot;&gt;Zeile 95:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 95:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Museumsguide ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Museumsguide ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Seit 20.10.2026 unter Education: Dummy-Ausstellung mit Sprach-/Untertitelwahl, vierstelligen Stationscodes, Originaltexten und Audios aus BAYAM/GKP, Bildergalerie und Umfragen. Auch bei belegtem Counter verfuegbar. Station-JSONs bleiben kompatibel; importierte IPs bleiben bis zur ausdruecklichen Zuordnung im Demo-Modus. Details: [[MUTEC – Museumsguide]].&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Seit 20.10.2026 unter Education: Dummy-Ausstellung mit Sprach-/Untertitelwahl, vierstelligen Stationscodes, Originaltexten und Audios aus BAYAM/GKP, Bildergalerie und Umfragen. Auch bei belegtem Counter verfuegbar. Station-JSONs bleiben kompatibel; importierte IPs bleiben bis zur ausdruecklichen Zuordnung im Demo-Modus. Details: [[MUTEC – Museumsguide]].&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Messages und YouTube wieder im Medien-Tab ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Stand 21.10.2026: Die ursprünglichen iFrames formmessage.php (Messages) und form.php (YouTube) stehen wieder direkt unter den Filmbeiträgen im Tab Medien. Ticket-Anmeldung bleibt erforderlich; erst Senden reserviert die exklusive media-Sitzung. Reines Öffnen der Medienauswahl reserviert den Counter nicht. Beide Formulare teilen dieselbe Sitzung; fremde Belegungen erlauben kein Senden.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Bestehende Signale bleiben erhalten: 50-message für Nachrichten, 166-youtube und 50-youtube für den YouTube-Link. „Wiedergabe beenden“ startet den Trailer und gibt die Station frei. Reload und erneuter Ticket-Scan im selben Browserprofil führen zur Medienauswahl mit derselben media-Sitzung zurück. Andere Anwendungen behalten den bisherigen Ablauf.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Sieben Dateien vorab lokal und vom Webserver gesichert, installiert und geprüft. Isolierte Prüfungen für beide Formulare, Befehle, gemeinsame Reservierung, Belegungssperre, Trailer, Reload/Tab-Übernahme sowie bestehender Pong-/Login-Ablauf. PHP-Syntax und reale Ablehnung nicht authentifizierter POSTs geprüft; öffentlicher Browsertest mit simuliertem Speichern und simulierten Befehlen, ohne Counter-Umschaltung. Kein Relay-Update und keine Änderungen an sources/.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clawtronics</name></author>
	</entry>
	<entry>
		<id>https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=189&amp;oldid=prev</id>
		<title>Clawtronics: Museumsguide unter Education ergaenzt</title>
		<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=189&amp;oldid=prev"/>
		<updated>2026-10-20T18:45:19Z</updated>

		<summary type="html">&lt;p&gt;Museumsguide unter Education ergaenzt&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 20. Oktober 2026, 18:45 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l92&quot;&gt;Zeile 92:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 92:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Arcade-Beitritt aktiviert, 18.10.2026 ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Arcade-Beitritt aktiviert, 18.10.2026 ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Root-Installation erfolgreich abgeschlossen: 194 Tests bestanden, Relay und Ablauf-Wächter aktiv. Health meldet challengerArcade=true; auch die öffentliche capabilities-Schnittstelle mit dem erlaubten Website-Origin wurde nach der Installation mit challengerArcade=true geprüft. Der zuvor als ausstehend dokumentierte Arcade-Ablauf ist damit aktiviert. Serversicherung: /var/backups/mutec-realtime/challenger-20261018T204434Z-3580490. Smartphone-Seiten und Electron-Webseiten neu laden. Physischer Test mit zwei Mobilgeräten am Counter bleibt noch durchzuführen.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Root-Installation erfolgreich abgeschlossen: 194 Tests bestanden, Relay und Ablauf-Wächter aktiv. Health meldet challengerArcade=true; auch die öffentliche capabilities-Schnittstelle mit dem erlaubten Website-Origin wurde nach der Installation mit challengerArcade=true geprüft. Der zuvor als ausstehend dokumentierte Arcade-Ablauf ist damit aktiviert. Serversicherung: /var/backups/mutec-realtime/challenger-20261018T204434Z-3580490. Smartphone-Seiten und Electron-Webseiten neu laden. Physischer Test mit zwei Mobilgeräten am Counter bleibt noch durchzuführen.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Museumsguide ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Seit 20.10.2026 unter Education: Dummy-Ausstellung mit Sprach-/Untertitelwahl, vierstelligen Stationscodes, Originaltexten und Audios aus BAYAM/GKP, Bildergalerie und Umfragen. Auch bei belegtem Counter verfuegbar. Station-JSONs bleiben kompatibel; importierte IPs bleiben bis zur ausdruecklichen Zuordnung im Demo-Modus. Details: [[MUTEC – Museumsguide]].&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clawtronics</name></author>
	</entry>
	<entry>
		<id>https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=185&amp;oldid=prev</id>
		<title>Clawtronics: Arcade-Beitritt erfolgreich aktiviert und oeffentlich bestaetigt</title>
		<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=185&amp;oldid=prev"/>
		<updated>2026-10-18T20:45:05Z</updated>

		<summary type="html">&lt;p&gt;Arcade-Beitritt erfolgreich aktiviert und oeffentlich bestaetigt&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 18. Oktober 2026, 20:45 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l89&quot;&gt;Zeile 89:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 89:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Artefakte im bisherigen Codex-Arbeitsordner outputs/: MUTEC-Challenger-server.tar.gz, zugehörige SHA-Datei, apply-challenger-update.sh, MUTEC-Challenger-VPS-Test.txt, MUTEC-Challenger-Frontend.zip, MUTEC-Challenger-Installation.json und MUTEC-Challenger-Browserpruefung.json. Geprüfter Relay-Quellstand im Arbeitsordner work/challenger-stage/realtime; nicht blind aus älteren Frontendpaketen gemeinsame Session-/Client-Dateien überschreiben.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Artefakte im bisherigen Codex-Arbeitsordner outputs/: MUTEC-Challenger-server.tar.gz, zugehörige SHA-Datei, apply-challenger-update.sh, MUTEC-Challenger-VPS-Test.txt, MUTEC-Challenger-Frontend.zip, MUTEC-Challenger-Installation.json und MUTEC-Challenger-Browserpruefung.json. Geprüfter Relay-Quellstand im Arbeitsordner work/challenger-stage/realtime; nicht blind aus älteren Frontendpaketen gemeinsame Session-/Client-Dateien überschreiben.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Arcade-Beitritt aktiviert, 18.10.2026 ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Root-Installation erfolgreich abgeschlossen: 194 Tests bestanden, Relay und Ablauf-Wächter aktiv. Health meldet challengerArcade=true; auch die öffentliche capabilities-Schnittstelle mit dem erlaubten Website-Origin wurde nach der Installation mit challengerArcade=true geprüft. Der zuvor als ausstehend dokumentierte Arcade-Ablauf ist damit aktiviert. Serversicherung: /var/backups/mutec-realtime/challenger-20261018T204434Z-3580490. Smartphone-Seiten und Electron-Webseiten neu laden. Physischer Test mit zwei Mobilgeräten am Counter bleibt noch durchzuführen.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clawtronics</name></author>
	</entry>
	<entry>
		<id>https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=182&amp;oldid=prev</id>
		<title>Clawtronics: Arcade-Challenger mit Belegungsanzeige vorbereitet, 194 Tests; Root-Aktivierung ausstehend</title>
		<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=182&amp;oldid=prev"/>
		<updated>2026-10-18T20:44:17Z</updated>

		<summary type="html">&lt;p&gt;Arcade-Challenger mit Belegungsanzeige vorbereitet, 194 Tests; Root-Aktivierung ausstehend&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 18. Oktober 2026, 20:44 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l69&quot;&gt;Zeile 69:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 69:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Geprüft: bewusst alte Sitzungsdatei vor neuer Login-Datei geladen, erfolgreiche automatische Reparatur, frische Aktivierung, fehlgeschlagene Prüfung, abgelaufene Relay-Sitzung, Browser-Isolation. Erneute Übernahme laufender Pong-Partie zweimal ohne neues Ticket/Trailer/Freigabe und Aquarium-Entwurf getestet. Öffentlicher Login mit simulierten Authentifizierungsantworten erreicht Auswahl ohne JavaScriptfehler; keine echte Station oder Besucher-Anmeldung benutzt. Paket/Nachweise outputs/MUTEC-Login-Fix.zip und MUTEC-Login-Fix-Installation.json. Pakete künftiger Erweiterungen müssen gemeinsame Session-/Client-Funktionen beibehalten.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Geprüft: bewusst alte Sitzungsdatei vor neuer Login-Datei geladen, erfolgreiche automatische Reparatur, frische Aktivierung, fehlgeschlagene Prüfung, abgelaufene Relay-Sitzung, Browser-Isolation. Erneute Übernahme laufender Pong-Partie zweimal ohne neues Ticket/Trailer/Freigabe und Aquarium-Entwurf getestet. Öffentlicher Login mit simulierten Authentifizierungsantworten erreicht Auswahl ohne JavaScriptfehler; keine echte Station oder Besucher-Anmeldung benutzt. Paket/Nachweise outputs/MUTEC-Login-Fix.zip und MUTEC-Login-Fix-Installation.json. Pakete künftiger Erweiterungen müssen gemeinsame Session-/Client-Funktionen beibehalten.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Arcade-Beitritt: Here comes a new challenger, 18.10.2026 ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Neues Ziel: mehrere gültige Tickets dürfen unabhängig angemeldet sein. Station 50 / LED-Counter bleibt genau einer normalen Steuersitzung zugeordnet. Weitere Besucher sehen bei belegtem Counter die laufende Anwendung und passende Aktionen statt einer Liste nicht startbarer Apps. Beitritt ist keine zustimmungspflichtige Anfrage mehr.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=== Besucherablauf ===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Bei freiem Counter bleiben die drei Tabs Medien / Education / Games sichtbar. Bei belegtem Counter werden die betreffenden Auswahltabs und App-Kacheln ausgeblendet. Beitretbares Spiel: nur Mitspielen. Ein Klick öffnet die Erklärung, dass der Beitritt die laufende Runde unterbricht; erst Ja, mitspielen sendet den Beitritt. Zurück schließt den Dialog ohne Auswirkung. Bestätigung eröffnet sofort eine akzeptierte Gastrolle und eine neue Zweispieler-Runde; Spieler 1 hat kein Annehmen/Ablehnen mehr. Auf seinem Smartphone und der Anzeige steht Here comes a new challenger. Bis Spieler 2 seine kurze Einführung bzw. Sensorfreigabe abgeschlossen hat, wartet das Spiel. Wenn Gastgeber, Gast und Display bereit/verbunden sind: vollständiger Countdown von drei Sekunden, dann gemeinsamer Start.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Die unterbrochene Einzelrunde wird durch eine neue gemeinsame Runde ersetzt; der Zugang und die Stationsreservierung von Spieler 1 bleiben erhalten. Der Gast kann nur seine Spielrolle steuern, keine Stationsbefehle, App-Wechsel, Neustarts oder Spielenden auslösen. Die Stationshoheit bleibt beim Gastgeber; er kann die App weiterhin selbst verlassen. Ein voller Zweispieler-Platz zeigt die Belegung ohne weiteren Beitrittsbutton. Ein Film oder 3D-Objekt zeigt eine Belegungsinfo; beim Freigeben erscheint automatisch die Auswahl wieder. Im bestehenden gemeinsamen Farbraum ist Gemeinsam malen die passende Aktion (bis 24 Personen). Der separate neue Farben-Spielmodus nutzt wie die vier bisherigen Spiele den Challenger-Beitritt. Vorhandene Aqua-Editor-/Stationsregeln wurden nicht umgebaut.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=== Schnittstellen und Grenzen ===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;GET /station/availability prüft das Besucherticket und den aktuellen MegBes-Stationszustand, liefert station=50, Label, App, Belegung und erlaubte Beitritts-/Gemeinschaftsaktion. Keine Ticket-/Steuertoken oder Besucheridentitäten im Ergebnis. Menü fragt sichtbar alle 2,5 Sekunden und bei Rückkehr in den Tab ab. POST /game/challenge akzeptiert ausschließlich feature und die konkrete gameId; dieselbe Zugangskontrolle wie vorher, serielle Reservierung gegen doppelte Gäste. Veraltete Partie oder App-Wechsel werden abgewiesen. Dasselbe Ticket kann seinen noch vorhandenen Gastzugang wieder abrufen, ohne erneut zu unterbrechen. Der alte Anfrage-Endpunkt bleibt für bereits geladene ältere Frontends kompatibel; alle Seiten nach Aktivierung neu laden.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Lobby-Snapshot hat challenger=true für die neue Übernahme. Der erste Gastgeber muss seine Steuerung weiterhin vorbereiten, wenn er noch im Intro war. Gastbereitschaft startet erst mit allen Verbindungen. Abbruch und Timeout geben nur den Gastplatz frei, keine Trailer-/Stationsabmeldung. Erste Gastvorbereitung maximal 90 Sekunden, ungebundener bzw. verlorener Gastzugang weiterhin 15 Sekunden. Nach einmaliger Vorbereitung greift die 90-Sekunden-Frist bei späteren Wiederverbindungen/Revanchen nicht erneut. Ticketwiderruf, Sessionablauf und Gastgeberverlust behalten die bestehenden Schutzregeln. Challenger-Anzeige in der mittleren Bildschirmhälfte, mit horizontaler LED-Vorverzerrung.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;=== Prüfung und Installation ===&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;194 Tests lokal und auf Linux/VPS bestanden, basierend auf den tatsächlich laufenden Servermodulen einschließlich des neuen Farben-Spiels. Geprüft für Pong, Pöng, Flight, Ortssuche und Farben-Spiel: sofortige Annahme nach Bestätigung, kein Gastgeber-Veto, verpflichtende Vorbereitung, vollständiger Countdown, zwei gleichzeitige Gäste, Wiederholung, voller Platz, Abbruch/Timeout, Wiederverbindung, falsches/abgelaufenes Ticket, falsche Partie und fehlende Stationsrechte. HTTP-Status und Challenge-Endpunkt authentifiziert geprüft. Browser mit echtem isoliertem Relay: Pong/Pöng einschließlich laufendem Solo, Bestätigungsabbruch ohne Unterbrechung, Smartphone-/Display-Meldung, Gastintro, Countdown, dritter Besucher, Gastausstieg und freier Auswahl. Zusätzlich Video, Objects und gemeinsamer Farbraum; öffentliche Website mit simulierten Statusdaten geprüft. Keine echte Station gesteuert.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;52 Frontend-Dateien gesichert und öffentlich bytegleich hochgeladen. Aktivierung ist über challengerArcade in capabilities abgesichert: solange das Relay nicht aktualisiert ist, gilt weiterhin der bisherige Ablauf. Serverpaket auf /home/clawtronics/mutec-challenger-update bereit; als root bei freier Station 50 ausführen: bash /home/clawtronics/mutec-challenger-update/apply-challenger-update.sh. Installer prüft Paket, Tests und SHA-Ausgangsstand aller Servermodule vor Änderungen, sichert die ersetzten Dateien und hat Rollback. Ersetzt nur server.js, pong-guests.js, game-lobby.js und den neuen Test. DISPLAY_KEY, Umgebungsdatei, Bestenlisten, MegBes-Programme, vorhandene Farben-Spielmodule und synced sources/ bleiben erhalten. Root-Aktivierung bei Dokumentation noch ausstehend. Danach Smartphone-Seiten und Electron-Webseiten neu laden; physischer Messestandtest noch erforderlich.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Artefakte im bisherigen Codex-Arbeitsordner outputs/: MUTEC-Challenger-server.tar.gz, zugehörige SHA-Datei, apply-challenger-update.sh, MUTEC-Challenger-VPS-Test.txt, MUTEC-Challenger-Frontend.zip, MUTEC-Challenger-Installation.json und MUTEC-Challenger-Browserpruefung.json. Geprüfter Relay-Quellstand im Arbeitsordner work/challenger-stage/realtime; nicht blind aus älteren Frontendpaketen gemeinsame Session-/Client-Dateien überschreiben.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clawtronics</name></author>
	</entry>
	<entry>
		<id>https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=181&amp;oldid=prev</id>
		<title>Clawtronics: Login-Abhaengigkeiten und Tab-Uebernahme mit Farben-App zusammengefuehrt</title>
		<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=181&amp;oldid=prev"/>
		<updated>2026-10-18T20:26:12Z</updated>

		<summary type="html">&lt;p&gt;Login-Abhaengigkeiten und Tab-Uebernahme mit Farben-App zusammengefuehrt&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 18. Oktober 2026, 20:26 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l62&quot;&gt;Zeile 62:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 62:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Grenzen: gleicher Browser, gleiches Profil und exakt dieselbe Website-Adresse erforderlich; separate Browser, private Fenster oder Geräte übernehmen nicht per localStorage. Gilt für normale Ticket-Steuersitzungen. Der separate Mitspieler-/Gastzugang wird noch nicht tabübergreifend übernommen. Alte, bereits geladene Seiten einmal neu laden, damit die neue Übergabelogik aktiv ist. Bei eingefrorenen Hintergrund-Tabs kann die Browser-Zustellung verzögert sein. Nachweise outputs/MUTEC-Tab-Uebernahme-Installation.json und Frontendpaket MUTEC-Tab-Uebernahme.zip.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Grenzen: gleicher Browser, gleiches Profil und exakt dieselbe Website-Adresse erforderlich; separate Browser, private Fenster oder Geräte übernehmen nicht per localStorage. Gilt für normale Ticket-Steuersitzungen. Der separate Mitspieler-/Gastzugang wird noch nicht tabübergreifend übernommen. Alte, bereits geladene Seiten einmal neu laden, damit die neue Übergabelogik aktiv ist. Bei eingefrorenen Hintergrund-Tabs kann die Browser-Zustellung verzögert sein. Nachweise outputs/MUTEC-Tab-Uebernahme-Installation.json und Frontendpaket MUTEC-Tab-Uebernahme.zip.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Login-Reparatur nach gemischtem Frontendstand, 18.10.2026 ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Fehler: MutecSession.resumeTicket is not a function. Webserver und lokaler Stand hatten nach einer weiteren Farben-App-Erweiterung eine ältere js/session.js und control/client.js, während js/login.js bereits die neue Tab-Übernahme verwendete. session.js wieder per Dreiwegevergleich mit dem aktuellen Stand zusammengeführt; colorsgame-Befehl und Zielpfad bleiben erhalten und sind auch in der zulässigen Wiederaufnahme enthalten. ControlClient führt Tab-Sperre mit colorsgame-Gastbereinigung zusammen. Neuere Karten-/Videoverbesserungen wurden nicht überschrieben.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Login prüft seine Abhängigkeit und lädt bei fehlenden Methoden die passende Sitzungsdatei neu; bei fehlendem Netz eine verständliche Meldung statt JavaScript-Typfehler. Ressourcen-Version 20261018-loginfix1 für Sitzungs-, Login- und Client-Dateien auf aktuellen Seiten/Modulen, einschließlich neuer Farben-App. 38 betroffene Dateien vorab lokal und auf Webserver gesichert und öffentlich bytegleich geprüft. Relay und sources/ unverändert.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Geprüft: bewusst alte Sitzungsdatei vor neuer Login-Datei geladen, erfolgreiche automatische Reparatur, frische Aktivierung, fehlgeschlagene Prüfung, abgelaufene Relay-Sitzung, Browser-Isolation. Erneute Übernahme laufender Pong-Partie zweimal ohne neues Ticket/Trailer/Freigabe und Aquarium-Entwurf getestet. Öffentlicher Login mit simulierten Authentifizierungsantworten erreicht Auswahl ohne JavaScriptfehler; keine echte Station oder Besucher-Anmeldung benutzt. Paket/Nachweise outputs/MUTEC-Login-Fix.zip und MUTEC-Login-Fix-Installation.json. Pakete künftiger Erweiterungen müssen gemeinsame Session-/Client-Funktionen beibehalten.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clawtronics</name></author>
	</entry>
	<entry>
		<id>https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=180&amp;oldid=prev</id>
		<title>Clawtronics: Browser-Tab-Uebernahme fuer bestehende Steuersitzungen</title>
		<link rel="alternate" type="text/html" href="https://wiki.megbes.de/index.php?title=MUTEC_%E2%80%93_Mobile_Apps&amp;diff=180&amp;oldid=prev"/>
		<updated>2026-10-18T15:27:14Z</updated>

		<summary type="html">&lt;p&gt;Browser-Tab-Uebernahme fuer bestehende Steuersitzungen&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;de&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Nächstältere Version&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Version vom 18. Oktober 2026, 15:27 Uhr&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l51&quot;&gt;Zeile 51:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Zeile 51:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== LinkedIn statt allgemeinem Teilen, 18.10.2026 ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== LinkedIn statt allgemeinem Teilen, 18.10.2026 ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der rechte Social-Button ist jetzt LinkedIn (blaues in-Icon). Reihenfolge: WhatsApp, Instagram, Facebook, X, LinkedIn. Der allgemeine native Teilen-Button entfällt. LinkedIn öffnet sharing/share-offsite mit ausschließlich der öffentlichen tinetronics-URL; vorbereiteter Beitragstext wird wie bei Facebook zum Einfügen kopiert, mit manuellem Kopierfeld bei fehlender Berechtigung. 21 betroffene Dateien inklusive Ressourcen-Versionen gesichert, veröffentlicht und bytegleich über HTTPS geprüft. Browser: fünf Icons, LinkedIn rechts, korrektes öffentliches Linkziel, kein generischer Teilen-Button. Keine Beiträge automatisch veröffentlicht.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Der rechte Social-Button ist jetzt LinkedIn (blaues in-Icon). Reihenfolge: WhatsApp, Instagram, Facebook, X, LinkedIn. Der allgemeine native Teilen-Button entfällt. LinkedIn öffnet sharing/share-offsite mit ausschließlich der öffentlichen tinetronics-URL; vorbereiteter Beitragstext wird wie bei Facebook zum Einfügen kopiert, mit manuellem Kopierfeld bei fehlender Berechtigung. 21 betroffene Dateien inklusive Ressourcen-Versionen gesichert, veröffentlicht und bytegleich über HTTPS geprüft. Browser: fünf Icons, LinkedIn rechts, korrektes öffentliches Linkziel, kein generischer Teilen-Button. Keine Beiträge automatisch veröffentlicht.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;== Steuerung in neuem Browser-Tab übernehmen, 18.10.2026 ==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Erneutes Scannen eines in diesem Browser bereits aktivierten Tickets übernimmt die bestehende normale Steuersitzung. Die Aktivierung enter-system wird nicht wiederholt. Ein Browserdatensatz in localStorage ist nach Kunde und Installationspfad getrennt und enthält Ticket, Relay-Sitzung, freigegebene App-Adresse und Momentaufnahme. sessionStorage bleibt als Kompatibilität für bestehende Module erhalten. Der Server prüft Ticket und Relay-Sitzung weiterhin. Nur freigegebene App-Pfade derselben Installation werden wieder geöffnet; keine beliebigen Zieladressen oder Display-Schlüssel.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Pro Dokument eigene Kennung; neuer Tab übernimmt die Eigentümerschaft, alter Tab stoppt seine WebSocket-Verbindung und Verlängerung und zeigt exit.html?reason=transferred mit Danke für Ihren Besuch, tinetronics-/MegBes-Logo und fünf Social-Icons. Kein Trailer, kein Stations-DELETE und keine neue Station beim Übergeben. Späte Steuerbefehle des alten Tabs werden zusätzlich vor dem Senden durch Eigentümerprüfung blockiert. Reload der Dankesseite holt keine Steuerung zurück. Abmelden entfernt den gemeinsamen Browserdatensatz. Eine abgelaufene Relay-Sitzung führt mit weiterhin gültigem Ticket zurück ins Menü.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Pong/Pöng und Ortssuche verwenden den wieder gemeldeten Spielzustand; kein erneuter Bereitschaftsbefehl aus dem übernommenen Intro. Video merkt Beitrag/Sprache und wählt bei Wiederaufnahme den laufenden Film nicht erneut aus; Browser-Autoplay kann erneut eine Tonfreigabe verlangen. Flight setzt bei erneutem Freigeben/Kalibrieren eine laufende Runde fort, ohne sie neu zu starten. Sensorfreigaben können browserbedingt erneut nötig sein. Aquarium übernimmt Tierart, Bild und Bearbeitungsschritt; normale Zeichnungen als PNG, große Bilddaten als JPEG zum Schutz der Browser-Speichergrenze. Noch unbestätigte UI-/Sensorzustände sind kein serverseitig garantierter vollständiger App-Speicher.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Geprüft am echten lokalen Relay mit simuliertem MegBes: laufende Pong-Partie mit Display und zwei aufeinanderfolgenden Übernahmen, gleicher Zugang und Spielkennung, keine Ticket-Neuaktivierung/Trailer-/Stationsfreigabe, alte Tabs mit Dank/Logos/Social-Icons, Abmelden. Aquarium-Entwurf samt Tierart und Malschritt in neuem Tab wiederhergestellt. Frische Ticketaktivierung, fehlgeschlagene Ticketprüfung ohne Übernahme, abgelaufene Relay-Sitzung und isolierter anderer Browser geprüft. Keine echte Station gesteuert. Neues MegBes-Logo stammt aus bestehendem Projekt kleh/pics/megbes.png. 50 Dateien gesichert und öffentlich bytegleich verifiziert. Relay/MegBes-Programme und sources/ unverändert; kein root-Update nötig.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;Grenzen: gleicher Browser, gleiches Profil und exakt dieselbe Website-Adresse erforderlich; separate Browser, private Fenster oder Geräte übernehmen nicht per localStorage. Gilt für normale Ticket-Steuersitzungen. Der separate Mitspieler-/Gastzugang wird noch nicht tabübergreifend übernommen. Alte, bereits geladene Seiten einmal neu laden, damit die neue Übergabelogik aktiv ist. Bei eingefrorenen Hintergrund-Tabs kann die Browser-Zustellung verzögert sein. Nachweise outputs/MUTEC-Tab-Uebernahme-Installation.json und Frontendpaket MUTEC-Tab-Uebernahme.zip.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Clawtronics</name></author>
	</entry>
</feed>