python - Discord.py 为 on_member_join 事件启用 Intent
问题描述
我正在修复意图更改之前的旧机器人,并且我正在尝试执行一个简单的 on_server_join 事件,但它不起作用,我没有收到任何错误,并假设这是由意图问题引起的。我已在开发人员门户中启用了这两种特权意图,并尝试将其实现到我的代码中,但它仍然无法正常运行。
import discord
from discord.ext import commands
from discord.utils import get
intents = discord.Intents(messages=True)
client = commands.Bot(command_prefix ='-', intents=intents)
@client.event
async def on_member_join(member):
channel = client.get_channel(751225399798923315)
print("Person Joined")
await channel.send("Welcome!")
client.run('Token')
这是代码示例,任何帮助表示赞赏。
解决方案
您只启用了intents.messages
,您需要intents.members
任何on_member_*
事件。另外,我建议您只需启用默认意图 + intents.members
,一切都应该正常工作。
intents = discord.Intents.default()
intents.members = True
client = commands.Bot(command_prefix ='-', intents=intents)
还要确保在开发人员门户中启用它们
推荐阅读
- http - 使用 dio 发布调用 api 会产生 404 抖动
- php - 当用户在codeigniter中发送电子邮件时,我想将图像路径存储在带有索引的数组中
- mongodb - 在一组答案/问题上使用 MongoDB 进行高级匹配/评分
- java - 如何按名称返回对象的位置?
- ios - 在 Swift 中使用蓝牙耳机的麦克风和内置扬声器进行录音和播放
- excel - 使用和激活多个工作簿的问题 excel VBA
- python - 如何创建一个元组的元组,其中在python中分配了变量
- terraform - 每个循环或 for 循环的 Terraform 不起作用
- java - 对 NamedParameterJdbcTemplate 的引用不明确,batchUpdate(String,Map
[]) 和 batchUpdate(String,SqlParameterSource[]) 匹配 - c++ - 如何用 CUB 库编译 C++?