# MANUAL TÉCNICO - AUTOMAÇÕES E TRIGGERS - ZAMMAD

**Código:** ITGINF 0004/26 | **Classificação:** INTERNO
**Responsável:** João Pedro Toledo Gonçalves | **Data:** {{DATA_ATUAL}}

## 1. HISTÓRICO DE REVISÃO

| Data | Versão | Descrição | Autor |
| :--- | :--- | :--- | :--- |
| {{DATA_ATUAL}} | 1.0 | Criação Inicial | João Pedro Toledo Gonçalves |

## 2. OBJETIVO
Automatizar tarefas repetitivas usando Triggers (baseados em eventos) e Scheduler (baseados em tempo) para aumentar a eficiência do Service Desk.

## 3. PRÉ-REQUISITOS
*   [ ] Acesso Admin.

## 4. PASSO A PASSO (EXECUÇÃO)

### Diferença Crítica
*   **Trigger (Gatilho):** Dispara IMEDIATAMENTE quando um ticket é criado ou atualizado (ex: Cliente mandou email -> Enviar auto-resposta).
*   **Scheduler (Automação):** Roda num cronograma (ex: A cada 1 hora, verifique tickets pendentes há 3 dias e feche).

### Etapa 1: Criar um Trigger (Ex: Auto-resposta)
1.  Acesse **Admin** > **Gerenciar** > **Gatilhos**.
2.  Clique em **Novo Gatilho**.
3.  **Nome:** `Auto Resposta - Criacao`.
4.  **Condições:**
    *   `Action` é `created`.
    *   `Sender` é `Customer`.
5.  **Executar modificações:**
    *   `Email` -> `Public` -> (Escreva o template de "Recebemos seu chamado...").
6.  **Enviar**.

![Configuração de Trigger](assets/zammad_trigger_setup.png)

### Etapa 2: Criar uma Automação (Ex: Fechar tickets órfãos)
Limpar tickets que o cliente não respondeu.

1.  Acesse **Admin** > **Gerenciar** > **Agendador** (Scheduler).
2.  Clique em **Novo Agendador**.
3.  **Nome:** `Fechar Pendentes > 5 dias`.
4.  **Agendamento:** Executar Seg-Sex às 07:00.
5.  **Condições:**
    *   `Estado` é `pendente`.
    *   `Último contato` `antes (relativo)` `5 dias`.
6.  **Ações:**
    *   `Estado` -> `fechado`.
    *   `Nota` -> `Internal` -> "Fechado automaticamente por inatividade.".

### Etapa 3: Auto-Assign (Atribuição Automática)
Evitar que tickets fiquem sem dono.

1.  Crie um Trigger.
2.  **Condições:** `Texto` contém `impressora` E `Grupo` é `Service Desk`.
3.  **Ações:** `Proprietário` -> `Tecnico de Impressoras` (Escolha o usuário).

## 5. SOLUÇÃO DE PROBLEMAS (TROUBLESHOOTING)

!!! warning "Pânico: Loop ou Falha de Execução"
    Minha automação não funciona ou funciona demais!

**Problema 1: Trigger não dispara**
*   **Causa:** Ordem de execução. O Zammad processa triggers de cima para baixo.
*   **Debug:**
    1.  Verifique se um trigger ACIMA tem a opção "Stop processing tristate" (Parar processamento) marcada? Se sim, nenhum abaixo dele roda.

**Problema 2: Loop de Email (Auto-resposta infinita)**
*   **Causa:** Dois sistemas (Zammad e outro helpdesk) ficam trocando "Recebemos seu ticket".
*   **Solução:**
    1.  Adicione a condição no Trigger: `Título` *não contém* `[Ticket#`.
    2.  O Zammad tem proteção nativa, mas filtros de texto ajudam.

**Problema 3: Automação fechou tickets errados**
*   **Causa:** Condição de tempo mal calculada.
*   **Solução:**
    1.  Use o botão **Preview** (Lupa) na configuração do Agendador ANTES de salvar. Ele mostra exatamente quais tickets seriam afetados AGORA.

## 6. DADOS TÉCNICOS

| Recurso | Frequência Padrão |
| :--- | :--- |
| **Scheduler** | A cada 10-15 minutos (background job). |
| **Trigger** | Real-time (Transaction based). |

## 7. VALIDAÇÃO FINAL
- [ ] O trigger de auto-resposta chega para o cliente?
- [ ] A automação de fechamento aparece nos logs do ticket (`Agendador` mudou estado)?
