【问题标题】:Find the content of a discord message with discord.js使用 discord.js 查找不和谐消息的内容
【发布时间】:2023-03-16 16:02:01
【问题描述】:

我正在制作一个不和谐的机器人,它可以创建票证来验证客户的票证。

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

【问题讨论】:

    标签: javascript node.js discord discord.js


    【解决方案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 是迄今为止最简单和最有效的方法,但我想我会列出其他方法以防万一)

    【讨论】:

    【解决方案2】:

    从discord.js 文档here 中,您可以使用TextChannel 类中发送到的频道中的最后一条消息,使用lastmessage.id 方法获取其ID 并将其用作您的ticketid。

      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
    

    【讨论】:

    • 我相信他们在那里指定了他们想使用消息 content 的问题。无论哪种方式,如果他们只需要 ID,他们就可以使用 TextChannel.lastMessageID
    猜你喜欢
    • 1970-01-01
    • 2021-10-19
    • 2021-07-13
    • 2021-02-12
    • 1970-01-01
    • 2018-03-20
    • 2021-08-04
    • 1970-01-01
    • 2018-02-14
    相关资源
    最近更新 更多