实时分享(Live Share)
Live Share 把一个已打开的串口交给没有账号的同事:现场这台机器为它签发一张有时限的邀请码,对方拿到码,在自己的软件里把它当作真正的串口打开,或者直接在浏览器里查看和操作。他不需要注册、不需要订阅、不需要绑定设备;流量记在你这边,因为交出端口和付账的都是你。
它不是第五条独立通道,而是 Live Console 与 Live Relay 的访客形态:从浏览器进来的那一半走 Live Console,在自己的本软件里进来的那一半走 Live Relay。网络前提、加密方式和流量计费都与那两条一致,变的只是"远端那一格里的人"——凭的是一张码,不是一个账号。桌面端把它和 RFC 2217 服务器、Live Console、Live Relay 一起收在状态栏的 Live Sync(实时同步)入口下。各条远程路径怎么选,见远程访问方案选型。
签发邀请码(现场一侧)
- 登录账号并勾选「云 → 实时终端(Live Console)」(邀请码走的是同一条云端通道)。
- 打开要共享的串口,点「云 → 分享串口给访客…」,或从状态栏的 实时同步(Live Sync)→ Live Share… 进入。
- 选有效期(1 / 4 / 12 / 24 小时,默认 12 小时),需要时设一个口令,写一句同事能认出来的标签。再决定这张码在浏览器里能做到哪一步——不允许 / 仅查看 / 查看与发送 / 查看、发送与端口控制(默认仅查看)——以及是否同时允许在友善串口调试助手里作为真实串口打开(默认允许)。点「生成邀请码」。
- 把
XXXX-XXXX-XXXX或那条链接发给他。口令请另发一条消息——和码写在一起就失去意义了。
这个动作与 Live Relay 互不隐含:那个开关管的是"我自己名下的其他机器",邀请码管的是"拿着这张码的这个人、这个口、这段时间"。分享随端口关闭、Live Console 关闭、退出登录或程序退出而结束。
在软件里加入(同事一侧)
- 在连接设置里把端口类型选为远端串口 (实时中继)。
- 在「Select a Remote Serial Port」对话框顶部的用邀请码加入里粘贴码或整条链接,填一个主人能认出的名字,需要时填口令。
- 启动连接。对话框会先显示这张码指向哪台机器的哪个口、是否在线、是否已被占用。
连上之后他拿到的就是与你完全相同的那个真端口:Text/HEX 收发、时间戳、日志、控制线、CRC 工具和文件传输全部可用。端口的行为、限速与失败模式与普通 Live Relay 会话一致,见远程串口(Live Relay)。
在浏览器里加入(不装软件)
同一张码也能在浏览器里打开:同事点开链接,填一个你能认出的名字(有口令就再填口令),点「在浏览器里打开」,就看到这个端口的实时输出——不需要安装,不需要账号。你在签发时定的等级决定他还能做什么:
- 仅查看:实时看端口输出。
- 查看与发送:再加一个发送框(文本或 HEX,可选行尾)。
- 查看、发送与端口控制:再加打开 / 关闭端口,以及波特率、数据位、校验、停止位。
浏览器里的访客只能看到这一个端口;设备上的其他串口、你的账号和机器,他都看不到。他发出的每条命令在你设备页的命令记录里都带着他的名字;分享对话框和「管理访客分享…」会列出正在浏览器里查看的人。你随时可以停止分享,所有浏览器会话会在几秒内结束。
两条路是互补的,不是替代:浏览器里没有真实串口,所以 Modbus、XMODEM/YMODEM、固件升级和 DTR/RTS/Break 只能在友善串口调试助手里完成;而浏览器看到的是解码后的文本,它像 Live Console 一样经云端短暂缓冲——真实串口模式下云端只转发字节,不读取内容。端口正被 Live Relay 使用时,浏览器里只能看,不能发。
无界面机器(spu --invite)
现场机器不需要桌面会话,用 spu --invite 做同一件事:
spu -D /dev/ttyUSB0 -b 115200 --invite --invite-label "工位 3"
spu: invite code ABCD-EFGH-JKLM link https://alithon.com/r/ABCD-EFGH-JKLM expires 2026-08-21 18:00
--invite-ttl 接受 30m / 4h / 1d(默认 12h),--invite-passcode-stdin 从管道读口令而不写在命令行上,Ctrl-C 退出时撤销邀请。--invite-web view|send|control|none(默认 view)决定这张码在浏览器里能做到哪一步,--invite-no-relay 让它只能在浏览器里打开。它与 --share 可以同时给,两者是各自独立的同意。
主人始终握着的东西
- 状态栏说得出来:实时同步那一格变成橙色的 使用中,只有一位访客时直接写成「访客:张三」,提示行是「访客 张三 正在使用此串口」——被别人驱动的串口必须看得出来,还要看得出是谁。
- 分享对话框里随时可以「断开访客」或「停止分享」;停止分享会同时结束正在进行的会话并作废那张码。
- 网页端「实时终端 → 设备」的设备页列出本机在活的分享,「实时终端 → 访客分享」则列出你名下所有机器上在活的分享;两处都可以远程撤销——但不能创建:签发即授权,授权只能发生在拥有那个串口的机器上。
- 桌面端「云 → 管理访客分享…」显示同一份账号级列表,包括在你其他机器上签发的邀请,任意一条都可以在这里结束。
- 口令连续输错 5 次,这张码会被烧掉;到期的码不再接受新的加入,但不会切断已经在进行的会话——半途掐断一次固件升级是最坏的结果。
- 未知、过期与已撤销的码,对外是同一个答复,所以别人无法拿它探测哪些码曾经存在。
流量、订阅与隐私
- 访客一分钱不付:会话的流量计入分享方的月度额度(免费账号每月每方向 10 MB,Pro 1 GiB),访客不需要账号、不需要订阅;分享本身不要求 Pro。
- 访客的字节计入你的月度云流量额度和充值余额,与 Live Console、Live Relay 共用同一份配额,没有单独的访客配额。用这个数做预算:115200 8N1 双向满速约 22.5 KB/s,大约每小时 81 MB。
- 浏览器访客看到的是这一个端口解码后的文本,经云端短暂缓冲,缓冲量与保留时间同 Live Console;作为真实串口加入的访客走的是 Live Relay 的字节管道,云端只转发、不读取内容。
- 他能做到哪一步由你在签发时决定,服务器和你的设备各检查一次,网页上无法抬高。相关数据流在隐私政策中有完整说明。