如何让 discord 机器人向我 ping 的人发送 DM?
How do I get a discord bot send a DM to someone I ping?
我是相当新的编码,我想我会尝试制作一个不和谐的机器人。到目前为止,它很容易遵循,我已经开始尝试为我的机器人发出命令。但我无法弄清楚如何让我的机器人向我 ping ex 的人发送 DM。 !warn @person(原因)。我试过查找它,但找不到方法。
[Command("warn")]
[RequireUserPermission(GuildPermission.KickMembers, ErrorMessage = "You don't have the persmission ''warn_member''!")]
public async Task WarnMember(IGuildUser user = null, [Remainder] string reason = null)
{
if (user == null)
{
await ReplyAsync("Please Specify A User"); return;
}
if (reason == null) reason = "Not Specified";
这是我尝试发送 DM 的地方,但它发送给了 运行 命令的人,而不是我 ping 的人
await Context.User.SendMessageAsync("You have been warned for " + reason);
var EmbedBuilder = new EmbedBuilder()
.WithDescription($":white_check_mark: {user.Mention} was warned\n**Reason **{reason}")
.WithFooter(footer =>
{
footer
.WithText("User Warn Log");
});
Embed embed = EmbedBuilder.Build();
await ReplyAsync(embed: embed);
}
Context.User 总是指正在执行命令的用户。要向命令中提到的人发送消息,您需要对用户参数调用 SendMessageAsync() 函数。
await user.SendMessageAsync(...)
请记住,用户可以为您的机器人所在的服务器禁用直接消息,这可能会导致异常。
我是相当新的编码,我想我会尝试制作一个不和谐的机器人。到目前为止,它很容易遵循,我已经开始尝试为我的机器人发出命令。但我无法弄清楚如何让我的机器人向我 ping ex 的人发送 DM。 !warn @person(原因)。我试过查找它,但找不到方法。
[Command("warn")]
[RequireUserPermission(GuildPermission.KickMembers, ErrorMessage = "You don't have the persmission ''warn_member''!")]
public async Task WarnMember(IGuildUser user = null, [Remainder] string reason = null)
{
if (user == null)
{
await ReplyAsync("Please Specify A User"); return;
}
if (reason == null) reason = "Not Specified";
这是我尝试发送 DM 的地方,但它发送给了 运行 命令的人,而不是我 ping 的人
await Context.User.SendMessageAsync("You have been warned for " + reason);
var EmbedBuilder = new EmbedBuilder()
.WithDescription($":white_check_mark: {user.Mention} was warned\n**Reason **{reason}")
.WithFooter(footer =>
{
footer
.WithText("User Warn Log");
});
Embed embed = EmbedBuilder.Build();
await ReplyAsync(embed: embed);
}
Context.User 总是指正在执行命令的用户。要向命令中提到的人发送消息,您需要对用户参数调用 SendMessageAsync() 函数。
await user.SendMessageAsync(...)
请记住,用户可以为您的机器人所在的服务器禁用直接消息,这可能会导致异常。