🇪🇸 Español 🇬🇧 English 🇧🇷 Português
Guias

Condicoes e ramificacoes em workflows: if, switch e grupos AND/OR

Aprenda a usar condicoes em workflows do Omnifox: o no Se, Switch com varias ramificacoes, grupos AND/OR, O contato tem etiqueta e Horario comercial.

July 11, 2026

Um workflow sem condicoes e uma linha reta: trata todos os contatos do mesmo jeito. As condicoes em workflows sao o cerebro da automacao, porque decidem para onde vai cada conversa conforme quem escreve, qual canal usa, o que diz e a que hora chega. No Omnifox um workflow e sempre um gatilho + um grafo de nos, e as condicoes sao os nos que abrem varias saidas (edges) para que cada caso siga seu proprio caminho.

Neste guia percorremos os nos de condicao reais do editor: Se (uma regra), Switch (varias ramificacoes), os grupos aninhados AND/OR, O contato tem etiqueta e Horario comercial. No final voce tera um exemplo de roteamento completo pronto para copiar.

O no Se: a decisao mais simples

Se (uma regra) avalia uma unica condicao e abre duas saidas: verdadeiro e falso. E a bifurcacao classica do tipo binario.

Um fluxo tipico:

  1. Gatilho Mensagem recebida (filtro: apenas a primeira mensagem).
  2. No Se -> regra: {{$conversation.channel_name}} e WhatsApp.
  3. Ramo verdadeiro -> Enviar modelo de WhatsApp.
  4. Ramo falso -> Enviar mensagem comum.

A forca do no Se e que voce pode avaliar qualquer variavel de contato, conversa ou mensagem. Por exemplo, ramificar conforme {{$contact.company}} esteja vazio ou nao para separar clientes B2B de consumidores finais. Lembre da regra chave do motor: uma variavel desconhecida vira string vazia, entao nunca quebra a avaliacao.

Switch: mais de dois caminhos

Quando voce precisa de mais de duas saidas, o no Switch (varias ramificacoes) e a ferramenta certa. Cada ramo tem seu proprio conjunto de regras e o fluxo toma o primeiro que corresponde, de cima para baixo, com uma saida de fallback no final para o que nao encaixa.

Um caso frequente e rotear por palavra-chave ou por etapa do contato:

  • Ramo 1: o texto contem "fatura" -> Transferir para um agente do time de faturamento.
  • Ramo 2: o texto contem "preco" ou "planos" -> Atribuir agente de IA de vendas.
  • Ramo 3 (fallback): Enviar mensagem com o menu de opcoes.

A ordem importa: coloque no topo as regras mais especificas e deixe as genericas embaixo. Se dois ramos puderem corresponder ao mesmo tempo, vence o primeiro.

Grupos AND/OR: logica que se le como uma frase

Regras reais raramente envolvem um unico dado. O Omnifox permite grupos aninhados para combinar condicoes com AND e OR, do tipo (A AND B) OR C. Isso transforma uma decisao complexa em algo legivel.

Exemplo de um grupo dentro de um no Se:

({{$contact.tags}} contem VIP AND Horario comercial = Em horario) OR {{$conversation.channel_name}} = Chamadas

Ou seja: atenda na hora se for um cliente VIP dentro do horario, ou se o contato chegar pelo canal de chamadas independentemente da etiqueta. Os grupos evitam encadear tres ou quatro nos Se em escada; toda a logica vive num unico no e continua facil de auditar.

O contato tem etiqueta: segmentar sem escrever regras

O contato tem etiqueta e uma condicao dedicada que verifica as etiquetas do contato e abre um ramo por presenca/ausencia. E muito mais limpo do que comparar {{$contact.tags}} com texto livre.

Combine com o gatilho Etiqueta adicionada ou com um no anterior Adicionar etiqueta para montar funis:

  1. Gatilho Mensagem recebida.
  2. No O contato tem etiqueta -> tem cliente?
  3. Sim -> Transferir para um agente do pos-venda.
  4. Nao -> Adicionar etiqueta lead e Atribuir agente de IA de vendas.

Horario comercial: a condicao de tres ramos

Horario comercial e especial porque nao abre duas, mas tres saidas: Em horario, Fora de horario e Feriado. Ele le a configuracao de horarios e o calendario de feriados do seu workspace, entao voce nunca precisa fixar datas na mao.

Um padrao de resposta automatica muito usado:

  1. Gatilho Mensagem recebida.
  2. Condicao Horario comercial.
  3. Em horario -> Transferir para um agente.
  4. Fora de horario -> Enviar mensagem: "Respondemos pela manha" + Adiar conversa.
  5. Feriado -> Enviar modelo de WhatsApp com o aviso do feriado.

Um exemplo de roteamento ponta a ponta

Vamos juntar tudo num unico workflow de recepcao:

Mensagem recebida (apenas a primeira) -> Horario comercial

  • Feriado -> Enviar mensagem de feriado -> fim.
  • Fora de horario -> Enviar mensagem + Adiar conversa.
  • Em horario -> Switch:
    • contem "suporte" -> O contato tem etiqueta VIP? -> Sim: Transferir para um agente senior / Nao: fila normal.
    • contem "vendas" -> Atribuir agente de IA.
    • fallback -> Fazer uma pergunta com o menu.

Com cinco tipos de condicao voce cobre praticamente qualquer roteamento omnichannel.

Erros comuns e boas praticas

  • Nao deixe ramos sem saida. Toda condicao deve fechar todos os ramos; um Switch sem fallback trava conversas.
  • Ordene do especifico ao generico no Switch: a primeira regra verdadeira vence.
  • Prefira O contato tem etiqueta em vez de comparar texto de etiquetas na mao; e mais robusto.
  • Apoie-se em Horario comercial em vez de nos Data/hora soltos: mantem os feriados centralizados.
  • Teste casos limite: variavel vazia, contato sem etiquetas, mensagem fora de horario.

Voce monta tudo isso de forma visual, arrastando nos no editor de workflows do Omnifox e testando cada ramo antes de publicar. Comece com um Se simples e va somando Switch e grupos AND/OR conforme sua operacao cresce: amanha suas conversas se roteiam sozinhas.

Comentarios (0)

Todavía no hay comentarios. Sé el primero en compartir tu opinión.

Dejá un comentario

Tu email nunca se publica. Los comentarios se moderan antes de aparecer.

Soporta markdown. El HTML se elimina.