Time out global 60 segundos

Construímos um BOT que executa diversas avaliações em uma solicitação realizada pelo cliente.

Esse BOT não tem interação humana, apenas captura de informações, uma série de chamadas à APIs e decisões, com o fim de avaliar o contexto da solicitação do cliente.

Ao testarmos o BOT, tomamos um erro de status 0 no retorno de algumas APIs chamadas.

Após a investigação, descobrimos que o BLIP possui um TIME OUT GLOBAL de 60 segundos sem interação humana.

Ou seja, o BLIp é muito bom para CHATs interativos, no entanto, não é possível construir um BOT autônomo, sem interação humana.

Evidente, que se pode construir fora do Builder, mas exigiria um programador experiente.

Faz sentido para alguém aqui, construir um BOT autônomo, utilizando os recursos do Builder?

Obrigado.

Oi @Aceville_Transportes,

Sim, no Builder já é informado esse timeout de TEMPO LIMITE DE AÇÕES global de 60 segundos como limite sendo como 30 segundos o padrão.

Porém isso não é o timeout entre interações, que é o EXPIRAÇÃO DA SESSÃO porque esse pode ser customizado, aqui na empresa que eu atuo um dos bots pode ficar até 4 horas sem interação nenhuma de humano que não irá sair do fluxo.

Este timeout de TEMPO LIMITE DE AÇÕES se refere a tempo limite de cada uma das ações (de entrada ou de saida). Logo uma ação especifica está levando mais de 60 segundos para ser executada, talvez fosse de se pensar em quebrar essa ação e 2 ou 3 ações menores. Ou então investigar a causa dessa ação estar demorando mais de 60 segundos…

Seria o retorno de uma API que está demorando mais de 60 segundos no seu caso?

Salve Thiago.

Não se trata do TEMPO LIMITE DE AÇÕES, esse você pode configurar e, de fato, tem limite de 30 como default. E não, NÃO tenho nenhuma AÇÃO com mais de 60 segundos.

O que eu tenho são várias AÇÕES que, acumuladas, ultrapassam os 60 segundos, sendo que
o suporte do BLIp me relatou exatamente isso: TIME OUT GLOBAL, que expira após 60 segundos sem resposta do usuário.

Segundo eles, isso é uma proteção necessária da aplicação.
E eu ainda não consegui entender qual é o verdadeiro motivo dessa proteção.
Mas o fato é que existe, porque comecei a tomar TIMEOUT após 60 segundos sem interação de usuários.

Tenho duas perguntas ao amigo:

  1. Seu BOT foi desenvolvido no BUILDER ou no SDK?
  2. Pode me dizer como você customizou a EXPIRAÇÃO DA SESSÃO?

Abraço

Oi @Aceville_Transportes

Entendo, estranho a documentação no Builder está falando algo diferente do que o suporte te passou, vou deixar anexo os textos para você ler e ver se é alguma má interpretação da minha parte ou a informação não bate mesmo…

Hoje temos 9 BOTs em produção, até o momento todos desenvolvidos via Builder. (Temos uma fila de espera bem grande, então eu te digo que tranquilo uns 300 clientes por dia aguardandam mais de 1/2 horas sem nenhuma interação e não tenho nenhum problema com isso)

Vou deixar anexo as configurações gerais de um dos meus bots onde eu customizei a expiração da sessão para você dar uma olhada, bele?

Thiago, realmente isso é esquisito.

A minha configuração de EXPIRAÇÃO DE SESSÃO é de 30 minutos.

O nosso problema não é o tempo de espera de início de atendimento pelo BOT ou o tempo de espera de atendimento humano.

O nosso caso específico é que temos várias ações de requisição HTTP sendo executadas em sequencia. Decorridos, 60 segundos após a última interação humana, a API que estiver sendo executada é interrompida por esse TIME OUT GLOBAL, resultando um request VAZIO e um status ZERADO.

Depois de 15 dias, o suporte me retornou essa mensagem:

### Segue a analise referente ao problema reportado

Complementando a solução:

*Após analise pelo time especialista e foi identificado que a plataforma possui um timeout de 60 segundos global. *

*Causa Raiz *

Sequencia de chamadas em APIs sem nenhuma interação do usuário superam o tempo global de 60 segundos configurado para todo o BLIP.

Solução

*O tempo global após a interação do usuário é de 60 segundos, caso a sequencia de ações após esse último contato demore mais de 60 segundos, ocorre um timeout global das ações. Essa configuração é global do BLIP, sendo configurada diretamente na aplicação para todos os usuários do BLIP. *

Esta configuração existe por uma questão de segurança da aplicação para impedir que essas ações impactem o ambiente e os demais clientes.

Como solução sugerimos algumas atuações:

1 - Separação da chamada das APIs para que sejam enviados durante o fluxo, e não somente no final, acarretando a sobrecarga.
2 - Adicionar alguma interação do usuário durante o fluxo que está estourando o tempo global, para que seja dividido o tempo prolongado gasto pelas APIs.
3 - Alteração das APIs, de forma com que seja melhorado o desempenho das mesmas, com intuito de reduzir o tempo excessivo gasto pelas APIs durante o processamento dos dados enviados.
4 - Trocar o uso do Builder para o SDK, onde pode ser configurado manualmente o tempo para interação do usuário.
De onde isso veio? (Informações complementares que indiquem ao SD as ações feitas para que consigam dar um retorno mais completo ao cliente)

Atenciosamente,

Rodrigo P Pacheco
customer support | cs plataforma