Microsoft Teams无法播放Gif图片

3
我正在使用以下代码在我的回复中显示gif图像作为附件:
    Activity replyToConversation = (Activity)context.MakeMessage();
    replyToConversation.Attachments = new List<Attachment>();
    replyToConversation.Attachments.Add(new Attachment()
    {
       ContentUrl = "http://i.giphy.com/p3BDz27c5RlIs.gif",
       ContentType = "image/gif"
    });

    await context.PostAsync(replyToConversation);
    context.Wait(MessageReceivedAsync);

在Web Chat频道中,它显示(并播放)得很正常,但由于某种原因,在Microsoft Teams频道中它显示为静态图像。
请问,有什么想法吗?

通道在支持的方面非常灵活:您可以使用动画 GIF 卡片 - stuartd
@stuartd,你有没有实现一个动画卡片的例子?我试着去实现它,但是找不到任何ToAttachment方法。 - MVZ
我自己没有使用过它们,但这段代码可以编译通过:reply.Attachments.Add(new AnimationCard { Title = "标题", Subtitle = "副标题", Text = "文本", Media = new List<MediaUrl> { new MediaUrl { Url = "Gif URL"} } }.ToAttachment()); - stuartd
2个回答

4
作为一种解决方法,您可以返回一个嵌套图像的 HTML 字符串。
 await context.PostAsync($"<img src=\"{imageUrl}\" />");

这应该是被接受的答案。我检查了包含 gif 链接的卡片的 HTML,它目前正在使用 svg。用 img 标签替换它就像魔法一样奏效。我简直不敢相信这不被支持……如果你让 HTML5 和浏览器自己处理,它就能工作! - Aaron

2

抱歉,Teams中的机器人目前不支持内联或卡片中的动态GIF。请参阅MSDN文档,了解当前支持的功能子集。


截至今日仍然有效。https://learn.microsoft.com/zh-cn/microsoftteams/platform/concepts/cards/cards-reference - Luis Cantero
这真的是个笑话,Teams在Slack面前根本不值一提。难怪Teams失败了,有传言说微软要把它砍掉。还是坚持用Slack吧,它很好用。即使是从DevTestLabs发送到Teams的基本WebHooks也无法正常工作,而微软却说这是我们的问题,然后要求我们创建一个Azure服务来为他们解决问题。https://hackernoon.com/why-microsoft-teams-flopped-and-what-it-means-for-slack-cb2bbfa53963 - Microsoft Developer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接