Medienverwaltung

Fragestellungen:

  • Wie verwalte ich meine Medien?

Beschreibung:

Wenn du Medien in TYRIOS nutzen willst, musst du sie in das Mediensystem hochladen. Das hat mehrere Gründe:

  • Die Medien im Mediensystem werden automatisch analysiert und optimiert. Das bedeutet vor allem für Bilder und Videos, dass die Dateien automatisch in Bezug auf Abmessungen, Größe und Qualität optimiert werden.
  • Medien werden automatisch gesäubert. Dazu gehört nicht nur die Mime- und Inhaltsanalyse, sondern auch ein automatischer Virencheck.

Um Medien in TYRIOS zu nutzen, musst du also Medien hochladen, die automatisch analysiert werden. Die Medienbibliothek unterstützt ein Eltern-Kind-System, um eine Verzeichnisstruktur zu realisieren. Es gibt ein Root-Objekt mit der ID 1 und jedes Objekt muss mindestens dieses Objekt als Parent anbieten.

Authentifizierung

Die API-Endpunkte von TYRIOS sind nur für autorisierte Nutzer verfügbar. Daher muss der Benutzer authentifiziert werden. Es gibt zwei verschiedene Arten der Authentifizierung:

  • Authentifizierung durch BASIC-Authentifizierung. Das Benutzerkonto muss über ein aktiviertes REST API-Token verfügen. Du musst einen entsprechenden BASIC-Authentifizierungs-Header senden.
  • Authentifizierung durch die Registrierung einer mobilen App. Du musst ein entsprechendes App-Registrierungs-Token senden.

Erforderliche Rechte

Um diese API nutzen zu können, brauchst du Benutzeranmeldedaten mit Medienverwaltungsrechten. Wenn du diese Rechte nicht hast, erhältst du einen 403-Fehlercode. Die API ist für externe Nutzer ohne Anmeldedaten nicht verfügbar.

Datenstruktur

Medien werden über die Datenstruktur MediahelperFile verwaltet. Eine MediahelperFile kann verschiedene Typen haben, die durch den mediaType angegeben werden:

  • 1=Bild,
  • 2=Video,
  • 3=Ton,
  • 4=Dokument,
  • 5=Zip,
  • 6=Verzeichnis

Je nach Typ optimiert TYRIOS die Medien automatisch für die weitere Verwendung.

Neues Verzeichnis hinzufügen

Um ein neues Verzeichnis hinzuzufügen, musst du eine PUT-Anfrage an folgenden Endpunkt stellen

https://[instance-domain]/MediaManagement/service/media/[parentID]

 

Als Payload musst du Folgendes senden:

Payload:

{ "name": "Verzeichnisname", ["returnIfExistent": true] }

Rückgabewert: mediahelper-Datei für das Verzeichnis. Wenn der Pfad bereits existiert und du den Parameter returnIfExistent in deinem Payload hinzugefügt hast, wird das Verzeichnis mediahelper scruct geliefert, andernfalls wird eine Ausnahme geliefert.

Beispiel mit cURL:

hinzufügen eines Verzeichnisses zu root mit dem Namen "directory"

curl -u admin:restSecret -X PUT -d '{"name": "directory"}' https://[domain]/service/MediaManagement/media/1

Rückgabewert als Beispiel

{
  "id": 777, // automatisch zugewiesene ID
  "fileName": "directory", // Name des Verzeichnisses
  "mediaType": "6", // 6 = Verzeichnis
  "detailFormat": null, // Bei Verzeichnissen nicht erforderlich
  "filePath": "//", // Pfadangabe, möglicherweise Platzhalter
  "alternativeText": null, // Alternativtext nicht relevant für Verzeichnisse
  "fileDescription": null, // Beschreibung
  "uploadTime": 0, // Kein Upload-Zeitpunkt, da Verzeichnis vermutlich systemintern
  "MediahelperFileDescendant": null, // Keine abgeleiteten Dateien
  "parentID": 1, // Übergeordnetes Verzeichnis oder Objekt
  "UserData": 1, // Benutzer-ID
  "securityLevel": "1", // Öffentlich
  "fileHash": "etcyjs3bmcqi9wzsfe5zsy0og20ordpshd99c69yc7z8a9zx00", // Datei-/Verzeichnissignatur
  "versi

Bitte beachte, dass die Datenstruktur in TYRIOS dynamisch ist, da TYRIOS ein aspektorientiertes System ist. Es kann also sein, dass in deiner Installation weitere Felder vorhanden sind.

Neue Medien hinzufügen

Um eine neue Mediendatei hinzuzufügen, musst du die Medien in einem Multipart/Form-Data kodierten Format hochladen. Das System unterstützt nur einen Datei-Upload, damit du die entsprechenden IDs abrufen kannst

Endpunkt für die POST-Anfrage

https://[instance-domain]/service/MediaManagement/service/media/[parentID]/newFile

Beispiel für den Payload mit cURL:

curl -u admin:restSecret -X POST -F "file=@/path/to/file.jpg" https://[instance]/service/MediaManagement/media/777/newFile

Es ist möglich, eine Sicherheitsstufe in deinem Payload anzugeben. Dazu musst du ein Optionsfeld für securityLevel im json-Format angeben

curl -u admin:restSecret -X POST -F "file=@/path/to/file.jpg" -F "options={\"securityLevel\":3};type=application/json" https://[instance]/service/MediaManagement/media/777/newFile

Das System liefert dir die mediahelper-Datei als Antwort.

Ändern der Sicherheitsstufe

TYRIOS unterstützt drei Sicherheitsstufen:

  • 1=öffentlich
  • 2=privat, aber gemeinsam nutzbar (durch Verwendung eines Hashes)
  • 3=privat und nicht gemeinsam nutzbar, gesteuert durch Benutzerrechte

Um die Sicherheitsstufe zu ändern, musst du einen POST-Request an folgende URL senden

https://[instance-domain]/service/MediaManagement/service/media/[mediaID]/securityLevel

Als Payload musst du die folgende Datenstruktur bereitstellen:

{ "securityLevel": 2 }

Als Antwort liefert das System die Medien als JSON-Struktur.

Medien löschen

Um ein Medium zu löschen, musst du eine DELETE-Anfrage an den Endpunkt senden:

https://[instance-domain]/service/MediaManagement/service/media/[mediaID]

Das System prüft automatisch, ob die Datei in Gebrauch ist (außer bei der Verwendung durch einen Editor) und gibt eine entsprechende Fehlermeldung aus, wenn dies der Fall ist

Vorgehen:

Tips und Tricks:

Abonnieren Sie unseren Newsletter

Bleiben Sie stets informiert. Wir informieren Sie gerne über Produktneuheiten und Angebote.