update: NixMsg 设备通讯需求

MemRelay-Operation: memory-save:nixmsg-20260930-0507-prd-rev10
MemRelay-Resource: 9cea62eb-5435-4fb1-af51-9699bb182b1a
This commit is contained in:
2026-09-30 04:54:51 +08:00
parent a1595a0a64
commit 445c5d3c25
@@ -8,25 +8,25 @@ memory_type: prd
project_id: 25464650-ed5d-440e-b362-190f2852d451
usage_profile_id: 0c9feb46-d06e-43cd-9ef0-c5813c84a998
status: active
revision: 9
request_id: nixmsg-20260930-0500-prd-rev9
revision: 10
request_id: nixmsg-20260930-0507-prd-rev10
created_at: '2026-09-29T15:43:54.496883+00:00'
updated_at: '2026-09-29T20:28:45.569242+00:00'
updated_at: '2026-09-29T20:54:48.029417+00:00'
tags:
- nixmsg
- requirements
---
NixMsg 是自建消息中转。正式文档:docs/PRD.md 与 docs/DEVELOPMENT.md(2026-09-30,版本 0.2)。根目录的 t.md 草稿已不存在。
NixMsg 是自建消息中转。正式文档:docs/PRD.md 与 docs/DEVELOPMENT.md(2026-09-30,版本 0.3)。
用途:以程序和设备自动收发为主,人在 App 或网页里收发也要。服务器不保存可翻阅的历史,历史由客户端自己决定。
用途:以程序和设备自动收发为主,人在 App 或网页里收发也要。服务器不保存可翻阅的历史。
身份:对等的端,有编号(0.2 起只允许小写字母、数字、_ . -),同一编号只能一处登录。端由管理员开通,或在管理员开启注册后带正确注册安全码自助注册(F23,SDK 提供注册和改登录密码、对话密码);换码不影响已注册的端。可以组群,群消息只存一份,到点按当时成员投递,入群前的消息不补。
身份:对等的端,编号只允许小写,同一编号只能一处登录。端由管理员开通,或在管理员开启注册后带正确注册安全码自助注册(F23);换码不影响已注册的端。开放注册后目录仍对所有端可见。可以组群,群消息只存一份。
密码:登录密码和对话密码都要。对话密码输对一次就记住,对方改密后失效。对方先单聊过,可以免密回复。拉进群必须当次带对话密码。谁都能看到别人是否在线。登录失败按「编号 + 来源 IP」锁定。
密码:登录密码和对话密码都要,对话密码输对一次就记住、对方改密后失效、先单聊过可免密回复、拉进群必须当次带对话密码。登录失败按编号加 IP 锁定。
消息:单条正文最大 256 KiB,不分块。可选离线保留并带过期时间,弱网至少送达一次。可定时、可延迟、可撤回。送达、过期或撤回后立刻删正文,只留不含正文的记录,保留天数可配置。
消息:单条正文最大 256 KiB,不分块;可选离线保留、至少送达一次、可定时、可延迟、可撤回;送达或结束后立刻删正文;每端有未完成消息和排队投递配额(默认各 1 万条,0 为不限)。
实现:单机一个 Go 进程,内置 mochi-mqtt,SQLite,不用 Redis。端只用一个固定端口(默认 7443,WebSocket /mqtt、裸 MQTT TCP、注册接口同端口自动识别);后台默认同端口,可用 admin_listen 单独监听。SDK:Go、Java/Android、JavaScript/TypeScript、Python。嵌入式本期不出 C SDK,按协议直接接 MQTT。
实现:单机一个 Go 进程(标准库 net/http)、内置 mochi-mqtt、SQLite 手写 SQL、不用 Redis。端只用一个固定端口(默认 7443),后台可用 admin_listen 单独监听。后台 Vue 3 + TypeScript + Naive UI 打包嵌入程序;有管理 API 令牌和操作日志。部署:二进制 + Docker 镜像;/metrics;证书由 1Panel 续签并推送到目录,程序自动重载。SDK:Go、Java/Android、JS/TS、Python。
待用户复核的默认(PRD 第 9 节):D1–D13 来自 0.1;D14–D23 是 0.2 新增:注册默认关闭且安全码可在后台查看;注册可自选编号、无需审核;不做忘记密码找回和端自注销;编号小写;编号加 IP 锁定;不保留消息确认超时即丢弃;撤回不发回执;停用或删除端时作废其发出的消息;撤回不收回回复授权;服务器重启后所有未完成投递至少再等一个宽限。
状态:PRD 第 9 节 D1–D26 已确认,D27(API 令牌细节)待确认。