Skip to content

终端、文件与剪贴板

除了屏幕控制,LCXL Remote Desk 还组合了 WebRTC 数据通道功能与独立鉴权的远程终端。

通过访问码连接时

通过访问码(设备码或协助码)连接时,终端、文件和剪贴板功能不会自动开放,而是同时受访问码权限上限、被控端全局设置和现场审批约束。

远程终端

内置的 xterm.js 终端通过独立的鉴权 WebSocket 提供完整命令行交互,与 WebRTC 数据通道分离;无需离开浏览器会话即可操作远端终端。

连接时终端会显示 LCXL Remote Desk 欢迎字。被控端确认终端会话已经启动后,关闭或刷新页面会触发浏览器的离开确认,因为断开连接会结束该远端 shell 及其中运行的进程。Shell 选择页以及已经关闭的终端不会触发此提示。

终端 Copilot 侧栏可拖动左边缘调整宽度。用户停留在底部时,对话会自动跟随新的流式文字;向上滚动查看历史后不会再被强制拉回底部,而是显示向下箭头按钮,点击即可返回最新内容。

Copilot 的流式回答与已完成回答都按 GitHub 风格 Markdown 渲染,支持标题、列表、代码和表格;原始 HTML 会被忽略,也不会加载模型提供的图片 URL。

文件管理

直接从浏览器管理远端设备上的文件:

  • 上传文件到远端机器。
  • 下载文件回控制端。
  • 删除文件,并带回收站机制以便可恢复删除。

如果被控端关闭了文件传输,或设备所有者在弹窗中拒绝请求,传输进度会直接显示为“被拒绝”,而不会一直停在 0%。被控端中途停止响应时,传输会在 30 秒后中止,之后可以重新发起。

上传到一个已存在的文件会覆盖它,且始终是一步到位。上传进行中,字节写入目标文件旁边的临时文件 .<文件名>.<编号>.part;直到整个文件收齐并落盘,临时文件才取代目标文件的名字,在此之前目标文件原封不动。因此上传被取消、磁盘写满或连接中断都不会有任何代价——原来那个文件仍然是当前的文件,临时文件会被清掉。两个传输同时上传到同一路径会互相覆盖结果,所以第二个会被拒绝而不是被接受。

文件传输不可用时

浏览目录与删除文件走信令连接,而文件字节本身需要 WebRTC 数据通道。两者独立建立,因此浏览器无法通过 WebRTC 连到设备时(最常见的原因是 TURN 中继不可达),文件列表依然能正常浏览:只有上传和下载会被撤下,并由横幅说明原因。

横幅同时给出得出该判断的连接诊断:服务器下发了哪些 ICE 服务器、浏览器收集到了各类型候选各多少个、协商停在了哪一步。列表中存在中继服务器却一个 relay 候选都没有,说明浏览器访问不到该中继,值得转告中继的运维方——面板上的复制按钮生成的正是这份摘要。TURN 凭据永远不包含在其中。

Windows 服务模式被控端上的映射网络驱动器

以 Windows 系统服务运行的被控端,是用提权账户在与桌面用户不同的登录会话中浏览文件的,而 Windows 把映射网络驱动器限定在登录会话内。因此用户在资源管理器里映射的盘符不会出现在驱动器列表中。改用 UNC 路径(\\server\share)访问这些位置,或把 EnableLinkedConnections 设为 1 并重启机器,让两个会话共享映射。

被控端报告自己运行在服务模式时,文件管理器会在驱动器列表页显示上述说明。该状态直接来自被控端,因此通过信令服务器或 Manager 远程浏览时也会正确显示。

剪贴板同步

文本剪贴板的双向同步,让控制端与远端设备之间的复制/粘贴无缝衔接。

系统音频

控制端提出请求且被控端独立的系统音频权限允许后,远端播放才会以 Opus 实时传输到控制端。它与控制端麦克风上行相互独立,本功能不会录制或持久化音频。见远程控制与串流