NAFF 디스코드 봇 만들기
전문
Discord용 봇을 직접 만들고 싶으신가요? 커뮤니티를 위한 재미있는 아이디어가 있나요? 시작하겠습니다.
이 자습서에서는 Python 라이브러리NAFF를 사용합니다.
Developer Portal에서 Discord 봇을 만드는 과정은 건너뛰겠습니다. 확실하지 않은 경우 this guide을 확인하십시오.
환경
모든 Python 프로젝트와 마찬가지로 프로젝트 작업 시 가상 환경을 사용하는 것이 좋습니다. 이는 각 프로젝트가 시스템의 다른 항목에 영향을 미치지 않음을 의미합니다. 걱정하지 마십시오. 이것은 완전한 가상 머신을 설정하는 것이 아니라 단지 작은 Python 환경을 설정하는 것입니다.
cd "[your bots directory]"
python3 -m venv venv-name
# Linux
source venv/bin/activate
# Windows
venv/Scripts/activate
간단합니다. 이제 가상 환경을 사용하고 있습니다. 돈미라면
deactivate
를 입력하십시오. 가상 환경에 대해 자세히 알아보려면 this page을 확인하십시오.설치
파이썬 라이브러리 설치는 정말 쉽습니다! 이 명령을 입력하기만 하면 됩니다.
python3 -m pip install naff
기본 봇
먼저 정말 간단한 것을 만들어 봅시다. Discord에 연결하고 로그인했다고 말하기만 하면 됩니다.
import naff
bot = naff.Client()
@naff.listen()
async def on_ready():
print(f"Logged in as {bot.user.username}")
bot.start("your_bot_token_here")
이제 코드를 실행하면 로그인이 표시됩니다!
명령
로그인 메시지만 보는 것은 꽤 지루합니다. 실제로 명령이 있으면 좋을 것입니다. 그래서 지금 그것을 할 수 있습니다.
이를 위해 방금 작성한 코드에 슬래시 명령
ping
을 추가합니다.import naff
bot = naff.Client()
@naff.listen()
async def on_ready():
print(f"Logged in as {bot.user.username}")
@naff.slash_command("ping", description="A ping command", scopes=[some_guild_id])
async def ping(ctx: naff.InteractionContext):
await ctx.send("Pong")
bot.start("your_bot_token_here")
데코레이터를 분석해 보겠습니다.
@naff.slash_command
는 NAFF에게 코루틴이 명령임을 알려줍니다. 거기에서 다음 매개 변수가 있습니다.Name
- 첫 번째 매개변수는 명령의 이름이며 여기서는 "ping"입니다.Description
- 사용자가 명령을 볼 때 표시되는 도움말 텍스트입니다.Scopes
- 이 명령을 사용할 수 있는 길드는 기본적으로 모든 곳에서 사용할 수 있습니다. 테스트를 위해 테스트 길드를 사용하는 것이 좋습니다. 더 빨리 업데이트되고 실수는 비밀로 유지됩니다 😉가지고 놀 수 있는 some more parameters이 있지만 향후 가이드를 위해 남겨둘 수 있습니다.
이제 슬래시 명령을 사용하는 NAFF 기반 디스코드 봇이 생겼습니다. 길드에서 봇을 시작하고
/ping
를 입력하세요!
Reference
이 문제에 관하여(NAFF 디스코드 봇 만들기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/lordofpolls/making-a-naff-discord-bot-5h1b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)