Pular para o conteúdo principal

Transcrição

O Player do Elastic Encoder habilita o envio de arquivos de transcrição para o vídeo.

Interface de Programação (APIs)

Solicitação do JWT de Acesso

Faça um comando autenticado de requisição POST em /api/auth

POST https://api.elasticencoder.videolib.live/dev/auth

Cabeçalhos para GET para /api/asset.

Header                          Valor
Ocp-Apim-Subscription-Key chave de autorização do microserviço.
Content-Type application/json.

No corpo da requisição envie o JSON abaixo:

{
"app":"aplicação", // código da aplicação (enviado para ativação)
"key":"chave",// chave de autenticação (enviado para ativação)
"userName":"id Usuario", // id do usuário do sistema de origem - identificação de audiência
"name":"Nome Usuario", // nome do usuário do sistema de origem - identificação de audiência
"group":"100", // (ocional) código do grupo do sistema de origem - identificação de audiência
"email":"usuario@email.com.br", // (opcional) email do usuário do sistema de origem - identificação de audiência
"documentId":"num documento - ex: cpf", // (opcional) documento do usuário do sistema de origem
"department":"nome departamento", // (opcional) departamento do usuário do sistema de origem
"timeoutMinutes":"20" // tempo de duração do token
}

Como retorno do comando será gerado o JSON abaixo:

{
"token":"eyJhbGciOiJodHRwOi8vd3d3LnczLm9yZy8yMDAxLzA0L3htbGRzaWctbW9yZSNobWFjLXNoYTI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VyTmFtZSI6ImlkVXN1YXJvIiwibmFtZSI6Ik5vbWUgVXN1YXJpbyIsImRhdGFUb2tlbiI6IjIwMjQtMDEtMjdUMjI6MjI6MjcuOTI0NzU1LTAzOjAwIiwiZ3JvdXAiOiIxMDAiLCJlbWFpbCI6InV1c3VhcmlvQGVtYWlsLmNvbS5iciIsImRvY3VtZW50SWQiOiJudW0gZG9jdW1lbnRvIC0gZXg6IGNwZiIsImRlcGFydG1lbnQiOiJub21lIGRlcGFydGFtZW50byIsIm1hdGNoIjoiODAyYmVjOGZkNTMxODE5MmIwYTc1IiwiaWRVc2VyUXVldWUiOiIwRTQ5RDM2ODMxNEM0NUJBMjJBQzYxRDY3MzA0MDYwREU1RDhFODE1OENBRjlFRDM4RDIyMjY1NzMwOTBDRDA4Iiwicm9sZXMiOiJHZXN0b3IifQ.yChC56edU1zmCua7sodHGVCD-rrMp5SCeIerkeK2llI",
"dataToken":"2024-01-27T22:22:27.924755-03:00",
"userName":"id Usuario",
"name":"Nome Usuario"
,"tokenType":"jwt",
"idUserQueue":"0E49D368314C45BA22AC61D67304060DE5D8E8158CAF9ED38D2226573090CD08",
"group":"100",
"roles":"",
"email":"usuario@email.com.br",
"documentId":"num documento - ex: cpf",
"department":"nome departamento",
"status_ret":null,
"erro":null
}

onde o campo token corresponde a chave de autenticação que será usada no campo jwt na rota de abertura do player.

Para Assistir um Vídeo

Para enviar uma transcrição faça um comando autenticado de requisição POST em /api/transcript

POST https://api.elasticencoder.videolib.live/dev/job

Cabeçalhos para POST para /api/job.

Header                          Valor
Ocp-Apim-Subscription-Key chave de autorização do microserviço.
Authorization jwt de autorização
Content-Type application/json.

No corpo da requisição envie o JSON abaixo:

{
"assetName":"mezanino-4",
"name":"transcript2",
"language":"pt-BR",
"base64":"data:@file/plain;base64,V0VCVlRUDQoNCk5PVEUNCmlkaW9tYTpwdC1icg0KDQpOT1RFIENvbmZpZGVuY2U6IDAuOTA4MzIxMDIyOTg3MzY1Nw0KDQowMDowMDowMS4wMDAgLS0+IDAwOjAwOjA0Ljc4MQ0KT2zDoSwgbmVzdGUgdsOtZGVvIGZhbGUgc29icmUgYWxndW5zIGFzcGVjdG9zIGltcG9ydGFudGVzIHJlbGFjaW9uYWRvcw0KDQpOT1RFIENvbmZpZGVuY2U6IDAuOTA4MzIxMDIyOTg3MzY1Nw0KDQowMDowMDowNC44NDIgLS0+IDAwOjAwOjA3LjE2MA0Kw6AgcGVyc3BlY3RpdmEgZ2VuZXJhdGl2YSBkYSBsaW5ndWFnZW0uDQoNCk5PVEUgQ29uZmlkZW5jZTogMC45NjQ2OTAwMjk2MjExMjQzDQoNCjAwOjAwOjA3LjY4MCAtLT4gMDA6MDA6MDkuNzIwDQpPIHF1ZSB2b2PDqiBzYWJlIHNvYnJlIGEgZ3JhbcOhdGljYSB1bml2ZXJzYWw/DQoNCk5PVEUgQ29uZmlkZW5jZTogMC45MTQwNzIyNzUxNjE3NDMyDQoNCjAwOjAwOjExLjAzOSAtLT4gMDA6MDA6MTUuMjg1DQpEZSBhY29yZG8gY29tIGEgZ3JhbcOhdGljYSBnZXJhdGl2YSwgaMOhIHVtYSBjb2duacOnw6NvIGVzcGVjw61maWNhDQoNCk5PVEUgQ29uZmlkZW5jZTogMC45MTQwNzIyNzUxNjE3NDMyDQoNCjAwOjAwOjE1LjM0OSAtLT4gMDA6MDA6MTkuMDc5DQpwYXJhIGEgYXF1aXNpw6fDo28gZGEgbGluZ3VhZ2VtLCBhIGdyYW3DoXRpY2EgdW5pdmVyc2FsIG91IGEgVUcuDQoNCk5PVEUgQ29uZmlkZW5jZTogMC44NjA2NTI4MDQzNzQ2OTQ4DQoNCjAwOjAwOjIwLjM2MCAtLT4gMDA6MDA6MjQuMjcwDQpOZXNzZSBzZW50aWRvLCBhY3JlZGl0YS1zZSBxdWUgbyBzZXIgaHVtYW5vIHRlbmhhIHVtDQoNCk5PVEUgQ29uZmlkZW5jZTogMC44NjA2NTI4MDQzNzQ2OTQ4DQoNCjAwOjAwOjI0LjM0OCAtLT4gMDA6MDA6MzAuMDU3DQpoYWJpbGlkYWRlIMO6bmljYSwgdW1hIGZhY3VsZGFkZSBtZW50YWwgaW5hdGEgcXVlIGZheiBhIGFxdWlzacOnw6NvIGRhIGxpbmd1YWdlbQ0KDQpOT1RFIENvbmZpZGVuY2U6IDAuODYwNjUyODA0Mzc0Njk0OA0KDQowMDowMDozMC4xMzYgLS0+IDAwOjAwOjMwLjg0MA0KcG9zc8OtdmVsLg0KDQpOT1RFIENvbmZpZGVuY2U6IDAuODcyNDM3NjU1OTI1NzUwNw0KDQowMDowMDozMi4yODAgLS0+IDAwOjAwOjM2LjQzNQ0KRGVzc2EgZm9ybWEsIGEgR3JhbcOhdGljYSBVbml2ZXJzYWwgw6kgdW0gbWVudGFsIGluYXRvLg0KDQpOT1RFIENvbmZpZGVuY2U6IDAuODcyNDM3NjU1OTI1NzUwNw0KDQowMDowMDozNi41MTIgLS0+IDAwOjAwOjQzLjA1Mw0KRmFjdWxkYWRlIGVzcGVjaWZpY2FtZW50ZSBkZWRpY2FkYSDDoCBhcXVpc2nDp8OjbyBkYSBsaW5ndWFnZW0sIHF1ZSBleHBsaWNhIGEgYXJxdWl0ZXR1cmENCg0KTk9URSBDb25maWRlbmNlOiAwLjg3MjQzNzY1NTkyNTc1MDcNCg0KMDA6MDA6NDMuMTMwIC0tPiAwMDowMDo0Ni40MzkNCmRhIGxpbmd1YWdlbSBjb21vIHVtIGNvbmp1bnRvIGRlIHJlZ3JhcyBwcsOpLWV4aXN0ZW50ZXMuDQoNCk5PVEUgQ29uZmlkZW5jZTogMC45MTMwNzQzMTQ1OTQyNjg4DQoNCjAwOjAwOjQ3LjM2MCAtLT4gMDA6MDA6NTEuNTkwDQpEZSBhY29yZG8gY29tIGEgdGVvcmlhIGdlcmF0aXZhLCBhIEdyYW3DoXRpY2EgVW5pdmVyc2FsIMOpIHVtYQ0KDQpOT1RFIENvbmZpZGVuY2U6IDAuOTEzMDc0MzE0NTk0MjY4OA0KDQowMDowMDo1MS42NTcgLS0+IDAwOjAwOjU1LjgyMQ0KYXJxdWl0ZXR1cmEsIG91IMOpIGEgYXJxdWl0ZXR1cmEgcXVlIHRyYXogdG9kYXMgYXMgcmVncmFzDQoNCk5PVEUgQ29uZmlkZW5jZTogMC45MTMwNzQzMTQ1OTQyNjg4DQoNCjAwOjAwOjU1Ljg4OCAtLT4gMDA6MDA6NTkuNTE0DQpxdWUgZGVmaW5lbSBvIGRlc2lnbiBmb3JtYWwgZGUgcXVhbHF1ZXIgbGluZ3VhZ2VtIHF1ZSBzZWphDQoNCk5PVEUgQ29uZmlkZW5jZTogMC45MTMwNzQzMTQ1OTQyNjg4DQoNCjAwOjAwOjU5LjU4MiAtLT4gMDA6MDE6MDMuODgwDQphdGl2YWRvIGNvbSBiYXNlIG5hcyBpbmZvcm1hw6fDtWVzIHByb3ZlbmllbnRlcyBkZSBpbnB1dHMgbGluZ3XDrXN0aWNvcy4NCg0KTk9URSBDb25maWRlbmNlOiAwLjkyMzQ4Mzc4ODk2NzEzMjYNCg0KMDA6MDE6MDUuMjgwIC0tPiAwMDowMTowOS4zMjYNClF1YWwgc2VyaWEgYSBpbXBvcnTDom5jaWEgZG8gaW5zdW1vLCBlbnTDo28sIG5lc3RlDQoNCk5PVEUgQ29uZmlkZW5jZTogMC45MjM0ODM3ODg5NjcxMzI2DQoNCjAwOjAxOjA5LjQwNSAtLT4gMDA6MDE6MTAuMTE5DQpjZW7DoXJpbz8NCg0KTk9URSBDb25maWRlbmNlOiAwLjk0MzE1NTQ2NzUxMDIyMzQNCg0KMDA6MDE6MTAuMTIwIC0tPiAwMDowMToxMy44MjANCkEgZW50cmFkYSBsaW5ndcOtc3RpY2EgY29uc2lzdGUgZW0gdW0gY29uanVudG8gZGUgZGFkb3MgbGluZ3XDrXN0aWNvcyBwYXJhDQoNCk5PVEUgQ29uZmlkZW5jZTogMC45NDMxNTU0Njc1MTAyMjM0DQoNCjAwOjAxOjEzLjg4NiAtLT4gMDA6MDE6MTguNDQ2DQpxdWUgbyBpbmRpdsOtZHVvIMOpIGV4cG9zdG8gZHVyYW50ZSBhIGFxdWlzacOnw6NvIGRhIGxpbmd1YWdlbSwgb3Ugc2VqYSwNCg0KTk9URSBDb25maWRlbmNlOiAwLjk0MzE1NTQ2NzUxMDIyMzQNCg0KMDA6MDE6MTguNTEzIC0tPiAwMDowMToyMC43NjANCnF1YW5kbyBlc3RhbW9zIGFwcmVuZGVuZG8gYSBmYWxhci4NCg0KTk9URSBDb25maWRlbmNlOiAwLjkzNzAwMjg5NzI2MjU3MzINCg0KMDA6MDE6MjEuOTIwIC0tPiAwMDowMToyNC41MDUNCkVtIG91dHJhcyBwYWxhdnJhcywgdG9kb3Mgb3MgYmViw6pzIG5hc2NlbSBjb20gYSBjYXBhY2lkYWRlDQoNCk5PVEUgQ29uZmlkZW5jZTogMC45MzcwMDI4OTcyNjI1NzMyDQoNCjAwOjAxOjI0LjU1NSAtLT4gMDA6MDE6MjUuNjAwDQpkZSBhcHJlbmRpemFnZW0gZGUgbMOtbmd1YXMuDQoNCk5PVEUgQ29uZmlkZW5jZTogMC44OTI5MzM2MDcxMDE0NDA0DQoNCjAwOjAxOjI2LjE2MCAtLT4gMDA6MDE6MjkuMDg2DQrDgCBtZWRpZGEgcXVlIGNyZXNjZW0sIHPDo28gZXhwb3N0b3Mgw6AgbMOtbmd1YQ0KDQpOT1RFIENvbmZpZGVuY2U6IDAuODkyOTMzNjA3MTAxNDQwNA0KDQowMDowMToyOS4xNDUgLS0+IDAwOjAxOjMwLjM5OQ0KZG8gc2V1IGFtYmllbnRlLg0KDQpOT1RFIENvbmZpZGVuY2U6IDAuOTI5OTAyOTcwNzkwODYzDQoNCjAwOjAxOjMwLjcyMCAtLT4gMDA6MDE6MzIuODgwDQpJbmdsw6pzLCBQb3J0dWd1w6pzLCBFc3BhbmhvbC4NCg0KTk9URSBDb25maWRlbmNlOiAwLjg4MDg2ODYxMzcxOTk0MDINCg0KMDA6MDE6MzMuNTIwIC0tPiAwMDowMTozNy4zMjANCkVzc2EgZXhwb3Npw6fDo28sIGVzc2UgZGFkbyBsaW5ndcOtc3RpY28gw6kgbyBpbnN1bW8uDQoNCk5PVEUgQ29uZmlkZW5jZTogMC44NzE4NTAwMTM3MzI5MTAyDQoNCjAwOjAxOjM4Ljc2MCAtLT4gMDA6MDE6NDMuOTQ2DQpBIG1lbnRlIGh1bWFuYSBvcGVyYSBlbSBpbnRlcmHDp8OjbyBjb20gZGFkb3MgZGUgZW50cmFkYSwgcHJvY2Vzc2FtZW50bw0KDQpOT1RFIENvbmZpZGVuY2U6IDAuODcxODUwMDEzNzMyOTEwMg0KDQowMDowMTo0NC4wMjUgLS0+IDAwOjAxOjQ5LjEzMw0KaW5mb3JtYcOnw6NvIGxpbmd1w61zdGljYSBlIG9yZ2FuaXphw6fDo28gZGUgdW0gYWxnb3JpdG1vIGRlIGZvcm1hIHF1ZQ0KDQpOT1RFIENvbmZpZGVuY2U6IDAuODcxODUwMDEzNzMyOTEwMg0KDQowMDowMTo0OS4yMTIgLS0+IDAwOjAxOjUyLjEyMA0Kw6kgY29uc2lzdGVudGUgY29tIG9zIGRhZG9zIHJlY2ViaWRvcy4NCg0KTk9URSBDb25maWRlbmNlOiAwLjc3MzcwMzE1NzkwMTc2MzkNCg0KMDA6MDE6NTMuNTIwIC0tPiAwMDowMTo1NS44MjUNCkJlbSwgZXNwZXJvIHF1ZSBhZ29yYSB2b2PDqiBwb3NzYSBlbnRlbmRlciBvIHF1ZSBvDQoNCk5PVEUgQ29uZmlkZW5jZTogMC43NzM3MDMxNTc5MDE3NjM5DQoNCjAwOjAxOjU1Ljg3NyAtLT4gMDA6MDE6NTcuMjM5DQpwZXJzcGVjdGl2YSBnZW5lcmF0aXZhIMOpLg0KDQpOT1RFIENvbmZpZGVuY2U6IDAuODg1MzY0OTQ5NzAzMjE2Ng0KDQowMDowMTo1Ny43NjAgLS0+IDAwOjAyOjAwLjIwMA0KQ29udGludWUgZXN0dWRhbmRvIGUgZXUgdm91IHRlIHZlciBkYSBwcsOzeGltYSB2ZXouDQoNCg=="
}

onde:

assetName - Id do asset do arquivo original
name - nome do registro (descrição livre)
language - pt-BR, en-US

Quando um comando POST é executado, como retorno do comando será gerado o JSON abaixo:

{
"assetName": "mezanino-4",
"guid": "2516956744144161773-f41846cc-fde0-4768-a165-afb99f28df54",
"name": "transcript2",
"language": "pt-BR",
"creationTime": "2024-01-30T14:53:05.5839479+00:00",
"idStorage": "5ab5d5b73b35404092c74028a22e1779.vtt",
"base64": null,
"url": null,
"cod_erro": null,
"status_ret": null,
"erro": null
}

Player Videolib