如何使漫游器在特定时间段后删除消息

时间:2019-01-08 03:00:24

标签: javascript node.js discord.js

我正试图让我的机器人在15秒后删除这4条消息,但我不知道如何使它做到这一点。

let posts = snapshot.flatMap({(post) -> Post in

                let value = post.value as? Dictionary<String, String>

                let id = value?["id"] ?? ""
                let author = value?["author"] ?? ""
                let title = value?["title"] ?? ""
                let body = value?["body"] ?? ""

                return Post(id: id, author: author, title: title, body: body)
            })

4 个答案:

答案 0 :(得分:0)

可能想查看这个问题here.

如该帖子所述,最好的方法是在x秒后删除消息。

    message.reply('Hit or miss.')
  .then(msg => {
    msg.delete(10000)
  })
  .catch(); /*Used for error handling*/

正确的信用应该归功于LW001用户,他在我提到的帖子中回答了问题。

答案 1 :(得分:0)

由于this question很相似,因此您可以使用相同的技术-添加删除时间。回复后,.then()使用15秒计时器(15000毫秒)删除邮件:

message.reply("I guess they never miss, huh?").then(message => message.delete(15000)).catch(err => throw err);

或者如果您不能使用箭头语法:

message.reply("I guess they never miss, huh?").then(function(message) {
    message.delete(15000);
}).catch(function(err) {
    throw err;
});

答案 2 :(得分:0)

可以这样做。

> Task :buildEnvironment

------------------------------------------------------------
Root project
------------------------------------------------------------

.  .  .

    +--- com.android.tools.build.jetifier:jetifier-processor:1.0.0-beta04
|    |    +--- org.ow2.asm:asm:6.0 -> 7.0
|    |    +--- org.ow2.asm:asm-util:6.0 (*)
|    |    +--- org.ow2.asm:asm-commons:6.0 (*)
|    |    +--- org.jdom:jdom2:2.0.6
|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.3.0 -> 1.3.31 (*)
|    |    \--- com.android.tools.build.jetifier:jetifier-core:1.0.0-beta04 (*)
|    +--- com.google.protobuf:protobuf-java:3.4.0
|    \--- com.google.protobuf:protobuf-java-util:3.4.0 (*)
\--- com.google.firebase:perf-plugin:1.2.1
     \--- org.ow2.asm:asm:7.0

答案 3 :(得分:0)

BaseDialog