본문 바로가기
디스코드 봇 상세한 사용법/MEE6 (미육)

✨ MEE6 - 커스텀 커맨드 (Custom Commands)

by 뒬탕 2022. 3. 5.
반응형

 

 커스텀 커맨드 (Custom Commands)자신만의 명령어를 만들고 자신만의 메시지를 띄울 수 있는 기능입니다. (프리미엄 결제시에는 역할을 주거나 없애는 것도 가능합니다.) 서버 내에서 반복되는 질문이나 안내사항들은 명령어를 쳤을 때 보이게 하면 좋겠지요. 또 재미용으로 만들어둘 수도 있을 겁니다! 

 

이렇게 쓰실 수 있습니다!

 

목차

     

    커스텀 커맨드 추가하기

    커스텀 커맨드를 추가하시려면 대쉬보드에서 커스텀 커맨드(Custom Commands) 항목에 들어가 위쪽의 New custom command를 눌러주세요. 무료 버전의 경우 커스텀 커맨드를 1개만 추가 가능합니다.

     

    다 설정하시고 Create new command를 눌러 저장하시면 됩니다. Discard를 누르면 만드는 것을 취소합니다. 설정하는 항목들은 아래와 같습니다.

     

    커스텀 커맨드 설정 내용

    템플릿(Template)/커멘드(Command)

     템플릿(Template)은 미리 만들어진 커스텀 커맨드 양식입니다. 무료 버전일 경우에는 선택하지 않으셔도 됩니다. 프리미엄 버전일 경우 자동 역할이나 고급 옵션이 있다 합니다. 

     

     커멘드(Command)명령어를 설정하는 것입니다. 해당 명령어를 치면 아래에서 설정할 메시지가 나가게 됩니다. 명령어 앞에는 항상 느낌표(!)가 붙습니다. 명령어는 영어로만 설정 가능합니다.

     

    액션(Action)

     

     액션(Action)명령어를 치면 하는 행동입니다. 무료 버전에는 메시지를 보내기만 할 수 있습니다. 프리미엄 버전에서는 역할을 주거나 역할을 제거할 수 있습니다.

     

    액션을 추가하려면 Add an action 버튼을 눌러주시면 됩니다. 이후 나온 창에서 상세 설정을 해주시면 됩니다.

     

    액션 종류 선택

    명령어를 입력하면 어떤 행동을 할지 정합니다. 4가지 종류가 있습니다.

    • Bot sends in channel : 특정 채널에 메시지를 보냅니다.
    • Bot responds with : 명령어가 보내진 채널에 바로 메시지를 보내 반응합니다.
    • Bot gives roles : 역할을 줍니다. 프리미엄 옵션입니다.
    • Bot removes roles : 역할을 제거합니다. 프리미엄 옵션입니다.

     

    메시지 종류 선택

     액션 종류에서 위 2개를 선택하셨으면 보내는 메시지의 종류를 선택할 수 있습니다. 메시지의 종류에는 다음 3가지가 있습니다. 메시지 종류는 한 번에 여러 개를 선택 가능합니다.

     

    임베드(Embed)임베드 메시지를 보냅니다. 임베드 메시지에 대한 내용은 아래를 봐주세요.

     

    📟 디스코드에서 임베드에 대해 알아봅시다!

    디스코드에서 임베드란?  임베드(Embed)란 SNS 등 인터넷에서 다른 사이트의 내용을 그대로 가져와서 보여주는 것을 뜻합니다. 디스코드에서 링크를 올리면 아래에 해당 링크의 내용을 미리 보여

    discordbot.tistory.com

     

    비밀(Private)명령어를 입력한 사람에게 개인 DM으로 보내지는 메시지입니다. Bot responds with 옵션을 선택해야만 고를 수 있습니다.

     

    랜덤(Random)은 여러 개의 메시지 중 하나를 랜덤으로 보냅니다. 

    랜덤 설정에서 메시지 추가는 아래 Add Message를 눌러주시면 됩니다.

     

    메시지 입력

    메시지는 마크다운을 이용하여 굵거나 기울이게 할 수 있습니다. 또 글자색을 넣을 수 있습니다.

    메시지 포메팅을 이용하면 역할, 유저, 채널 멘션을 하거나 시간 표시를 할 수 있습니다.

    커스텀 커맨드 변수를 이용하면 유저 정보나 채널 정보를 메시지에 넣어줄 수 있습니다.

     

    각각의 항목에 대한 자세한 설명은 링크를 눌러 해당 글을 참고해주세요!

     

    권한(Permissions)

    어떤 조건과 권한에서 명령어를 쓸 수 있는지를 정합니다.

    Banned를 선택 후 Banned Roles에 역할을 추가하면 해당 역할을 가진 사람은 명령어를 쓸 수 없습니다. Banned Channels에 채널을 추가하면 해당 채널에서는 명령어 사용이 불가능합니다.

     

    Allowed를 선택한 다음 Allowed Roles에 역할을 추가하면 해당 역할이 있는 사람만 명령어를 쓸 수 있습니다. 모두가 이 명령어를 쓰는 걸 원하지 않으면 역할 목록에서 @everyone은 지워주세요.

     

    추가 설정(Additional settings)

    • 커맨드 설명(Command Description)은 해당 명령어에 대한 설명을 적는 곳입니다.
    • 쿨타임(Cooldown)은 한번 명령어를 입력했으면 해당 시간이 지난 뒤에야만 다시 명령어를 쓸 수 있도록 바꿔줍니다. 명령어의 도배를 막기에 좋습니다. 유저 쿨다운(User Cooldown)과 서버 쿨다운(Server Cooldown)이 있습니다.
    • Delete command usage를 체크하면 명령어를 입력했던 메시지를 지웁니다.
    • Do not reply to command를 체크하면 무엇이 달라지는지는 나중에 추가하도록 하겠습니다.

     

    커스텀 커맨드 예시

    위에서 커스텀 커맨드 설정에 대한 설명은 모두 마쳤습니다! 이제부터 무료 버전에서 만들 수 있는 커스텀 커맨드 몇 가지 예시를 적어볼까 합니다.

     

    예시 1 : 서버 안내 메시지

    !serverhelp라 적으면 서버 안내 메시지를 보내게 만들어봅시다.

     

    처음에는 커멘드(Command)에 !serverhelp라 적어줍니다.

     

    그 후 액션을 추가하고 액션 종류는 Bot responds with, 메시지 종류는 embed를 설정해줍니다. 그리고 자신이 원하는 대로 메시지를 꾸밉니다.

     

    이 외의 설정은 취향껏 해주시고 Create new command를 눌러 마무리해줍니다.

     

    그럼 다음과 같이 작동됩니다!

     

    예시 2 : 제안

    !suggest라 적고 뒤에 제안사항을 적으면 특정 채널로 제안 사항이 보내지는 명령어를 짜 봅시다.

     

    우선 커맨드에는 !suggest라 적어줍니다.

     

    또 이번에는 액션을 두 개 추가해줄 겁니다. 첫 번째제안이 보내졌다고 바로 알려주는 메시지입니다. 액션 종류는 Bot responds with, 메시지 종류는 private로 해줘서 메시지를 명령어를 보낸 사람만 볼 수 있도록 해줍니다.

     

     두 번째제안사항이 특정 채널에 모여져서 올라가도록 할 겁니다. 액션 종류는 Bot sends in channel를 선택하고 메시지가 보내질 채널을 선택합니다. 메시지 종류는 embed로 해줍니다.

     

     그 후 임베드 메시지의 내용을 위와 같이 입력해줍니다. 커스텀 커맨드 변수를 이용해 내용을 가져와주세요. {...}는 입력한 제안 사항을 가져오고, {user.name}를 이용하여 닉네임을 가져옵니다.

     

    추가로 제안을 도배해서 보내면 안 되므로 User Cooldown을 걸고 원하는 시간을 아래에 입력해줍니다. 또 제안사항을 남들은 보지 못하게 Delete command usage를 체크해줍니다.

     

    그럼 다음과 같이 서버원이 제안사항을 적으면 해당 메시지가 바로 지워지고

     

    제안사항이 보내졌다는 메시지가 해당 사람의 개인 DM으로 보내집니다.

     

    채널에는 다음과 같이 제안사항이 정리됩니다.

     

    예시 3 : 재미용 궁합보기 명령어

    !love를 입력 후 이름 2개를 입력하면 두 사람 간의 궁합 퍼센트를 무작위로 보여주는 명령어를 만들어봅시다.

     

    우선 커맨드에는 !love라 적어줍니다.

     

    액션을 추가해 액션 종류를 Bot responds with로, 메시지 종류는 embedrandom으로 해줍니다. 

     

    그리고 임베드 메시지에 다음과 같이 입력해줍니다. 우선 메시지를 3개를 만들어 랜덤으로 3개의 메시지 중 하나가 나오게 할 겁니다. 메시지의 내용은 다음과 같이 적습니다.

     

    • {1}님과 {2}님의 궁합은 {random:0:33}%입니다.
    • {1}님과 {2}님의 궁합은 {random:34:67}%입니다.
    • {1}님과 {2}님의 궁합은 {random:68:100}%입니다!

     

    커스텀 커맨드 변수를 이용하여 {1}첫 번째 이름을, {2}두 번째 이름을 가져옵니다. 그리고 0부터 100까지의 숫자를 세 구간으로 나누고, 각 구간의 숫자 중 하나를 출력하기 위해 {random:x:y} 변수를 이용합니다.

     

    그럼 다음과 같이 메시지를 칠 때마다 다른 결과가 뜨게 됩니다!

     

    마치며

     

    지금까지 MEE6에서 명령어를 사용자가 자유롭게 만들 수 있는 커스텀 커멘드 기능에 대해 알아봤습니다. 이 기능을 이용하여 디스코드 서버를 자신이 원하는 커뮤니티로 만들어보세요!

     

    또 언제든지 궁금한 내용이 있으면 댓글을 달아주시거나
    화면 왼쪽 아래의 디스코드 아이콘을 누르면 실시간으로 답해드립니다!
    (아이콘이 보이지 않는다면 에드 블록을 꺼주세요)

    Feed & Back 서버 아바타
    https://discord.link/feedbackblog

    또 위 초대 링크를 눌러 Feed & Back 서버에 들어오시면
    블로그의 새 글을 알림 받고
    디스코드, 디코 봇 프로그래밍에 대해 질문할 수 있어요!

     

    반응형
    그리드형

    댓글