Notificação

6 funções do TermoSupport para notificação.

// npm install termo_core --save-exact
import * as support from "termo_core/support";
// ou: import { support } from "termo_core";
FunçãoRotaO que faz
buscar_paginador_notificacaoGET /notificacaoCaixa de entrada paginada
marcar_todas_notificacaoPATCH /notificacaoMarca todas as notificações como lidas
buscar_pelo_filtro_notificacaoGET /notificacao/filtroBusca notificações por filtro
buscar_pelo_id_notificacaoGET /notificacao/{id}Busca uma notificação pelo id
atualizar_pelo_id_notificacaoPATCH /notificacao/{id}Marca uma notificação como lida ou não lida
deletar_pelo_id_notificacaoDELETE /notificacao/{id}Exclui uma notificação pelo id

buscar_paginador_notificacao

GET/notificacao Exige credencial

Caixa de entrada paginada

Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Lista as notificações da pessoa, da mais nova para a mais antiga, sempre 50 por página: tamanho é ignorado. lida filtra; nao_lidas traz o total ainda não lido (o número do sino), com qualquer filtro.

function buscar_paginador_notificacao(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarPaginadorNotificacao = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.PaginaNotificacao>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_paginador_notificacao } from "termo_core/support";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_paginador_notificacao(credencial_de_acesso, { pagina: 1 });

Argumentos

Nome

Tipo

Retorno: Promise<tipos.PaginaNotificacao> · Rust: Result<tipos::PaginaNotificacao, ErroAoChamarServico> · veja PaginaNotificacao.

marcar_todas_notificacao

PATCH/notificacao Exige credencial

Marca todas as notificações como lidas

Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Marca de uma vez todas as notificações da pessoa como lidas (ou como não lidas, com lida: false). Devolve quantas mudaram em alteradas.

function marcar_todas_notificacao(
  credencial_de_acesso: CredencialDeAcesso,
  corpo_da_requisicao: tipos.NotificacaoMarcarTodas,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.NotificacoesMarcadas>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { marcar_todas_notificacao } from "termo_core/support";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await marcar_todas_notificacao(credencial_de_acesso, corpo_da_requisicao);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.NotificacoesMarcadas> · Rust: Result<tipos::NotificacoesMarcadas, ErroAoChamarServico> · veja NotificacoesMarcadas.

buscar_pelo_filtro_notificacao

GET/notificacao/filtro Exige credencial

Busca notificações por filtro

Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Devolve até 500 notificações da pessoa, da mais nova para a mais antiga. lida filtra lidas ou não lidas e tipo é ATRIBUICAO, COMENTARIO, MENCAO, STATUS, PRAZO ou TICKET.

function buscar_pelo_filtro_notificacao(
  credencial_de_acesso: CredencialDeAcesso,
  parametros: ParametrosDeBuscarPeloFiltroNotificacao = {},
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<Array<tipos.Notificacao>>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_filtro_notificacao } from "termo_core/support";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_filtro_notificacao(credencial_de_acesso, { lida: true });

Argumentos

Nome

Tipo

Retorno: Promise<Array<tipos.Notificacao>> · Rust: Result<Vec<tipos::Notificacao>, ErroAoChamarServico>

buscar_pelo_id_notificacao

GET/notificacao/{id} Exige credencial

Busca uma notificação pelo id

Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Só encontra as notificações da própria pessoa.

function buscar_pelo_id_notificacao(
  credencial_de_acesso: CredencialDeAcesso,
  id: string,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Notificacao>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { buscar_pelo_id_notificacao } from "termo_core/support";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await buscar_pelo_id_notificacao(credencial_de_acesso, id);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.Notificacao> · Rust: Result<tipos::Notificacao, ErroAoChamarServico> · veja Notificacao.

atualizar_pelo_id_notificacao

PATCH/notificacao/{id} Exige credencial

Marca uma notificação como lida ou não lida

Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Muda lida de uma notificação da própria pessoa.

function atualizar_pelo_id_notificacao(
  credencial_de_acesso: CredencialDeAcesso,
  id: string,
  corpo_da_requisicao: tipos.NotificacaoAtualizar,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<tipos.Notificacao>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { atualizar_pelo_id_notificacao } from "termo_core/support";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
const resposta = await atualizar_pelo_id_notificacao(credencial_de_acesso, id, corpo_da_requisicao);

Argumentos

Nome

Tipo

Retorno: Promise<tipos.Notificacao> · Rust: Result<tipos::Notificacao, ErroAoChamarServico> · veja Notificacao.

deletar_pelo_id_notificacao

DELETE/notificacao/{id} Exige credencial

Exclui uma notificação pelo id

Livre para qualquer usuário autenticado: vale sempre para o colaborador de quem está logado. Tira a notificação da caixa de entrada (exclusão lógica).

function deletar_pelo_id_notificacao(
  credencial_de_acesso: CredencialDeAcesso,
  id: string,
  opcoes_da_chamada?: OpcoesDaChamada,
): Promise<void>
Exemplo
import { CredencialDeAcesso } from "termo_core";
import { deletar_pelo_id_notificacao } from "termo_core/support";

const credencial_de_acesso = CredencialDeAcesso.token_do_usuario_logado(token_do_usuario);
await deletar_pelo_id_notificacao(credencial_de_acesso, id);

Argumentos

Nome

Tipo

Retorno: Promise<void> · Rust: Result<(), ErroAoChamarServico> · sem corpo na resposta.

Tipos

Tipos usados pelas funções desta página. O nome é o mesmo nos dois pacotes.

Notificacao

import type { Notificacao } from "termo_core/support";

export interface Notificacao {
  criado_em: string;
  descricao?: string | null;
  id: string;
  lida: boolean;
  link: string;
  tarefa_id?: string | null;
  ticket_id?: string | null;
  tipo: string;
  titulo: string;
}

NotificacaoAtualizar

import type { NotificacaoAtualizar } from "termo_core/support";

export interface NotificacaoAtualizar {
  lida: boolean;
}

NotificacaoMarcarTodas

import type { NotificacaoMarcarTodas } from "termo_core/support";

export interface NotificacaoMarcarTodas {
  lida?: boolean;
}

NotificacoesMarcadas

import type { NotificacoesMarcadas } from "termo_core/support";

export interface NotificacoesMarcadas {
  alteradas: number;
}

PaginaNotificacao

import type { PaginaNotificacao } from "termo_core/support";

export interface PaginaNotificacao {
  itens: Array<PaginaNotificacaoItensItem>;
  /**
   * Quantas notificações da pessoa ainda não foram lidas (o número do sino).
   */
  nao_lidas: number;
  pagina: number;
  tamanho: number;
  total: number;
}

PaginaNotificacaoItensItem

import type { PaginaNotificacaoItensItem } from "termo_core/support";

export interface PaginaNotificacaoItensItem {
  criado_em: string;
  descricao?: string | null;
  id: string;
  lida: boolean;
  link: string;
  tarefa_id?: string | null;
  ticket_id?: string | null;
  tipo: string;
  titulo: string;
}

Nesta página