Adicionar Agent

Rafael Alves Lopes 2026-05-27 16:40:06 -03:00
parent 5cfe2c7576
commit 619fb949a7

57
Agent.md Normal file

@ -0,0 +1,57 @@
# Modulo Agente
O backend do agente esta dentro de `src/modules/admin`, dividido em presenca e notas.
## Presenca do agente
Arquivos:
- `agent-presence.controller.ts`
- `agent-presence.service.ts`
Prefixo:
```txt
/agent/presence
```
### Endpoints
| Metodo | Rota | Descricao |
|---|---|---|
| GET | `/agent/presence` | Lista presenca dos agentes |
| GET | `/agent/presence/me?userId=` | Retorna presenca de um agente |
| POST | `/agent/presence/pause` | Marca agente como pausado |
| POST | `/agent/presence/resume` | Retoma agente |
| POST | `/agent/presence/offline` | Marca agente como offline |
### Regras
- Pausar move atendimentos do agente para fila e cria reserva temporaria.
- Retomar tenta recuperar atendimentos reservados ainda livres.
- Offline remove reserva e evita atribuicao direta.
## Notas do agente
Arquivos:
- `agent-notes.controller.ts`
- `agent-notes.service.ts`
Prefixo:
```txt
/agent/notes
```
### Endpoints
| Metodo | Rota | Descricao |
|---|---|---|
| GET | `/agent/notes?userId=` | Lista notas do agente |
| POST | `/agent/notes` | Cria nota |
| DELETE | `/agent/notes/:id?userId=` | Remove nota |
## Code review
Hoje `userId` vem por query/body. Em producao, deve sair do JWT validado no backend.