Skip to content

Latest commit

 

History

History
121 lines (87 loc) · 6.18 KB

File metadata and controls

121 lines (87 loc) · 6.18 KB
title Matrix 聊天服务介绍
date 2023-06-028T00:00:00.101Z
cover /images/banner-ayumi.jpg

介绍

作为即时通讯软件,Matrix 几乎是理想中的完美方案,这篇文章介绍一下 Matrix 的特点和用法。

官方的介绍:https://matrix.org

完全的端到端加密

只有发送者和接收者可以解密会话内容,任何第三方,包括服务器,都无法查看私有的聊天内容。

功能齐全

私聊、群聊、空间(群中群)、消息列(Thread)、表情回应、消息编辑、可选的已读回执、语音视频、机器人、应用集成、时间线、等等……

联邦制

Matrix 是一个标准。任何符合标准的软件都可能加入 Matrix 网络中,任何两个使用 Matrix 协议的用户都可以随意跨网络会话。

使用

选择一个客户端

在 Matrix 官网上列举了一些推荐的客户端

这里推荐一些:

网页端

  • Element (半官方的客户端,大而全)
  • cinny (简洁美观,但某些功能缺失,比如投票)

桌面客户端

一般来说,桌面端都是网页端的封装。如非必要,使用网页端即可。

如确实需要桌面端,可以选择这些:

  • Element (基于electron的封装)
  • Cinny (基于tauri的封装)

手机端

选择一个服务商

进入客户端后,你需要选择一个服务商注册登录,根据喜好和自己网络情况选一个开放的服务商即可。

服务器 介绍 网络测试
Element Matrix / Element 官方服务器,讨论任何主题
Mozilla Mozilla / Firefox 官方服务器,讨论任何主题
Gitter gitter 服务器,主要讨论软件开发
pcrbot.com 本站提供的主服务器
yobot.homes 本站提供的备用服务器(某些省份更好直连)
<script> document.addEventListener("DOMContentLoaded", function () { Array.from(document.getElementsByClassName('ping')).forEach(async function (element) { const observer = new IntersectionObserver(entries => { entries.forEach(entry => { if (entry.isIntersecting) { observer.unobserve(element); (async function() { element.textContent = '延迟:'; const url = element.getAttribute('ping'); for (let i = 0; i < 4; i++) { const now = new Date().getTime(); try { await Promise.race([ fetch(url, { method: 'GET', mode: 'no-cors' }), new Promise((resolve, reject) => setTimeout(reject, 5000)), // timeout after 5 seconds ]); const latency = new Date().getTime() - now; const indicator = latency < 200 ? '🟢' : '🟡'; element.textContent += ` ${indicator} ${latency}ms`; } catch { element.textContent += ' 🔴 不可用'; } await new Promise(resolve => setTimeout(resolve, 1000)); } })(); } }); }) observer.observe(element); }); }); </script>

找到感兴趣的群聊

在客户端的“探索”功能里,你可以看到开放的群聊并选择加入,也欢迎加入本站的交流群 #zgq:pcrbot.com

搭建

如果你想拥有自己的 Matrix 服务器,可以选择一个完全托管服务器,也可以用开放的服务器程序部署在自己的服务器上。

  • Synapse(半官方的服务端,大而全)
  • Tuwunel(rust实现的服务端,占用极低)

常见问题(真的很常见)

多端登录后,一直显示正在等待解密

这是因为 Matrix 的端到端加密机制。两个设备登录后,密钥默认没有同步(有时候翻译为认证)。

解决方法:首次登录时,会通知“有未认证的设备”,按照提示认证即可。如果错过了,可以前往设置->设备,进行认证。