如何將嵌入式訊息發送給機器人並進入伺服器
P粉127901279
P粉127901279 2023-08-03 16:05:24
0
1
594
<p>我尋找的是將我傳遞的程式碼嵌入到機器人每次進入伺服器時的第一個可用頻道中。 <br /><br />這將是程式碼片段。 </p><p><br /></p> <pre class="brush:php;toolbar:false;">const { Client, GatewayIntent`your text`Bits, MessageEmbed } = require('discord.js'); const config = require('./config.json'); const { EmbedBuilder } = require('discord.js'); const client = new Client({ intents: [ GatewayIntentBits.GuildMessages, GatewayIntentBits.Guilds, GatewayIntentBits.GuildMembers, GatewayIntentBits.GuildPresences, GatewayIntentBits.MessageContent ] }); const prefix = config.prefix; client.on('ready', () => { console.log('Bot Ready'); }); client.on('messageCreate', message => { if (message.content === '!ping') { message.channel.send('pong'); } }); client.on('guildCreate', guild => { const channel = guild.channels.cache.find(channel => channel.type === 'text' && channel.permissionsFor(guild.me).has('SEND_MESSAGES')); if (channel) { const exampleEmbed = new MessageEmbed() .setColor(0xF99CF8) .setTitle('**B**') .setAuthor('S') .setThumbnail('https://i.imgur.com/N4') .setDescription('H') channel.send({ embeds: [exampleEmbed] }); } }); client.login(config.token);</pre> <p>由於這段程式碼,機器人在進入伺服器時不會發送任何類型的訊息,而是正常啟動。 </p>
P粉127901279
P粉127901279

全部回覆(1)
P粉006847750

如果你正在使用 discord.js v14,那麼你需要更新回覆訊息時使用嵌入訊息(Embeds)的方法。只需將程式碼變更為以下內容:


client.on('guildCreate', guild => {
const channel = guild.channels.cache.find(channel => channel.type === 'text' && channel.permissionsFor(guild.me).has('SEND_MESSAGES'));
if (channel) {
    const exampleEmbed = new EmbedBuilder()
        .setColor(0xF99CF8)
        .setTitle('**B**')
        .setAuthor('S')
        .setThumbnail('https://i.imgur.com/N4')
        .setDescription('H') 
    channel.send({ embeds: [exampleEmbed] });
}});

另外,你需要將第一行修改為:

const { Client, GatewayIntentBits, EmbedBuilder} = require('discord.js');

只需刪除第三行以使你的程式碼更清晰。

要了解更多細節,請造訪此處 : https://discordjs.guide/popular-topics/embeds.html#embed-preview

#
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板