我在标题中陈述了我的问题
代码:
public static async Task Whois(SocketSlashCommand command)
{
var guildUser = (SocketGuildUser)command.Data.Options.First().Value;
var roleList = string.Join(",\n", guildUser.Roles.Where(x => !x.IsEveryone).Select(x => x.Mention));
var embedBuiler = new EmbedBuilder()
.WithAuthor(guildUser.ToString(), guildUser.GetAvatarUrl() ?? guildUser.GetDefaultAvatarUrl())
.WithTitle("Roles")
.WithDescription(roleList)
.WithColor(Color.Green)
.WithCurrentTimestamp();
await command.RespondAsync(embed: embedBuiler.Build());
}
我不知道该怎么办。谢谢你的帮助
可能的解决方案 1
首先,请确保您在不和谐客户端中显示嵌入。 进入文本和图像下的设置并激活显示嵌入和预览粘贴到聊天设置中的网站链接。
可能的解决方案 2
在一些 GitHub issues 中,您还必须为您的机器人授予“嵌入链接”权限。 (虽然这似乎不影响斜杠命令嵌入)
可能的解决方案 3
另一个机器人也可能正在从您的消息中删除嵌入,因此您可能想要添加一个日志机器人(以检查谁在删除嵌入)或创建一个只有您的机器人的新公会。
问题不太可能出在您的代码中,因为 Discord API 实际上不允许发送空消息。 (虽然这是可能的,如果您发送例如
_ _
作为您的消息内容)