Connect 2026Credenciamento do evento

Equipe do evento

Guia de teste — FATEC Connect (para Mateus e Paulo)

Sistema de credenciamento do evento Connect: valida o telefone do aluno por código no WhatsApp e controla a entrada por QR Code na portaria. Este guia cobre o roteiro de homologação completo.

1. Como o sistema funciona

Fluxo do aluno: na chegada, o aluno lê o QR Code da escola dele (cartaz impresso). Abre a tela da escola, digita o nome, o autocomplete encontra a inscrição (vinda da planilha), ele confirma ou corrige o WhatsApp, recebe um código de 6 dígitos, digita o código e ganha o ingresso digital com QR pessoal. Na portaria, a equipe escaneia esse QR: verde = entra (telefone já validado).

Quem não está na base (público geral ou aluno fora da planilha) usa o botão "Não achei meu nome" ou o QR do público geral: cadastro rápido com nome + WhatsApp, mesmo processo de validação.

Dado garantido: todo participante presente tem telefone comprovadamente dele — o código só chega no número informado.

2. O envio agora é REAL

O sistema está em modo produção: o código de 6 dígitos chega de verdade no WhatsApp informado (remetente oficial da FATEC, com SMS como alternativa). Também já está carregada a base real de alunos importada da lista de inscrições.

Por isso, duas regras nos testes: use sempre o seu próprio celular (nunca o número de um aluno de verdade) e prefira o caminho "Não achei meu nome" para criar um cadastro seu de teste, em vez de mexer no cadastro de um aluno.

3. Roteiro de homologação

Senha da equipe (portaria e admin): a mesma do app de ensalamento. Todos os módulos estão reunidos em /equipe.

Teste A — fluxo do aluno com o SEU celular: abra o QR do público geral (/q/publico) ou de uma escola, toque em "Não achei meu nome" e cadastre você mesmo com o seu WhatsApp. O código chega no seu aparelho; digite (ou use o botão "Colar código copiado") e confira se o ingresso com QR abre. Terminou? Dá pra apagar o seu cadastro de teste na aba Participantes do admin (botão Excluir).

Teste B — troca de número: repita com outro aluno e clique em "Trocar número" antes de enviar; confira no admin que o telefone mudou.

Teste C — cadastro na hora: no fluxo de qualquer escola, use "Não achei meu nome" e cadastre alguém novo; confira que aparece como origem "Na hora".

Teste D — portaria: abra /portaria em outro aparelho (ou notebook com webcam), ligue a câmera e escaneie o QR do ingresso gerado. Primeiro bip = verde; segundo bip do mesmo QR = "entrada já registrada". Teste também a busca por nome e o "Liberar mesmo assim" para alguém sem validação.

Teste E — importação: na aba Importar planilha, cole um CSV pequeno no formato do exemplo e confira os contadores. Reimporte o mesmo CSV e confira que ele pula os duplicados.

Teste F — export: baixe o CSV completo na Visão geral e abra no Excel.

4. Planilha oficial (chega 1º/09)

Formato esperado do CSV: colunas nome;telefone;email;cidade;escola — a coluna escola cria as escolas automaticamente; se a planilha for separada por escola, importe lote a lote escolhendo a escola no seletor. Telefones aceitam qualquer formatação (com/sem DDD 55, parênteses etc.). Depois de importar, imprimir os cartazes de QR de cada escola na aba Escolas e QRs.

5. Ponto da equipe do evento (área separada dos alunos)

Substitui a folha de papel "Controle de entrada e saída de colaboradores" nos dias do evento. A hora é sempre a do servidor no momento do registro — não dá pra anotar hora errada.

Como funciona: em /ponto/painel (senha própria do ponto, restrita à Lara/RH, diferente da senha geral da equipe), cadastre os colaboradores que vão trabalhar no dia; em /ponto/crachas, imprima os crachás com QR de cada um. Na chegada e na saída, o colaborador apresenta o crachá no leitor de /ponto (celular ou notebook com câmera, operado por quem estiver na entrada) — o sistema alterna entrada/saída sozinho. Sem o crachá, dá pra registrar manualmente pelo nome na mesma tela. O painel mostra a folha do dia (manhã/tarde/noite, entrada/saída, total de horas) e baixa em CSV.

Teste G — ponto: cadastre um colaborador de teste no painel, abra os crachás e escaneie o QR dele em /ponto (primeiro bip = entrada; bip de novo após 1 minuto = saída). Confira no painel se as horas apareceram na coluna certa e baixe o CSV.

6. Arquitetura e segurança (resumo técnico)

Next.js 15 na Vercel + Supabase (Postgres) com RLS fechado — todo acesso a dados passa pelo servidor do app (service role); nenhuma chave exposta no navegador. O autocomplete público nunca devolve telefone/e-mail completos (só máscara com os 4 últimos dígitos). Portaria e admin exigem senha (cookie assinado HMAC, 12h). Código de verificação: 6 dígitos, expira em 10 minutos, máximo 5 tentativas. O QR do ingresso é um token aleatório (UUID) — não contém dado pessoal. Fonte do código: pasta fatec-connect no repositório do Lucas.