Botframework 无法将文件附件发送到Skype中文件位置的用户/超链接url
我有一个机器人发送一个文件作为下载到Skype用户的要求。这些文件位于物理路径中 代码如下:Botframework 无法将文件附件发送到Skype中文件位置的用户/超链接url,botframework,attachment,skype-bots,Botframework,Attachment,Skype Bots,我有一个机器人发送一个文件作为下载到Skype用户的要求。这些文件位于物理路径中 代码如下: public async Task SelectedOptionAsync(IDialogContext context, IAwaitable<string> argument) { var message = await argument; var replyMessage = context.MakeMessage(); Attachment attachment = n
public async Task SelectedOptionAsync(IDialogContext context, IAwaitable<string> argument)
{
var message = await argument;
var replyMessage = context.MakeMessage();
Attachment attachment = null;
attachment = GetLocalAttachment();
replyMessage.Attachments = new List<Attachment> { attachment };
await context.PostAsync(replyMessage);
await this.DisplayOptionsAsync(context);
}
private static Attachment GetLocalAttachment()
{
var Path = HttpContext.Current.Server.MapPath("~/images/demo.pdf");
var pdfdata = Convert.ToBase64String(File.ReadAllBytes(Path));
return new Attachment
{
Name = "demo.pdf",
ContentType = "application/pdf",
ContentUrl = $"data:application/pdf;base64,{pdfdata}"
};
}
public async Task SelectedOptionAsync(IDialogContext上下文,IAwaitable参数)
{
var message=等待参数;
var replyMessage=context.MakeMessage();
附件=空;
附件=GetLocalAttachment();
replyMessage.Attachments=新列表{attachment};
wait context.PostAsync(replyMessage);
等待此消息。DisplayOptions异步(上下文);
}
私有静态附件GetLocalAttachment()
{
var Path=HttpContext.Current.Server.MapPath(“~/images/demo.pdf”);
var pdfdata=Convert.ToBase64String(File.ReadAllBytes(Path));
返回新附件
{
Name=“demo.pdf”,
ContentType=“application/pdf”,
ContentUrl=$“数据:应用程序/pdf;base64,{pdfdata}”
};
}
在上面的代码中,我试图将文件的内容附加到消息附件中。当我检查Skype频道时,它显示“MIME类型无效”
注意:这在模拟器中工作。我不是在用Skype做生意。此外,我知道此功能在Skype for Business中不起作用
我还需要将文件的位置作为超链接URL发送给用户。目前,我们只能作为字符串发送,而不能作为URL发送。对于此功能,我们使用的是英雄卡。skype机器人目前不支持这样发送PDF。我也遇到了这个问题,这是我从Skype团队得到的回应。“出于发送潜在危险文件的安全考虑,Skype中的机器人程序只能发送媒体附件(视频、音频)。”
关于你的后续问题,你试过降价吗<代码>[文本](https://example.com)?感谢您的回复。我还想从bot发送url。我试着用postAysnc的方式发送它。但是用户收到的url消息是文本。有什么想法吗?你能分享一下你用来发送URL的代码吗?