V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
YamatoRyou
V2EX  ›  分享发现

成功自建 "即时通讯" 服务器.

  •  1
     
  •   YamatoRyou · 2021-02-02 02:35:16 +08:00 · 4792 次点击
    这是一个创建于 1150 天前的主题,其中的信息可能已经有所发展或是发生改变。
    前情提要: https://www.v2ex.com/t/605207

    ---------
    尝试 riot.im 和 rocket.chat 失败后, 我再次将目光转向 Delta Chat.
    Delta Chat 是基于电子邮件协议的 "即时通讯" 软件, 支持大多数能提供 IMAP / SMTP 连接方式的服务商.
    Delta Chat 并不是我最近才知道的东西, 只是之前尝试自建邮件服务器失败后暂时搁置.
    如今又一次尝试自建邮件服务器终于成功.

    邮件服务器目前在我的黑群晖上以 Docker 容器的模式运行.
    由于使用的是家宽网络, 短暂的测试发现 25 和 143 端口尚且能用, 可以接收外网邮件. 不过最终还是被我关闭了.

    现状:
    用 5 手机 + 1 台式机 + 1 笔记本 + 1 虚拟机测试了几天, 收发时效在理想范围内.
    基本的通讯功能已经具备, 可以发送或接收文字 / 语音 / 图像 / 视频 / Emoji 及其它文件.
    无须担心推送问题, Delta Chat 可以设置常驻通知 + 后台运行 + 开机启动.
    我给它的定位是家庭内部使用, 既不会开放注册也不会接收外网邮件.

    Delta Chat 支持多设备消息记录同步功能, 但如果需要它同步发送的消息, 需要所有登录同一个账号的机器启用 "给自己发送副本" 选项. 对于要同步接收到的消息, 则这些机器每个都要设置 Autocrypt 验证 (先用 1 个机器生成验证码, 然后在其余机器上填入相同的验证码) 以确保所有机器接收到的消息都已经过解密.

    客户端已知缺陷:
    会自动下载附件, 且没有选项可以关闭. (Windows / Android)
    无法读取来自剪贴板的图像. (Windows)
    不能以自动最小化到托盘的方式开机启动. (Windows)
    登录账号过程中所需的配置流程稍微有点繁琐, 我的想法是将所有需要用户提供的登录参数转换成链接或 QR 码, 使客户端获取后自动填入并登录. (Windows / Android)
    对单个附件大小有限制, 经测试, Android 客户端为 20 MB, Windows 版本为 18 MB. 不过测试昨天发布的 Android 预览版发现可以达到 35 MB 左右, 尚未仔细测试.
    Windows 版本是 Chromium 套壳, 如果发送消息非常频繁, 性能会下降. 具体表现为卡顿及输入滞后. 观察发现可能是因为对话气泡太多导致的.
    Windows 版本的通知推送存在严重问题, 具体表现视 Windows 版本不同而不同: 有通知没有提示音; 通知忽略一些消息导致推送密度太低; 甚至干脆没有通知.

    有人提到 Delta Chat 存在消息乱序问题, 我目前还没感觉到, 可能是用来测试的机器不够多, 未能满足测试条件, 或者是因为自建服务器一定程度上有所改善.

    ---------
    官方网站: https://delta.chat/zh_CN/
    GitHub: https://github.com/deltachat/
    10 条回复    2021-02-04 08:37:06 +08:00
    codehz
        1
    codehz  
       2021-02-02 03:08:16 +08:00
    (为啥不整个正经的 matrix 呢*
    q9OxQg
        2
    q9OxQg  
       2021-02-02 03:37:43 +08:00 via Android
    Rocket Chat 如果用 Ubuntu,非常非常容易啊。我是 IT 门外汉,都成功搭建了俩。
    dexter
        3
    dexter  
       2021-02-02 09:47:27 +08:00
    看了一下,还是有点意思的
    YamatoRyou
        4
    YamatoRyou  
    OP
       2021-02-02 23:04:57 +08:00
    @q9OxQg 我的黑群晖是目前唯一长期运行的 "Linux", 所以只能在群晖的 Docker 里尝试. 找了好久也没发现针对群晖 Docker 的教程. 在没有教程的情况下只能以失败告终.
    YamatoRyou
        5
    YamatoRyou  
    OP
       2021-02-02 23:11:10 +08:00
    @codehz Matrix 网上虽然有教程, 但不适合我现在用的 Linux, 也不想直接在群晖的系统里加料. 还有一个原因: 现有教程看不懂.
    q9OxQg
        6
    q9OxQg  
       2021-02-03 01:16:21 +08:00 via Android
    @YamatoRyou 在 NAS 里面弄可能是难。我是买 VPS,一个安装了 CentOS,然后 Google step to step 教程,一步步拷贝粘贴,成功。另外一个跑 Ubuntu,用 snap 安装,可能才三条命令,就安装好了。话说这些自建聊天真是好,除了把人弄进来有点难。但是说服家人用用挺好的。烦透了微信这些。
    luckbbs
        7
    luckbbs  
       2021-02-03 07:53:01 +08:00
    @q9OxQg 请教用 Rocket Chat 安卓上的消息能不能推送? 据说需要有 Goolge 框架
    luckbbs
        8
    luckbbs  
       2021-02-03 07:53:44 +08:00
    Rocket 安装确实很容易。
    q9OxQg
        9
    q9OxQg  
       2021-02-03 08:59:09 +08:00
    @luckbbs 我的手机们都可以收到通知,它们好像都有 google 框架。你可以安装了试试,用我的 no2no3.website,看看能不能被通知到。
    iminto
        10
    iminto  
       2021-02-04 08:37:06 +08:00
    Prosody 搭建 xmpp 服务也可以
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3348 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 13:37 · PVG 21:37 · LAX 06:37 · JFK 09:37
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.