Caution
Esta aplicação de Check-in utiliza um sistema de atualizações em tempo real via Server-Sent Events (SSE) para notificar assim que participante realizar o checkin no evento/aula tendo seu qrcode escaneado.
- Atualizações em tempo real: Utiliza SSE para transmitir eventos ao frontend sempre que um QR Code é escaneado.
- QR Code dinâmico: Cada QR Code é gerado com base em uma URL que contém o ID do usuário como query parameter, permitindo identificar o usuário ao escanear.
- Gestão de check-ins: Atualiza as informações de chegada do usuário no sistema após o escaneamento do QR Code.
Backend (Fastify)
:
- Fastify
- TypeScript
- Node.Js
- Server-Sent Events (SSE): Para transmitir dados em tempo real.
Frontend (Angular)
:
- Angular.
- TypeScript.
- PrimeNG.
- SSE Client: Comunicação em tempo real com o backend.
Backend cria uma URL que contém o ID do usuário como query parameter (https://example.com/checkin?id=<user_id>).
Um QR Code é gerado com base nessa URL e enviado para o frontend.
O QR Code é escaneado por um scanner ou câmera.
A URL com o ID do usuário é enviada para o backend.
O backend atualiza o status de chegada do usuário no banco de dados.
Uma notificação em tempo real é enviada via SSE para o frontend.
A interface do Angular recebe a notificação e exibe a atualização em tempo real.