# Socket.IO Voting Bridge

Projeto separado para receber eventos HTTP do Laravel e publicar no Socket.IO por tenant.

## Setup

1. `cp .env.example .env`
2. `npm install`
3. `npm run start`

## Endpoints

- `GET /health`
- `POST /events/voting-panel-update`

### Header opcional de segurança

Se `SOCKET_IO_BRIDGE_TOKEN` estiver definido, envie:

`Authorization: Bearer <token>`

## Payload esperado

```json
{
  "event": "VotingPanelUpdated",
  "tenant_id": "abc123",
  "stage": "voting",
  "trigger": "vote-registered",
  "sent_at": "2026-03-16T12:00:00Z"
}
```

## Cliente de teste

```html
<script src="https://cdn.socket.io/4.8.1/socket.io.min.js"></script>
<script>
  const socket = io("http://127.0.0.1:4000");
  socket.emit("subscribe", { tenant_id: "SEU_TENANT_ID" });
  socket.on("VotingPanelUpdated", (event) => console.log(event));
</script>
```
