API do PLAYDECK

A API do PLAYDECK é uma estrutura que permite que qualquer pessoa interaja com o PLAYDECK. Este artigo mostrará como começar a desenvolver com a API:

Neste artigo:
Introdução
Exemplos
Implementar a API


Introdução

A API do PLAYDECK é bidirecional: você recebe o status da reprodução, mas também pode enviar comandos ao PLAYDECK.

A API é baseada em WebSockets: eles fazem parte do JavaScript, portanto, você pode desenvolver em JavaScript, Node.js ou TypeScript. A porta do WebSocket é fixa em 11411 e está sempre ativada no PLAYDECK.

Decidimos optar pelo WebSockets porque:

  • Suporta ambas as direções: de e para o PLAYDECK
  • Não é necessária instalação: use qualquer editor de texto
  • Não é necessária nenhuma segurança de rede específica
  • É fácil criar sua própria interface de usuário ou animação com HTML


O que pode ser enviado para o PLAYDECK?

  • Reproduzir ou iniciar blocos, clipes, sobreposições ou ações
  • Iniciar/parar recursos de vídeo, como transmissões


O que se pode obter com o PLAYDECK?

  • Eventos (por exemplo, o início de um bloco ou clipe)
  • Status da programação (por exemplo: o que está passando e o tempo restante do bloco)
  • Conteúdo (por exemplo, lista de reprodução completa com blocos e clipes)


Exemplos

1) Companheiro

A API do PLAYDECK está sendo utilizada pelo bitfocus Companion no módulo PLAYDECK. Isso permite que você tenha uma ideia rápida do que a API é capaz de fazer:
https://playdeck.tv/howto/companion/


2) Visão do diretor

A API também é utilizada pela Director View, que faz parte do PLAYDECK. Você pode encontrar os modelos HTML aqui:
c:\Usuários\Público\Documentos\JoyEventMedia\Playdeck\Modelos-HTML\Diretor-View


3) Sobreposições em HTML

A API também é utilizada em alguns exemplos de visão geral de HTML, que você pode encontrar aqui:
c:\Usuários\Público\Documentos\JoyEventMedia\Playdeck\Modelos-HTML\Modelos-de-sobreposição


Implementar a API

Preparamos alguns exemplos para que você possa dar uma olhada rápida em um script funcional. Por favor, analise-os na ordem, pois eles se complementam.

Dica 1: Você pode clicar duas vezes em qualquer arquivo HTML para abri-lo no navegador e executar o script/API

Dica 2: Você pode editar o arquivo “WebSocketSDK\Version.js” para alterar o endereço IP


1) Conexão nativa (sem a API)

Vamos começar com algo bem minimalista:
c:\Usuários\Público\Documentos\JoyEventMedia\Playdeck\Modelos-HTML\Automação-e-IU\ExemploMinimalista.html

Isso abrirá o WebSocket para o PLAYDECK com código JavaScript nativo e enviará um comando para reproduzir o primeiro clipe no primeiro bloco.

Outro exemplo é este, em que você pode clicar nos botões em HTML para iniciar a reprodução no PLAYDECK:
c:\Usuários\Público\Documentos\JoyEventMedia\Playdeck\Modelos-HTML\Automação-e-IU\Interface-de-usuário-de-exemplo.html


2) Conexão minimalista (COM API)

Este exemplo apresentará a API:
c:\Usuários\Público\Documentos\JoyEventMedia\Playdeck\Modelos-HTML\Automação-e-IU\SampleMinimalisticSDK.html

Ele utiliza a subpasta “WebSocketAPI” e inclui seu SCRIPT PRINCIPAL “AppInterface.js”, que funciona como uma espécie de “carregador” para toda a API.

A API agora cuidará da sua conexão WebSocket com o PLAYDECK, de modo que você não precisa programar isso manualmente. A API também disponibiliza uma estrutura de modelos para JavaScript. O nome do modelo é derivado do nome do arquivo, portanto, eles precisam corresponder. Existem várias funções predefinidas disponíveis. Para este exemplo, usaremos apenas “Start”: essa função será chamada pela API assim que a conexão WebSocket com o PLAYDECK for estabelecida com sucesso. Neste exemplo, ela reproduzirá o primeiro clipe do Canal 1.


3) Mais funções do framework

Além de “Iniciar”, há muitas outras funções do Framework disponíveis:
c:\Usuários\Público\Documentos\JoyEventMedia\Playdeck\Modelos-HTML\Automação-e-IU\Exemplo-Reproduzir-Clipe-Aleatório.html

Consulte os comentários no arquivo JS para ver todas as funções disponíveis.

Se você abrir o Console do navegador (normalmente com a tecla F12), poderá ver o resultado das instruções “console.log”.


4) Analisar os dados do projeto

Para acessar todos os Clips, está disponível a função “DataProject”, e este exemplo mostra como listar os dados do projeto:
c:\Usuários\Público\Documentos\JoyEventMedia\Playdeck\Modelos-HTML\Automação-e-IU\Exemplo-de-Lista-de-Reprodução-do-Espetáculo.html


5) Exemplo de horário personalizado

O último exemplo mostra um script completo e funcional para uma programação personalizada fora do PLAYDECK:
c:\Usuários\Público\Documentos\JoyEventMedia\Playdeck\Modelos-HTML\Automação-e-IU\Exemplo-de-Programação-Semanal.html