不和谐.JS |发布特定链接后自动踢某人?

Posted

技术标签:

【中文标题】不和谐.JS |发布特定链接后自动踢某人?【英文标题】:Discord.JS | Auto-Kick someone after posting a specific link? 【发布时间】:2021-09-13 04:26:14 【问题描述】:

我正在尝试为我的机器人添加一些“自动修改”功能,最近我添加了一个小命令,可以删除虚假的 Steam 交易链接(因为它们似乎每天都变得越来越普遍)as you can see in this image 基本上是令牌日志您的不和谐帐户,然后在您的所有服务器中发送相同的邮件。所以我开发了一些代码来自动删除这些链接,并用 gif 回复......但我想要更多,因为我相信这些机器人在从服务器中删除之前不会停止发送垃圾邮件,所以我想添加一个功能自动踢他们,并向他们发送一条关于他们被踢的原因的消息,并邀请他们回到服务器(因为这些人中的大多数人很快就恢复了他们的帐户)抱歉,我的当前工作代码如下:

client.on('message', (message) =>  //whenever a message is sent
if (message.content.includes('https://stearncomminuty.ru/tradofferr/new/?partner=1284276379&token=iMNdOshG'))  
  message.delete() //delete the message
    .then(message.channel.send('https://media.discordapp.net/attachments/859211601726275636/859977676919013386/5f36hh.gif'))
)

任何帮助或建议的改进将不胜感激!

【问题讨论】:

欢迎来到 Stack Overflow!不幸的是,我们不是代码编写服务。你有很多基本问题最好留给文档或谷歌,因为它们已经是深度覆盖的主题。一个好的起点是为您的每个问题查找“如何踢成员 discord js”、“如何发送用户 dm discord js”和“如何发送邀请 discord js”。 【参考方案1】:

你可以很简单地解决这个问题。只需在第一个 .then() 之后添加另一个 <guildMember>.kick() 函数即可。

例如:

client.on('message', (message) =>  //whenever a message is sent
    if (message.content.includes('https://stearncomminuty.ru/tradofferr/new/?partner=1284276379&token=iMNdOshG')) 
        message.delete() //delete the message
            .then(message.channel.send('https://media.discordapp.net/attachments/859211601726275636/859977676919013386/5f36hh.gif'))
            .then(() => message.member.kick('User kicked for sending spam links.'))
    
);

另外,你为什么不把https://stearncomminuty.ru/tradofferr/ 放在你的include() 中呢?这也将删除类似的 fake-steam-URL,而不仅仅是一个特定的,因为不太可能有很多这样的 URL。

【讨论】:

我尝试了类似的方法,但无法让它工作,我可能只是搞砸了,谢谢!我有| .then(user.kick) | “用户因发送垃圾邮件链接而被踢”会是他们的 DM 吗?或仅在审核日志中显示。 它将在审核日志中。如果要将其发送给被踢的用户,可以在踢后使用<GuildMember>.send('message')(与另一个.then()

以上是关于不和谐.JS |发布特定链接后自动踢某人?的主要内容,如果未能解决你的问题,请参考以下文章

如何让一个不和谐的 js 机器人在某人获得某个角色后向他发送消息

如何为不和谐的 js 解决快照(50/50 的机会踢成员)

不和谐机器人踢

我正在尝试让不和谐的机器人根据某人加入服务器后的时间赋予角色

有没有办法检查何时添加了某人的角色? [不和谐.js]

如何让不和谐的机器人踢出 Java 中的成员?