discord.js를 이용하여 디스코드 봇 만들기

discord.js 알아보기-(1)ping명령어 만들기

본 토픽은 현재 준비중입니다.공동공부에 참여하시면 완성 되었을 때 알려드립니다.

prefix 지정하기

prefix는 번역하면 접두사 라는 뜻을 가지고 있습니다. 한마디로 봇의 명령어를 사용할때 모든봇이 명령어를 겹치지 않도록 하는것은 힘드므로 prefix로 시작하는 명령어만 인식하도록 하는 방식입니다. 먼저 prefix를 config.js에 등록합니다.

module.exports = {
  token: 'TOKEN',
  prefix: '!'
}

이제 메세지를 보냈을때 이벤트를 처리하는 코드를 작성합니다.

const Discord = require('discord.js')
const config = require('./lib/config')

const client = new Discord.Client()

client.on('ready', () => {
  console.log('봇이 켜졌습니다.')
})

client.on('message', (message) => {
  if(message.channel.type == 'dm') return
  if(!message.content.startsWith(config.prefix)) return

  if(message.content.startsWith(config.prefix + 'ping')) {
    message.channel.send(client.ping + ' ms')
  }
})

client.login(config.token)

채널이 DM(개인 메세지)이거나 prefix로 시작하지 않았을 경우 리턴해서 이벤트를 취소합니다. 그리고 !ping으로 시작했을 경우 client.ping 으로 봇의 핑을 얻어옵니다. message.channel.send 로 메세지의 채널에 핑을 보냅니다. 성공하셨다면 아래와 같은 모양이 될 것입니다. 성공하셨다면 축하드립니다!

  • 봤어요 0명

댓글

댓글 본문
  1. 옾투앙
    config.json이라는 파일에
    'prefix' 이라는 값을 추가하라는 말입니다
    ( ex :

    {
    "prefix":"접두사",
    "token":"토큰값"
    }
    대화보기
    • 누군가임
      스타라이트님 찾았다...
    • 먼저 prefix를 config.js에 등록합니다.가 뭔말
    • 누군가
      스타라이트 찾았ㄷ...
    • 제가 누구냐구요? 저도 몰라요
      스타라이트님 왜 여기 계시죠 ㅎ
    • 얌얌
      흑흑 다음강좌가 나올 날을 얌전히 기다리구 있습니다