[Resolvido] Os recursos "Executar script" e "Definir variável" passam valores por referência?

Preciso utilizar algumas variáveis em vários fluxos. Utilizando o “Redirecionar a um serviço”, consigo acessar o conteúdo no bot destino através da variável {{input.content}}.

Entretando não consigo acessar esse mesmo conteúdo na próximo bloco. Já tentei “Definir variável”, criar um script para retornar em uma variável mas, em ambas abordagens, os valores das variáveis são substituídas por uma entrada do usuário no primeiro bloco. É como se fosse uma variável acessando valor por referência da input.content. No fim, tanto a nova variável quanto o input.content ficam com o mesmo valor após entrada do usuário.

Como resolver isso?


Dayvis.

Olá @Skill_Informatica,

O {{input.content}} é sobrescrito sempre que há uma interação de usuário, portanto não será possível recuperar o valor desejado em demais blocos, devido a sobrescrita do mesmo :no_good_man:t5:

Para solucionar este problema salve através do “Definir variável” o conteúdo do {{input.content}} em uma outra variável no bloco qual ainda o valor desejado está disponível :man_technologist:t5:

Posteriormente, recupere o valor salvo a partir da nova variável.

Caso ainda tenha alguma dúvida pontual, apresente, por gentileza, através de imagens como foi aplicada a solução no seu bot, para que a comunidade possa te auxiliar :smile:

Ola @Caiof,

Obrigado pela resposta!

Entretanto, perceba que na pergunta já havia informado a tentativa de utilizar nova variável, através do uso de “Definir variável”. O problema é que, posteriormente, quando acesso a nova variável, o valor já é outro, exatamente o mesmo da input.content. Porem já descobrimos o problema e vou deixar aqui caso alguém precise.

Para conseguir realizar a ação questionada, além dos passos mencionados, deve ser adicionada a opção de capturar entrada do usuário ao final do bloco em que se armazenou a nova variável, mesmo que não utilize esta entrada ou esteja utilizando menu (que já captura a opção selecionada).
Caso não faça assim, alem de ocorrer o problema mencionado na dúvida, o fluxo apresenta comportamento estranho, como repetição de blocos.

1 Curtida