API PLAYDECK

L'API PLAYDECK est une interface permettant à tout un chacun de se connecter à PLAYDECK. Cet article vous explique comment vous lancer dans le développement avec cette API :

Dans cet article :
Introduction
Exemples
Implémenter l'API


Introduction

L'API PLAYDECK est bidirectionnelle : vous recevez l'état de la diffusion, mais vous pouvez également envoyer des commandes à PLAYDECK.

L'API repose sur les WebSockets : ceux-ci font partie intégrante de JavaScript, vous pouvez donc développer en JavaScript, en Node.js ou en TypeScript. Le port WebSocket est fixé à 11411 et est toujours activé dans PLAYDECK.

Nous avons décidé d'opter pour les WebSockets, car :

  • Il prend en charge les deux sens : depuis et vers PLAYDECK
  • Aucune installation requise : utilisez n'importe quel éditeur de texte
  • Aucune mesure de sécurité réseau particulière n'est requise
  • Créer facilement sa propre interface utilisateur ou animation avec HTML


Quels fichiers peut-on envoyer à PLAYDECK ?

  • Lancer ou lire des blocs, des clips, des superpositions ou des actions
  • Lancer/arrêter des ressources vidéo telles que les flux


Que peut-on obtenir auprès de PLAYDECK ?

  • Événements (par exemple, le début d'un bloc ou d'un clip)
  • État de la diffusion (par exemple : ce qui est en cours de diffusion et le temps restant du bloc)
  • Contenu (par exemple, une liste de lecture complète comprenant des blocs et des clips)


Exemples

1) Compagnon

L'API PLAYDECK est utilisée par bitfocus Companion dans le module PLAYDECK. Cela vous donne un aperçu rapide des possibilités de cette API :
https://playdeck.tv/howto/companion/


2) Vue du réalisateur

L'API est également utilisée par Director View, qui fait partie de PLAYDECK. Vous trouverez les modèles HTML ici :
c:\Utilisateurs\Public\Documents\JoyEventMedia\Playdeck\Modèles HTML\Director-View


3) Superpositions HTML

L'API est également utilisée dans certains exemples de présentation HTML, que vous pouvez consulter ici :
c:\Utilisateurs\Public\Documents\JoyEventMedia\Playdeck\Modèles HTML\Modèles de superposition


Implémenter l'API

Nous avons préparé quelques exemples pour vous permettre de vous familiariser rapidement avec un script fonctionnel. Veuillez les consulter dans l'ordre, car ils s'appuient les uns sur les autres.

Conseil n° 1 : Vous pouvez double-cliquer sur n'importe quel fichier HTML pour l'ouvrir dans le navigateur et lancer le script/l'API

Conseil n° 2 : Vous pouvez modifier le fichier “ WebSocketSDK\Version.js ” pour changer l'adresse IP


1) Connexion native (sans API)

Commençons par quelque chose de très minimaliste :
c:\Utilisateurs\Public\Documents\JoyEventMedia\Playdeck\Modèles-HTML\Automatisation-et-interface-utilisateur\Exemple-minimaliste.html

Cela ouvrira la connexion WebSocket vers PLAYDECK à l'aide de code JavaScript natif et enverra une commande pour lire le premier clip du premier bloc.

Voici un autre exemple : vous pouvez cliquer sur des boutons en HTML pour lancer la lecture dans PLAYDECK :
c:\Utilisateurs\Public\Documents\JoyEventMedia\Playdeck\Modèles-HTML\Automatisation-et-interface-utilisateur\Exemple-d'interface-utilisateur.html


2) Connexion minimaliste (AVEC API)

Cet exemple vous présente l'API :
c:\Utilisateurs\Public\Documents\JoyEventMedia\Playdeck\Modèles HTML\Automatisation et interface utilisateur\SampleMinimalisticSDK.html

Il utilise le sous-dossier “ WebSocketAPI ” et inclut son script principal “ AppInterface.js ”, qui fait en quelque sorte office de “ chargeur ” pour l'ensemble de l'API.

L'API se chargera désormais de votre connexion WebSocket à PLAYDECK, vous n'avez donc pas besoin de la coder manuellement. L'API met également à disposition un framework de modèles pour JavaScript. Le nom du modèle est dérivé du nom du fichier ; il doit donc correspondre. Plusieurs fonctions prédéfinies sont disponibles. Pour cet exemple, nous n'utilisons que “ Start ” : cette fonction sera appelée par l'API une fois que la connexion WebSocket à PLAYDECK aura été établie avec succès. Dans cet exemple, elle lancera la lecture du premier clip de la chaîne 1.


3) Autres fonctions du framework

Outre “ Démarrer ”, de nombreuses autres fonctions du framework sont disponibles :
c:\Utilisateurs\Public\Documents\JoyEventMedia\Playdeck\Modèles-HTML\Automatisation-et-interface-utilisateur\Exemple-de-lecture-aléatoire-d'un-clip.html

Veuillez consulter les commentaires dans le fichier JS pour connaître toutes les fonctions disponibles.

Si vous ouvrez la console du navigateur (généralement avec la touche F12), vous pouvez voir les résultats des commandes “ console.log ”.


4) Analyser les données du projet

Pour accéder à tous les clips, la fonction “ DataProject ” est disponible ; cet exemple montre comment répertorier les données du projet :
c:\Utilisateurs\Public\Documents\JoyEventMedia\Playdeck\Modèles-HTML\Automatisation-et-interface-utilisateur\Exemple-de-liste-de-lecture-du-spectacle.html


5) Exemple de planning personnalisé

L'exemple suivant présente un script complet et fonctionnel permettant de créer une planification personnalisée en dehors de PLAYDECK :
c:\Utilisateurs\Public\Documents\JoyEventMedia\Playdeck\Modèles-HTML\Automatisation-et-interface-utilisateur\Exemple-de-programme-hebdomadaire.html


Traduction

Cet article explique comment travailler sur les traductions pour PLAYDECK.


Introduction

Les langues disponibles ont été pré-traduites à l'aide d'outils en ligne. Nous utilisons DeepL pour cela. Cela fonctionne très bien pour les phrases plus longues (par exemple, “ Paramètres ”), mais très mal pour les mots isolés (par exemple, « Saisie »).

De plus, certaines traductions occupent plus ou moins d'espace (en nombre de caractères). Cela peut empêcher certains mots de “ tenir ” dans un bouton donné. Si la traduction ne peut pas être raccourcie, nous pouvons également élargir le bouton.

C'est pourquoi chaque langue nécessite des ajustements.


Flux de travail

Les traductions sont modifiées à l'aide d'un outil externe appelé “ SIL Editor ”, dans lequel vous pouvez charger et modifier notre langue. Vous pouvez ensuite prévisualiser vos modifications directement dans PLAYDECK.

Une fois vos modifications terminées, envoyez-nous le fichier de langue et nous intégrerons vos modifications dans l'application.


Téléchargements et installation

Vous avez besoin de PLAYDECK version 4.2b6, que vous pouvez télécharger ici :
https://downloads.playdeck.tv/4.2b6/PlaydeckSetup.exe

Vous avez besoin du logiciel SIL Editor, que vous pouvez télécharger ici (ne téléchargez que “ SIL Editor ”) :
https://www.sicomponents.com/download/

Et vous avez besoin du fichier de langue contenant les traductions :
https://downloads.playdeck.tv/4.2b6/PLAYDECK.sib

—————-

Installez PLAYDECK et l'éditeur SIL, puis enregistrez le fichier SIB ici :
c:\Utilisateurs\Public\Documents\JoyEventMedia\Playdeck\PLAYDECK.sib

Si PLAYDECK détecte un fichier SIB à cet emplacement, il PRÉFÉRERA l'utiliser plutôt que la traduction interne.


Essai

Essayons de modifier quelque chose et vérifions si PLAYDECK met à jour la traduction. Double-cliquez sur le fichier SIB pour ouvrir l'éditeur SIL. Ouvrez la première branche “ Tf_about ”, qui correspond à la fenêtre contextuelle “ À propos ” dans PLAYDECK. Cliquez sur “ Captions ”, qui regroupe tous les champs de texte statiques de la fenêtre contextuelle. Vous pouvez réduire toutes les colonnes de langue qui ne vous concernent pas – dans cet exemple, je me concentre sur l'ALLEMAND (mais cela peut être n'importe quelle autre langue). Maintenant, pour “ l_header ”, modifiez la traduction en quelque chose de visible – dans ce cas, j’ajoute simplement « XXX » devant le texte à des fins de test.

Enregistrez le fichier SIB (ou appuyez sur CTRL+S). Dans PLAYDECK, sélectionnez « GERMAN » dans les paramètres de l'application :

Après avoir redémarré PLAYDECK, ouvrez la fenêtre contextuelle “ À propos ” via « Licence > PLAYDECK ». Les modifications que vous avez apportées au texte devraient désormais y apparaître. N'oubliez pas de rétablir les paramètres d'origine après avoir effectué vos tests. Si cela ne fonctionne pas, veuillez nous contacter.



Par où commencer

Nous vous recommandons de commencer par modifier tous les textes dynamiques, car ils sont utilisés à plusieurs reprises dans PLAYDECK et constituent donc la “ traduction de base ”. Vous les trouverez sous “ Tf_lang > Strings ” :

Une fois cela fait, vous pouvez choisir la méthode qui vous convient le mieux : vous pouvez soit parcourir PLAYDECK pour trouver les modifications nécessaires en passant en revue tous les paramètres et toutes les fenêtres contextuelles, soit parcourir directement toutes les fenêtres contextuelles dans l'éditeur SIL.



Orientation et révision

Le volet de gauche de l'éditeur présente toutes les fenêtres contextuelles disponibles dans PLAYDECK.

On distingue notamment les rubriques “ principal ” (interface utilisateur principale) et “ paramètres ” (tous les paramètres). Celles-ci sont elles-mêmes subdivisées en groupes :

Les groupes ont la signification suivante (ne mentionnez que ceux dont vous avez besoin) :

Légendes : Tous les textes statiques visibles dans la fenêtre contextuelle, principalement les libellés, les boutons et les menus
Collections : Peu utilisé. Seulement certaines options de dialogue.
Étendu: Il s'agit également de textes statiques, mais principalement de titres
Conseils : Les textes qui s'affichent au passage de la souris, par exemple le bouton “ ? ” ou les icônes de la barre d'outils
Lignes multiples : En-têtes de tableau et menus déroulants avec sélection multiple. Modification par double-clic.
Autres : Peu utilisé. Seulement certaines options de dialogue.
Chaînes : Blocs de texte dynamiques. Utilisés uniquement dans “ Tf_lang ”

Dans le grand tableau central, où vous modifiez vos textes, figure également une colonne intitulée “ String ID ”, qui correspond au nom interne de l'élément correspondant dans PLAYDECK. Cela “ peut ” s'avérer utile dans certains cas où vous cherchez quelque chose.

Voici quelques informations concernant le choix du nom :
l_: Étiquettes de texte statique
b_ ou mb_: Boutons
cb_: Case à cocher avec texte
rb_: Bouton radio avec texte
pm_: Fenêtre contextuelle ou menu contextuel
os_ ou op_: Menus déroulants



Conseils pour la révision

1) Veuillez noter qu'il existe plusieurs redondances (le même texte répété à plusieurs reprises), qui sont inévitables lorsque, par exemple, le même texte apparaît plusieurs fois dans PLAYDECK (par exemple, dans les paramètres).

2) Certains textes ne peuvent tout simplement pas être traduits, car ils sont profondément intégrés au système ou au moteur vidéo, qui sont généralement des paramètres (menus déroulants).

3) Vous pouvez rechercher n'importe quel texte dans l'éditeur ou cliquer sur l'en-tête de colonne pour trier les données. Cela peut vous aider à repérer l'original en anglais afin de trouver les champs de texte à modifier.

4) Si aucune traduction n'est fournie (champ vide), le texte original en anglais sera automatiquement utilisé. Vous pouvez donc SUPPRIMER la traduction pour forcer PLAYDECK à utiliser le texte original en anglais

5) Toutes les traductions multilignes doivent comporter le même nombre de lignes, sinon PLAYDECK risque de ne pas démarrer ou de ne pas fonctionner correctement. Pour modifier une traduction multiligne, il suffit de double-cliquer dessus.

6) Certains champs de texte contiennent des caractères très spécifiques qui facilitent la mise en forme et la lisibilité dans PLAYDECK. Il s'agit de “<br>” (saut de ligne), ou ” ” (espace vide), ou “ : ”, ou encore certaines icônes UTF-8. Il suffit d’en tenir compte et de savoir que leur suppression peut nuire à la lisibilité.

7) Most Languages have “lower” and “UPPER” case and some Translations (“Strings” in “Tf_lang”) provide both cases, if needed. For languages that don’t have “case”, use the same translation in both fields.


Liens externes

Vous pouvez modifier la plupart des liens dans PLAYDECK pour indiquer une autre adresse, par exemple l'adresse e-mail du service d'assistance, ainsi que les liens vers la documentation en ligne et d'autres sites web.

Vous êtes tout à fait autorisé à le faire. Nous vous demandons simplement de vous assurer que les e-mails reçoivent une réponse et que les liens vers les sites web fonctionnent et sont mis à jour régulièrement.


Contenu externe

Toutes les images de la section “ POUR COMMENCER ” ainsi que tous les fichiers de documentation ont également été traduits. Vous les trouverez ici :
c:\Program Files (x86)\JoyEventMedia\Playdeck\lang

Même s'il n'y a pas d'urgence absolue à remplacer ou à mettre à jour ces fichiers, vous pouvez le faire si vous le souhaitez.

Le dossier “ GetStarted ” contient toutes les images PNG qui s'affichent dans la boîte de dialogue « Get-Started » :


Le dossier “ Documentation ” contient tous les fichiers TXT qui s'ouvrent à plusieurs reprises dans PLAYDECK pour servir d'aide spécialisée :

Si vous décidez de mettre à jour ces fichiers, veuillez ne pas les renommer et nous les envoyer dans le même format que l'original (fichier PNG avec les mêmes dimensions et fichier TXT avec une structure similaire).