Il est possible d'utiliser Médiacad comme diffuseur de médias depuis une autre application ou un autre site web.
Il y a deux possibilités pour cela : diffuser via une iframe ou obtenir un json / jsonp.
Pour diffuser un média dans une application externe ou un site web, il suffit de copier le code iframe présent dans l'onglet Liens quand on affiche le média dans Médiacad.
Si vous rajoutez le paramètre /a/[ce_que_vous_voulez], la vidéo ou le son sera joué en autoplay.
Médiacad peut aussi renvoyer un json / jsonp pour obtenir des informations sur un média donné. Bien entendu, seuls les utilisateurs ayant les droits d'accès au média obtiendront ce json / jsonp.
L'url d'appel pour obtenir un json est de la forme :
##mediacadBaseUrl##/default/media/display/m/##mediaId##/d/j
L'url d'appel pour obtenir un jsonp est de la forme :
##mediacadBaseUrl##/default/media/display/m/##mediaId##/d/j?callback=##javascriptCallbackFunction##
Avec :
##mediacadBaseUrl## : url du serveur de Médiacad (ex : https://ent2d.ac-bordeaux.fr/mediacad)
##mediaId## : identifiant du média désiré (ex : 728)
##javascriptCallbackFunction## : nom de la fonction de callback ajoutée dans le jsonp ; ce nom ne doit pas être un nom réservé par javascript et passer la regex suivante : '#^[a-zA-Z$_]{1}[a-zA-Z0-9$_]{0,}$#'
Médiacad renvoie une page avec comme header : "Content-type: application/javascript;charset=utf-8".
Aucune valeur du json n'est échappée. Il appartient à l'application cliente de correctement échapper les données fournies pour éviter notamment des failles XSS.
Le json respecte la norme oembed 1.0.
Clef |
Médias |
Valeurs possibles |
Valeur par défaut |
Remarques |
version |
tous |
"1.0" |
"1.0" |
Version de oembed |
is_displayable |
tous |
true | false |
true |
Le média est-il affichable ? |
no_displayable_code |
tous |
null "401" "mediaIsNotFinishedEncoding" "mediaHasEncodingError" |
null |
Code d'affichage impossible |
no_displayable_message |
tous |
null "Accès impossible à ce média. Soit ce média n'existe pas, soit vous n'y avez pas ou plus accès." "Ce média est encore en cours d'encodage. Veuillez patienter quelques minutes." "Ce média a connu des erreurs lors de son encodage." |
null |
Message d'affichage impossible |
type |
tous |
null | "video" | "audio" | "image" | "book" |
null |
null si no_displayable_code == "401" Type de média |
title |
tous |
null | string |
null |
null si no_displayable_code == "401" |
author_name |
tous |
null | "" | string |
null |
null si no_displayable_code == "401" Vaut "" si le média n'est pas indexé ; forcément valorisé sinon. |
description |
tous |
null | "" | string |
null |
null si no_displayable_code == "401" Vaut "" si le média n'est pas indexé ; forcément valorisé sinon. |
provider_name |
tous |
string |
App_Lib_Config::getConfig('application', 'applicationName') |
Par défaut : "Médiacad" |
provider_url |
tous |
string |
PUBLIC_BASE_URI |
|
thumbnail_url |
tous |
null | string |
null |
null si is_displayable == "false" ou si thumbnailType == "default" Url de la vignette ; peut être intégrée directement dans une balise <img>. |
thumbnail_width |
tous |
null | integer |
null |
null si is_displayable == "false" ou si thumbnailType == "default" |
thumbnail_height |
tous |
null | integer |
null |
null si is_displayable == "false" ou si thumbnailType == "default" |
html |
tous |
null | string |
null |
null si is_displayable == "false" Code iframe complet pour afficher ce média. |
permalink |
tous |
null | string |
null |
null si no_displayable_code == "401" |
width |
video | image |
null | integer |
null |
Largeur du média (en pixels) |
height |
video | image |
null | integer |
null |
Hauteur du média (en pixels) |
url |
image |
null | string |
null |
Url de l'image ; peut être intégrée directement dans une balise <img>. |
Le jsonp est de la forme :
/**/##javascriptCallbackFunction##(##json##);
Créé avec HelpNDoc Personal Edition: Créer des aides HTML, DOC, PDF et des manuels depuis une même source