# Guia do Frigate + Nexus — passo a passo bem fácil

**O que é isto, em uma frase:** o **Frigate** é um programa gratuito que olha as
imagens das suas câmeras e avisa quando aparece uma **pessoa**, **carro**, **animal**,
etc. Este guia liga o Frigate ao Nexus para você **receber um alerta** quando algo
for detectado (ex.: "pessoa no quintal às 3h da manhã").

**Como funciona (sem susto):** o Frigate manda um "recadinho" pelo **MQTT** (o
"carteiro" que você já ligou no outro guia). O Nexus escuta esse recado e dispara
o alerta pelos seus canais (celular, e-mail, WhatsApp…). **Nenhum código novo** — é
só configurar.

**Antes de começar, você precisa de:**

1. O **MQTT já ligado** (fez o guia `INTEGRACAO-MQTT.md`? Se não, faça primeiro).
2. O **Frigate já instalado e vendo suas câmeras** (num mini-PC, servidor ou NAS).
   Se ainda não tem Frigate, este guia **não** ensina a instalar o Frigate do zero —
   ele ensina a **conectar** um Frigate que já funciona.
3. Uns **10 minutos**.

> Anote agora, num papel, duas coisas do guia do MQTT:
> - **IP do servidor** (onde roda o Nexus e o Mosquitto). Ex.: `172.16.0.10`.
> - **usuário e senha** do MQTT que você criou. Ex.: usuário `nexus`, senha `MinhaSenhaForte`.

---

## Passo 1 — Abrir o arquivo de configuração do Frigate

O Frigate guarda os ajustes num arquivo chamado **`config.yml`** (ou `config.yaml`).

1. Abra o Frigate no navegador (o endereço que você já usa, tipo `http://172.16.0.20:5000`).
2. No menu, clique em **Config** (Configuração). Vai abrir o texto do `config.yml`
   direto na tela.

✅ **Deu certo se:** você está vendo um texto com várias linhas, com palavras como
`cameras:`, `detectors:` etc.

> Não achou o "Config" na tela? Então o arquivo fica na pasta do Frigate (onde você
> instalou), com o nome `config.yml`. Abra com o Bloco de Notas.

---

## Passo 2 — Dizer ao Frigate onde está o "carteiro" (MQTT)

No começo do arquivo, **cole o bloco abaixo** (ou ajuste se já existir um `mqtt:`).
Troque `172.16.0.10`, `nexus` e `MinhaSenhaForte` pelos **seus** dados do Passo 0.

```yaml
mqtt:
  enabled: true
  host: 172.16.0.10
  port: 1883
  user: nexus
  password: MinhaSenhaForte
```

Atenção ao alinhamento: as linhas de dentro (`enabled`, `host`…) têm **2 espaços**
na frente. Não use Tab, use espaços.

✅ **Deu certo se:** existe um trecho `mqtt:` com o IP do seu servidor e a senha certa.

---

## Passo 3 — Salvar e reiniciar o Frigate

1. Clique em **Save** (Salvar) na tela de Config do Frigate.
2. Se ele oferecer **Save & Restart** (Salvar e Reiniciar), clique nessa.
3. Senão, reinicie o Frigate do jeito que você costuma (botão Restart, ou reiniciar
   o container/serviço).

✅ **Deu certo se:** depois de reiniciar, na aba **Logs** do Frigate aparece uma
linha dizendo que o **MQTT conectou** (algo como `mqtt: connected`). Sem erro
vermelho de "connection refused".

---

## Passo 4 — Descobrir o nome do "recado" (tópico) da sua câmera

O Frigate manda um recado com o **nome da câmera** dentro. O formato é:

```
frigate/NOME-DA-CAMERA/person
```

Troque `NOME-DA-CAMERA` pelo nome exato que aparece no Frigate (o mesmo que está em
`cameras:` no config). Exemplos: `frigate/quintal/person`, `frigate/garagem/person`.

Esse recado vale **"quantas pessoas o Frigate está vendo agora"** naquela câmera:
vira `1` quando alguém aparece e volta a `0` quando some.

✅ **Deu certo se:** você sabe escrever o tópico da sua câmera, por exemplo
`frigate/quintal/person`.

> **Quer pegar TODAS as câmeras de uma vez?** Use o coringa `+` no lugar do nome:
> `frigate/+/person` pega "pessoa" em qualquer câmera.

---

## Passo 5 — Criar o alerta no Nexus

1. Entre no Nexus e vá em **Configurações → Alertas** (menu lateral).
2. Clique em **Nova regra**.
3. Preencha assim:
   - **Nome:** algo claro, ex.: `Pessoa no quintal`.
   - **Tipo:** escolha **"Tópico MQTT (Frigate, medidor, gateway)"**.
   - **Tópico MQTT:** o que você montou no Passo 4, ex.: `frigate/quintal/person`.
   - **Contém no texto:** escreva **`1`** (dispara quando aparece pelo menos uma pessoa).
   - **Canais:** marque por onde quer ser avisado (celular/Pushover, e-mail, WhatsApp…).
   - **Intervalo mínimo (cooldown):** coloque uns **5** minutos, para não tocar sem parar.
4. Clique em **Salvar**.

✅ **Deu certo se:** a regra aparece na lista de Alertas como **ativa**.

> **Quer um filtro mais esperto?** Em vez de "Contém no texto", dá para usar o
> recado detalhado do Frigate: use o tópico `frigate/events`, o campo **Campo JSON**
> = `after.label` e **Valor** = `person`. Assim você casa exatamente "apareceu uma
> pessoa" (e poderia trocar por `car`, `dog` etc.).

---

## Passo 6 — Testar de verdade

1. Passe na frente da câmera (ou peça para alguém passar).
2. Espere alguns segundos.

✅ **Deu certo se:** você recebeu o alerta no canal escolhido, e ele aparece também
no **Alertas → Histórico** do Nexus.

---

## Deu problema?

**O Frigate não conecta no MQTT (erro "connection refused" nos Logs).**
- Confira o **IP do servidor** no Passo 2 — tem que ser o do computador do Mosquitto.
- Confira **usuário e senha** (iguais aos do guia do MQTT, sem espaços).
- O **firewall** do servidor pode estar bloqueando a porta **1883**. No guia do MQTT
  há um passo para liberar essa porta — refaça-o.

**Conectou, mas não chega alerta nenhum.**
- O **nome da câmera** no tópico tem que ser idêntico ao do Frigate (maiúsculas/
  minúsculas contam). Ex.: se no Frigate é `Quintal`, o tópico é `frigate/Quintal/person`.
- Confirme que o **`mqtt_bridge` está rodando** no servidor (aparece em **Central →
  Serviços do sistema** como "ok"). Se estiver parado, ele não escuta os recados.
- O MQTT precisa estar **ligado** no Nexus (no `.env`, `MQTT_ENABLED=true`).

**Chega alerta demais (fica tocando toda hora).**
- Aumente o **Intervalo mínimo (cooldown)** da regra para 10, 15 minutos.
- Use o filtro esperto do Passo 5 (campo `after.label` = `person`) e, no Frigate,
  ajuste as **zonas** para vigiar só a área que te interessa.

**Não sei o nome exato do tópico.**
- Instale no seu celular um app gratuito de MQTT (ex.: "MQTT Explorer" no PC) e
  conecte no servidor com o mesmo usuário/senha. Ele mostra **todos os recados** que
  chegam — é só passar na frente da câmera e ver qual tópico "pisca".

---

Pronto! Agora o Nexus "enxerga" as detecções das suas câmeras Frigate e te avisa.
O mesmo caminho serve para **qualquer aparelho que fale MQTT** (medidores, sensores,
outros gateways) — é só criar outra regra de Tópico MQTT.
