python - 从反应中获取用户 ID
问题描述
我正在为我的机器人创建一个票证系统,但我不知道如何获取做出反应的用户的 ID。
这是我的代码:
@Client.event
async def on_raw_reaction_add(TicketID, user):
username = user
message_id = TicketID
if message_id == message_id:
channel = await Client.create_text_channel(username + " - ticket")
我尝试使用 user 作为 ID,但我收到此错误:
TypeError: on_raw_reaction_add() missing 1 required positional argument: 'user'
有谁知道如何修理它?
解决方案
您收到此错误是因为您向函数添加了一个额外的参数,而文档中没有该参数。这意味着 Discord 不会知道它必须传递用户 ID,所以它不会,这将导致您看到的错误。
可以RawReactionActionEvent.user_id
用来获取用户的id。
@Client.event
async def on_raw_reaction_add(payload):
userid = payload.user_id
推荐阅读
- angular - 基于星期几的表格行背景
- android - 错误:属性 application@name 太存在
- angular - rxjs超时操作符可以触发函数而不是返回错误并取消http调用吗
- javascript - 如何从父组件动态更新子组件中的道具值?
- java - 如何从 javafx 项目创建文件 .exe
- api-platform.com - API 平台 access_control:无法访问私有财产
- php - 使用三元运算符的“if”“and”语句
- ios - 如何在 Swift 中上传多张图片
- c# - 当用户没有将完整的 json 传递给 .NET Web API 时怎么办?
- ruby-on-rails - 如何更改 params 方法以在 rails 控制器中接受 JSON 数组?