Nó switch
O nó switch é projetado para roteamento de mensagens com base em seu conteúdo, estrutura ou outras condições. É uma ferramenta poderosa para criar lógica condicional em fluxos.
Configurações do nó switch

1. Nome
Campo para especificar o nome do nó.
O nome é exibido na área de trabalho e ajuda a identificar facilmente o nó.
Se deixado em branco, o nó será chamado de switch.
Exemplo:
- Nome do nó:
verificar status
2. Propriedade
Indica qual propriedade do objeto de mensagem msg será usada para verificar as condições. Por padrão, é payload.
Exemplo:
msg.payloadmsg.topicmsg.device.temperature
Propriedades de ambiente (flow, global) também são suportadas.
3. Verificação
- verificar todas as regras (padrão):
A mensagem pode ser enviada para várias saídas se corresponder a várias condições. - parar após a primeira correspondência:
A mensagem é enviada apenas para a primeira saída que atende à condição.
4. Regras
Definem a lógica de roteamento. Cada regra está vinculada a uma das saídas do nó: quantas regras, tantas saídas. Para quantas saídas a mensagem será enviada em caso de várias correspondências, determina o campo Verificação.
Cada regra tem dois campos: Condição — tipo de condição e Valor — valor para comparação. Para as condições equals true, equals false, equals null, not equals null, empty e not empty, o campo Valor não é exibido.
Tipos de condições disponíveis:
==: Verifica a igualdade do valor.!=: Verifica a desigualdade.<: Verifica se o valor é menor.<=: Verifica se o valor é menor ou igual.>: Verifica se o valor é maior.>=: Verifica se o valor é maior ou igual.has key: Verifica se o objeto contém a chave especificada.between: Verifica se o valor está dentro do intervalo especificado (inclusive).contains: Verifica se a string ou array contém o valor especificado.matches regex: Verifica se a string corresponde à expressão regular.equals true: Verifica se o valor é igual atrue.equals false: Verifica se o valor é igual afalse.equals null: Verifica se o valor é igual anull.not equals null: Verifica se o valor não é igual anull.is of type: Verifica se o valor corresponde ao tipo especificado (por exemplo,string,number,boolean).empty: Verifica se a string, array ou objeto está vazio.not empty: Verifica se a string, array ou objeto não está vazio.else: Executa se nenhuma das outras condições for atendida.
Exemplo:
- Condição:
>, Valor:50
Dados de entrada
O nó aceita um objeto msg.
Quais propriedades específicas serão verificadas é definido no campo Propriedade.
Dados de saída
O nó envia a mensagem msg para a saída que corresponde à condição especificada.
Se a mensagem não corresponder a nenhuma condição, ela não é enviada para as saídas.
Exemplos de uso
Exemplo 1: Filtragem de dados de temperatura
Tarefa:
Dividir os dados em três categorias: temperatura baixa, normal e alta.
Fluxo:
[inject] ---> [function] ---> [switch] ---> [debug (temp baixa)]
| [debug (temp normal)]
| [debug (temp alta)]
Configurações do nó switch:
- Propriedade:
msg.payload - Condições:
é menor que 10→ Saída 1está entre 10 e 30→ Saída 2é maior que 30→ Saída 3
Resultado:
As temperaturas serão roteadas com base em seus valores.