You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

DiscordPY Bot Intents失效求助:!ping无响应且偶发WebSocket 4013错误

解决Discord机器人无响应及4013错误

问题根源

你碰到的!ping无响应和「Shard ID None WebSocket closed with 4013」错误,核心原因是Discord特权Intent未正确配置——Discord要求必须在开发者后台手动启用特定Intent,仅靠代码设置无法生效。

修复步骤

1. 启用开发者后台的特权Intent

  • 打开你的机器人对应的Discord开发者应用页面,进入「Bot」标签
  • 找到「Privileged Gateway Intents」板块,开启Message Content Intent(这是机器人读取消息命令的必要权限)
  • 若后续需要成员、状态相关功能,可同步开启「Server Members Intent」和「Presence Intent」,但ping命令仅需前者

2. 修正代码中的Intent设置

不要用数值初始化Intents,改用清晰的方式开启必要权限:

import os
import discord
from discord.ext import commands
from dotenv import load_dotenv

load_dotenv()
TOKEN = os.getenv('DISCORD_TOKEN')

# 初始化默认Intent,显式开启消息内容权限
intents = discord.Intents.default()
intents.message_content = True

client = commands.Bot(command_prefix="!", intents=intents)

@client.command()
async def ping(ctx):
    await ctx.send('Pong!')

client.run(TOKEN)

3. 验证基础配置

  • 确认.env里的DISCORD_TOKEN是从「Bot」标签复制的Bot Token,别错用了Client Secret
  • 重启机器人,确保代码修改生效
  • 检查机器人在目标频道的权限:确认拥有「发送消息」权限(即使有管理员权限,也可能被频道单独限制)

补充说明

4013错误本质是代码请求的Intent未在后台启用,或权限不足。完成以上步骤后,机器人应该能正常响应!ping命令。

内容的提问来源于stack exchange,提问作者Jay Eimas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 17:25:30