--- title: NixMsg 设备通讯需求 type: prd permalink: main/projects/25464650-ed5d-440e-b362-190f2852d451/nix-msg-设备通讯需求 stable_id: 9cea62eb-5435-4fb1-af51-9699bb182b1a scope: project memory_type: prd project_id: 25464650-ed5d-440e-b362-190f2852d451 usage_profile_id: 0c9feb46-d06e-43cd-9ef0-c5813c84a998 status: active revision: 4 request_id: nixmsg-prd-20260930-0005 created_at: '2026-09-29T15:43:54.496883+00:00' updated_at: '2026-09-29T16:06:18.766472+00:00' tags: - nixmsg - requirements --- NixMsg 是设备间通讯中心。参与者是对等的端:每个端有自己的标识和通讯密码,同时发送和接收。端可以组成群,群成员看到同一份群消息。 目标能力: 1. 端与端互发数据,也可以向群发消息 2. 查看在线端 3. 检查指定端是否在线 4. 尽可能使用一个端口,用端标识和群标识区分通讯对象 5. 可以为某个端设置通讯密码 6. 提供快速接入 SDK 7. 群成员看到共同消息 部署与规模:单机,暂不做集群;端数量 1000 以内,可能有嵌入式。 消息语义: - 发送时可选择对方不在线是否保留,保留消息有过期时间,超时销毁 - 弱网尽量送达,至少一次,消息带 ID 供接收方去重 - 可撤回已提交、对方尚未接受、且未过期的消息 - 可指定何时发送,也可以固定每条消息的发送延迟;到点后再按在线状态和是否保留投递 - 群消息只存一份,成员看到同一条;每个成员各自有投递状态 当前仓库为空,尚未开工。邮箱傾向 SQLite。