Skip to content

A solução definitiva para adicionar **Real-Time** em seus projetos (Appsmith, n8n, Bubble, Wordpress) com segurança profissional.

Notifications You must be signed in to change notification settings

edusetead/socket.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 

Repository files navigation

⚡ Universal Real-Time Socket Server (White Label & Enterprise)

A solução definitiva para adicionar Real-Time em seus projetos (Appsmith, n8n, Bubble, Wordpress) com segurança profissional.

Este é um servidor Socket.io completo, dockerizado e pronto para produção. Ele atua como um Gateway Seguro entre suas automações e o navegador do usuário, com persistência de dados e controle de acesso rigoroso.

Status Security Tech


🚀 Funcionalidades

  • 🔒 Segurança Enterprise: Conexões Socket e API rejeitadas sem o Token Mestre correto.
  • 📡 API Gateway REST: Recebe Webhooks (POST) via Header Authentication.
  • 💾 Persistência Automática: Salva o último estado (JSON) de cada canal no SQLite.
  • ⚡ Broadcast Real-Time: Entrega dados em milissegundos para os clientes conectados.
  • 👥 Monitoramento de Usuários: Contagem em tempo real de usuários online.
  • 🐳 Docker Ready: Otimizado para Easypanel (Imagem node:slim).
  • ⚪ White Label: Totalmente configurável via Variáveis de Ambiente.

🛠️ Instalação no Easypanel

1. Criar o Serviço

  1. Crie um novo App.
  2. Selecione GitHub como Source e conecte este repositório.
  3. Configure a Build para usar o arquivo /Dockerfile.

2. Configurar Segurança (Obrigatório) 🔐

Você deve definir a senha mestre. Sem isso, o sistema usará uma senha padrão insegura.

  1. Vá na aba Environment.
  2. Adicione a variável:
    • Key: API_TOKEN
    • Value: sua_senha_super_secreta_aqui
  3. Salve e faça o Deploy.

3. Configurar Persistência (Volume) 💾

Para não perder dados ao reiniciar:

  1. Vá na aba Mounts.
  2. Adicione um Volume:
    • Mount Path: /app/dados
    • Type: Volume

📚 Documentação da API (Backend/Webhook)

Utilize estes endpoints para enviar dados do seu Backend (n8n, Appsmith, Postman) para o Socket.

Autenticação: Recomendamos enviar o token no cabeçalho (Header). x-api-token: SUA_SENHA

1. Publicar Mensagem (POST)

Envia dados para um canal. Cria o canal se não existir.

  • URL: POST /api/publicar?canal=NOME_DO_CANAL
  • Headers: x-api-token: SUA_SENHA
  • Body: JSON com os dados.

Exemplo cURL:

curl -X POST "[https://seu-socket.com/api/publicar?canal=financeiro](https://seu-socket.com/api/publicar?canal=financeiro)" \
     -H "x-api-token: 123456" \
     -H "Content-Type: application/json" \
     -d '{"status": "aprovado", "valor": 150.00}'

About

A solução definitiva para adicionar **Real-Time** em seus projetos (Appsmith, n8n, Bubble, Wordpress) com segurança profissional.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published