主要偵測 反應圖案的訊息
@client.event on_raw_reaction_add 也就是webhook 中 事件就有可以偵測反應
回傳為 discord.RawReactionActionEvent
內容 | 說明 |
---|---|
channel_id | 頻道ID |
emoji | 使用的表情 |
event_type | 添加表情 or 去除 |
guild_id | 伺服器ID |
member | 伺服器成員資訊 |
message_id | 訊息ID |
user_id | 新增反應或刪除反應的使用者 ID |
@client.event
async def on_raw_reaction_add(payload):
print(payload)
from discord.commands import Option
def main(Bot):
name = "貼圖反應"
print(f"{name} 註冊成功")
emojis = {1: "1️⃣", 2: "2️⃣", 3: "3️⃣", 4: "4️⃣", 5: "5️⃣", 6: "6️⃣", 7: "7️⃣", 8: "8️⃣", 9: "9️⃣", 10: "🔟"}
@Bot.slash_command(name="1233", description="建立訊息並帶數量貼圖反應")
async def react(ctx, number: Option(int, "建立數量", min_value=1, max_value=10, required=True)):
await ctx.respond("建立了一個訊息")
request = await ctx.send("測試訊息")
for emoji in range(number):
await request.add_reaction(emojis[emoji + 1])