使用discord.js查找不和谐消息的内容

时间:2020-09-15 20:10:28

标签: javascript node.js discord discord.js

我正在制作一个discord机器人,该机器人创建票证以使用票证验证客户。

我希望能够进入该频道并从该频道获取最新消息并将其设置为我的ticketid变量。有办法吗?

2 个答案:

答案 0 :(得分:1)

最简单的方法是使用TextChannel.lastMessage属性:

<TextChannel>.lastMessage.content

您也可以使用MessageManager.fetch()

// get latest message in channel
<TextChannel>.messages.fetch({ limit: 1 }).then((message) => {
  console.log(message.content);
});

仅当您肯定邮件会被缓存的替代方法:

<TextChannel>.messages.cache.last()

({TextChannel.lastMessage是迄今为止最简单,最有效的方法,但我想我会列出其他方法以防万一)

答案 1 :(得分:0)

从discord.js文档here中,您可以使用lastmessage.id方法在TextChannel类中发送给您的频道中使用最后一条消息,以获取其ID并将其用于您的票证编号。

  const channelid = '222109930545610754'
  const channel = client.channelmanager.cache.fetch(channelid);
  // or const channel = client.channelmanager.cache.find(ids => ids.name === "Name");
  // if you have a specified guild. const channel guild.channelmanager.cache.find(ids => ids.name === "Name");
  var ticketnumber = channel.lastmessage.id