Adicionar Fluxos End-to-End
parent
94bbff17a7
commit
198f8bb3d8
96
Fluxos End-to-End.-.md
Normal file
96
Fluxos End-to-End.-.md
Normal file
@ -0,0 +1,96 @@
|
||||
# Fluxos End-to-End
|
||||
|
||||
## Login LDAP/AD
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant U as Usuario
|
||||
participant F as Frontend
|
||||
participant B as Backend
|
||||
participant AD as LDAP/AD
|
||||
participant DB as PostgreSQL
|
||||
|
||||
U->>F: informa usuario/senha
|
||||
F->>B: POST /auth/login
|
||||
B->>AD: bind LDAP
|
||||
AD-->>B: autenticado
|
||||
B->>DB: upsert usuario/provedor
|
||||
B->>DB: consulta perfis/areas
|
||||
B-->>F: token + user
|
||||
F->>F: salva sessao
|
||||
F->>F: redireciona por perfil
|
||||
```
|
||||
|
||||
## Login Microsoft OAuth
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant U as Usuario
|
||||
participant F as Frontend
|
||||
participant B as Backend
|
||||
participant MS as Microsoft
|
||||
participant DB as PostgreSQL
|
||||
|
||||
U->>F: clica login Microsoft
|
||||
F->>B: GET /auth/oauth/microsoft/start
|
||||
B->>MS: redireciona com state
|
||||
MS->>U: autentica
|
||||
MS->>B: callback code + state
|
||||
B->>MS: troca code por token
|
||||
B->>MS: Graph /me
|
||||
B->>DB: sincroniza usuario/acesso
|
||||
B-->>F: redirect com token/user
|
||||
```
|
||||
|
||||
## Atendimento WhatsApp receptivo
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant C as Cliente WhatsApp
|
||||
participant W as WhatsApp Web
|
||||
participant B as Backend
|
||||
participant DB as PostgreSQL
|
||||
participant F as Frontend
|
||||
participant A as Agente
|
||||
|
||||
C->>W: envia mensagem
|
||||
W->>B: evento message
|
||||
B->>DB: consulta/cria atribuicao
|
||||
B->>B: Agente Virtual classifica
|
||||
B->>DB: queued por area
|
||||
B->>F: socket atualiza fila
|
||||
A->>F: assume atendimento
|
||||
F->>B: POST /whatsapp/assign
|
||||
B->>DB: status assigned
|
||||
A->>F: responde
|
||||
F->>B: POST /whatsapp/send
|
||||
B->>W: envia mensagem
|
||||
```
|
||||
|
||||
## Abertura ativa
|
||||
|
||||
1. Agente/admin/supervisor abre `Abrir Atendimento`.
|
||||
2. Seleciona contato ou digita numero.
|
||||
3. Seleciona template aprovado.
|
||||
4. Frontend chama `POST /whatsapp/start-attendance`.
|
||||
5. Backend envia template.
|
||||
6. Atendimento fica bloqueado para mensagem livre ate o cliente responder.
|
||||
7. Quando cliente responde, `awaiting_customer_reply` e removido.
|
||||
|
||||
## Transferencia
|
||||
|
||||
1. Agente assume atendimento.
|
||||
2. Seleciona area ou atendente.
|
||||
3. Informa observacao.
|
||||
4. Backend grava nova area/usuario e `transfer_note`.
|
||||
5. Proximo atendente ve a observacao.
|
||||
6. Observacao e limpa depois que atendimento segue.
|
||||
|
||||
## Pausa do agente
|
||||
|
||||
1. Agente clica pausar.
|
||||
2. Frontend chama `/agent/presence/pause`.
|
||||
3. Backend marca agente como `paused`.
|
||||
4. Atendimentos ativos voltam para fila com reserva temporaria.
|
||||
5. Ao retomar, backend tenta recuperar atendimentos ainda livres.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user