Change histor: Initial version 08-23-2022 Initial version Revision 1 10-18-2022 Updated version (ingest to folder + reschedule)
Étude de cas pour :
- Importer des médias depuis un stockage tiers
- AWS S3
- Azure Blob storage
- Autres …
- Importer des médias & leur métadonnée au format JSON
Limitations :
- Etre client Okast
- Avoir une instance Okast channels + ses credentials
- Un appel par instance possédée
Syntaxe générale d'usage pour _addVideoLink
L'URL d'appel est la suivante
http://<URL_de_mon_instance>/synthesia/okast-channels/playlist/manager/php/_addVideoLink.php
Paramètres généraux
Parameter | Format | Description | Mandatory | Utilisable en méta |
filePath | URL | Lien HTTPS vers le fichier média (.MP4) distant à importer et ingérer | Yes | No |
metadataPath | URL | Lien HTTPS vers le fichier de métadata (.JSON) distant à importer et traiter | Yes | No |
validate | Booléen (O/1) | Indique si le fichier importé doit être automatiquement validé (i.e. sorti du sas de validation). 1 : by pass validation 0 : validation step | No | No |
Ingest to destination folder | ||||
destinationFolder | string | Id du dossier cible | No | Yes |
destinationFolderkind | string | mode d’insertion dans le dossier cible - queueBottom (default) : en fin de dossier - queueTop : en début de dossier - indexed : à une position donnée (>=0) | No | Yes |
destinationFolderIndex | interger | utile seulement si destinationFolderKind=indexed. Indique la position où il faut insérer (commence à zéro) | No | Yes |
destinationFolderIndexReplace | Booléen (O/1) | utile seulement si destinationFolderKind=indexed. Indique si on doit remplacer l'élément déjà à cette position dans le dossier, ou si on s'insère à sa position et ça le décale vers le bas | No | Yes |
Reschedule a playlist |
reschedule | date YYYY-MM-DD | Force la planification pour le(s) jour(s) cible(s) 1 jour : reschedule=2022-10-14 N jours : reschedule=2022-10-14;2022-10-15;2022-10-16 En cas de replanification, les éléments qui sont identiques (même fichiers et mêmes timestamps début/fin) ne seront pas rafraichis | No | Yes |
Exemples
Ingestion simple : fichier distant + métadonnées au format JSON
https://okast.easytools.tv/synthesia/okast-channels/playlist/manager/php/_addVideoLink.php? filePath=http%3A%2F%2Fmydomain.fr%2Fmedias%2FBigBuckBunny-1080p.mp4 &metadataPath=http%3A%2F%2Fmydomain.fr%2Fmetadata%2FBigBuckBunny-1080p-metadata.json
Ingestion avancée #1 : fichier distant + métadonnées au format JSON + dossier de destination spécifié
https://okast.easytools.tv/synthesia/okast-channels/playlist/manager/php/_addVideoLink.php? filePath=http%3A%2F%2Fmydomain.fr%2Fmedias%2FBigBuckBunny-1080p.mp4 &metadataPath=http%3A%2F%2Fmydomain.fr%2Fmetadata%2FBigBuckBunny-1080p-metadata.json &destinationFolder=421adfcc-5b92-356c-9553-609075bf194b &destinationFolderKind=queueBottom
Ingestion avancée #2 : fichier distant + métadonnées au format JSON + dossier de destination spécifié + rafraichissement de la playlist d’un jour spécifié
https://okast.easytools.tv/synthesia/okast-channels/playlist/manager/php/_addVideoLink.php? filePath=http%3A%2F%2Fmydomain.fr%2Fmedias%2FBigBuckBunny-1080p.mp4 &metadataPath=http%3A%2F%2Fmydomain.fr%2Fmetadata%2FBigBuckBunny-1080p-metadata.json &destinationFolder=421adfcc-5b92-356c-9553-609075bf194b &destinationFolderKind=queueBottom &reschedule=2022-10-14
Récapitulatif de la structure de métadonnée .JSON > PDF en fin d'article.
Metadata JSON exemple
{ "tag":"1997-01193_136_22640187", "title":"Media title", "subtitle":"Media subtitle", "description":"Media description, write here the full description of the media", "season":0, "episode":136, "category":"COMEDY", "host":"", "hostFunction":"", "host2":"", "host2Function":"", "host3":"", "host3Function":"", "showName":"Write the Show Name", "dateDay":1, "dateMonth":1, "dateYear":1994, "imageLink":"", "country":"France", "classification":"Tout public", "isrc":"", "isan":"", "plurimedia":"", "internal":null, "internalRef":"", "comments":"Write here comment on yout media", "hasOverlay":1, "oeCategory":"", "keywords":"A0000000", "siteUrl":"", "qrUrl":"", "qrTitle":"", "qrDescription":"", "qrInvite":"", "validityFromDay":9, "validityFromMonth":8, "validityFromYear":2022, "validityFromHour":14, "validityFromMinute":26, "validityToDay":9, "validityToMonth":11, "validityToYear":2022, "validityToHour":14, "validityToMinute":26 }