【问题标题】:How To Send A Discord.JS Startup Message To All Servers如何向所有服务器发送 Discord.JS 启动消息
【发布时间】:2021-06-02 12:25:29
【问题描述】:

我想询问我最近一直在尝试做的事情。我有一个 Discord.JS 机器人,它非常公开(130 多台服务器),我希望它向它所在的每台服务器中的任何频道发送消息,当机器人启动时,目的是创建一个“新更新”通知之一的渠道。请告诉我,谢谢!

-RocketFue1

【问题讨论】:

  • 有什么问题?这不是代码编写服务
  • 即使你在这里有一个实际的代码,我强烈建议你立即取消这个想法,因为你的客户端在启动后立即受到速率限制,并且你可能通过实现这个来禁止 API 使用功能由于滥用。

标签: node.js discord discord.js


【解决方案1】:

编辑:请不要计划这样做,因为这会很快限制您的费率。

首先,我想通知您,这不是代码编写服务。但是,我很乐意帮助您解决您的问题。

这是有可能的。有一个问题,没有默认的公会频道,所以你不能仅仅通过他们的公会对象获得他们的“主要”频道。如果您想这样做,则需要他们选择他们的频道并将该 ID 存储在某处。

这是一个简单的解决方案,您可以在其中循环访问 Discord 客户端的每个公会,并向某个频道发送消息。你不知道这个解决方案具体是什么频道,但如果它不是语音频道,你会向某个频道发送消息。

const Discord = require("discord.js");
require("dotenv").config();

// Creating our Client
const client = new Discord.Client();

// Event listener: when the bot is ready
client.on("ready", () => {
  // Looping through every guild the bot is in
    client.guilds.cache.forEach((guild) => {
    // Getting one of their channels
        let channel = guild.channels.cache.array()[2];
    // Sending the channel a message
        channel.send("Hey");
    });
});

client.login(process.env.DISCORD_BOT_TOKEN);

我希望这对您有所帮助,请随时阅读official Discord.js library documentation

【讨论】:

  • 请不要按照这个方法。它不仅会限制您的费率,而且您很有可能被暂时(或在某些情况下永久)禁止使用 API。
猜你喜欢
  • 1970-01-01
  • 2020-11-25
  • 1970-01-01
  • 2020-10-26
  • 1970-01-01
  • 2015-06-20
  • 2021-03-19
相关资源
最近更新 更多