Smart Access Control v3.0

Controle
de Acesso
Inteligente

Substitua sistemas legados Windows-only por uma plataforma moderna, cross-platform, com suporte nativo a controladores Axis e ZKTeco.

89+
Endpoints de API
18
Telas no painel web
21
Tabelas no banco
4
Fases completas
Compatível com
Axis Communications
ZKTeco
PostgreSQL 16
.NET 8
React 18
SignalR
WebRTC
Recursos

Tudo que você precisa

Quatro fases de desenvolvimento completas — da decisão de acesso até CCTV ao vivo com áudio bidirecional.

🔐
Motor de Decisão de Acesso

7 etapas: credencial válida, expiração, usuário ativo, porta existe, regra de acesso, agenda e anti-passback. Resposta em milissegundos.

📡
Eventos em Tempo Real

SignalR transmite cada evento para todos os navegadores instantaneamente. Campanhas de portão aparecem como tela cheia em segundos.

📹
CCTV + Intercom WebRTC

Streams MJPEG via proxy seguro. Intercom Axis com áudio bidirecional via WebRTC — sem expor credenciais ao navegador.

🔄
Anti-Passback

Rastreia direção Entry/Exit por usuário por porta. Viola a regra → acesso negado automaticamente. Estado obsoleto após 8h ignorado.

🔒
Segurança Robusta

AES-256-GCM para senhas de controladores, BCrypt para PINs, JWT com refresh automático, lockout após 5 tentativas, rate limiting.

📱
App Mobile

React Native para iOS e Android. Controle de portas, notificações push de campainha, intercom com vídeo e histórico de eventos.

✉️
Notificações por E-mail

SMTP configurável. Alertas de campainha, acesso negado, porta forçada e controlador offline com templates HTML profissionais.

📊
Exportação PDF/Excel

Relatórios de eventos e usuários em CSV ou HTML-to-PDF. Sem dependências de servidor — o browser imprime direto para PDF.

🧑‍💼
Gestão de Visitantes

PIN temporário gerado criptograficamente, exibido uma única vez. Badge imprimível com QR Code e validade configurável.

Arquitetura

Três processos
independentes

API stateless, Server de hardware isolado, frontend desacoplado. Cada componente pode rodar em máquinas separadas.

Chrome
Safari
iOS App
Android App
PortalSAC.API — :5000
REST • SignalR Hub • JWT Auth
PostgreSQL 16
21 tabelas · Pool 32 conn
PortalSAC.Server
ZkTecoWorker · AxisTcpListener · Heartbeat
Controladores Físicos
Axis (VAPIX / TCP 9000) · ZKTeco (TCP 4370)
Desenvolvimento

4 fases completas

01
Fase 1 — Core
Motor de Controle de Acesso
  • Motor de decisão com 7 etapas encadeadas
  • Sincronização de usuários com Axis e ZKTeco
  • Parser de eventos VAPIX JSON, ONVIF XML e texto puro
  • Regras de acesso, grupos, agendas e credenciais
  • Gestão de visitantes com check-in/check-out
02
Fase 2 — Segurança
Hardening e Auditoria
  • AES-256-GCM para senhas de controladores
  • Rate limiting e lockout por tentativas
  • PermissionMiddleware e AuditMiddleware automático
  • Backup diário PostgreSQL às 02:00 (30 dias)
  • Connection pooling com 32 conexões
03
Fase 3 — Notificações
Alertas e Exportação
  • E-mail SMTP (Gmail, Office 365, qualquer servidor)
  • Templates HTML para cada tipo de evento
  • Exportação CSV e PDF de eventos e usuários
  • PIN temporário para visitantes com QR Code
  • Badge imprimível com dados da visita
04
Fase 4 — CCTV + Anti-passback
Vídeo e Controle Físico
  • Streams MJPEG Axis via proxy seguro
  • Intercom WebRTC com áudio bidirecional
  • Anti-passback por porta com reset manual
  • Widget de ocupação em tempo real
  • App mobile iOS e Android completo
Hardware Suportado

Compatibilidade nativa

Comunicação direta via protocolo — sem DLLs Windows, sem dependências proprietárias.

VAPIX REST + TCP 9000
📷
Axis Communications

Controladores de acesso, câmeras IP e intercoms com suporte a WebRTC. Streams MJPEG e snapshots via proxy server-side.

A1001 A1601 A8207-VE I8016-LVE C1310-E
TCP 4370 RAW
🖥️
ZKTeco

Comunicação TCP pura na porta 4370 — sem plcommpro.dll Windows. Polling independente por controlador com gestão de estado.

ZK-100 ZK-200 ZK-400 iClock InBio
Especificações Técnicas

O que está incluído

Componente Detalhe
Backend API.NET 8 · 89 endpoints REST · SignalR WebSocket · Swagger docs
Hardware ServerWorker service · ZkTecoWorker · AxisTcpListener · HeartbeatService
Banco de DadosPostgreSQL 16 · 21 tabelas · Pool 32 · Backup automático
Frontend WebReact 18 · Vite · TailwindCSS · 18 telas · React Query
App MobileReact Native 0.74 · iOS + Android · WebRTC · FCM push · SignalR
CriptografiaAES-256-GCM (senhas controllers) · BCrypt (PINs) · JWT RS256
PlataformasmacOS 12–15 (Apple Silicon + Intel) · Linux · Windows
Instalação MacScript self-contained 205KB · instala .NET, Node, PostgreSQL, build e serviços
LicençaCódigo-fonte incluído · Modificação permitida · Deploy ilimitado
Pronto para instalar
em 5 minutos

Um comando. O installer cuida de tudo: Homebrew, .NET 8, Node, PostgreSQL, build e serviços launchd.

Instalação rápida — macOS
$ chmod +x install.sh && ./install.sh
Login padrão
user admin  ·  pass Admin@123
URL após instalação
http://localhost:5000
Helpers em ~/PortalSAC/
start · stop · status · uninstall