From 73d075e18e7468d555d5e37e13e8fe99636f6e7d Mon Sep 17 00:00:00 2001 From: MemRelay Date: Wed, 30 Sep 2026 00:06:21 +0800 Subject: [PATCH] =?UTF-8?q?update:=20NixMsg=20=E8=AE=BE=E5=A4=87=E9=80=9A?= =?UTF-8?q?=E8=AE=AF=E9=9C=80=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit MemRelay-Operation: memory-save:nixmsg-prd-20260930-0005 MemRelay-Resource: 9cea62eb-5435-4fb1-af51-9699bb182b1a --- .../NixMsg 设备通讯需求.md | 40 +++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/projects/25464650-ed5d-440e-b362-190f2852d451/NixMsg 设备通讯需求.md b/projects/25464650-ed5d-440e-b362-190f2852d451/NixMsg 设备通讯需求.md index 9a12683..a75d408 100644 --- a/projects/25464650-ed5d-440e-b362-190f2852d451/NixMsg 设备通讯需求.md +++ b/projects/25464650-ed5d-440e-b362-190f2852d451/NixMsg 设备通讯需求.md @@ -8,33 +8,33 @@ memory_type: prd project_id: 25464650-ed5d-440e-b362-190f2852d451 usage_profile_id: 0c9feb46-d06e-43cd-9ef0-c5813c84a998 status: active -revision: 3 -request_id: nixmsg-prd-20260930-0001 +revision: 4 +request_id: nixmsg-prd-20260930-0005 created_at: '2026-09-29T15:43:54.496883+00:00' -updated_at: '2026-09-29T16:02:18.558213+00:00' +updated_at: '2026-09-29T16:06:18.766472+00:00' tags: - nixmsg - requirements --- -NixMsg 是设备间通讯中心,目标能力: -1. 设备间互发数据 -2. 查看在线设备 -3. 检查指定设备是否在线 -4. 尽可能使用一个端口,通过不同 tag 与不同设备通讯 -5. 可以为某个设备设置通讯密码 -6. 提供快速接入 SDK,能在各系统和开发语言间复用 +NixMsg 是设备间通讯中心。参与者是对等的端:每个端有自己的标识和通讯密码,同时发送和接收。端可以组成群,群成员看到同一份群消息。 -部署与规模: -- 只部署单台服务器,暂不做集群 -- 设备数量 1000 以内,可能接入嵌入式设备 +目标能力: +1. 端与端互发数据,也可以向群发消息 +2. 查看在线端 +3. 检查指定端是否在线 +4. 尽可能使用一个端口,用端标识和群标识区分通讯对象 +5. 可以为某个端设置通讯密码 +6. 提供快速接入 SDK +7. 群成员看到共同消息 + +部署与规模:单机,暂不做集群;端数量 1000 以内,可能有嵌入式。 消息语义: -- 发送时可选择对方不在线是否把消息留在服务器,等对方上线后再下发 -- 离线消息必须带过期时间,超时后自动销毁,不再下发 -- 弱网也要尽量送达,传达语义是至少一次,消息带 ID 供接收方去重 -- 发送者可以撤回已提交、对方尚未接受、且尚未过期的消息 -- 发送者可以指定消息何时发送:先暂存在服务器,到点后由服务器按当时的在线状态投递;对方不在线时仍走原来的是否保留和保留时间 -- 发送者可以固定设定每条消息的发送延迟(例如 10 秒),在这个窗口期内可以决定不发送 +- 发送时可选择对方不在线是否保留,保留消息有过期时间,超时销毁 +- 弱网尽量送达,至少一次,消息带 ID 供接收方去重 +- 可撤回已提交、对方尚未接受、且未过期的消息 +- 可指定何时发送,也可以固定每条消息的发送延迟;到点后再按在线状态和是否保留投递 +- 群消息只存一份,成员看到同一条;每个成员各自有投递状态 -当前仓库为空目录,尚未开工。邮箱存储倾向 SQLite,但用户尚未明确说开工。 \ No newline at end of file +当前仓库为空,尚未开工。邮箱傾向 SQLite。 \ No newline at end of file