discord.py ํ๋ก์ ํธ 2: Welcomer ๐๐ฝ
์ฌ์ฉ์์ ์๋ฐํ์ ์ด๋ฆ์ผ๋ก ์ง์ ๋ ์ฑ๋์ ํ์ ๋ฉ์์ง๋ฅผ ๋ณด๋ ๋๋ค!
์์ํ๋ ค๋ฉด ๋ด์ ์ด๊ธฐํํด์ผ ํฉ๋๋ค. ์ด ์ฐ์ต์์๋ ๋ช ๋ น์ด ์๊ธฐ ๋๋ฌธ์ commands.Bot ๋์ discord.Client๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.
import discord
client = discord.Client()
๋ค์์ผ๋ก
on_member_join
์ด๋ฒคํธ๋ฅผ ์ถ๊ฐํ๊ณ ์ฑ๋์ ์ฝ์
์ ๋ณด๋ด๋๋ก ๋ด์ ์ง์ํด์ผ ํฉ๋๋ค.import discord
client = discord.Client()
@client.event
async def on_message_join(member):
channel = client.get_channel(channel_id)
embed=discord.Embed(title=f"Welcome {member.name}", description=f"Thanks for joining {member.guild.name}!") # F-Strings!
embed.set_thumbnail(url=member.avatar_url) # Set the embed's thumbnail to the member's avatar image!
await channel.send(embed=embed)
์ด์ ์ฝ๋๋ฅผ ์คํํ๊ณ alt ๊ณ์ ์ ๊ฐ์ ธ์ค๊ฑฐ๋ ์น๊ตฌ์๊ฒ ์๋ฒ์ ๊ฐ์ ํ๋๋ก ์์ฒญํ์ธ์.
ํ์ง๋ง ์ ๊น... ์๋ํ์ง ์์ต๋๋ค!
๊ตฌ์ฑ์ ์๋๋ฅผ ํ์ฑํํด์ผ ํ๊ธฐ ๋๋ฌธ์ ๋๋ค!
enabled the Privileged Intents in the dashboard์(๋ฅผ) ์ํํ ํ ์ฝ๋์์ ํ์ฑํํด์ผ ํฉ๋๋ค!
import discord
intents = discord.Intents.default()
intents.members=True
client = discord.Client(intents=intents)
@client.event
async def on_message_join(member):
channel = client.get_channel(channel_id)
embed=discord.Embed(title=f"Welcome {member.name}", description=f"Thanks for joining {member.guild.name}!") # F-Strings!
embed.set_thumbnail(url=member.avatar_url) # Set the embed's thumbnail to the member's avatar image!
await channel.send(embed=embed)
๋ฐฉ๊ธ ์ํํ ์์ ์
discord.Client
๊ฐ ์์๋ ๋ Members ์๋๋ฅผ ์์ฒญํ๋ผ๋ ์ง์๋ฅผ ๋ฐ์์ต๋๋ค. ์ด์ ํ์ ์ด๋ฒคํธ๋ฅผ ๋ณผ ์ ์์ต๋๋ค.์ด์ ์ฝ๋๋ฅผ ์คํํ์ฌ ๋ด์ด ์ฌ์ฉ์๋ฅผ ํ์ํ๋์ง ํ์ธํ์ธ์!
์ง๋ฌธ์ด ์์ผ์ญ๋๊น? ๋ค์ ๊ฒ์๋ฌผ์ ๋ํด ์ํํ ์์ ์ ๋ํ ์ ์์ด ์์ต๋๊น?
๋๊ธ๋ก ์๋ ค์ฃผ์๋ฉด ์ต๋ํ ๋นจ๋ฆฌ ๋ต๋ณ๋๋ฆฌ๊ฒ ์ต๋๋ค!
์ด ๋ด์ฉ์ด ์ ์ฉํ๋ค๋ฉด ๊ฒ์๋ฌผ์ ์ข์์๋ฅผ ๋๋ฅด๊ณ ์น๊ตฌ์ ๊ณต์ ํ์ธ์! ๋ํ ์ ๋ฅผ ํ๋ก์ฐํ์ฌ ๋ด ์ฝํ ์ธ ๊ฐ ์ถ์๋์๋ง์ ํผ๋์ ์ฌ๋ฆด ์ ์์ต๋๋ค!
Reference
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(discord.py ํ๋ก์ ํธ 2: Welcomer ๐๐ฝ), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://dev.to/mikeywastaken/discord-py-project-2-welcomer-46p7ํ ์คํธ๋ฅผ ์์ ๋กญ๊ฒ ๊ณต์ ํ๊ฑฐ๋ ๋ณต์ฌํ ์ ์์ต๋๋ค.ํ์ง๋ง ์ด ๋ฌธ์์ URL์ ์ฐธ์กฐ URL๋ก ๋จ๊ฒจ ๋์ญ์์ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ ์ธ ๋ฐ๊ฒฌ์ ์ ๋ (Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค