카테고리 없음

discord js 로 간단한 봇 개발하기 1 초기 설정

매골수수 2023. 10. 24.

discord js 로 간단한 봇 개발하기 1 초기 설정

초기설정을 해보자. 이곳에서 우리가 해야할건 1. 토큰 받고 저장하기 프로젝트 내에 특정 json이나 원하는 파일형식으로 저장시킨다. 2. gateway intents를 설정하기 다. ON해줬습니다. 일종의 권한 설정입니다. 3. 코드 작성 GatewayIntentBits를 import해주고 사용합니다. 4. 봇 출격 준비 일종의 시작입니다. ready이벤트는 봇을 이용가능하게봇이 준비됐음을 알리는 만드는 이벤트입니다.

 



discord js 로 간단한 봇

대표적인 intents 예시

0. 필수 권한 GatewayIntentBits.Guilds 1. 디스코드 서버에서 메시지 정보 불러오기 GatewayIntentBits.MessageContent GatewayIntentBits.GuildMessages 2. 디스코드 개인 메시지 채널 권한

그 외 intents는 아래 사이트를 참조해 주세요단순한 slash command 만들기 commands 폴더에 ping.js 파일 만들기ping.js에 아래 코드 작성하기 프롬프트에서 node .register.js를실행하여 명령어를 등록하시고node index.js를 실행하여 봇을 실행시킵니다.

위의 과정을 거친다면 채팅에 ping을 입력할 시명령어가 자동으로 뜨게 됩니다.

대표적인 intents

일반적인 봇 만들기

1 discord 패키지를 설치하자. Powershell 등 터미널에서 명령어를 입력해줍니다. ip install discord.py

2 각자 활용하는 IDE에서 프로젝트 폴더와 python 자료를 만든다. 이 때 python 파일명이 discord이면 안 됩니다. 또한 이 단계에서 봇의 token을 복사해주어야 하는데, Discord Developer Portal의 Bot 탭에서 copy 버튼을 클릭하시면 됩니다.

token을 확인하지 못했다면, reset token을 선택해 새로운 token을 생성해 copy합니다. 4) 작성한 python 자료를 저장하고 실행합니다. ython bot.py

5 실행하면 봇은 온라인 상태가 됩니다. 6) 다음과 같이 정상적으로 작동하면 일반적인 봇이 완성되었습니다.

 



0. 봇 계정 생성 및 초대

1 Discord Developer Portal에서 로그인 2 New Application을 클릭하고 Application의 이름을 짓는다. 이 때 이름이 너무 흔하면 이후 Add bot 단계에서 진행이 불가능합니다. 3 이런 화면이 나타납니다. 일반적인 봇 설정은 이곳에서 할 수 있어요. 4 Bot 탭으로 이동해 Add Bot을 클릭합니다. 2단계 인증을 설정해 두었다면 6자리 코드를 입력해야 합니다.

Google OTP 등 2단계 인증 앱에서 코드를 확인할 수 있어요. ) 5 이런 화면이 나타납니다. 6 만드러진 봇을 서버에 초대하기 위해, OAuth2 탭을 클릭합니다. 7) SCOPES에서 bot을 체크하고, 필요한 권한을 선택한 후 만드러진 URL을 복사해 접속합니다.

명령어 배포하기.

Slash Commands를 소개할 때 말씀드렸었죠? 배포 하는 과정이 있다고, 배포를 하지 않으면 discord는 이 Bot이 어떤 명령어를 가지고 있는지 알 수 없기 때문에 Slash Command가 동작하지 않습니다. 그러니까 우리는 Command가 뭐가 있는지 discord에 알려 주시기 바랍니다야 합니다. 코드에서 add 부분들을 추가해주세요. 이 코드는 서버가 실행 됐을 때 읽어들인 Commands들을 특정 서버에 배포해주는 역할을 합니다.

명령어 추가하기.

자 그럼 명령어를 추가해봅시다. 프로젝트 내에 commands라는 폴더를 만들어주세요. 왜 만드는지는 차차 설명 드리겠습니다. 그리고 commands 폴더 안에, ping.js라는 자료를 만들겠습니다. 방금 작성한 코드는 명령어 배열을 봇에게 등록하는 코드입니다. 명령어를 index.js에 쭉 나열해서 추가할 수도 있겠지만, 그럼 구분하기도 어렵고 수정도 어렵겠죠? 그래서 명령어는 commands 폴더에서만 새로 만들어서 작성하고, 그 파일들을 읽어들여서 명령어로 만듭니다.

interaction 주요 반응 함수들 Tip

interaction 주요 반응 함수들메시지 보내기 interaction.reply content start 메세지를 보내기 위해 대기하기 interaction.deferReply .editReply, .deleteReply, .followUp를 안정적으로 사용하실려면 꼭 앞에 먼저 위의 코드를 실행하세요 보낸 메시지 변경하기 interaction.editReply content end 보낸 메시지 삭제하기 interaction.deleteReply메시지 반응 대기 끝내기 interaction.deferUpdate 메시지가 반응을 대기중일때 실행하면 대기중이 사라집니다.

자주 묻는 질문

대표적인 intents

0 자세한 내용은 본문을 참고 해주시기 바랍니다.

일반적인 봇 만들기

1 discord 패키지를 설치하자 자세한 내용은 본문을 참고하세요.

일반적인 봇 만들기

1 Discord Developer Portal에서 로그인 2 New Application을 클릭하고 Application의 이름을 짓는다 자세한 내용은 본문을 참고하세요.

댓글

💲 추천 글