如何在 Azure 通信服务聊天中附加文件?

How can I attach a file in an Azure communication service chat?

我使用 Azure 通信服务聊天开发聊天应用程序。为此,我遵循 https://github.com/Azure-Samples/communication-services-web-chat-hero 这个例子及其工作。现在我尝试在此聊天中发送附件,但找不到任何称呼。

是否可以添加附件?

目前 Azure Communication Services JavaScript Chat SDK 本身不支持将文件附加到聊天消息。

我建议在此处提交功能请求以获得内置支持:https://github.com/Azure/azure-sdk-for-js/issues/new?assignees=&labels=&template=feature_request.md

从概念上讲这是完全可能的,但是,如果我们以在聊天消息中嵌入视频为例:

  1. 发送视频的 Web 客户端需要先将视频上传到您拥有的存储空间 space。这可能是您的服务器或第三方存储解决方案,例如 Azure Blob Storage.
  2. 聊天消息需要包含一个占位符值,表示此处应该有一个视频文件,例如Take a look at this video: {{video src=VIDEO_SRC}}.
  3. 接收聊天消息的 Web 客户端需要首先解析消息并寻找特殊指示符(在我们的例子中是 {{video src=VIDEO_SRC}})。如果找到,则需要专门构建消息以支持视频。在这种情况下,消息 html 可能会像这样结束:
    <div>
      Take a look at this video:
      <video src=VIDEO_SRC />
    </div>
    

注意:这只是如何在聊天消息中实现附件的一个简单实现。这没有考虑允许附件到聊天消息的安全问题,并且在将消息内容放入聊天消息之前应该对其执行验证。