API für Anwendungen und Dienste von Drittanbietern

  • Aktualisiert

Entwickler von Apps und Diensten von Drittanbietern können die leistungsstarken Videowiedergabefunktionen von Infuse nutzen, um mithilfe flexibler URL-Schemas Videos abzuspielen, mit Lesezeichen zu versehen, herunterzuladen und den Wiedergabestatus zu überwachen. Unterstützung für x-callback ist ebenfalls verfügbar und ermöglicht die Rückkehr zu einer anderen Anwendung, sobald eine Aktion abgeschlossen ist.

Verfügbare Plattformen: iPhone, iPad, Apple TV, Mac und Vision

Infuse-Version: 8.4.7 (oder höher)

Senden von Videos an Infuse zur Wiedergabe

Ein oder mehrere Videos abspielen und nach Abschluss zu einer anderen Anwendung zurückkehren

infuse://x-callback-url/play?url=https://files.firecore.com/infuse/sample-5s-360p.mp4&
position=0&
filename=Inception-2010.mp4&
sub=https://files.firecore.com/infuse/example.srt&
url=https://files.firecore.com/infuse/mov_bbb.mp4&
position=6&
filename=Mad-Men-S01-E01.mp4&
sub=https://files.firecore.com/infuse/example2.srt&
x-success=some-app://success&
x-error=some-app://error

Erfolgs- und Fehlerberichte

x-success

some-app://success?lastPlayedUrl=https://files.firecore.com/infuse/mov_bbb.mp4&
position=8

x-error

some-app://error?errorCode=100&
errorMessage=Unsupported%20content&
failedUrl=invalid_url1&
failedUrl=invalid_url2

Anmerkungen

  • Unterstützt einzelne oder mehrere Url-Einträge
  • Die Parameter für Untertitel, Dateiname und Position sind optional
  • Die Angabe eines Dateinamens kann helfen, genaue Metadaten bereitzustellen, wenn einer der empfohlenen Dateinamensstile verwendet wird
  • Durch die Angabe eines Positionswerts (ausgedrückt als ganzzahlige Sekundenangabe) wird das Video an der angegebenen Stelle gestartet bzw. fortgesetzt
  • Alle URLs werden nacheinander als temporäre Wiedergabeliste abgespielt
  • x-success wird nicht für jede einzelne URL in der Liste aufgerufen, sondern nur einmal, wenn die Wiedergabe der Wiedergabeliste beendet wird oder der Player geschlossen wird. Gibt die letzte URL und die Position (in Sekunden) zurück.
  • x-error wird einmal aufgerufen und liefert fehlgeschlagene URLs (ungültige oder Wiedergabefehler)

Speichern von Links in Infuse zur Wiedergabe und/oder zum Herunterladen

Speichern (Lesezeichen) einer oder mehrerer Video-URLs zur späteren Wiedergabe

infuse://x-callback-url/save?
url=https://files.firecore.com/infuse/sample-5s-360p.mp4&
filename=Inception-2010.mp4&
sub=https://files.firecore.com/infuse/example1.srt&
url=https://files.firecore.com/infuse/mov_bbb.mp4&
filename=Mad-Men-S01-E01.mp4&
sub=https://files.firecore.com/infuse/example2.srt&
download=0&
x-success=some-app://success&
x-error=some-app://error

Erfolgs- und Fehlerberichte

x-success

some-app://success

x-error

some-app://error?errorCode=100&
errorMessage=Unsupported%20content&
failedUrl=invalid_url1&
failedUrl=invalid_url2

Anmerkungen

  • Unterstützt einzelne oder mehrere Url-Einträge
  • Die Parameter Untertitel und Dateiname sind optional
  • Die Angabe eines Dateinamens kann helfen, genaue Metadaten bereitzustellen, wenn einer der empfohlenen Dateinamensstile verwendet wird
  • Der Download-Parameter kann verwendet werden, um das Herunterladen von Dateien für die Offline-Wiedergabe zu starten (0=nur Link speichern, 1=Link speichern und herunterladen)
  • Download-Parameter gilt für die gesamte Anfrage
  • x-success hat keine Parameter
  • x-error wird einmal aufgerufen und liefert fehlgeschlagene URLs (EG ungültige Links)

URL-Kodierung

Gemäß der x-callback-url specsollten alle Querystring-Werte url-safe oder kodiert sein. Unkodierte URLs können in einigen Fällen funktionieren, aber wenn Sie Aktionen mit mehreren Parametern oder URLs mit mehreren Schlüsseln verwenden, müssen Sie wahrscheinlich Ihre URLs manuell kodieren.

Beispiele

Unverschlüsselte URL

http://192.168.162.100/Movies/movie.mkv

Kodierte URL

http%3A%2F%2F192.168.162.100%2FMovies%2Fmovie.mkv

Deep Linking zu Infuse Library-Elementen

Anwendungen können über die entsprechenden TMDB-ID-Nummern direkt mit Elementen in der Infuse-Bibliothek verknüpft werden. Hinweis: Wenn ein Titel nicht in der Bibliothek vorhanden ist, wird eine Platzhalterseite mit TMDB-Daten angezeigt.

Link zu einem Film

infuse://movie/{tmdb_id}

Link zu einer TV-Serie

infuse://series/{tmdb_id}

Link zu einer TV-Serien-Staffel

infuse://series/{tmdb_id}-{season_number}

Link zu einer TV-Serienepisode

infuse://series/{tmdb_id}-{season_number}-{episode_number}

Optional

Fügen Sie den Parameter „play“ am Ende eines Deep Links hinzu, um die Wiedergabe des verlinkten Bibliothekselements automatisch zu starten.

Beispiel

infuse://movie/1327819?play

Aktueller Wiedergabestatus

Infuse kann im lokalen Netzwerk einen schreibgeschützten „Now Playing“-Dienst bereitstellen, sodass andere Apps sehen können, was gerade abgespielt wird – unabhängig von der Quelle (NAS, Plex, Jellyfin usw.). Dadurch können andere Apps oder Dienste von Drittanbietern Informationen darüber abrufen, was gerade in Infuse abgespielt wird.

Hinweis: Die Funktion ist standardmäßig deaktiviert, kann jedoch in Infuse unter „ > “ > „Einstellungen“ > „ > “ > „Wiedergabe“ > „ > “ > „Now Playing API“ aktiviert werden. Erfordert Infuse 8.5.9 oder höher.

Entdeckung

Spezifikation Wert
Art der Dienstleistung _infuse-np._tcp
Domäne local.
Instanzname Infuse (Gerätename)
Hafen effemer – wird immer aus dem SRV-Eintrag gelesen

Endpunkt

GET /nowplaying
HTTP/1.1, unencrypted, Connection: close
200 + JSON body; 400 malformed request; 404 any other method/path

Antwortfelder

Feld Beschreibung
state Wiedergabe läuft, pausiert oder im Leerlauf (es wird nichts abgespielt)
positionSeconds Aktuelle Wiedergabeposition, Sekunden
durationSeconds Gesamtdauer in Sekunden
item Details zum Wiedergabeelement; null, wenn sich der Status im Ruhezustand befindet

Beispiel

{
  "state": "playing" | "paused" | "idle",
  "positionSeconds": double | null,
  "durationSeconds": double | null,
  "item": {
    "kind": "movie" | "episode",
    "tmdbID": string | null,
    "imdbID": string | null,
    "tvdbID": string | null,
    "season": int | null,
    "episode": int | null,
    "title": string | null,
    "seriesTitle": string | null
  } | null
}

Artikel-Felder

Feld Beschreibung
kind Film oder Folge
tmdbID TMDB-ID – Film-ID für Filme, Serien-ID für Episoden
imdbID IMDb-ID (z. B. „tt0133093“), sofern vorhanden
tvdbID TVDB-ID, sofern verfügbar
season / episode Staffel- und Folgenummern (Folgen)
title Titel; bei nicht identifizierten Elementen wird auf den Dateinamen zurückgegriffen
seriesTitle Serientitel (nur Episoden)
Diesen Artikel teilen

War dieser Beitrag hilfreich?

83 von 131 fanden dies hilfreich

Haben Sie Fragen? Anfrage einreichen