변명은 만개 결과는 한개

[Discord python bot] 봇 실행시 / 메세지 수신시 event 본문

공부/Discord

[Discord python bot] 봇 실행시 / 메세지 수신시 event

노마십가 2020. 6. 25. 02:52
728x90
반응형
import discord

client = discord.Client()

token = "YOUR_BOT_TOKEN"

@client.event
async def on_ready():
    print("logged in as ")  #화면에 봇의 아이디, 닉네임 출력
    print(client.user.name)
    print(client.user.id)
    print("==============")
    # 디스코드에는 현재 본인이 어떤 게임을 플레이하는지 보여주는 기능이 있습니다.
    # 이 기능을 이용하여 봇의 상태를 간단하게 출력 가능합니다.
    game = discord.Game("with the API")
    await client.change_presence(status=discord.Status.idle, activity=game)

# 봇이 새로운 메시지를 수신했을때 동작되는 코드
@client.event
async def on_message(message):
    # 받은 메시지의 author 가 bot 인 경우 return
    if message.author.bot:
        return None

    # 답장할 채널은 메세지 받은 채널로 설정
    channel = message.channel

    if message.content.startswith('!커맨드'):   # message 의 contest 가 '!커맨드' 로 시작할때 
        await channel.send('abc')   # line 27의 channel 로 'abc' send
    else:   # line29 가 아날때
        await channel.send('bbc')   # line 27의 channel 로 'bbc' send

#client 실행
client.run(token)

on_ready

봇 실행시 'on_ready' event 수신함.

위 코드 동작 결과 

 


on_message

봇이 있는 채널에서 message 수신 시 'on_message' event 수신함.

위 코드 동작 결과

728x90
반응형