點擊Dashboard
選擇Assignable & Giveable Roles
在聊天室輸入 -assignrole 海豹 (海豹是我這邊設置的身分組)
選擇roles
在下方可以自定義
示意圖
身分組的部分請自己是先設定
使用reaction來查看表情符號
# cogs/reaction.py
# 略
@commands.Cog.listener()
async def on_reaction_add(self, reaction, user):
print(reaction)
結果示意圖
再來使用on_raw_reaction_add()
@commands.Cog.listener()
async def on_raw_reaction_add(self, user_data):
if user_data.message_id == 你指定的留言:
if str(user_data.emoji) == "指定的符號":
# 取得伺服器
guild = self.bot.get_guild(user_data.guild_id)
# 指定身分組
role = guild.get_role(身分組ID)
await user_data.member.add_roles(role)
await user_data.member.send(f"你取得了{role}身分組")
@commands.Cog.listener()
async def on_raw_reaction_remove(self, user_data):
if user_data.message_id == 你指定的留言:
if str(user_data.emoji) == '指定的符號':
# 取得伺服器
guild = self, bot.get_guild(user_data.guild_id)
user = await guild.fetch_member(user_data.user_id)
await user.remove_roles(guild.get_role(身分組ID))
await user.send(f"已移除{role}身分組"")
示意圖
可以到審核日誌查看