C#Discord Bot - 上传本地图像

时间:2018-05-11 16:04:40

标签: c# discord discord.net

我使用C#创建了这个机器人来帮助我在手机游戏中结盟。我们正在使用不和谐来沟通。我的机器人的一个功能是设置" Raid Lane"所以人们可以宣称他们要走的路。我们的联盟有一个分散在我们不和谐中的图像集,我希望在机器人设置针对该难度的raid通道时发布每个raid的相关图像。目前我有:

var embed = new EmbedBuilder();
            embed.WithTitle("Ultimus Raid - Level 40");

embed.WithImageUrl("https://cdn.discordapp.com/attachments/430797829078908928/441255069518921728/Lvl40raid.png");

await ReplyAsync("", false, embed);

这有点儿。我可以看到这些照片,但有时在我离开并重新开启不和之后,我看到的就是标题。在我的程序运行的后端有一个websocket错误。我试图通过使用本地图像而不是网址来解决这个问题,以防万一出现问题。我没有运气让我的机器人发布本地图像。我试过了

embed.WithImageUrl("C:/Users/Administrator/Desktop/DiscordBot/Pictures/Lvl40raid.png");

以及\而不是/。还尝试了embed.ImageUrl = ...命令。

2 个答案:

答案 0 :(得分:2)

这对我有用(使用discord.net):

var guild = _client.Guilds.Single(g => g.Name == "guild name");
var channel = guild.TextChannels.Single(ch => ch.Name == "channel name");
await channel.SendFileAsync("C:\\Pictures\\something.png","Caption goes here");

答案 1 :(得分:0)

Paul's answer将完成任务,但是,如果您想在调用机器人的渠道中发送文件,则可以使用:

await Context.Channel.SendFileAsync("{FILEPATH}", "CAPTION");