Manchmal möchtest du jemandem, der kein Konto auf deinem Server hat, einen Film oder eine Serie zeigen. Share Links erstellt einen Link mit Ablaufdatum, den der Gast im Browser, auf dem Telefon oder auf dem Fernseher öffnet — ohne je ein Konto oder Token für deinen Emby-Server zu bekommen.
Was es macht
- Links mit Grenzen: ein Ablaufdatum, eine maximale Anzahl von Öffnungen, eine maximale Anzahl gleichzeitiger Zuschauer und eine optionale PIN.
- Öffnet sich überall: in jedem Browser, auf dem Telefon oder dem Fernseher, mit einer Kurzadresse und einem 8-stelligen Code oder per QR-Code. Es läuft im eigenen Player, mit Wahl von Tonspur und Untertiteln.
- Kein Konto für den Gast: Der Gast bekommt nie ein Konto oder Token. Alles läuft über einen Proxy, der auf die Titel des Links beschränkt ist; das Zurückziehen des Links stoppt die Wiedergabe sofort.
- Sicherheit: Tokens, Codes und PINs werden nur als Hashes gespeichert; wiederholte Fehlversuche werden pro IP-Adresse und pro Link gesperrt; die Bitrate ist begrenzt; es kann nichts heruntergeladen werden.
- Teilen durch reguläre Benutzer (optional), mit einem Kontingent pro 30 Tage (einem Standardkontingent oder einem pro Cashier-Tarif) und einer Seite My links.
- Versand: Kopiere den Link oder sende ihn per WhatsApp, Telegram oder E-Mail; jeder Link hat ein Aktivitätsprotokoll.
Warum kein Gastkonto
Bei Emby 4.10 werden Bibliotheksbeschränkungen nicht durchgesetzt, wenn ein Eintrag direkt über seine ID angefragt wird; ein gewöhnliches „Gast“-Konto kann also die gesamte Bibliothek erreichen. Share Links vermeidet das konstruktionsbedingt: Der Gast hat kein Konto, und der Proxy liefert nur die Titel des Links.
Voraussetzungen
- Emby Server 4.10.1 oder neuer.
- Für Gäste außerhalb deines Heimnetzwerks: eine Adresse deines Servers, die sie erreichen können.
- Optional: Cashier, für Teilen-Kontingente pro Tarif.
Was es wohin sendet
- Keine externen Dienste für Gäste: Die öffentliche Seite lädt nur die Dateien des Plugins (hls.js aus dem lokalen Web-Client des Servers / mitgeliefert), kein CDN, keine Schriftarten oder externen Bilder; QR wird auf dem Server erzeugt. Strikte Header: CSP
default-src 'self', kein Referrer,noindex, kein Framing. - Der Gast-Proxy kommuniziert nur mit deinem lokalen Server und reicht die IP des Gastes in
X-Forwarded-Forweiter (sie erscheint in den Logs/Sitzungen des Servers). - Was der Gast sieht: Linktitel, Ablaufdatum, Name des Teilenden und für die geteilten Titel: Name, Serie/Staffel/Episode, Jahr, Inhaltsangabe, Laufzeit, Bilder. Nur Wiedergabe (HLS, Untertitel, Bilder) für diese Titel; kein Download; Bitrate begrenzt (standardmäßig 8 Mbit/s). Der Gast bekommt nie ein Server-Token; ein temporärer versteckter Benutzer wird erstellt, ohne Bibliotheken/Download/Live-TV, mit einem zufälligen, nicht gespeicherten Passwort, und bei Zurückziehen/Ablauf gelöscht.
- Die WhatsApp-/Telegram-Schaltflächen auf der Admin-Seite sind normale Links (sie senden nur bei einem Klick den Link und den Titel).
- Die Schaltfläche „Share“ und das Menü „My links“ brauchen den optionalen Patch von
dashboard-ui/index.html(standardmäßig deaktiviert). Wenn du ihn aktiviert hast und er nach einem Emby-Update nicht wiederhergestellt werden kann, wird das Plugin-Log an medialab.works gesendet (einmal pro Emby-Version) nur wenn das automatische Log-Senden aktiv ist, wie in jedem Plugin. - Dazu der Lizenz-Client, in jedem Plugin gleich: siehe Lizenzierung und Datenschutz in unseren Plugins.
Lokal gespeichert (state/):
links.json: Links — Token, Kurzcode und PIN nur als HMAC-SHA256-Hashes (niemals im Klartext), Titel, Ersteller, Daten, Nutzungen, Zuschauerzahl, Bitrate, Notiz.- Gastsitzungen: Cookie (HMAC), IP des Gastes, Geräte-ID, Token des versteckten Benutzers (nur serverseitig).
- Ereignisprotokoll: Zeit, Link, Art, IP, Detail (max. 5000).
- Aufbewahrung: Sitzungen werden beim Ablauf entfernt; abgelaufene Links und ihre Ereignisse werden nach 30 Tagen gelöscht (konfigurierbar). Die Versuchsbegrenzung (10 Fehlversuche in 10 Minuten → 15-minütige Sperre pro IP) existiert nur im Arbeitsspeicher.
Kompatibilität mit Clients
- Gäste: Jeder moderne Browser (hls.js/MSE oder natives HLS auf dem iPhone); auf einem Fernseher öffne
/ShareLinks/sim TV-Browser und gib den 8-stelligen Code ein. ✅ Chrome (Desktop, „TV 1080p“, Telefon; 18/18). Safari/iOS, Firefox, echte TV-Browser: ❔ nicht getestet. - Die Schaltfläche „Share“ und „My links“ nur in Emby Web (mit dem
index.html-Patch); native Emby-Apps haben keine Schaltfläche. Admin-Seite und „My links“ ✅ (Chrome, Desktop + Telefon). - Native Emby-Apps: ➖ keine Integration.
Legende: ✅ verifiziert (End-to-End- oder Test auf dem Gerät) · 🟢 serverseitig, funktioniert mit jedem Client (konstruktionsbedingt, kein clientspezifischer Test) · ➖ nicht zutreffend · ❔ nicht getestet.
Lizenzierung
Eine Lizenz pro Emby-Server. Monatlich, jährlich oder als Lifetime-Lizenz, oder im Emby-Paket enthalten. 30 Tage kostenlos testen. Das Plugin wird unter unserer EULA lizenziert.
Share Links ist unser eigener Code, von MediaLab Works von Grund auf geschrieben; er enthält keinen Code Dritter. Sein Player nutzt das hls.js, das mit Emby kommt und das das Plugin nicht mitliefert.
