当前位置:

首页 > 编程开发 > 如何修复 Discord Bot 在频道中不响应 $inspire 命令的问题

如何修复 Discord Bot 在频道中不响应 $inspire 命令的问题

DiscordBot在线但不响应$inspire命令,常见原因主要包括消息内容意图未开启和APIURL将random误拼为ranom。修复方法需在代码中启用消息内容意图并修正URL,同时需在开发者门户开启消息内容意图权限,命令即可正常响应。

Discord Bot 明明显示在线,可频道里发 $inspire 就是没反应?这个问题其实挺常见的,核心原因就两个:message_content 意图没开,以及 API 的 URL 写错了——把 random 拼成了 ranom。本文一次性把这两个坑都填上。

先说说现象:Bot 在 Discord 里显示 Online,但你发 $inspire 它就跟没看见一样,完全不搭理你。这其实不是 Bot 挂了,而是它压根没读到你的消息。

时间回到 2022 年,Discord 搞了个新规——Bot 必须明确声明自己要干什么,也就是所谓的“意图”(Intents)。尤其是想读取普通文本消息里的内容(比如检测 $inspire 这个命令),message_content 这个意图必须显式打开。否则,on_message 事件根本收不到非私聊消息的内容,命令自然就“静默失效”了。更火上浇油的是,代码里请求 ZenQuotes API 的地址也写错了:https://zenquotes.io/api/ranom 应该是 https://zenquotes.io/api/random,少写一个字母,请求直接返回 404 或者空数据,quote 当然拿不到。

下面是修复后的完整代码,基于 discord.py v2.3+,兼容 Replit 环境,直接替换就能用:

import os
import discord
import requests

# ✅ 启用 message_content 意图(必需!)
intents = discord.Intents.default()
intents.message_content = True  # 关键修复项
client = discord.Client(intents=intents)

def get_quote():
    try:
        # ✅ 修正 URL:'random' 而非 'ranom'
        response = requests.get("https://zenquotes.io/api/random")
        response.raise_for_status()  # 抛出 HTTP 错误(如 404)
        data = response.json()
        if not data or len(data) == 0:
            return "暂无可用名言,请稍后再试。"
        item = data[0]
        return f"{item['q']} — {item['a']}"
    except Exception as e:
        print(f"获取名言时出错:{e}")
        return "获取名言失败,请检查网络或 API 状态。"

@client.event
async def on_ready():
    print(f"We ha ve logged in as {client.user}")

@client.event
async def on_message(message):
    # 忽略 Bot 自身消息(防止自触发)
    if message.author == client.user:
        return

    # ✅ 正确监听频道消息(依赖 intents.message_content = True)
    if message.content.startswith('$inspire'):
        quote = get_quote()
        await message.channel.send(quote)

client.run(os.environ['TOKEN'])

⚠️ 关键注意事项:

  • 权限配置双重验证:代码里把 intents.message_content = True 打开只是第一步,你还得去 Discord Developer Portal,找到你的 Bot 应用 → Bot 标签页 → 把 MESSAGE CONTENT INTENT 开关拨到 ON。两边都打开,才能生效。少一个都不行。
  • Replit 环境提示:确保 .env 文件里的 TOKEN 变量设置正确,别有多余的空格或引号。另外,Replit 免费版对外部请求频率有限制,如果频繁调用 ZenQuotes API 遇到限流,建议加个简单缓存或者错误重试逻辑。
  • 进阶推荐:改用 commands.Bot
    如果打算扩展更多命令,强烈建议切换到 discord.ext.commands 框架。它自动处理命令前缀、参数解析和错误反馈,代码更健壮、维护起来也省心很多。

修复之后,在任何已授权的 Discord 文本频道里发 $inspire,Bot 就能实时返回一条随机哲理名言了。记住:意图启用 + API 地址正确 + 门户权限开启 = 命令可靠响应,缺一不可。

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
作者最新文章
编程开发
相关文章 更多
Discord官网首页及语音互动功能介绍
Discord官网首页及语音互动功能介绍

Discord官方网站首页是https://discord.com/,提供语音通话、视频通话、自定义服务器、消息分享等功能,支持跨平台使用,界面简洁且便于社交管理。

Discord语音社区应用官网通道
Discord语音社区应用官网通道

Discord官方网站通道是https://discord.com/,用户可在此创建聊天服务器、使用高清语音通话、屏幕共享及个性化设置等功能,支持跨设备同步与社群管理工具。

在Debian 12系统上安装Discord的方法
在Debian 12系统上安装Discord的方法

Discord是一个免费的开源语音和文本消息平台,允许您与朋友聊天,加入群组和执行免费语音通话。它是一个具有不同服务器的在线平台,每个服务器提供不同的主题和群组。您可以加入这些服务器进行游戏、音乐、迷因或其他讨论。在包括Debian12在内的Linux系统上安装Discord是一件简单的事情,并且有不同的方法可以在系统上安装它。在本指南中,您将发现:如何在Debian12上安装Discord如何在Debian12上安装Discord如何在Debian12上安装Discord从tar.gz文件如何从Snap

如何解决 Discord 拾取游戏音频问题
如何解决 Discord 拾取游戏音频问题

近年来,Discord因其酷炫且实用的功能而成为“游戏玩家的Facebook”。如果您经常使用Discord,您可能会注意到它有时会非常不必要地拾取游戏内的音频流。这可能会给您在聊天室中的常规友好聊天带来麻烦,甚至会弄乱您的视频流。别担心。有一些快速解决方案可以立即解决此问题,并且Discord将立即启动并正常运行。解决方法——1.拔掉任何不必要的输入设备。然后,重新启动Discord应用程序并重新检查。2.重启系统。然后,测试这是否有效。修复1–禁用所有其他麦克风您必须禁用计算机上

如何在 Windows 11,10 上修复 Discord No Route 错误
如何在 Windows 11,10 上修复 Discord No Route 错误

Discord是一种流行的VOIP应用程序,它允许游戏玩家通过视频和文本轻松交互。但是,许多用户报告在尝试加入Discord中的语音频道时看到了NoRoute错误。下面列出了遇到此错误的可能原因:第三方防病毒软件或防火墙阻止了Discord您的PC的IP地址已更改使用不支持UDP的VPN被网络管理员阻止服务器语音区域不兼容网络不支持QoS您是在尝试连接到语音服务器时遇到NoRoute错误的Discord用户之一吗?那么你已经降落在正确的地方。继续阅读这篇文章。在这里,我

如何在 Windows 11/10 中完全卸载 Discord
如何在 Windows 11/10 中完全卸载 Discord

有时,当用户尝试卸载系统上的任何应用程序时,他们无法完全卸载它,并且应用程序的某些部分仍然存在。最近,我们注意到一些Windows用户无法在他们的系统上卸载Discord应用程序,并且不确定出了什么问题或如何继续。Discord应用程序仍有可能在用户通常不知道的后台运行。如果您还想找到一种从系统中完全卸载Discord的方法,那么本文将通过简单的步骤为您提供简单的指导。如何在Windows11/10中完全卸载Discord确保从启动应用程序中禁用不和谐如果Discord没有从启动

如何在游戏中修复不和谐滞后问题
如何在游戏中修复不和谐滞后问题

在玩您最喜欢的游戏时,您突然意识到Discord应用程序正在变慢或出现速度滞后。您可能会清楚地听到其他人的声音,但是当您滚动浏览时,应用程序运行速度非常慢。如果您想知道如何解决Windows10的Discord滞后问题,那么您来对地方了。那些在Windows10上的Discord应用程序出现问题的人可能是由于一些原因造成的。这可能是由于某些应用程序在后台运行(例如GoogleChrome或YouTube),或者是由于互联网连接不佳,因此请先尝试重新启动路由器,然后再尝试重新

如何修复不和谐的应用程序在iPhone上不起作用[已解决]
如何修复不和谐的应用程序在iPhone上不起作用[已解决]

许多iPhone用户发现,突然之间,iPhone上的Discord应用程序停止工作,他们无法正确使用该应用程序。这对许多Discord用户来说非常令人失望,因为他们主要使用此应用程序通过各种用于游戏的渠道等与游戏朋友互动。一些iPhone用户也看到,即使Discord应用程序在他们的iPhone上成功打开,但立即崩溃。此问题可能是由于互联网连接较弱、Discord应用程序在后台长时间运行、应用程序服务器关闭等。这可以通过遵循以下文章中解释的方法轻松纠正。修复1–启用飞行模式并禁用它如果网络信号出现

如何与 Discord 配合使用最佳视频压缩器来实现最佳效果?
如何与 Discord 配合使用最佳视频压缩器来实现最佳效果?

您可能已经遇到并熟悉Discord的错误信息;你的文件太强大了。我们知道这有多烦人,因为每次您尝试上传您珍爱的视频文件时,它都可能出现。此错误消息附有一条简短的声明,即Maxfilesizeis8.00MBplease,暗示您的电影太大而无法提交,或者至少大于8MB。但是,有一个简单的补救措施。如果您事先压缩它们,您可以提交您的视频而不必担心这个问题。本文将探讨用于Discord的最佳视频压缩器。我可以在不压缩的情况下在Discord上上传较大的视频吗?自2015年推出以来,

如何在 Discord 中更改背景主题
如何在 Discord 中更改背景主题

在您的系统上使用任何应用程序或软件时,最吸引人的地方是让用户更频繁地使用它的外观。外观可以通过更改布局、字体大小、背景主题等来增强。但通常,现在的大多数应用程序都允许用户更改背景主题,无论是深色还是浅色,或者根据计算机的主题。背景主题也可以在Discord应用程序中更改,但该应用程序只允许三个选项,深色、浅色和与计算机同步。但是我们在这篇文章中解释了用户如何在Discord应用程序中设置他们想要的背景主题。如何在Discord中更改背景主题第1步:打开系统上的Discord应用程序。为此,

查看更多
精品专题 更多
装机必备
装机必备

正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

Windows
Windows

正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

PDF教程
PDF教程

正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

Mac软件 更多
Postman macOS版
Postman macOS版
Mac

Postman是一套面向API全生命周期的开发与测试平台,可在Mac上发送和调试多种协议请求,管理集合、环境及认证信息,并完成脚本测试、模拟服务、监控、文档发布和团队协作。它适合开发、测试及运维人员使用,提供个人免费方案。

Docker Desktop macOS版
Docker Desktop macOS版
Mac

Docker Desktop 是 Docker 官方为 Mac 提供的容器开发环境,集成 Docker Engine、命令行工具、Compose、Build、Kubernetes 与图形化管理界面。

Android Studio macOS版
Android Studio macOS版
Mac

Android Studio 是 Google 面向安卓应用开发提供的官方集成开发环境,基于 IntelliJ IDEA 构建。它整合智能代码编辑、Gradle 构建、界面预览、设备模拟、性能分析、调试测试及 APK 分析等工具。

WINDOWS 更多
Postman Windows版
Postman Windows版
Windows

Postman 是面向 API 全生命周期的开发与协作平台。Windows 桌面版可用于构建和发送 HTTP、GraphQL、gRPC、WebSocket、MQTT 等请求,并提供环境变量、集合、脚本测试、模拟服务、监控、文档及团队工作区等

Docker Desktop Windows版
Docker Desktop Windows版
Windows

Docker Desktop 为 Windows 开发者提供集成式容器环境,内置 Docker Engine、命令行工具、Compose、Build 与 Kubernetes 等组件,可在本机完成镜像构建、容器运行、日志查看和资源管理。

Android Studio Windows版
Android Studio Windows版
Windows

Android Studio 是 Google 面向 Android 应用开发提供的官方集成开发环境,以 IntelliJ IDEA 为基础,集成智能代码编辑、Gradle 构建、设备模拟、界面预览、调试测试及性能分析工具,