Oi Joana, :)
para manter o contexto, você vai precisar ter uma aplicação para o usuário interagir conectada com o serviço de Conversation e criar uma variável dentro do editor avançado de JSON para poder estipular certas "ações" para um determinado nó.
Inclusive, esta parte da documentação mostra como fazer isso em detalhe.
E nós mostramos um pouco dessa parte no segundo curso. Caso você faça, creio que possa ajudar e esclarecer.
De qualquer modo, sobre se essa é a melhor forma de fazer, por um lado, o Conversation não permite que tenhamos, por exemplo, essa liberdade dentro da estrutura do Diálogo, então não temos outra saída do que fazendo uma comunicação entre a API ou o serviço, e a aplicação.
E isso, por outro lado, é bom para separar essas responsabilidades dentro do projeto. Então você sempre vai saber que as regras estarão no seu código e que as intenções e respostas ficarão no Diálogo.
Então eu diria que sim, até para o próprio diálogo não ficar com estruturas meio doidas e bem complexas. Geralmente a solução mais simples e que todos conseguem entender é a mais indicada.
Espero ter ajudado com as dúvidas, qualquer outra coisa, só postar aqui :p.