Pular para o conteúdo
Automação e IA

Subfluxos reutilizáveis: parei de copiar e colar automação

Quando extrair um trecho para subfluxo, como nomear, como organizar a hierarquia e quais armadilhas o editor barra sozinho antes de você publicar.

WAEquipe WebajatoPublicado em Atualizado em 10 minNível Avançado
Ilustração do módulo Automação e IA da plataforma Webajato

Mudou a mensagem de coleta de CPF. Coisa boba, uma frase. Só que essa coleta estava copiada em sete fluxos diferentes e eu só descobri isso no quinto. O sexto ficou desatualizado durante três semanas até um cliente perguntar por que a mensagem era diferente da que ele tinha recebido antes. Foi ali que eu levei a sério os subfluxos reutilizáveis.

O bloco Flow existe justamente para isso: você desenha um trecho uma vez, guarda como fluxo próprio e chama de onde precisar. Quando a frase muda, muda num lugar só.

Se você ainda está montando os primeiros fluxos, este assunto pode esperar. Volte quando começar a sentir aquele incômodo de estar redesenhando a mesma coisa. Para o mapa geral das peças, veja tipos de blocos do Flow Builder.

Subfluxos reutilizáveis: quando extrair um trecho

Meu critério é simples e nasceu do episódio do CPF: se o mesmo trecho aparece em dois fluxos, ele já é candidato. Se aparece em três, não é candidato mais, é obrigação. Antes disso, extrair só adiciona camada sem devolver nada.

  • Identificação do contato, com coleta e confirmação de dado
  • Menu de departamento que se repete em várias entradas
  • Rotina de transferência para humano, com a mensagem de espera
  • Coleta de avaliação ao fim do atendimento
  • Tratamento de resposta inválida com limite de tentativas

Todos esses trechos têm uma coisa em comum: eles não dependem do assunto do fluxo que chamou. Trecho que só faz sentido dentro de um contexto específico não deve virar subfluxo, porque você vai acabar enchendo ele de condição para tratar cada chamador. Já fiz isso e o subfluxo virou o pior fluxo da casa.

Como o bloco Flow se comporta

Ele nasce no canvas com o rótulo "Defina um fluxo", que é um jeito educado de dizer que está incompleto. Você escolhe um fluxo existente e o editor carrega o preview dos nós do escolhido, ali mesmo. Uso esse preview como conferência obrigatória.

O sistema impede referência circular, então você não consegue montar aquele emaranhado em que A chama B que chama A. Isso não é frescura do editor. É a diferença entre um fluxo lento e um servidor com problema.

Nomes: onde eu mais errei

Meu primeiro conjunto de subfluxos se chamava "sub 1", "sub 2" e "aux CPF". Seis meses depois eu não sabia mais o que cada um fazia e abria os três para descobrir. Nome de subfluxo deve dizer o que ele faz e para quem serve, sem depender de memória.

Nome ruimNome que funcionaPor quê
aux CPFSUB - Identificacao por CPFDiz o que faz e marca que é subfluxo
menu 2SUB - Menu de departamentosDescreve o conteúdo, não a posição
transfSUB - Transferencia para humanoPalavra inteira, sem abreviação particular
teste botRASCUNHO - Teste de capturaDeixa claro que não deve ser chamado

O prefixo é o detalhe que mais me ajudou. Batendo o olho na lista, eu sei o que é jornada de verdade e o que é peça de reuso, sem abrir nada.

O que quebra quando você extrai um trecho

Extrair não é recortar e colar. O trecho que virou subfluxo perde o contexto do fluxo de origem, e é aí que aparecem surpresas. Confesso que demorei para entender que o problema não estava no bloco Flow, estava no que eu esperava que já estivesse na mão do subfluxo.

  • Variável de contexto que existia no fluxo original e não chega ao subfluxo
  • Mensagem que citava o assunto do fluxo chamador e agora ficou genérica demais
  • Rota de erro que apontava para um nó que não existe mais no mesmo desenho
  • Fluxo de destino inativo, que passa despercebido até alguém cair nele

Depois de extrair, teste os dois lados: o subfluxo sozinho e a jornada inteira chamando ele. Testar só um dos dois esconde metade dos defeitos.

Manutenção depois que o reuso pega

Aqui vem o lado desconfortável: quando um subfluxo é usado por sete jornadas, qualquer mudança nele afeta sete jornadas. O ganho de manter num lugar só vem com a responsabilidade de testar em todos os chamadores relevantes antes de ativar.

Adotei o hábito de duplicar o subfluxo, mexer na cópia, testar e só depois trocar a referência nos fluxos, um de cada vez, começando pelo de menor volume. É mais lento. É bem menos assustador. E se der ruim, o estrago fica pequeno.

Antes de ativar qualquer troca, rode a validação e passe pelo checklist de publicação. Boa parte das armadilhas de subfluxo está coberta por lá, e o resto está em validações de segurança do Flow Builder.

Levando subfluxo para outro ambiente

O formato portável `.flux` leva a estrutura, e só. As referências de subfluxo apontam para identificadores do ambiente de origem e vão acusar destino inválido no destino. Isso não é bug, é a validação fazendo o trabalho dela.

Importe primeiro os subfluxos, depois as jornadas que os chamam, e refaça os vínculos na ordem. Se você fizer o contrário, vai passar a tarde reabrindo bloco Flow. Falo por experiência. E o mesmo raciocínio de dependência vale para automações que conversam com outras áreas, como o cadastro central do ERP: a peça de baixo entra antes.

Comece pelo trecho mais repetido

Abra seus fluxos ativos e procure a mensagem que você já leu três vezes hoje. Provavelmente é a coleta de identificação ou a transferência para humano. Extraia essa primeiro, teste com calma e deixe as outras para a semana seguinte.

Perguntas frequentes

Qual a diferença entre subfluxo e fluxo comum?
Estruturalmente nenhuma: subfluxo é um fluxo normal que outro fluxo chama pelo bloco Flow. A diferença é de propósito e de nome. Por isso o prefixo na nomenclatura ajuda tanto na hora de bater o olho na listagem.
Quantos níveis de subfluxo eu posso ter?
O sistema impede referência circular, então a profundidade é limitada pelo bom senso, não por um número. Prefiro dois níveis no máximo. Passando disso, entender o que aconteceu numa conversa vira arqueologia.
Mexer no subfluxo afeta conversa em andamento?
Pode afetar, sim, porque as jornadas ativas passam a executar o desenho novo a partir do próximo passo. Duplique, teste na cópia e troque a referência depois, começando pelo fluxo de menor volume.
Por que meu bloco Flow acusa destino inválido?
Os motivos possíveis são destino não definido, destino apontando para o próprio fluxo, fluxo inexistente, inativo ou de outra empresa. Depois de importar um .flux é o caso mais comum, porque as referências vieram de outro ambiente.
Vale extrair um trecho usado em dois fluxos só?
Vale como candidato, mas eu costumo esperar o terceiro uso para ter certeza. Extração prematura adiciona uma camada de indireção que ninguém pediu e que atrapalha o diagnóstico quando algo dá errado.
subfluxos reutilizáveisbloco flowflow builderreuso de automação
Mais sobre Automação e IA

Outros módulos do blog

Cada módulo reúne um conjunto próprio de guias. Veja também o mapa do site com todos os artigos publicados.

Coloque esse conhecimento para rodar no seu dia a dia

Os temas daqui nascem de módulos reais da plataforma Webajato: ERP, financeiro, fiscal, estoque, PDV, loja virtual, marketplaces, CRM no WhatsApp, automação com IA e relatórios. Tudo em um único sistema multiempresa.

Conhecer a plataforma