E aí automatizador tudo beleza bom Seguindo aqui com o nosso intensivão ntn essa aula é pra gente poder falar sobre mudanças né que aconteceram aí no node do swift né o node que a gente utiliza aí para poder trabalhar com rotas no nos nossos fluxos né aqui do ntn bom o que acontece quando o ntn foi pra versão um né o Swift ele teve ali uma mudança e muitos usuários estavam tendo de utilizar né porque antigamente você tinha ali quatro rotas né era limitado a quatro rotas do índice Zero ao índice trê e a partir
de Então você tinha ali infinitas rotas né eu achei muito legal essa nova proposta né do do node porém tava muito confuso eu mesmo quando fui começar a usar o o Swift com essa nova estrutura de rotas infinitas né eu tive dificuldade ali de entender né mas depois de mexer ali eu consegui dominar tá porém o node acabou passando por mais uma uma modificação tá não recordo necessariamente Qual foi a a partir de qual versão do ntn tá eu sei que a gente tá utilizando aqui a 1.31.2 e Nessa versão o Swift já está nessa
nova versão que possui o as rotas infinitas digamos assim eh porém está mais fácil digamos assim tá então nessa aula aqui você vai aprender como operar é o Swift nessa nova versão beleza bom antes de mais nada é bom ressaltar que o node Swift ele é importantíssimo Quando você vai lidar ali com verificação de múltiplas opções tá quando você vai verificar por exemplo duas ou mais opções Ah Hugo quando é duas opções Eu costumo usar o Swift tá errado tá por isso que é importante né o o conteúdo aqui do do intensiv ntn porque a
gente não só ensina né Para que serve o node como utiliza ele também mas a gente também ensina eh as boas práticas né Por exemplo tem pessoas que às vezes para poder fazer verificações ela só usa Swift Aliás ela só usa if ela nem sabe da existência do do swift então por exemplo tem pessoas que sei lá eh precisa verificar seis opções né E aí o que que ela faz ela V aqui coloca um if tá ó colar aqui de novo só para você entender tá então tem pessoas que por exemplo chega assim e faz
assim ó e verifica se a opção é a opção um né se não for verifica Então se é opção dois aqui ah se não for verique se é a opção TR Ah se não for verifique se é opção 4 e ela vai fazendo né esse essa linhada aqui até conseguir fazer a verificação de todas as opções ali né Aí eu te pergunto Imagine você tem um um Case aqui que você tem que fazer e uma verificação de 1000 opções ali Imagine você tem que colocar 1000 ifs aqui para poder fazer essa verificação não faz sentido
tá então o node eh if ele só serve quando você tem que fazer uma verificação de um determinado valor para saber se é verdadeiro ou se é falso então é você chegar aqui e dizer ó eu quero que eh verifique essa opção e eu quero saber se essa opção é um ou seja se ela não for um você vai você já tá ciente ali que é qualquer outra opção que não seja um tá ou então é muito utilizado às vezes por exemplo para fazer uma filtragem por exemplo você falar Ah eu quero saber se o
nome de do cliente que tá passando aqui agora é Hugo tá ou seja ele só vai filtrar os que tem nome Hugo tá ou poderia ser por exemplo o estado Ah eu quero que somente seja pessoas do Rio de Janeiro tá então o if ele serve para isso para você fazer uma espécie de filtragem com base ali num critério ali de aceite tá agora rotas né você fazer verificação de várias opções e determinar para onde o fluxo tem que seguir ao atender aquela condição aí é Swift Tá bom então vamos adicionar aqui um um Swift
tá é esse node aqui beleza e aí como você pode ver né Eh ele continua tendo ali a os modos de regras e expressão tá geralmente a gente usa regras né né hulls E aqui basicamente é o mesmo conceito né você vai informar aqui o campo que você vai referenciar no vow um né aqui a condição né para você verificar se é igual se não é igual se contém se não contém eh se é maior se é menor No caso quando é número né ou seja tudo aquilo ali que você já viu aqui no curso
tá você já viu nas aulas Beleza eh E aí além de definir aqui a condição você informa o texto que o texto né o valor que você quer comparar então né como você por exemplo vamos dizer que aqui tem uma variável né botar aqui uma expressão ó vamos dizer que a variável que está vindo aqui do Out node é é um né ou então não sei se eu posso colocar aqui um texto porlo botar hum né ó é Hugo e você quer saber se a variável que está sendo referenciada aqui ela possui o valor igual
a Hugo se for igual a Hugo ele vai sair na rota zero tá se for por exemplo igual a Ana botar aqui em expressão é que coloca Ana né ele vai sair na rota um então você vê que as rotas elas são incrementais né Ou seja a medida que você vai colocando novas verificações ele vai colocando lá rota zero rota 1 rota 2 Rota 3 rota 4 e assim sucessivamente tá porém é possível a gente renomear essa rota para ficar mais fácil né para você entender ali eh O que que tá saindo ali em cada
rota né para facilitar vamos fazer o seguinte vamos já criar aqui a a nossa massa de dados né digamos assim para poder trabalhar aqui com Swift eu vou colocar aqui um set [Música] tá conectar aqui colocar aqui ah vou até colocar aqui lista de nomes tá beleza e aí eu vou a adicionar aqui eh uma variável chamado nome tá E aqui eu vou criar um arrei Beleza vou até colocar aqui no modo expressão vou criar aqui um arrei tá ver aqui aí vou botando uns nomes aqui né é Hugo Ana Pedro Vou botar aqui Júlia
botar aqui quatro nomes tá E aí claro né aqui fora ó se eu informo o índice ele vai retornar o nome correspondente aquele índice então se eu botei zero retorna Ugo se eu ponho dois retorna ano se eu ponho TR Pedro aliás dois Pedro né e três Júlia beleza e aí para ficar de uma forma dinâmica aqui dentro aqui do índice eu vou colocar eu vou colocar um número aleatório tá Então vou utilizar aqui a biblioteca MEF né e Floor e aqui dentro do flor eu coloco um MA eu coloco Ok botei aqui três e
e do lado de fora mais um né porque aqui é como ele pegasse do zero ao 2 né E aí na verdade eu não preciso nem colocar mais um aqui né porque tem índice que é zero É isso mesmo tá então é 0 1 na verdade tem que colocar quatro aqui tá Por quê Por que quatro porque são quatro nomes certo sendo que aqui ele vai gerar automaticamente ou zero ou um ou dois ou três tá então tá certo é assim OK então por exemplo se eu chego aqui executo Vamos abrir aqui para você entender
ó gerou um nome aleatório gerou o Hugo tá por exemplo se eu roda aqui de novo ó ele já deve gerar um outro nome ó ó já gerou Pedro tá então deixa eu apagar aqui E vamos fazer do zero aqui para você entender tá então vamos lá ó vamos referenciar aqui e no V 1 né Ou seja a variável do output anterior tá E aí como é um string eu deixo aqui string mesmo e deixo igual a Ok E aí eu coloco um valor fixo aqui tá Então como são quatro nomes seriam então Quatro rotas
beleza vamos dizer que esses nomes fossem nomes de clientes ou nome de vendedores né se você quisesse fazer um redirecionamento ali de atendimento para um dos vendedores tá vamos dizer que são vendedores tá então eu vou colocar aqui por exemplo Hugo tá que é o primeiro nome da lista eh próxima condição né a gente pode copiar aqui ó cola aqui segunda condição é se o nome for vamos botar por ordem Ana né segunda condição aliás terceira né se o nome for Pedro Ok e quarta e última opção se o nome for Júlia OK aí por
exemplo ó vou sair daqui ó s S quatro opções certo quatro nomes então ele criou quatro rotas aqui começando do zero 0 1 2 3 Ok quatro rotas então se eu executo aqui ó eu eu posso até também renomear aqui e colocar aqui e verifica nome do vendedor tá então por exemplo ó executei aqui aqui seria a lista de nomes bom executei aqui e aí se você reparar ó ele saiu aqui no output 1 certo por quê Porque o nome que foi gerado ali no meu set ali aleatoriamente foi Ana e aqui Ana é nessa
segunda condição aqui certo que seria a rota um certo aqui ó o Hugo rota zero Ana rota um ok ó a gente executa aqui de novo e agora foi Júlia Júlia é o quê rota três não é isso ó por isso que acabou saindo aqui na rota TR tá E sendo que para ficar mais fácil porque às vezes por exemplo você olhando aqui por fora né você olha aqui 0 1 2 3 mas você não sabe que se trata ali cada condição por exemplo se você bate o olho e fala assim calma aí saiu aqui
na rota TR você pode ver que a linha do da Rota 3 aqui tá verde né ou seja por quê ela que acendeu ou seja o output saiu nela mas aí você pensa assim tá mas saiu na três por quê atendeu Que tipo de critério Que tipo de condição aqui você não consegue saber ao olhar o node tá por isso que foi criado essa opção aqui ó rename output para você renomear justamente com o mesmo nome que você espera ali na na verificação tá então a saída zero eu botei Hugo aqui na saída um eu
coloco Ana tá aqui na saída Pedro eu coloco Pedro tá E aqui na saída Júlia né que seria a saída três né rota três eu coloco Julia tá aí olha só como fica mais fácil Olha só que legal isso aqui ó tá vendo ó deixa eu dar um zoom aqui para você entender ó se for Hugo vai sair aqui no Hugo se for Ana na Ana no Pedro no Pedro e Júlia e Júlia tá por exemplo se eu executa aqui de novo Olha que legal acendeu a linha Aqui da Ana porque certamente o nome que
foi gerado aqui no meu set né foi Ana certo ó se eu rodo de novo aqui ó acendeu a linha do Hugo por quê Porque o nome que foi gerado aqui foi Hugo tá E aí ó você vai ó Saiu Jú aqui agora tá E aí você pode criar n rotas aqui tá Isso aqui é basicamente infinito mesmo né É claro que dependendo da quantidade que você coloca aqui pode travar o seu ntm né Não sei mas ele já foi projetado criado para de fato você colocar quantas condições você quiser aqui tá bom E aí
pra gente finalizar agora só tem a questão do fallback Hugo e como funciona o fallback né Por exemplo eu vou chegar aqui eu vou colocar é por exemplo é claro que aqui eu teria que aumentar né eu vou botar vou botar seis tá que aí eu vou adicionar mais dois nomes aqui vou botar aqui vou botar o próprio nome da Auto tá [Música] e vou botar aqui Vou botar aqui el el musk beleza OK então vamos fazer o seguinte por exemplo eu vou abrir aqui agora e aí o que acontece aqui tion n tem opção
Deb output porrão el vaiar aqui como n que é tipo não fazer nada ou seja não ter saída PR exceção Ok por exemplo se eu clico aqui fora ó repara e não tem rota aqui de exceção é fallback porém se você chega aqui altera PR Extra output uma saída aqui de exceção dessa vez tá chamada fallback Ok inclusive deixa eu ver aqui ah tá ele também tem a opção para você renomear o fallback que seria a exceção Inclusive eu aconselho renomear então por exemplo aqui ó eu poderia colocar o qu outro nome tá ou seja
se não for Hugo nem Ana nem Pedro e nem Júlia é um outro nome que não é um desses quatros aqui tá E aí se eu clico aqui fora olha só que legal né E ó ele criou aqui outro aí botou um uma reticências aqui significando e é outro nome né então por exemplo se eu chegar aqui agora e executar ó tu já vê que o node aqui já ficou maior ó né tá vendo ó vamos lá vamos executar ó bateu Pedro aqui tá porque girou Pedro ó agora bateu outro por quê certamente não foi
nem Hugo nem Ana nem Pedro nem júlian deve ter sido Auto ou Elon tá então se eu se eu abro aqui Qual o nome que foi gerado ó Auto tá E aí ele saiu aonde aqui na saída outro nome que é a saída de fallback de quando não atende nenhuma das opções que eu mapeei ali nas rotas tá e assim vai ó ó outro nome Ó já pegou Elon tá vendo Elon também não está aqui mapeado nas rotas então ele acaba entrando aqui na exceção do fallback outro nome beleza bom então é assim que funciona
aí o novo Swift tá espero que tenha esclarecido aí se ainda ficou alguma dúvida você não entendeu alguma parte aqui deixa aí nos comentários que a gente vai esclarecendo tá bom muito obrigado pela atenção um grande abraço e até a próxima