Socket
Socket
Sign inDemoInstall

v4h-client-api

Package Overview
Dependencies
71
Maintainers
3
Versions
14
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    v4h-client-api

Client-api that consumes the Session-manager api endpoints and serves them appropriately to the final user.


Version published
Weekly downloads
19
increased by137.5%
Maintainers
3
Install size
4.34 MB
Created
Weekly downloads
 

Readme

Source

V4H Client API

npm version NPM npm npm bundle size

Biblioteca para o serviço de vídeoconferência segura para saúde (V4H - Video for Health), 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 vídeo conferência do 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
  • Envio de arquivos referentes a uma videoconferência

Instalação

Usando npm:

$ npm install v4h-client-api

Usando yarn:

$ yarn add v4h-client-api

Usando jsDelivr CDN:

<script src="https://cdn.jsdelivr.net/gh/leossoaress/v4h-client-api@0.0.1/V4HApi.min.js"></script>

Client API

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

const v4h = new V4HApi();
v4h.setup(options);

Options:

  • login: [opcional] string de identificação para login no sistema
  • password: [opcional] senha para login no sistema

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

Session

Classe com os métodos das sessões de conferência.

create(data)

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

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const data = {
  profileId: 1,
  skinId: 1,
  orgUnit: 1,
  joinPolicy: 'PUBLIC',
  listPolicy: 'PUBLIC'
}

cosnt session = v4h.session.create(data).then((response) => {
  console.log(response);
});

data:

  • orgUnit: Identificador da unidade organizacional
  • profileId: Identificador do profile
  • skinId: 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
}
getAll()

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

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

v4h.session.getAll().then((sessions) => {
  console.log(sessions);
});

Retorno:

[{
  id: 1,
  orgId: 1,
  ouId: 1,
  profileId: 1,
  skinId: 1,
  finished: null,
  firstJoin: null,
  started: null,
  status: "READY"
}]
get(sessionId)

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

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const sessionId = 1;

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

Retorno:

{
  id: 1,
  orgId: 1,
  ouId: 1,
  profileId: 1,
  skinId: 1,
  finished: null,
  firstJoin: null,
  started: null,
  status: "READY"
}
update(sessionId, data)

Método responsável por atualizar informações de uma sessão pelo identificador único da sessão.

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const sessionId = 1;

const data = {
  alias: "organizacao de teste",
};

v4h.session.update(sessionId, data).then((response) => {
  console.log(response);
});

data:

  • orgUnit: [opcional] Identificador da unidade organizacional
  • profileId: [opcional] Identificador do profile
  • skinId: [opcional] 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:

true or false
delete(sessionId)

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

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const sessionId = 1;

v4h.session.delete(sessionId).then((response) => {
  console.log(response);
});

Retorno:

true or false
startConference(sessionId, options)

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.

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const sessionId = 1;

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

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

options

  • parentNode: div html onde deverá ser colocado o v4h
  • 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
  • userInfo: [opcional] objeto com informações do usuário
    • displayName: [opcional] nome do usuário que será mostrado na tela
stopConference()

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.

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const sessionId = 1;

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

Organização

Sessões de conferência são criadas por usuários de uma organização. Esta entidade é a base que permite especialização futura para pessoa física ou pessoa jurídica.

create(data)

Método responsável por criar uma organização

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const data = {
  shortname: "organização",
  planId: 1,
  fullname: "organizacao LTDA",
  alias: "organizacao de teste",
  admin: 1,
  type: "J",
  reg: "12345678912"
};

cosnt org = v4h.org.create(data).then((response) => {
  console.log(org);
});

data:

  • shortname: Nome curto – usado para ocasiões com pouco espaço
  • planId: O plano ao qual a organização está vinculada
  • fullName: Nome completo ou razão social
  • alias: [opcional] Nome de fantasia
  • admin: id do usuário administrador da organização
  • type: Pessoa física ou jurídica
  • reg: Identificador do registro (CNPJ ou CPF)
  • logo: [opcional] URL externa para logo

Retorno:

{
  id: 1
}
getAll()

Método responsável por recuperar todas as organizações criadas

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

v4h.org.getAll().then((org) => {
  console.log(org);
});

Retorno:

[{
  id: 1,
  shortname: "organização",
  planId: 1,
  fullname: "organizacao LTDA",
  alias: "organizacao de teste",
  admin: 1,
  type: "J",
  reg: "12345678912",
  logo: null
}]
get(orgId)

Método responsável por recuperar informações de uma única organiação pela identificador único da organização.

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const orgId = 1;

v4h.org.get(orgId).then((org) => {
  console.log(org);
});

Retorno:

{
  id: 1,
  shortname: "organização",
  planId: 1,
  fullname: "organizacao LTDA",
  alias: "organizacao de teste",
  admin: 1,
  type: "J",
  reg: "12345678912",
  logo: null
}
update(orgId, data)

Método responsável por atualizar informações de uma organiação pelo identificador único da organização.

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const orgId = 1;

const data = {
  alias: "organizacao de teste",
};

v4h.org.update(orgId, data).then((response) => {
  console.log(response);
});

data:

  • shortname: [opcional] Nome curto – usado para ocasiões com pouco espaço
  • planId: [opcional] O plano ao qual a organização está vinculada
  • fullName: [opcional] Nome completo ou razão social
  • alias: [opcional] Nome de fantasia
  • admin: [opcional] id do usuário administrador da organização
  • type: [opcional] Pessoa física ou jurídica
  • reg: [opcional] Identificador do registro (CNPJ ou CPF)
  • logo: [opcional] URL externa para logo

Retorno:

true or false
delete(orgId)

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

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const orgId = 1;

v4h.org.delete(orgId).then((response) => {
  console.log(response);
});

Retorno:

true or false
getAllSessions(orgId)

Método responsável por recuperar todas as sessões de uma organização

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

v4h.org.getAllSessions().then((sessions) => {
  console.log(sessions);
});

retorno:

[{
  id: 1,
  orgId: 1,
  ouId: 1,
  profileId: 1,
  skinId: 1,
  finished: null,
  firstJoin: null,
  started: null,
  status: "READY"
}]

Unidade organizacional

Organizações maiores podem ter unidades organizacionais (departamentos) ou centros de custo ou projetos que usam o serviço.

create(data)

Método responsável por criar uma unidade organização

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const data = {
  name: "unidade_organização",
  orgId: 1,
  descr: "unidade organização de teste",
  admin: 1,
};

cosnt org = v4h.orgUnit.create(data).then((response) => {
  console.log(orgUnit);
});

data:

  • name: Nome curto da unidade organizacional
  • orgId: Identificador único da organização a qual essa orgUnit pertencerá
  • descr: [opcional] Descrição da unidade organizacional
  • admin: id do usuário administrador da unidade organização
  • logoUrl: [opcional] URL externa para logo
  • parent: [opcional] Identificador de outra unidade organizacional na qual essa será submissa.

Retorno:

{
  id: 1
}
getAll()

Método responsável por recuperar todas as unidades organizações

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

v4h.orgUnit.getAll().then((orgUnits) => {
  console.log(orgUnits);
});

Retorno:

[{
  id: 1,
  name: "unidade_organização",
  orgId: 1,
  descr: "unidade organização de teste",
  admin: 1,
  parent: null,
  logoUrl: null
}]
get(ouId)

Método responsável por recuperar informações de uma única unidade organizacional pelo seu identificador único.

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const ouId = 1;

v4h.orgUnit.get(ouId).then((orgUnit) => {
  console.log(orgUnit);
});

Retorno:

{
  id: 1,
  name: "unidade_organização",
  orgId: 1,
  descr: "unidade organização de teste",
  admin: 1,
  parent: null,
  logoUrl: null
}
update(ouId, data)

Método responsável por atualizar informações de uma unidade organizacional.

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const ouId = 1;

const data = {
  descr: "organizacao de teste",
};

v4h.org.update(ouId, data).then((response) => {
  console.log(response);
});

data:

  • name: [opcional] Nome curto da unidade organizacional
  • descr: [opcional] Descrição da unidade organizacional
  • admin: [opcional] id do usuário administrador da unidade organização
  • logoUrl: [opcional] URL externa para logo
  • parent: [opcional] Identificador de outra unidade organizacional na qual essa será submissa.

Retorno:

true or false
delete(ouId)

Método responsável por deletar uma unidade organizacional.

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

const ouId = 1;

v4h.orgUnit.delete(ouId).then((response) => {
  console.log(response);
});

Retorno:

true or false
getAllSessions(orgId)

Método responsável por recuperar todas as sessões de uma organização

const v4h = new V4HApi();
v4h.setup({ login: 'usuario', senha: 'senha' });

v4h.org.getAllSessions().then((sessions) => {
  console.log(sessions);
});

retorno:

[{
  id: 1,
  orgId: 1,
  ouId: 1,
  profileId: 1,
  skinId: 1,
  finished: null,
  firstJoin: null,
  started: null,
  status: "READY"
}]

Keywords

FAQs

Last updated on 11 Jan 2021

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc