feat: Implementação completa do NoIdle - Cliente, Backend e Scripts

- Cliente Windows com modo silencioso e auto-start robusto
- Backend Node.js + API REST
- Frontend Next.js + Dashboard
- Scripts PowerShell de configuração e diagnóstico
- Documentação completa
- Build scripts para Windows e Linux
- Solução de auto-start após reinicialização

Resolução do problema: Cliente não voltava ativo após reboot
Solução: Registro do Windows + Task Scheduler + Modo silencioso
This commit is contained in:
root
2025-11-16 22:56:35 +00:00
commit 6086c13be7
58 changed files with 10693 additions and 0 deletions

187
GUIA_RAPIDO_AUTOSTART.md Normal file
View File

@@ -0,0 +1,187 @@
# 🚀 Guia Rápido: Resolver Problema de Auto-Start do NoIdle
## ⚡ Solução Rápida (1 minuto)
Se o NoIdle **NÃO** está iniciando automaticamente após reiniciar o computador:
### 1⃣ Baixe o script de correção
Baixe o arquivo `VERIFICAR_E_CORRIGIR_NOIDLE.ps1` para o computador Windows.
### 2⃣ Execute no PowerShell
Abra o PowerShell na pasta onde está o arquivo e execute:
```powershell
.\VERIFICAR_E_CORRIGIR_NOIDLE.ps1 -AutoFix
```
### 3⃣ Pronto!
O script irá:
- ✅ Detectar todos os problemas
- ✅ Corrigir automaticamente
- ✅ Iniciar o NoIdle se não estiver rodando
- ✅ Configurar para iniciar automaticamente no boot
---
## 🔍 Verificar se está Funcionando
Após executar o script, verifique:
```powershell
Get-Process -Name "NoIdle"
```
**Resultado esperado:** Deve aparecer o processo NoIdle rodando.
---
## 🧪 Testar Reinicialização
1. Reinicie o computador
2. Faça login no Windows
3. Aguarde 10 segundos
4. Execute:
```powershell
Get-Process -Name "NoIdle"
```
**✅ Se aparecer o processo = FUNCIONOU!**
---
## 📝 O Que Foi Corrigido
O script configura **2 métodos** de auto-start:
### Método 1: Registro do Windows
```
Localização: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run
Comando: "C:\Program Files\NoIdle\NoIdle.exe" --silent
```
### Método 2: Task Scheduler (Agendador de Tarefas)
```
Nome da Tarefa: NoIdle_Monitor
Gatilho: Ao fazer logon
Reinicia automaticamente se falhar (até 3 vezes)
```
---
## 🛠️ Alternativa: Configuração Manual
Se preferir configurar manualmente (ou o script falhar):
### Passo 1: Abra o PowerShell
```powershell
# Configurar Registry
$RegKey = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Run"
Set-ItemProperty -Path $RegKey -Name "NoIdle" -Value '"C:\Program Files\NoIdle\NoIdle.exe" --silent' -Type String -Force
```
### Passo 2: Iniciar o NoIdle
```powershell
Start-Process -FilePath "C:\Program Files\NoIdle\NoIdle.exe" -ArgumentList "--silent" -WindowStyle Hidden
```
---
## ❓ Perguntas Frequentes
### Por que não estava funcionando antes?
O cliente antigo não tinha suporte ao modo silencioso (`--silent`), então:
- Tentava abrir uma janela de ativação no boot
- Como o usuário não interagia, fechava automaticamente
- Ficava sem rodar em segundo plano
### O que mudou?
Agora o cliente suporta modo silencioso:
- Roda completamente em segundo plano
- Não precisa de interação do usuário
- Inicia automaticamente após configuração
### Preciso ativar novamente?
**NÃO!** Se você já ativou o NoIdle antes, ele mantém a configuração. Apenas execute o script de correção.
### Preciso ser administrador?
**NÃO!** O script funciona com usuário normal. Apenas o Task Scheduler pode pedir confirmação, mas o Registry funcionará de qualquer forma.
### Posso desinstalar depois?
Sim! Para remover o auto-start:
```powershell
.\CONFIGURAR_AUTOSTART_NOIDLE.ps1 -Remove
```
---
## 📊 Scripts Disponíveis
| Script | Uso | Quando Usar |
|--------|-----|-------------|
| `VERIFICAR_E_CORRIGIR_NOIDLE.ps1` | Diagnóstico + Correção | **Recomendado** - Use sempre primeiro |
| `CONFIGURAR_AUTOSTART_NOIDLE.ps1` | Apenas configurar auto-start | Se já sabe que o problema é só auto-start |
| `VERIFICAR_CLIENTE_SIMPLES.ps1` | Verificação rápida | Apenas para ver se está rodando |
---
## 🎯 Checklist Rápido
Antes de reportar problemas, verifique:
- [ ] NoIdle está instalado em `C:\Program Files\NoIdle\NoIdle.exe`?
- [ ] Arquivo de configuração existe em `%APPDATA%\NoIdle\config.json`?
- [ ] Device ID está configurado? (veja o config.json)
- [ ] API está acessível? (teste: https://admin.noidle.tech)
- [ ] Firewall não está bloqueando?
- [ ] Executou o script de correção?
- [ ] Testou após reinicialização?
---
## 💡 Dica Pro
Para garantir que está tudo funcionando:
1. Execute o script de correção
2. Reinicie o computador
3. Após login, aguarde 30 segundos
4. Execute o script de verificação novamente
Deve aparecer tudo **✅ verde**.
---
## 🆘 Precisa de Ajuda?
Se após executar todos os passos ainda não funcionar:
1. Execute e salve o diagnóstico:
```powershell
.\VERIFICAR_E_CORRIGIR_NOIDLE.ps1 | Out-File -FilePath "$env:USERPROFILE\Desktop\diagnostico_noidle.txt"
```
2. Verifique o arquivo `diagnostico_noidle.txt` no Desktop
3. Envie para o suporte junto com:
- Versão do Windows
- Se tem antivírus/firewall corporativo
- Se é um computador gerenciado por domínio/Active Directory
---
**Problema Resolvido! 🎉**
O NoIdle agora inicia automaticamente em segundo plano após cada reinicialização.