> 백엔드 개발 > 파이썬 튜토리얼 > Discord.py 2.0 명령이 작동하지 않는 이유는 무엇이며 어떻게 해결합니까?

Discord.py 2.0 명령이 작동하지 않는 이유는 무엇이며 어떻게 해결합니까?

DDD
풀어 주다: 2024-12-06 17:37:11
원래의
208명이 탐색했습니다.

Why Aren't My Discord.py 2.0 Commands Working, and How Do I Fix It?

Discord.py 2.0 명령 호출 문제: 오류 메시지 없음

문제:

언제 Discord.py 1.7.3에서 2.0으로 마이그레이션 중 명령이 실행되지 않습니다. 1.7.3에서 올바르게 작동함에도 불구하고 2.0에서는 오류 메시지가 없습니다.

이유:

메시지 내용이 수신되도록 하려면 Discord.py 2.0에서 명시적인 활성화가 필요합니다. ~의 의도.

해결책:

1. Discord 개발자 포털에서 인텐트 활성화:

  • Discord 개발자 포털에 로그인합니다.
  • 애플리케이션을 선택합니다.
  • "Bot" 섹션으로 이동합니다. .
  • 의도 아래에서 "메시지 콘텐츠 의도"를 활성화합니다. 탭.

2. Discord.py 코드의 봇에 인텐트 추가:

  • discord에서 Intents 클래스를 가져옵니다.
  • 인텐트 개체를 만들고 Intents.message_content를 True로 설정합니다.
  • 인텐트로 봇을 초기화합니다. 논쟁.

3. 코드 업데이트:

  • Discord.py 스크립트 상단에 다음 줄을 추가합니다.
intents = discord.Intents.default()
intents.message_content = True
로그인 후 복사
  • 다음 줄을 사용하여 봇을 초기화합니다. 의도 인수:
bot = commands.Bot(command_prefix='$', intents=intents, help_command=None)
로그인 후 복사

전체 코드:

import discord
from discord.ext import commands

intents = discord.Intents.default()
intents.message_content = True

bot = commands.Bot(command_prefix='$', intents=intents, help_command=None)

@bot.event
async def on_ready():
    print('bot is ready')

@bot.command(name='test1', aliases=['t1'])
async def test1(ctx):
    print('test command')

with open('token.txt', 'r') as f: TOKEN = f.read()
bot.run(TOKEN)
로그인 후 복사

이 단계를 구현하면 메시지 내용 처리를 활성화하고 Discord에서 명령 기능을 복원할 수 있습니다. .py 2.0.

위 내용은 Discord.py 2.0 명령이 작동하지 않는 이유는 무엇이며 어떻게 해결합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿