Pular para o conteúdo principal

Regras de automação

Este guia mostra como criar, gerenciar e diagnosticar regras de automação. Para o modelo conceitual (gatilhos, condições, ações), consulte Visão geral.

Criando uma regra

  1. Vá para Settings → Automation.
  2. Clique em Nova Regra.
  3. Dê a ele um nome descritivo (por exemplo, “Atribuir leads WhatsApp à equipe comercial”).
  4. Escolha um gatilho na lista.
  5. (Opcional) Adicione condições para filtrar quando a regra deve ser acionada.
  6. Adicione uma ou mais ações.
  7. Ative a regra.

Dicas para Nomear

  • Comece com o verbo da ação principal (Assign..., Move..., Tag...).
  • Incluir contexto (canal, equipe, palco) para que outros operadores entendam sem abrir detalhes.
  • Evite nomes genéricos como “Regra 1” ou “Auto” — você acumulará dezenas e precisará encontrá-los por meio de pesquisa.

Condições e modelos de mensagens

As condições usam o sistema variável de modelo quando você precisa de comparações dinâmicas. A partir de v1.0.0-rc3 (WTO-1146), as variáveis ​​ganharam campos adicionais:
  • label, source, example, position, component
Use esses campos em condições para expressões mais precisas. Por exemplo: filtre por um rótulo específico usando o label.title resolvido em vez do UUID bruto.

attribute_changed Operador com De/Para

Quando você quiser que a regra seja acionada somente em uma transição de atributo específica (por exemplo, “status alterado de pending para qualified”), use o operador attribute_changed com seletores de valores antes e depois explícitos.

Ações com carga útil dinâmica

send_template

Permite enviar um modelo de mensagem com variáveis preenchidas dinamicamente. O sistema aplica deep_stringify_keys à carga útil para que a chamada funcione independentemente do formato da chave (string ou símbolo).

send_canned_response

Atalho para enviar uma resposta automática armazenada em Settings → Canned Responses. A carga aceita variáveis ​​substituídas por dados de conversa.

move_to_pipeline (rc3)

Move o item de pipeline para um pipeline diferente, preservando o id do item. Útil para regras como “se o rótulo qualified foi adicionado ao pipeline de Leads, vá para o pipeline de Vendas”.
A ação ignora automaticamente a validação same-pipeline. Não confunda com move_to_stage, que se move dentro do mesmo pipeline.

apply_label

A partir de v1.0.0-rc3, a ação mostra um seletor de rótulo em vez de entrada de texto livre. Os UUIDs são resolvidos para títulos antes da marcação, com um substituto caso o rótulo tenha sido renomeado.

Painel de registros (rc3)

Cada execução de regra agora gera um registro no painel Automation → Logs. Você vê:
  • Quando a regra foi acionada.
  • Qual conversa/item o desencadeou.
  • Condições avaliadas — quais foram aprovadas e quais não foram.
  • Ações executadas — sucesso ou erro.
  • Erros surgidos — incluindo falhas de macro webhook (que anteriormente eram silenciosas, consulte WTO-1041).

Limpeza Automática

Os registros antigos são removidos por um trabalho de limpeza executado periodicamente. Você não precisa excluir manualmente.

Diagnosticando regras que não disparam

Roteiro rápido quando uma regra parece não funcionar:
  1. Verifique se está ativo. Regras desativadas não aparecem como erros — elas simplesmente não são executadas.
  2. Confirme o acionador. conversation_updated abrange vários casos, mas attribute_changed é específico.
  3. Veja o log de execução. No painel de logs, filtre pela regra. Se aparecer “sem correspondência”, suas condições estão filtrando-o.
  4. Condições de rótulo. A condição labels usa a subconsulta EXISTS (independente e segura para NULL) e corresponde a um rótulo em conversação OU contato. Se você esperava correspondência apenas na conversa, restrinja-a com outra condição.
  5. Dedup. Para pipeline_stage_updated, há uma janela de 5s — dois eventos no mesmo (rule, pipeline_item, stage) em uma janela curta são executados apenas uma vez.

Prevenção de Loop

Quando uma regra move_to_stage aciona um evento pipeline_stage_updated que poderia acionar a mesma regra recursivamente, o sistema marca a execução com Current.executed_by = :stage_automation e ignora as reentradas. Isso evita loops infinitos por design.

Considerações Finais

As regras de automação são a forma declarativa de codificar o comportamento operacional do CRM. Para fluxos mais complexos envolvendo IA conversacional, considere combinar uma regra de automação com um agente — a regra cuida do roteamento e o agente cuida do diálogo.