惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

GbyAI
GbyAI
J
Java Code Geeks
雷峰网
雷峰网
WordPress大学
WordPress大学
宝玉的分享
宝玉的分享
云风的 BLOG
云风的 BLOG
V
Visual Studio Blog
V
Vulnerabilities – Threatpost
S
Securelist
The Hacker News
The Hacker News
The Register - Security
The Register - Security
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
Help Net Security
Help Net Security
G
Google Developers Blog
Hugging Face - Blog
Hugging Face - Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
M
MIT News - Artificial intelligence
AI
AI
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
The GitHub Blog
The GitHub Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Schneier on Security
Schneier on Security
N
Netflix TechBlog - Medium
T
The Blog of Author Tim Ferriss
Google DeepMind News
Google DeepMind News
Hacker News - Newest:
Hacker News - Newest: "LLM"
H
Hacker News: Front Page
博客园 - 司徒正美
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
B
Blog
Microsoft Azure Blog
Microsoft Azure Blog
大猫的无限游戏
大猫的无限游戏
Security Latest
Security Latest
Engineering at Meta
Engineering at Meta
N
News and Events Feed by Topic
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
酷 壳 – CoolShell
酷 壳 – CoolShell
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
T
Threat Research - Cisco Blogs
U
Unit 42
V
V2EX
V2EX - 技术
V2EX - 技术
L
LINUX DO - 最新话题
aimingoo的专栏
aimingoo的专栏
Microsoft Security Blog
Microsoft Security Blog
Recorded Future
Recorded Future
P
Privacy & Cybersecurity Law Blog
美团技术团队
小众软件
小众软件
F
Fortinet All Blogs

白鱼小栈

让博客优雅地使用全局 MiSans 字体:MiSans Webfont 字体分包项目,WordPress 证件全屏水印助手 V4 发布!一个快速给身份证照片添加全屏水印的 HTML 小工具|白鱼小栈 升级到 Umami V3 并重写博客底部的“数据挂件”脚本,显示博客 UV/PV 访问数据 安全验证|白鱼小栈 安全验证|白鱼小栈 开服初体验:用 MCSManager 面板快速搭建 Minecraft 服务器|白鱼小栈 安全验证|白鱼小栈 不要买小米打印机,会变得不幸…|白鱼小栈 安全验证|白鱼小栈 安全验证|白鱼小栈 安全验证|白鱼小栈 安全验证|白鱼小栈 Docker 部署 Umami,为自己的网站添加访客统计功能 Redmi K40 刷机:刷入 Pixel Experience 类原生系统|白鱼小栈 超详细 Matrix Synapse 部署教程:去中心化聊天服务器搭建与配置指南|白鱼小栈 免费可商用,微软的开源表情合集 Fluent Emoji|白鱼小栈 安全验证|白鱼小栈 安全验证|白鱼小栈 安全验证|白鱼小栈 安全验证|白鱼小栈 安全验证|白鱼小栈 安全验证|白鱼小栈 属于你的私有聊天系统:Rocket.Chat 部署过程|白鱼小栈
Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈
白榆 · 2023-09-02 · via 白鱼小栈
图片[1]|Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈
图源 Cinny 官网|官方 demoGitHub 地址

引言

常见的 Matrix 客户端包括:

Element(最为熟知和常用)

  • 跨平台支持:Element 提供了适用于多个平台的客户端,包括桌面、移动和Web版本。
  • 功能丰富:Element 提供了广泛的功能,包括端到端加密、音视频通话、文件共享、插件支持等。
  • 社区支持:Element 是 Matrix 社区内最受欢迎的客户端之一,拥有大量用户和支持。

Cinny(新一代 Matrix 客户端,UI 设计简洁现代):

  • 轻量级:Cinny 是一个轻量级的 Matrix 客户端,适用于那些喜欢简洁界面的用户。
  • 无需安装:通过浏览器即可使用 Cinny。
  • 不足:发布日期较新,因此功能不如 Element 全面,例如 Cinny 暂不支持音视频通话;另外,当前 Cinny 仅有 Web 端,无 Android 和 iOS 应用;
图片[2]|Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈
图源 Cinny 官网|Cinny 的特性

为什么选择 Cinny 作为客户端:

  1. 部署简单。只需要把 Cinny 编译后的源码上传到网站根目录就可以使用了。
  2. UI 好看。设计语言很统一,界面简洁优雅。(Cinny 的 UI 也是博主尤其青睐它的原因)

1. 下载 Cinny 源码

我们打开 Cinny 的 GitHub 项目地址:https://github.com/cinnyapp/cinny ,下载最新的 release 包。

下载后,我们将其上传到网站的根目录,并手动解压。你将得到一些文件和文件夹:

图片[3]|Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈
 

现在,只要你的 nginx 配置正确,你已经可以通过域名访问 Cinny 客户端了。

图片[4]|Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈
Cinny 客户端的登录界面

2. Cinny 客户端的配置

2.1 修改服务器列表

我们需要将自己的服务器地址添加到 Cinny 配置文件中,以便用户可以在下拉列表中选择。

图片[5]|Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈
默认情况下,下拉列表里只有 5 个服务器。

我们编辑 config.json 文件:

图片[6]|Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈

打开 config.json 文件:

图片[7]|Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈

其中,"allowCustomHomeservers" 用于控制是否允许用户手动输入服务端域名。为避免用户错误配置,我们这里保持 false 不变。

"homeserverList" 里可以包含多个服务端的域名,要注意缩进和逗号分隔。

以下是原版 config.json 文件,建议保存备用:

{
  "defaultHomeserver": 3,
  "homeserverList": [
    "converser.eu",
    "envs.net",
    "halogen.city",
    "matrix.org",
    "mozilla.org"
  ],
  "allowCustomHomeservers": true
}

以下是一个示例配置文件,假设仅允许用户选择 server.xxx.com 登录,且不允许用户自主输入服务端地址:

{
  "defaultHomeserver": 0, #默认服务器
  "homeserverList": [
    "<server.xxx.com 填入你的服务端域名>"
    
  ],
  "allowCustomHomeservers": false #是否允许用户手动输入域名
}

完成编辑后,保存并退出。

现在我们回到浏览器,刷新客户端网页。若刚才的配置无误,你将能够选择自己的 server.xxx.com 域名作为服务端地址。

注意:可能的坑

修改完了 config.json 文件,回到客户端网页却还是只有原来的 “matrix.org” 等五个地址可供选择?

打开浏览器 F12 开发人员工具,先禁用一下浏览器缓存就好了:

图片[8]|Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈
把 “禁用缓存” 勾选上,然后刷新网页

3. 完成

至此,已完成 Cinny 客户端的部署。Cinny 美中不足有两点:

  • 功能仍需完善

相较于老牌客户端 Element,Cinny 缺失了很多功能,例如没有音视频通话、没有重置密码入口

其它的一些小功能也没有,比如 in-chat key verification ,不过这倒不影响核心功能

  • 一些细节有问题

移动端界面仍需改善,层级逻辑有问题

所有使用 webkit 的 iOS 浏览器(Safari 等),一旦焦点定位到输入框,浏览器就会自动放大网页。查了一些资料后发现,这是因为 Cinny 默认的输入框文本大小小于 12px ,触发了 iOS 的一种缩放机制

4. 后续

其实现在你已经可以正常登录使用了,但你可以进行一些额外设置,用起来更舒服。

4.1 Cinny 汉化 (可选)

Cinny 不提供多语言设置。如果想汉化 Cinny 只能采取一种愚蠢且费力的方法。请打开 网站根目录/assets/index-xxxxxxxx.json 文件,自行将其中的英文部分汉化成中文。(没错,这文件非常长)

注意:可能的坑

  1. 提前备份原版 index-xxxxxxxx.json 文件
  2. 建议每次只修改一小部分,然后回到客户端刷新网页看看效果,避免出错

唉,完成全部文本的汉化是一个大工程,加上本人对 Matrix 一些功能表述的不熟悉,花了我好几天的时间 ಥ_ಥ

这是效果展示:

图片[9]|Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈
汉化后的设置界面
图片[10]|Cinny 上手体验:简洁、优雅的新一代 Matrix 客户端|白鱼小栈
汉化后的聊天界面

4.2 自定义品牌 (可选)

如果你希望将 Cinny 用于生产环境,并把默认的大黑鸟 logo 去掉,那么你可以打开 /assets 文件夹,将里面的图标换成你自己的。

换的时候注意每个图标的尺寸大小。可通过 某些在线工具 批量生成多尺寸 logo 图像。

4.3 第三方 OIDC 登录 (可选)

如果你还没有配置第三方账号(也就是 OIDC (OpenID Connect) 登录),可以参阅这篇文章:https://www.baiyuyu.com/304.html

全文完!总体而言,Cinny 还是一款比较优秀的 Matrix 客户端,希望能够被继续完善。

2023/12 补充:

注:本人部署时使用的是 v2.2.4 版本。现在版本号好像来到了 v3.2.0,应该新增了不少功能

2024/2 补充:

为能够及时在移动设备上接收消息,建议搭配 Element 之类的 App 使用,毕竟你总不能一直把浏览器网页挂在后台吧