如何给on_member_join()discord.py中的会员发私信?
How to send private message to member in on_member_join() discord.py?
这是我的:
@client.command(pass_context=True)
@client.event
async def on_member_join(ctx, member):
print(f'{member} has joined a server.')
await ctx.send(f"Hello {member}!")
await ctx.member.send(f"Welcome to the server!")
我需要机器人在加入时发送包含规则和命令列表的私人消息。
请帮忙!
事件 on_member_join()
只接受成员作为有效参数(参见 doc)。因此,您尝试执行的操作: on_member_join(ctx, member)
不会起作用。您需要改用它:on_member_join(member)
.
如果您使用的事件如下:
@client.event
async def on_member_join(member):
await member.send('Private message')
您可以直接向加入服务器的成员发送消息。因为你使用这个事件得到了一个 member 对象。
我不知道发生了什么,从前一天到下一天,bot 停止向新成员发送欢迎信息。但我终于能够解决它。
我只需要添加这两行代码。 intents = discord.Intents()
intents.members = True
Read
import discord
from discord.ext import commands
#try add this
intents=intents=discord.Intents.all()
#if the above don't work, try with this
#intents = discord.Intents()
#intents.members = True
TOKEN = 'your token'
bot=commands.Bot(command_prefix='!',intents=intents)
#Events
@bot.event
async def on_member_join(member):
await member.send('Private message')
@bot.event
async def on_ready():
print('My bot is ready')
bot.run(TOKEN)
这是我的:
@client.command(pass_context=True)
@client.event
async def on_member_join(ctx, member):
print(f'{member} has joined a server.')
await ctx.send(f"Hello {member}!")
await ctx.member.send(f"Welcome to the server!")
我需要机器人在加入时发送包含规则和命令列表的私人消息。
请帮忙!
事件 on_member_join()
只接受成员作为有效参数(参见 doc)。因此,您尝试执行的操作: on_member_join(ctx, member)
不会起作用。您需要改用它:on_member_join(member)
.
如果您使用的事件如下:
@client.event
async def on_member_join(member):
await member.send('Private message')
您可以直接向加入服务器的成员发送消息。因为你使用这个事件得到了一个 member 对象。
我不知道发生了什么,从前一天到下一天,bot 停止向新成员发送欢迎信息。但我终于能够解决它。
我只需要添加这两行代码。 intents = discord.Intents()
intents.members = True
Read
import discord
from discord.ext import commands
#try add this
intents=intents=discord.Intents.all()
#if the above don't work, try with this
#intents = discord.Intents()
#intents.members = True
TOKEN = 'your token'
bot=commands.Bot(command_prefix='!',intents=intents)
#Events
@bot.event
async def on_member_join(member):
await member.send('Private message')
@bot.event
async def on_ready():
print('My bot is ready')
bot.run(TOKEN)