Melhor forma de redirecionar usuário após tempo limite em chatbot
Tenho um chatbot em TypeScript onde preciso implementar a seguinte lógica:
- Na primeira mensagem do usuário, ele recebe uma lista de abas para escolher.
- Se ele não selecionar uma aba dentro de um tempo limite, deve ser automaticamente redirecionado para uma aba padrão.
Atualmente, estou usando um setTimeout para agendar o redirecionamento e um AbortController para cancelar caso o usuário escolha uma aba antes do tempo limite. No entanto, conforme o fluxo de usuários aumentou, comecei a notar bugs e lentidão nesse processo.
Diante disso, estou considerando mover essa lógica para uma fila (atualmente utilizo RabbitMQ no projeto).
Essa seria a melhor abordagem? Existe uma solução mais eficiente para lidar com isso em alta escala?
Agradeço!