Como corrigir o erro ‘Application Did Not Respond’ no Discord ao usar comandos de barra
🔍 WiseChecker

Como corrigir o erro ‘Application Did Not Respond’ no Discord ao usar comandos de barra

Quando você digita um comando de barra no Discord, o aplicativo às vezes mostra o erro “Application Did Not Respond.” Isso acontece quando o bot ou a integração não consegue responder à solicitação de interação do Discord em três segundos. O Discord exige que todos os comandos de barra respondam dentro desse limite de tempo, ou a interação expira. Este artigo explica por que o erro ocorre e fornece correções passo a passo para donos de servidores, desenvolvedores de bots e usuários comuns.

Principais conclusões: Corrigindo o erro “Application Did Not Respond”

  • Configurações do Servidor > Integrações > Gerenciar Permissões do Bot: Certifique-se de que o bot tenha a permissão “Usar Comandos de Barra” ativada.
  • Limites de Taxa de Comandos de Barra: O bot pode estar com limite de taxa se muitos comandos forem enviados em pouco tempo; aguarde 30 segundos antes de tentar novamente.
  • Código do Bot — Método DeferReply: Desenvolvedores de bots devem usar DeferReply ou defer_ephemeral para reconhecer a interação dentro de três segundos enquanto o bot processa o comando.

ADVERTISEMENT

Por que o Discord mostra “Application Did Not Respond” para comandos de barra

O sistema de comandos de barra do Discord funciona enviando uma “interação” para o servidor do bot quando um usuário digita um comando. O bot deve responder a essa interação em três segundos. Se o bot estiver offline, lento ou bloqueado por permissões, o Discord não consegue obter uma resposta e mostra o erro. O limite de três segundos existe para manter a interface do usuário responsiva. Se o bot precisar de mais tempo para processar o comando, ele deve usar uma resposta adiada para informar ao Discord que espere.

Causas raiz comuns

O erro pode vir de três fontes principais: o servidor do bot está inativo ou sobrecarregado, o bot não tem as permissões necessárias no canal ou o código do bot não lida corretamente com a janela de três segundos. Problemas de rede no lado do usuário também podem fazer com que a interação falhe antes de chegar ao bot.

Passos para corrigir o erro “Application Did Not Respond”

Siga estes passos em ordem. Comece com as verificações mais simples e vá para correções mais avançadas, se necessário.

Passo 1: Verifique o status e as permissões do bot

  1. Abra o Discord e vá para Configurações do Servidor
    Clique com o botão direito no nome do servidor na lista de canais e selecione Configurações do Servidor. Se você não for o dono do servidor, peça ao dono para verificar as permissões.
  2. Navegue até Integrações
    Na barra lateral esquerda, clique em Integrações. Encontre o bot que não está respondendo e clique em Gerenciar.
  3. Verifique se o bot tem a permissão “Usar Comandos de Barra”
    Em Permissões, role até a seção Permissões de Texto. Certifique-se de que Usar Comandos de Barra esteja ativado. Se estiver desativado, ative-o e clique em Salvar Alterações.
  4. Verifique se o bot está online
    Observe o perfil do bot na lista de membros. Se mostrar um ícone cinza, o bot está offline. Entre em contato com o desenvolvedor do bot ou verifique a página de status do bot.

Passo 2: Teste o comando em um canal diferente

  1. Abra um canal de texto onde você sabe que o bot funciona
    Tente um canal geral ou de comandos de bot. Alguns canais têm permissões de comando restritas.
  2. Digite o mesmo comando de barra novamente
    Se o comando funcionar em um canal, mas não em outro, verifique as permissões específicas do canal em Configurações do Canal > Permissões.

Passo 3: Limpe o cache do Discord e reinicie

  1. Feche o Discord completamente
    Clique com o botão direito no ícone do Discord na bandeja do sistema e selecione Sair do Discord.
  2. Abra a caixa de diálogo Executar
    Pressione Tecla Windows + R, digite %appdata%/discord e pressione Enter.
  3. Exclua a pasta Cache
    Encontre a pasta chamada Cache, clique com o botão direito e selecione Excluir. Não exclua nenhum outro arquivo ou pasta.
  4. Reinicie o Discord
    Abra o Discord novamente e teste o comando de barra.

Passo 4: Verifique os limites de taxa do bot

  1. Aguarde 30 segundos após o erro
    Se você ou outras pessoas enviaram muitos comandos de barra rapidamente, o Discord pode ter limitado a taxa do bot. Aguarde 30 segundos antes de tentar novamente.
  2. Use um único comando e observe
    Digite um comando de barra e aguarde a resposta. Se funcionar, a falha anterior provavelmente foi devido ao limite de taxa.

Passo 5: Desenvolvedores de bots — Implemente resposta adiada

  1. Adicione DeferReply no início do manipulador de comando
    No Discord.js, use interaction.deferReply() para reconhecer a interação imediatamente. Isso informa ao Discord para esperar enquanto o bot processa o comando.
  2. Defina o sinalizador ephemeral se necessário
    Use interaction.deferReply({ ephemeral: true }) para comandos que devem ser visíveis apenas para o usuário.
  3. Responda dentro de 15 minutos após adiar
    Após adiar, você tem até 15 minutos para enviar a resposta real usando interaction.editReply(). Se não responder dentro de 15 minutos, a interação expira novamente.

ADVERTISEMENT

Se o Discord ainda mostrar o erro após a correção principal

O bot fica offline após a expiração do boost do servidor

Alguns bots exigem um servidor impulsionado para usar certos recursos. Se o nível de boost do seu servidor cair, o bot pode perder o acesso a endpoints premium e falhar ao responder. Verifique a documentação do bot para requisitos de boost. Se o bot for personalizado, certifique-se de que o token do bot seja válido e não tenha expirado.

O comando funciona no desktop, mas não no celular

Os aplicativos móveis do Discord às vezes têm caches de comandos de barra desatualizados. Force o fechamento do aplicativo móvel do Discord, reabra-o e tente o comando novamente. Se o problema persistir, desinstale e reinstale o aplicativo móvel do Discord.

O erro ocorre apenas com comandos de barra, não com mensagens de chat

Isso indica que o bot está online, mas não está lidando corretamente com as interações de comandos de barra. O desenvolvedor do bot deve verificar o código do manipulador de interações. O bot pode estar usando uma biblioteca desatualizada que não suporta comandos de barra. Atualize a biblioteca da API do Discord do bot para a versão mais recente.

Métodos de resposta de interação do Discord: Adiado vs Instantâneo

Item DeferReply (Resposta Adiada) Resposta Instantânea (Direta)
Limite de tempo para reconhecer 3 segundos 3 segundos
Limite de tempo para enviar conteúdo 15 minutos após adiar Deve ser dentro dos mesmos 3 segundos
Caso de uso Comandos que levam mais de 3 segundos para processar Comandos que podem responder instantaneamente
Suporte a ephemeral Sim — use deferReply({ ephemeral: true }) Sim — use reply({ ephemeral: true })
Risco de erro Baixo se você responder dentro de 15 minutos Alto se o processamento levar mais de 3 segundos

Agora você pode corrigir o erro “Application Did Not Respond” verificando as permissões do bot, limpando o cache do Discord ou implementando uma resposta adiada no código do seu bot. Se você é dono de servidor, verifique se o bot tem as permissões corretas em cada canal. Se você é desenvolvedor de bots, adicione DeferReply a todos os manipuladores de comando que realizam consultas a bancos de dados ou chamadas de API. Para uma configuração mais robusta, considere usar o recurso autocomplete do Discord para reduzir o tempo de processamento do comando.

ADVERTISEMENT