wise-api
TypeScript icon, indicating that this package has built-in type declarations

1.1.14 • Public • Published

WiseAPI

npm version NPM npm npm bundle size

Biblioteca para o serviço de vídeoconferência segura para saúde, essa aplicação permite colocar em um sistema web já existente vídeo chamadas além de um controle de acesso complexo, onde você é possível delimitar ações dos usuários dependendo do seu papel. Para mais informações clique aqui.

Sumário

Features

  • Controle de organizações e unidades organizacionais
  • Controle de usuários
  • Funcionalidades dentro da conferências configuráveis
  • Customização de interface configurável
  • Gravação da videoconferência client-side e server-side
  • Storage de vídeos gravados
  • Criação de um manifesto de todas as ações ocorridas dentro da conferência
  • Manifesto salvo em blockchain
  • Integração com serviços de blockchain privadas
  • Armazenamento de arquivos

Instalação

Usando npm:

$ npm install wise-api

Usando yarn:

$ yarn add wise-api

Client API

A client API deve ser definida da seguinte forma para ser utilizada:

import WiseApi from 'wise-api';
const wiseapi = WiseApi(options);

Options:

  • apiKey: [opcional] chave da organização
  • baseUrl: [opcional] url do servidor da API
  • domain: [opcional] servidor de videoconferência
  • login: [opcional] string de identificação para login no sistema
  • password: [opcional] senha para login no sistema
  • token: [opcional] token de acesso

Após o setup você estará disponível para accessar as classes que serão descritas abaixo.

Requisitar videoconferência

Método responsável por criar uma sessão de

import WiseApi from 'wise-api';
const wiseapi = WiseApi({ apiKey: 'APIKEY' });

const data = {
  profile: 'DEFAULT',
  skin: 'DEFAULT',
  org: 'org',
  orgUnit: 'orgUnit',
  joinPolicy: 'PUBLIC',
  listPolicy: 'PUBLIC'
}

const session = wiseapi.session.create(data).then((response) => {
  console.log(response);
});

data:

  • org: Identificador da organização
  • orgUnit: Identificador da unidade organizacional
  • profile: Identificador do profile
  • skin: Identificador do skin da conferência
  • joinPolicy: [opcional] Para acessar (entrar), as seguintes políticas podem ser usadas:
    • ORG: indica que a sessão somente pode acessada por algum usuário da organização
    • ORGUNIT: somente pode acessada por usuários das unidades organizacionais listadas no atributo allowJoinOu
    • RESTRICT: indica que a sessão somente pode ser acessada por usuários previamente cadastrados
    • PUBLIC: Indica que o acesso à sessão não requer um usuário credenciado
    • SESSIONPWD: entra apenas informando a password da sessão
  • listPolicy: [opcional] Define como a sessão é enxergada por usuários cadastrados ou públicos na internet.
    • PUBLIC: a sessão pode aparecer em uma lista pública
    • SHARED: a sessão pode aparecer em uma lista apenas para usuários da organização
    • PRIVATE: a sessão nunca aparece em listas, exceto com autenticação de usuários e permissão verificada para listar
  • password: [opcional] senha de acesso da sessão
  • allowJoinOu: [opcional] array de unidades organizacionais

Retorno:

{
  id: 1
}

Iniciar videoconferência

Método para iniciar a conferência em uma div do sistema que está sendo utilizado, esse método não está disponível se for executado utilizando node.

import WiseApi from 'wise-api';
const wiseapi = WiseApi({ apiKey: 'APIKEY' });

const sessionName = 'skjdhfsjhbfw3fs';

const options = {
  parentNode: document.getElementById('meet'), 
  userInfo: { 
    displayName: 'Leoberto' 
  }
}

wiseapi.session.startConference(sessionName, options).then((response) => {
  console.log(response);
});

options

  • parentNode: div html onde deverá ser colocado a videoconferência
  • width: [opcional] tamanho em pixels da largura da tela de vídeo conferência
  • height: [opcional] tamanho em pixels da altura tela de vídeo conferência
  • startWithAudioMuted [opcional] booleano para iniciar com audio habilitado ou desabilitado
  • startWithVideoMuted [opcional] booleano para iniciar com video habilitado ou desabilitado
  • shareLink [opcional] link que será inserido no botão de compartilhar
  • buttons [opcional] array de botões que serão exibidos na tela
  • userInfo: [opcional] objeto com informações do usuário
    • displayName: [opcional] nome do usuário que será mostrado na tela
  • onLoad [opcional] callback que será executado na abertura da sessão
  • onClose [opcional] callback que será executado no encerramento da sessão
  • onParticipantLeft [opcional] callback para quando um participante sai da conferência
  • onModeratorReject [opcional] callback para quando o moderador rejeitar entrada

Encerrar videoconferência

Método para encerrrar uma conferência, esse método não está disponível se for executado utilizando node e só terá efeito quando a conferência já estiver aberta.

import WiseApi from 'wise-api';
const wiseapi = WiseApi({ apiKey: 'APIKEY' });

wiseapi.session.stopConference().then(() => {
  console.log('ok');
});

Listar videoconferências

Método responsável por recuperar todas as sessões criadas.

import WiseApi from 'wise-api';
const wiseapi = WiseApi({ apiKey: 'APIKEY' });

wiseapi.session.list().then((sessions) => {
  console.log(sessions);
});

Retorno:

metadata: {
  offset: 0,
  items: 1,
  total: 1
},
records: [{
  id: 5,
  profile: 1,
  skin: 1,
  org: 9,
  orgUnit: 9,
  service: 15,
  status: "CLOSED",
  firstJoin: "2022-05-31T19:36:16.000Z",
  started: "2022-05-31T19:37:14.000Z",
  finished: "2022-05-31T19:37:55.369Z",
  short: "iwh6m725yn8t9ukz",
  joinPolicy: "PUBLIC",
  listPolicy: "PUBLIC",
  allowJoinOu: null,
  enabled: true,
  created: "2022-05-31T19:17:28.382Z",
  updated: "2022-05-31T19:37:55.374Z"
}]

Recuperar videoconferência

Método responsável por recuperar informações de uma única sessão.

const wiseapi = new WiseApi({ apiKey: 'APIKEY' });
const session = 'sks3lf6lhxqt2a1j';

wiseapi.session.get(sessionId).then((session) => {
  console.log(session);
});

Retorno:

{
  id: 2,
  profile: 1,
  skin: 1,
  org: 1,
  orgUnit: 1,
  status: 'READY',
  firstJoin: null,
  started: null,
  finished: null,
  short: 'sks3lf6lhxqt2a1j',
  joinPolicy: 'PUBLIC',
  listPolicy: 'PUBLIC',
  allowJoinOu: null
}

Deletar videoconferência

Método responsável por deletar uma sessão.

const wiseapi = new WiseApi({ apiKey: 'APIKEY' });
const session = 'ksdh8127hdi872';

wiseapi.session.delete(session);

Package Sidebar

Install

npm i wise-api

Weekly Downloads

56

Version

1.1.14

License

ISC

Unpacked Size

164 kB

Total Files

266

Last publish

Collaborators

  • leossoaress
  • matheusmelo