| (13 revisões intermediárias por 3 usuários não estão sendo mostradas) | |||
| Linha 11: | Linha 11: | ||
== Requisitos Funcionais == | == Requisitos Funcionais == | ||
<br> | |||
• [RF001] Consultar data do último SIM Swap: A API permite que o consumidor consulte a data e hora do último evento de SIM Swap associado a uma linha móvel. | |||
<br> | |||
• [RF002] Verificar se houve SIM Swap em um período passado: A API permite verificar se ocorreu SIM Swap dentro de um intervalo definido. | |||
<br> | |||
• [RF003] Validar período máximo de verificação: O campo maxAge aceita valores entre 1 e 2400 horas e possui valor padrão de 240 horas quando não informado. | |||
<br> | |||
• [RF004] Identificar número da linha via token ou payload: A API identifica o número da linha através do campo phoneNumber obrigatório no corpo da requisição. | |||
<br> | |||
• [RF005] Retornar erros padronizados CAMARA: O sistema mapeia erros para Status Codes HTTP padrão e retorna uma estrutura JSON de erro contendo status, code e message. | |||
<br> | |||
== Requisitos Não Funcionais == | |||
<br> | |||
• [RNF001] Segurança e Autenticação: A API é protegida através de validação de headers de autenticação. Toda requisição deve conter os headers client_id e access_token. | |||
<br> | |||
• [RNF002] Padronização de formatos: Os números de telefone são aceitos e normalizados pelo sistema, removendo símbolos especiais como '+', de acordo com o padrão E.164. | |||
<br> | <br> | ||
• [RNF003] Observabilidade: A API registra todas as requisições e respostas através do componente LogGenerate. Cada requisição e resposta é logada com informações da operação (retrieve-date ou check), dados da requisição e dados da resposta. | |||
<br> | <br> | ||
• [RNF004] Extensibilidade: A estrutura de tratamento de erros é extensível, permitindo adicionar novos códigos de erro através do mapeamento de exceções personalizadas. | |||
<br> | <br> | ||
== Regras de Negócio == | |||
<br> | <br> | ||
• [RN001] Regra de identificação do número: A API requer obrigatoriamente o campo phoneNumber no corpo da requisição para identificar a linha móvel. | |||
<br> | <br> | ||
• [RN002] Limite regulatório de monitoramento: O campo maxAge na operação de check deve estar entre 1 e 2400 horas. | |||
<br> | |||
• [RN003] Tratamento de dados indisponíveis: Quando a data do SIM Swap não puder ser fornecida porque o número não existe ou não foi encontrado no banco de dados SPS, a API retorna erro 404 SIM_SWAP.UNKNOWN_PHONE_NUMBER em vez de retornar null. | |||
<br> | |||
• [RN004] – Definição de SIM Swap: São considerados SIM Swap eventos registrados na tabela do banco de dados SPS que indicam qualquer mudança na relação MSISDN <-> IMSI, incluindo trocas de SIM por perda ou dano, portabilidade numérica, multisim, nova ativação de SIM para um MSISDN previamente existente ou nova assinatura associada a um número reutilizado. | |||
<br> | |||
• [RN005] – Uso para prevenção a fraude: A API é destinada a ser utilizada para avaliação de risco em autenticação baseada em SMS, proteção contra Account Takeover (detectando trocas recentes de SIM) e validação de operações sensíveis como chamadas de call center e transações críticas. | |||
<br> | |||
• [RN006] – Serviço não aplicável: O serviço é aplicável a qualquer número de telefone que possua registros na tabela do banco de dados SPS. Se o número não possuir registros ou não existir no banco de dados, a API retorna erro 404 UNKNOWN_PHONE_NUMBER. | |||
<br> | |||
= Cronograma = | = Cronograma = | ||
| Linha 36: | Linha 70: | ||
!RF!!Descrição!! Início !! Tempo em dias !! Data Real entrega !! Maker !! % | !RF!!Descrição!! Início !! Tempo em dias !! Data Real entrega !! Maker !! % | ||
|- | |- | ||
|01|| | |01||Construção da API em JAVA QUARKUS para conexão entre o SPS e APIs Open Gw (Sensedia)||15/12/2025||10 dias||06/01/2026||Paula Nunes e Lucas Lacerda|| 100% | ||
|- | |- | ||
|02||Ajustes no código da API conforme orientação do Marcus Valério e Marcos Devoti||07/01/2026||3 dias||12/01/2026||Lucas Lacerda|| 100% | |||
|- | |||
|} | |} | ||
| Linha 59: | Linha 93: | ||
* 22/12/2025: | * 22/12/2025: | ||
** Mensagens entre Sensedia, Algar e Brain para retomada da configuração dos conectores | ** Mensagens entre Sensedia, Algar e Brain para retomada da configuração dos conectores | ||
** | ** Preencher RFs e cronograma neste link. | ||
<br> | |||
* 06/01/2025: | |||
** Reunião de demonstração da API de conexão JAVA QUARKUS para Marcus Valério e Marcos Devoti.. | |||
<br> | <br> | ||
| Linha 67: | Linha 105: | ||
* Paula Nunes | * Paula Nunes | ||
* Lucas Lacerda | * Lucas Lacerda | ||
* Marcus Brunelli | |||
Edição atual tal como às 14h42min de 19 de janeiro de 2026
- Link do caso de uso: Open Gateway
Escopo
Requisitos
Requisitos Funcionais
• [RF001] Consultar data do último SIM Swap: A API permite que o consumidor consulte a data e hora do último evento de SIM Swap associado a uma linha móvel.
• [RF002] Verificar se houve SIM Swap em um período passado: A API permite verificar se ocorreu SIM Swap dentro de um intervalo definido.
• [RF003] Validar período máximo de verificação: O campo maxAge aceita valores entre 1 e 2400 horas e possui valor padrão de 240 horas quando não informado.
• [RF004] Identificar número da linha via token ou payload: A API identifica o número da linha através do campo phoneNumber obrigatório no corpo da requisição.
• [RF005] Retornar erros padronizados CAMARA: O sistema mapeia erros para Status Codes HTTP padrão e retorna uma estrutura JSON de erro contendo status, code e message.
Requisitos Não Funcionais
• [RNF001] Segurança e Autenticação: A API é protegida através de validação de headers de autenticação. Toda requisição deve conter os headers client_id e access_token.
• [RNF002] Padronização de formatos: Os números de telefone são aceitos e normalizados pelo sistema, removendo símbolos especiais como '+', de acordo com o padrão E.164.
• [RNF003] Observabilidade: A API registra todas as requisições e respostas através do componente LogGenerate. Cada requisição e resposta é logada com informações da operação (retrieve-date ou check), dados da requisição e dados da resposta.
• [RNF004] Extensibilidade: A estrutura de tratamento de erros é extensível, permitindo adicionar novos códigos de erro através do mapeamento de exceções personalizadas.
Regras de Negócio
• [RN001] Regra de identificação do número: A API requer obrigatoriamente o campo phoneNumber no corpo da requisição para identificar a linha móvel.
• [RN002] Limite regulatório de monitoramento: O campo maxAge na operação de check deve estar entre 1 e 2400 horas.
• [RN003] Tratamento de dados indisponíveis: Quando a data do SIM Swap não puder ser fornecida porque o número não existe ou não foi encontrado no banco de dados SPS, a API retorna erro 404 SIM_SWAP.UNKNOWN_PHONE_NUMBER em vez de retornar null.
• [RN004] – Definição de SIM Swap: São considerados SIM Swap eventos registrados na tabela do banco de dados SPS que indicam qualquer mudança na relação MSISDN <-> IMSI, incluindo trocas de SIM por perda ou dano, portabilidade numérica, multisim, nova ativação de SIM para um MSISDN previamente existente ou nova assinatura associada a um número reutilizado.
• [RN005] – Uso para prevenção a fraude: A API é destinada a ser utilizada para avaliação de risco em autenticação baseada em SMS, proteção contra Account Takeover (detectando trocas recentes de SIM) e validação de operações sensíveis como chamadas de call center e transações críticas.
• [RN006] – Serviço não aplicável: O serviço é aplicável a qualquer número de telefone que possua registros na tabela do banco de dados SPS. Se o número não possuir registros ou não existir no banco de dados, a API retorna erro 404 UNKNOWN_PHONE_NUMBER.
Cronograma
| RF | Descrição | Início | Tempo em dias | Data Real entrega | Maker | % |
|---|---|---|---|---|---|---|
| 01 | Construção da API em JAVA QUARKUS para conexão entre o SPS e APIs Open Gw (Sensedia) | 15/12/2025 | 10 dias | 06/01/2026 | Paula Nunes e Lucas Lacerda | 100% |
| 02 | Ajustes no código da API conforme orientação do Marcus Valério e Marcos Devoti | 07/01/2026 | 3 dias | 12/01/2026 | Lucas Lacerda | 100% |
Diagramas
Projeto
Plano de Testes
Ambiente
Histórico
- 22/12/2025:
- Mensagens entre Sensedia, Algar e Brain para retomada da configuração dos conectores
- Preencher RFs e cronograma neste link.
- 06/01/2025:
- Reunião de demonstração da API de conexão JAVA QUARKUS para Marcus Valério e Marcos Devoti..
Equipe
- Paula Nunes
- Lucas Lacerda
- Marcus Brunelli