Discord bot 来自 PC 的普通用户名,但来自手机的 @invalid-user

Posted

技术标签:

【中文标题】Discord bot 来自 PC 的普通用户名,但来自手机的 @invalid-user【英文标题】:Discord bot normal user name from pc, but @invalid-user from phone 【发布时间】:2020-02-28 23:13:07 【问题描述】:

我目前正在为我朋友的一个服务器创建一个独特的不和谐机器人,但我遇到了一个问题。代码如下所示:

client.on('message', message => 
      if(message.content.startsWith($prefixkick))
         if(message.member.hasPermission('KICK_MEMBERS', 'BAN_MEMBERS'))
              let member  = message.mentions.members.first();

前缀是 e$。

当我调用它时,它可以正常工作并且机器人会写入

back @member has been kicked. 

在电脑上,我看到提到了成员的名字,但从手机上,我看到了

@invalid-user has been kicked. 

【问题讨论】:

【参考方案1】:

这有点是由 Discord 客户端引起的,因为您可以在 PC 上看到提及,但在移动设备上看不到。我也遇到过同样的情况,所以我决定显示成员用户名而不是提及,您可以使用:member.displayName,另外您可以在名称旁边添加 (ID: id) if你愿意。

【讨论】:

嘿,感谢您的帮助,但是使用这种方法,我得到了 [object Object] (我使用数组来使响应随机)但我想我可以弄清楚为什么会这样。谢谢!

以上是关于Discord bot 来自 PC 的普通用户名,但来自手机的 @invalid-user的主要内容,如果未能解决你的问题,请参考以下文章

Python discord Bot 处理来自一个用户的消息并在 webhook 中发送它们

Discord Bot JS:编辑来自先前斜杠命令交互的回复

Discord JS npm install discord.js 问题

如何使用 discord.js 从 discord bot 向特定用户发送消息

将 guildUserProperties.Mute 设置为 false 时,Bot 不会取消静音用户

如何使用 discord.py 让 discord bot ping 用户 [关闭]