Skip to content

Commit

Permalink
New post
Browse files Browse the repository at this point in the history
  • Loading branch information
sunwoo-j committed Jun 24, 2024
1 parent 1d48e05 commit e5e56eb
Show file tree
Hide file tree
Showing 19 changed files with 514 additions and 34 deletions.
18 changes: 0 additions & 18 deletions _drafts/2024-05-31-discord-bot-5.md

This file was deleted.

2 changes: 1 addition & 1 deletion _drafts/2024-06-01-discord-bot-6.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 디스코드 봇 DIY - 6. 유저 데이터베이스
date: 2024-05-31 14:25:09 +/-TTTT
lastmod: 2024-05-31 14:25:09 +/-TTTT
last_modified_at: 2024-05-31 14:25:09 +/-TTTT
categories: [Python, discord.py]
tags: [python, discord, bot, database]
description: 엑셀 파일로 유저 정보 등록하고 관리하기
Expand Down
2 changes: 1 addition & 1 deletion _posts/2024-05-21-discord-bot-0.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 디스코드 봇 DIY - 0. 개념과 개발 계획
date: 2024-05-21 10:45:40 +/-TTTT
lastmod: 2024-05-22 14:45:00 +/-TTTT
last_modified_at: 2024-05-22 14:45:00 +/-TTTT
categories: [Python, discord.py]
tags: [python, discord, bot, planning]
description: 디스코드 봇의 개념과 봇 개발 계획
Expand Down
2 changes: 1 addition & 1 deletion _posts/2024-05-22-discord-bot-1.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 디스코드 봇 DIY - 1. 디스코드 봇 생성
date: 2024-05-22 09:31:20 +/-TTTT
lastmod: 2024-05-24 11:07:00 +/-TTTT
last_modified_at: 2024-05-24 11:07:00 +/-TTTT
categories: [Python, discord.py]
tags: [python, discord, bot]
description: 디스코드 봇을 생성하고 채팅에 대답하게 하기
Expand Down
2 changes: 1 addition & 1 deletion _posts/2024-05-24-discord-bot-2.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 디스코드 봇 DIY - 2. 기본적인 명령어 설정
date: 2024-05-24 11:07:32 +/-TTTT
lastmod: 2024-05-24 22:57:40 +/-TTTT
last_modified_at: 2024-05-24 22:57:40 +/-TTTT
categories: [Python, discord.py]
tags: [python, discord, bot]
description: discord.py 확장 라이브러리로 명령어 설정하기
Expand Down
4 changes: 2 additions & 2 deletions _posts/2024-05-27-discord-bot-3.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 디스코드 봇 DIY - 3. 신규 멤버 환영 메시지
date: 2024-05-27 10:53:19 +/-TTTT
lastmod: 2024-05-29 18:59:33 +/-TTTT
last_modified_at: 2024-05-29 18:59:33 +/-TTTT
categories: [Python, discord.py]
tags: [python, discord, bot]
description: 디스코드 이벤트 활용해서 환영 메시지 보내기
Expand Down Expand Up @@ -160,7 +160,7 @@ async def on_member_join(member):

`on_member_join()`의 argument로 받은 `member`에게서 막 참가한 길드의 ID를 따와 `welcome_channel`에서 상응하는 채널 ID를 받아내게 했으며, ID로 특정된 채널에 메시지를 출력하도록 설정했다. 이러면 길드마다 각각 설정된 개별 채널로 환영 메시지를 전송할 수 있다.

지금은 길드와 채널 ID를 직접 환경 변수로 적어 넣었지만, 길드 관리자가 환영 메시지를 보낼 채널을 봇에게 설정하도록 할 수 있겠다. 또, 길드마다 설정을 저장하려면 데이터베이스가 필요하기 때문에 나중에 다시 돌아오는 편이 나을 거라 생각된다. 다음은 본격적인 봇 개발을 시작하기 앞서
지금은 길드와 채널 ID를 직접 환경 변수로 적어 넣었지만, 길드 관리자가 환영 메시지를 보낼 채널을 봇에게 설정하도록 할 수 있겠다. 또, 길드마다 설정을 저장하려면 데이터베이스가 필요하기 때문에 나중에 다시 돌아오는 편이 나을 거라 생각된다. 다음은 본격적인 봇 개발을 시작하기 앞서 사용자가 봇과 어떻게 상호작용을 할 수 있는지 배워볼 것이다.

## 부록

Expand Down
16 changes: 6 additions & 10 deletions _posts/2024-05-30-discord-bot-4.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: 디스코드 봇 DIY - 4. Application Command
date: 2024-05-30 10:44:15 +/-TTTT
lastmod: 2024-05-31 11:02:25 +/-TTTT
last_modified_at: 2024-05-31 11:02:25 +/-TTTT
categories: [Python, discord.py]
tags: [python, discord, bot]
description: 내 디스코드 앱과 상호작용하는 기본적인 방법들
Expand Down Expand Up @@ -170,7 +170,7 @@ async def joined(interaction: discord.Interaction, message: discord.Message):

*"다람쥐 헌 쳇바퀴에 타고파"* 메시지의 공백 포함 글자수와 공백 제외 글자수가 정상적으로 출력됐다.

이렇게 Slash Command, User Command, Message Command 세 가지 Application Command 모두 구현하는 데 성공했다. 다음에는 봇의 출력을 더 보기 쉽게, 그리고 예쁘게 만들기 위해 필요한 embed 같은 요소들을 알아볼 것이다.
이렇게 Slash Command, User Command, Message Command 세 가지 Application Command 모두 구현하는 데 성공했다. 다음에는 봇의 출력을 더 보기 쉽게, 그리고 예쁘게 만들기 위해 필요한 embed 같은 UI 요소들을 알아볼 것이다.

## 부록

Expand Down Expand Up @@ -226,14 +226,10 @@ async def hello(interaction: discord.Interaction):
await interaction.response.send_message("Hello!")

@bot.tree.command(name='곱하기', description="숫자 두 개를 곱합니다")
async def multiply(ctx, first_int: int, second_int: int):
product = first_int * second_int
await ctx.send(f"결과는 {product}입니다.")

@multiply.error
async def multiply_error(ctx, error):
if isinstance(error, commands.BadArgument):
await ctx.send("오류: 정수 두 개를 입력해 주세요.")
@app_commands.describe(정수1="첫 번째 정수", 정수2="두 번째 정수")
async def multiply(interaction: discord.Interaction, 정수1: int, 정수2: int):
product = 정수1 * 정수2
await interaction.response.send_message(f"결과는 {product}입니다.")

@bot.tree.command(name='참가일', description="멤버의 서버 참가 날짜를 알려줍니다")
@app_commands.describe(member="조회할 멤버")
Expand Down
Loading

0 comments on commit e5e56eb

Please sign in to comment.