Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- web3.0
- 웹3.0
- embodied ai
- vision-language navigation
- Hexagonal Architecture
- Ai
- discord
- Rust
- 블록체인
- datahub
- GPT
- video understanding
- 챗봇
- databricks
- Golang
- vln
- airflow
- data discovery
- 디스코드
- 디스코드봇
- frontend
- bricksassistant
- 디스코드챗봇
- lambda
- embodied
- backend
- MLFlow
- Spark
- ChatGPT
- s3
Archives
- Today
- Total
BRICKSTUDY
[BricksAssistant] 디스코드 AI 챗봇 구축기 - (2) 디스코드 연동하기 본문
📌 Intro
안녕하세요!! Brickstudy 김민준입니다.
디스코드에 AI 챗봇 연동을 위한 첫번째 단계로 디스코드 챗봇을 구성합니다.
현재 게시글은 2024년 8월 기준 디스코드 챗봇을 만들기위해 필요한 설정 과정을 정리합니다. 디스코드 웹 UI변경에 따라 일부 설정 방법이 변경될 수도 잇습니다.
참고!! 디스코드 회원가입 + 채널 생성하는 과정은 생략 후 바로 챗봇 설정하는 단계로 진행합니다.
🗂️ Table of Contents
1. 디스코드 사용자 설정에서 개발자 모드 설정
2. 디스코드 개발자 사이트 접속
3. Bot 설정
4. OAuth2 설정
5. Discord 채널에서 봇 연동
6. Discord 챗봇 기능 개발
💡 Background
이전 블로그 글
[BricksAssistant] 디스코드 AI 챗봇 구축기 - (1) 기획 [링크]
1. 디스코드 사용자 설정에서 개발자 모드 설정
A. 디스코드 화면 왼쪽 하단의 톱니바퀴 모양 사용자 설정 클릭
B. 고급 > 개발자 모드 > 활성화
2. 디스코드 개발자 사이트 접속
A. 링크 접속 > "New Application" 클릭
B. application 이름 입력 > "Create" 클릭
3. Bot 설정
A. 왼쪽 메뉴바에서 "Bot" 클릭
- USERNAME : 디스코드 봇상에 보여질 이름
- Authorization Flow
- Public BOT : bots을 누구나 사용하게 할 수 있을지 체크
- 보안 때문에 Privte으로 체크 안하고 싶지만, "비공개 애플리케이션은 기본 인증 링크를 포함할 수 없어요"라는 경고가 뜨면서 Bot의 변경사항 저장 불가(일단 Public으로 진행하고 추후 방법 찾을 시 글 업데이트 할 예정!!)
- Public BOT : bots을 누구나 사용하게 할 수 있을지 체크
- Privileged Gateway Intents : 게이트웨이 권한 관련된 부분
- 모두 다 체크해야만 정상 진행 가능
- Bot Permissions
- 챗봇의 사용 용도에 맞춰서 권한 부여
- 현재 예시에서 사용자 응답을 기준으로 기본 메시지와 쓰레드 형식 메시지를 전달할 예정으로 아래와 같이 권한 부여
4. OAuth2 설정
A. 왼쪽 메뉴에서 OAuth2 클릭
- 디스코드 챗봇을 연동하기 위한 URL 설정
- OAuth2 URL Generator
- scopes : bot 클릭
- Bot Permissions : Bot 설정과 동일하게 클릭
B. GENERATED URL > Copy 클릭
5. Discord 채널에서 봇 연동
A. 이전에 복사한 링크 디스코드 채널에 붙여넣기
- 디스코드 챗봇을 연동하기 위한 URL 설정
B. 링크 클릭 후 확인
- 해당 대화방에서 챗봇이 참가되었을 경우 연동 완료
6. Discord 챗봇 기능 개발
A. 디스코드 개발자 사이트 이동 > 왼쪽 Bot 메뉴 클릭 > Token 생성
- 해당 토큰을 활용해 Discord 챗봇의 기능 개발이 가능합니다.
B. 파이썬 코드 작성
- 디스코드 라이브러리 설치
# 디스코드 설치
pip install discord.py
# 환경변수 설정을 위해 설치
pip install python-dotenv
- .env 파일 작성
DISCORD_TOKEN="{복사한 토큰 입력}"
- 실행파일 작성
- 챗봇 기능 개발은 document 참고 (https://discord.com/developers/docs/intro)
from dotenv import load_dotenv
import os
import discord
from discord.ext import commands
load_dotenv()
DISCORD_TOKEN = os.getenv("DISCORD_TOKEN")
intents = discord.Intents.default()
intents.message_content = True
bot = commands.Bot(command_prefix="!", intents=intents)
@bot.command()
async def ping(ctx):
await ctx.send("Pong!")
if __name__ == "__main__":
bot.run(DISCORD_TOKEN)
B. 코드 실행 후 동작 확인
- `python app.py` 실행 후 아래와 같이 정상적으로 sessin ID가 보이면 됩니다.
- 오른쪽에 챗봇이 온라인되어있고 "!ping" 채팅을 했을 때, 응답이오면 연동이 완료되었습니다.
'프로젝트' 카테고리의 다른 글
5년, 10년 뒤를 바라보는 기술 탐방기 (0) | 2024.09.21 |
---|---|
[바이럴 탐지 프로젝트] (1) 바이럴, 이것 뭐에요~? (0) | 2024.08.25 |
[BricksAssistant] 디스코드 AI 챗봇 구축기 - (3) chatGPT 연동하기 (0) | 2024.08.03 |
Video understanding 분야 찍먹하기 (0) | 2024.07.28 |
[BricksAssistant] 디스코드 AI 챗봇 구축기 - (1) 기획 (0) | 2024.07.25 |