Matrix
简介
Matrix 是一个开放的标准和通信协议,用于实时通信。
它的目的是使实时通信在不同的服务提供商之间无缝工作,就像目前标准的简单邮件传输协议电子邮件的存储和转发电子邮件服务一样,允许在一个通信服务提供商拥有账户的用户通过在线聊天、IP语音和视频电话与不同服务提供商的用户进行沟通。因此,它的目的与 XMPP 等协议相似,但不基于任何现有的通信协议。
从技术角度来看,它是一个用于联合实时通信的应用层通信协议。它提供了HTTP API和开源参考实现,用于在一个开放的服务器联盟上安全地分发和保存JSON格式的消息。它可以通过 WebRTC 与标准的网络服务集成,促进浏览器到浏览器的应用。
它是如何工作的
Matrix 实际上是一个去中心化的对话存储,而不是一个消息传递协议。当你在 Matrix 中发送消息时,它被复制到所有用户参与特定对话的服务器上--类似于在 Git 存储库之间复制提交的方式。在跨越多个服务器的Matrix对话中,不存在单一的控制点或故障点:与 Matrix 中其他地方的人交流的行为,与他们平等地分享对话的所有权。即使你的服务器离线了,对话也可以在其他地方继续进行,直到它恢复。
这意味着每台服务器对其用户数据拥有完全的自我主权--任何人都可以选择或运行自己的服务器并参与到更广泛的 Matrix 网络中。这就是 Matrix 使通信控制民主化的方式。
默认情况下,Matrix 使用简单的 HTTPS+JSON APIs 作为其基准传输,但也接受更复杂的传输方式,如 WebSockets 或通过 CoAP+Noise 的超低带宽 Matrix 。
哪些应用支持 Matrix
各个平台的客户端及其客户端支持的功能特性详见:clients 。
weechat-matrix 、Element Web/Desktop 、Spectral 、gomuks ……
外部链接&参考
参考:
另见: