我正在使用Microsoft Bot Framework将文件卡发送给频道或用户, 但文件卡的格式似乎不正确...无法单击文件卡或打开文件...
我如何生成卡:
FileInfoCard card = new FileInfoCard()
{
FileType = "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
UniqueId = driveItemUniqueId,
};
Attachment att = card.ToAttachment();
att.ContentUrl = fileLocation;
att.Name = fileName;
replyToConversation.Attachments.Add(att);
return replyToConversation;
将要发送给团队的json代码如下:
[{
"contentType": "application/vnd.microsoft.teams.card.file.info",
"contentUrl": "https://fileLocation.com/xyz",
"content": {
"uniqueId": "jfölasjflasjföiu289u9o2or2jor2l1ö1l3jrlö12j4l",
"fileType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
"etag": null
},
"name": "Meeting Minutes - testmeeting 2 fso - 26-1-2019.docx",
"thumbnailUrl": null
}]
Microsoft对该主题的资源: https://docs.microsoft.com/en-us/microsoftteams/platform/concepts/bots/bots-files
以以下示例为例:
{
"attachments": [{
"contentType": "application/vnd.microsoft.teams.card.file.info",
"contentUrl": "https://contoso.sharepoint.com/personal/johnadams_contoso_com/Documents/Applications/file_example.txt",
"name": "file_example.txt",
"content": {
"uniqueId": "1150D938-8870-4044-9F2C-5BBDEBA70C8C",
"fileType": "txt",
}
}]
}
编辑:附加信息。 我不确定uniqueId是否正确。 Word文件将上传到SharePoint网站。这个UniqueId看起来不像示例中的唯一GUID。在Team iOS App上,我可以单击链接,但是会出现一条消息,表明无法访问此文件。
编辑:唯一ID已修复,但在MS Teams Desktop客户端上仍然会出现问题。 我已经从Graph API获得的文件中的Ctag中的GUID替换了唯一ID。在iOs应用程序上,它现在可以工作,但是在桌面客户端上,仍然有红色三角形。
Iphone上的答案 0 :(得分:3)
请将FileType设置为 docx ,如下所示:
FileInfoCard card = new FileInfoCard()
{
FileType = "docx",
UniqueId = Guid.NewGuid().ToString() // unique id.
};
Attachment att = card.ToAttachment();
att.ContentUrl = contentUrl;
att.Name = name;