python - 不确定当成员加入 Discord 服务器时如何让机器人发送消息
问题描述
首先,我尝试用谷歌搜索,但永远找不到答案,所以我在 stackoverflow 上。因此,我正在尝试向我的不和谐机器人添加问候效果,但似乎无法发送消息。我知道机器人没有发送消息,因为使用 message.channel.send 时未定义“消息”,但我不知道这样做的正确方法。
错误:
Traceback (most recent call last):
File "C:\Users\Me\AppData\Local\Programs\Python\Python36\lib\site-packages\discord\client.py", line 312, in _run_event
await coro(*args, **kwargs)
File "<string>", line 20, in on_member_join
NameError: name 'message' is not defined`)
import discord
bot = discord.Client()
@bot.event
async def on_ready():
print('Logged in')
print("Username: %s" % (bot.user.name))
print("Userid: %s" % (bot.user.id))
@bot.event
async def on_member_join(member):
print(f'{member} has joined the server')
await message.channel.send('{member} has joined the server'.format(message))
@bot.event
async def on_member_remove(member):
print(f'{member} has left the server')
await message.channel.send('{member} has left the server'.format(message))
bot.run(Token)
解决方案
用于get_channel
获取您的#welcome 频道,将其分配给变量,然后发送欢迎消息。
@client.event
async def on_member_join(member):
channel = client.get_channel(730064641857683581) # Replace with your Welcome channel ID
await channel.send(f"{member} has joined the server")
推荐阅读
- lua - 值为 2 的 PressMouseButton 在 lua 中不起作用
- ios - 深度链接在 Flutter ios 构建中不起作用,但在 android 中运行良好
- python - Python 中“for”列表的 zip 替代方案?
- verilog - iCE40 FPGA 中的级联 BRAM
- jquery - Daterangepicker 中的季度自定义月份和年份
- javascript - 如何在打字稿中访问组件
- python - 意外的类型:(int, int) 可能的类型:(SupportsIndex, None) (slice, Iterable[None])
- json - SchemaCrawler CLI 命令以 JSON 格式序列化 PostgreSQL 数据库,仅在 Schema 上显示 UID 而不是 SCHEMA 名称和信息
- bash - 对带有 getopt 的选项使用两个参数值
- c# - 如何创建一个非活动的异步方法存根?