Discord.js에서 임베디드 할 때주의 사항

# 몹시 빚진 페이지 : Discord.js에서 embed (내장 메시지) 처리

갑자기 discord.js에 대해 잠시 설명합니다. 알고 계신 분은 여기

환경



npm v6.14.4
node.js v12.18.0
discord.js v12.2.0

Discord.js에서 로컬 이미지 포함



아무래도 Discord.js를 사용하여 BOT을 만들기 시작한 일주일 초보자입니다.
아, 그리고 첫 투고입니다. (기사의 치열함은 크게 보아주세요)

Discord에서 임베디드란?



그런데, discord로 정보를 정리해 멋지게 토해내는 수단에, embed라고 하는 형식이 있습니다. (자세한 내용은 몹시 빚진 페이지을 참조하십시오.)

이를 사용하면 다음과 같이 멋지고, 시원하고 세련된 (거의 같은 의미) 느낌으로 정보를 정리할 수 있습니다.


로컬 이미지 포함



본제입니다. embed에 임베드하고 싶은 이미지를, 넷의 바다 속에서 url 지정하는 것이 아니라 자신의 PC로부터 지정하고 싶을 때, 한 번 필요합니다. 구체적으로는 다음과 같이 해야 합니다.

discord_BOT.js
const discord = require('discord.js');
const client = new discord.Client();

// ~~~省略~~~

// 参加しているチャンネルにメッセージが送信された時に実行
client.on("message", message => {
// BOTが自分の投稿に反応しないように
     if(message.author.bot)return;
     message.channel.send({
        embed : {
            image : {
              url : "attachment://暫定ファイル名"
            }
        },
        files : [{ attachment : "ローカルのファイルパス", name : "暫定ファイル名"},
                 ..., /*使う画像の分だけ*/
                 ]                  
    }
// ~~~省略~~~
//サーバーにログインする
client.login("BOTのトークン", true);

 매우 단순한, 메세지가 보내지면 반드시 화상 임베드해 보내는 짜증나지 않는 BOT입니다.
주목하고 싶은 것은 url 의 지정 방법. attachment:// 라고 붙어 있습니다. 그 뒤에 files 속에도 attachment 의 문자가 있습니다. 이것은 filesname 로 지정한 변수에 이미지 파일을 넣고 있는 것과 같다고 생각합니다(보험).url 에서 nameattachment:// 와 함께 로컬 이미지를 지정할 수 있습니다.

주의점



그건 그렇고, 진짜 주제입니다. 이 name , 일본어를 지원하지 않는 것 같습니다.
name 는 반각 영숫자로 합시다!

오랫동안 주변의 설명을 이해하기 어렵게 해 온 버릇에게 말하고 싶은 것은 이것뿐입니다.
변수 이름은 영어로 만들겠습니까?

「무엇을 지금 더…」라고 하는 분도 계실 것입니다.

하지만, name 를 변수라고 생각하지 않고 함수의 타이포나 버젼의 벽을 의심해 하루를 낭비해 버릴 가능성을 깨고 싶었습니다. 아무래도 아까운 시간의 사용법이었을 것이다.

반복하지만 첫 투고인 것으로, 흔들림이라든지 보기 쉬움인지 잘 모릅니다.
그 중 졸문을 읽는 고행을 참아 주신 여러분에게는 가볍게 감사를.

 

좋은 웹페이지 즐겨찾기