Skip to main content

Olá, pessoal! Tudo bem?

Estou enfrentando um problema um pouco complicado de rastrear, pois meu fluxo envolve vários bots e, em termos de observabilidade, acabo tendo pouca visibilidade — mesmo utilizando o plugin “Logs e monitoramento de erros”.

O erro ocorre quando um cliente vem do fluxo “Exceções”, mas traz o ID de bloco referente a outro fluxo. Ao passar pelo bloco “Checar redirecionamento para bloco específico”, o contato acaba entrando na condição de saída que tenta mover o usuário para esse bloco. No entanto, se o ID do bloco não existir no bot atual, recebo o erro abaixo.

Por enquanto, gostaria apenas de validar o redirecionamento para garantir que ele só ocorra se o bloco realmente existir naquele bot — evitando assim o erro até que eu consiga identificar a origem do problema.

Alguém já passou por algo semelhante ou teria alguma sugestão de como contornar essa situação?

 

{
"extensionData": {
"name": "1.0- Checar redirecionamento para bloco específico"
},
"timestamp": "2025-10-17T10:08:40.149Z",
"elapsedMilliseconds": 10355,
"error": "Take.Blip.Builder.OutputProcessingException: Failed to process output condition to state '{{lastBlock}}'\n ---> System.InvalidOperationException: Failed to process output condition, bacause the output context variable '{{lastBlock}}' is undefined or does not exist in the context.\n at Take.Blip.Builder.FlowManager.ProcessOutputsAsync(LazyInput lazyInput, IContext context, Flow flow, State state, ICollection`1 outputTraces, CancellationToken cancellationToken)\n --- End of inner exception stack trace ---\n at Take.Blip.Builder.FlowManager.ProcessOutputsAsync(LazyInput lazyInput, IContext context, Flow flow, State state, ICollection`1 outputTraces, CancellationToken cancellationToken)\n at Take.Blip.Builder.FlowManager.ProcessInputAsync(Message message, Flow flow, IContext messageContext, CancellationToken cancellationToken)"
}


 

 

Olá, pessoal! Tudo bem?

Estou enfrentando um problema um pouco complicado de rastrear, pois meu fluxo envolve vários bots e, em termos de observabilidade, acabo tendo pouca visibilidade — mesmo utilizando o plugin “Logs e monitoramento de erros”.

O erro ocorre quando um cliente vem do fluxo “Exceções”, mas traz o ID de bloco referente a outro fluxo. Ao passar pelo bloco “Checar redirecionamento para bloco específico”, o contato acaba entrando na condição de saída que tenta mover o usuário para esse bloco. No entanto, se o ID do bloco não existir no bot atual, recebo o erro abaixo.

Por enquanto, gostaria apenas de validar o redirecionamento para garantir que ele só ocorra se o bloco realmente existir naquele bot — evitando assim o erro até que eu consiga identificar a origem do problema.

Alguém já passou por algo semelhante ou teria alguma sugestão de como contornar essa situação?

 

{
"extensionData": {
"name": "1.0- Checar redirecionamento para bloco específico"
},
"timestamp": "2025-10-17T10:08:40.149Z",
"elapsedMilliseconds": 10355,
"error": "Take.Blip.Builder.OutputProcessingException: Failed to process output condition to state '{{lastBlock}}'\n ---> System.InvalidOperationException: Failed to process output condition, bacause the output context variable '{{lastBlock}}' is undefined or does not exist in the context.\n at Take.Blip.Builder.FlowManager.ProcessOutputsAsync(LazyInput lazyInput, IContext context, Flow flow, State state, ICollection`1 outputTraces, CancellationToken cancellationToken)\n --- End of inner exception stack trace ---\n at Take.Blip.Builder.FlowManager.ProcessOutputsAsync(LazyInput lazyInput, IContext context, Flow flow, State state, ICollection`1 outputTraces, CancellationToken cancellationToken)\n at Take.Blip.Builder.FlowManager.ProcessInputAsync(Message message, Flow flow, IContext messageContext, CancellationToken cancellationToken)"
}


 

 

@Marcelo Carveche isso ocorre, pela variavel lastBlock estár como não definida nessa estrutura, valida se todos bots estão com o contexto do router ativo, e se não há expiração de sessão em algum bot ou limpeza de variáveis do contexto de navegação, pois esses fatores podem interferir nisso. 


Olá, pessoal! Tudo bem?

Estou enfrentando um problema um pouco complicado de rastrear, pois meu fluxo envolve vários bots e, em termos de observabilidade, acabo tendo pouca visibilidade — mesmo utilizando o plugin “Logs e monitoramento de erros”.

O erro ocorre quando um cliente vem do fluxo “Exceções”, mas traz o ID de bloco referente a outro fluxo. Ao passar pelo bloco “Checar redirecionamento para bloco específico”, o contato acaba entrando na condição de saída que tenta mover o usuário para esse bloco. No entanto, se o ID do bloco não existir no bot atual, recebo o erro abaixo.

Por enquanto, gostaria apenas de validar o redirecionamento para garantir que ele só ocorra se o bloco realmente existir naquele bot — evitando assim o erro até que eu consiga identificar a origem do problema.

Alguém já passou por algo semelhante ou teria alguma sugestão de como contornar essa situação?

 

{
"extensionData": {
"name": "1.0- Checar redirecionamento para bloco específico"
},
"timestamp": "2025-10-17T10:08:40.149Z",
"elapsedMilliseconds": 10355,
"error": "Take.Blip.Builder.OutputProcessingException: Failed to process output condition to state '{{lastBlock}}'\n ---> System.InvalidOperationException: Failed to process output condition, bacause the output context variable '{{lastBlock}}' is undefined or does not exist in the context.\n at Take.Blip.Builder.FlowManager.ProcessOutputsAsync(LazyInput lazyInput, IContext context, Flow flow, State state, ICollection`1 outputTraces, CancellationToken cancellationToken)\n --- End of inner exception stack trace ---\n at Take.Blip.Builder.FlowManager.ProcessOutputsAsync(LazyInput lazyInput, IContext context, Flow flow, State state, ICollection`1 outputTraces, CancellationToken cancellationToken)\n at Take.Blip.Builder.FlowManager.ProcessInputAsync(Message message, Flow flow, IContext messageContext, CancellationToken cancellationToken)"
}


 

 

@Marcelo Carveche isso ocorre, pela variavel lastBlock estár como não definida nessa estrutura, valida se todos bots estão com o contexto do router ativo, e se não há expiração de sessão em algum bot ou limpeza de variáveis do contexto de navegação, pois esses fatores podem interferir nisso. 

 

  • Sim, todos estão com o contexto do router ativo.
    Não há expiração de sessão global nos fluxos, apenas tempo de inataividade configurado em blocos com entrada do usuário. 
    Limpeza de variaveis, nos limpamos as principais. A variavel “lastBlock” é setada para null e em seguida é definida atraves do redirectObjectVar@lastBlock. 

    Não consegui identificar o problema ainda mas gostaria de tratar. Você vê alguma forma?

    Gostaria de uma validação assim:
    Se existir um api, eu consulto pelo o ID do “lastBlock” e verifico se esse bloco existe naquele fluxo atual, caso sim, então eu dou o redirect para este block, caso contrário, não dou redirect. Entende?

Esse problema não acontece com 100% dos contatos que passam por esse fluxo. Provavelmente, algum problema que leva o contato ir para “Bot de Excecao” e logo após vai para o “Main Bot” e gera o problema. No entanto, não acontece com todos que caem no bot de exceção, por isso a dificuldade em identificar em qual momento o problema é gerado.


Olá, pessoal! Tudo bem?

Estou enfrentando um problema um pouco complicado de rastrear, pois meu fluxo envolve vários bots e, em termos de observabilidade, acabo tendo pouca visibilidade — mesmo utilizando o plugin “Logs e monitoramento de erros”.

O erro ocorre quando um cliente vem do fluxo “Exceções”, mas traz o ID de bloco referente a outro fluxo. Ao passar pelo bloco “Checar redirecionamento para bloco específico”, o contato acaba entrando na condição de saída que tenta mover o usuário para esse bloco. No entanto, se o ID do bloco não existir no bot atual, recebo o erro abaixo.

Por enquanto, gostaria apenas de validar o redirecionamento para garantir que ele só ocorra se o bloco realmente existir naquele bot — evitando assim o erro até que eu consiga identificar a origem do problema.

Alguém já passou por algo semelhante ou teria alguma sugestão de como contornar essa situação?

 

{
"extensionData": {
"name": "1.0- Checar redirecionamento para bloco específico"
},
"timestamp": "2025-10-17T10:08:40.149Z",
"elapsedMilliseconds": 10355,
"error": "Take.Blip.Builder.OutputProcessingException: Failed to process output condition to state '{{lastBlock}}'\n ---> System.InvalidOperationException: Failed to process output condition, bacause the output context variable '{{lastBlock}}' is undefined or does not exist in the context.\n at Take.Blip.Builder.FlowManager.ProcessOutputsAsync(LazyInput lazyInput, IContext context, Flow flow, State state, ICollection`1 outputTraces, CancellationToken cancellationToken)\n --- End of inner exception stack trace ---\n at Take.Blip.Builder.FlowManager.ProcessOutputsAsync(LazyInput lazyInput, IContext context, Flow flow, State state, ICollection`1 outputTraces, CancellationToken cancellationToken)\n at Take.Blip.Builder.FlowManager.ProcessInputAsync(Message message, Flow flow, IContext messageContext, CancellationToken cancellationToken)"
}


 

 

@Marcelo Carveche isso ocorre, pela variavel lastBlock estár como não definida nessa estrutura, valida se todos bots estão com o contexto do router ativo, e se não há expiração de sessão em algum bot ou limpeza de variáveis do contexto de navegação, pois esses fatores podem interferir nisso. 

 

  • Sim, todos estão com o contexto do router ativo.
    Não há expiração de sessão global nos fluxos, apenas tempo de inataividade configurado em blocos com entrada do usuário. 
    Limpeza de variaveis, nos limpamos as principais. A variavel “lastBlock” é setada para null e em seguida é definida atraves do redirectObjectVar@lastBlock. 

    Não consegui identificar o problema ainda mas gostaria de tratar. Você vê alguma forma?

    Gostaria de uma validação assim:
    Se existir um api, eu consulto pelo o ID do “lastBlock” e verifico se esse bloco existe naquele fluxo atual, caso sim, então eu dou o redirect para este block, caso contrário, não dou redirect. Entende?

@Marcelo Carveche entendi sua necessidade, mas da para fazer com o end point que passei no outro post exemplo : 

 


Veja meu -curl desse endpoint e veja o que esta errado, por favor. Já tentei mas recebo o mesmo erro.

 

curl --request POST \
--url https://estantemagica.http.msging.net/commands \
--header 'authorization: Key ***' \
--header 'content-type: application/json' \
--data '{
"id": "{{$guid}}",
"method": "get",
"uri": "/buckets/blip_portal:builder_working_flow"
}'

 


Veja meu -curl desse endpoint e veja o que esta errado, por favor. Já tentei mas recebo o mesmo erro.

 

curl --request POST \
--url https://estantemagica.http.msging.net/commands \
--header 'authorization: Key ***' \
--header 'content-type: application/json' \
--data '{
"id": "{{$guid}}",
"method": "get",
"uri": "/buckets/blip_portal:builder_working_flow"
}'

 

@Marcelo Carveche como falamos lá no outro tópico é devido a chave do router, vamos falando por lá para não fica confuso as thread.