能力集成

本章节为您介绍如何集成 FIRERPA 远程桌面及其相关能力,您可以将其集成到前端页面,用于操作、展示等功能。此处不做详细介绍,您可以转到 APIFOX 文档查看并测试。不过,在此之前需要先向您介绍一些前置设置及其他基本信息。

提示

以下内容需要您对 WebSocket、Canvas 绘制、H.264 等具备基本了解。

提前设置

为了方便您进行接口测试,请确保设备已通过 USB 连接至当前电脑,并确保设备未开启登录证书验证(HTTPS)。完成这两步操作后,您还需要在 APIFOX 平台完成相关设置。由于涉及 WS 接口,您需要安装 APIFOX 电脑客户端(非网页版),并将相关项目导入客户端。安装与导入方法请自行探索。

实时视频

实时视频通过 WebSocket 进行传输,支持两种格式:MJPEG(Motion JPEG)和 H.264 NALU。其中 MJPEG 使用方式最简单,其实际传输的内容为设备屏幕的连续截图,传输速度足够快时便形成动态的实时屏幕。您只需将 WebSocket 收到的每一帧消息以 JPEG 格式绘制到屏幕上即可。另一种 H.264 格式则对基础知识要求较高,因为在渲染到画布前,您还需要进行解码操作,可自行搜索或集成现有的 H.264 解码器完成解码绘制。

H.264 与 MJPEG 相比,可减少至少一半的流量且速度较快,但并非适用于所有设备。部分设备自身的 H.264 编码性能可能不高,此时应采用 MJPEG 传输。当然,MJPEG 也有其缺点:由于每帧都是完整图像,对带宽要求较高。

实时触控

实时触控也通过 WebSocket 进行传输,并无特别之处。您只需按照特定格式发送“按下”“移动”“抬起”三种操作即可。您可通过网页端的 mousedown、mouseup 等事件触发,传输的主体数据为事件类型及坐标。这里唯一需要注意的是,您需要通过 canvas 及实际屏幕大小进行坐标转换,计算出用户在 canvas 上的操作坐标对应的实际屏幕坐标。

按键操作

按键操作相对简单,您只需通过特定格式向相关接口发起 POST 请求即可。按键操作支持控制设备的导航键以及进行普通的英文输入。

命令终端

命令终端通过 WebSocket 通信,您需要使用 xterm.js 等相关技术进行对接。只需根据 API 文档将输入输出格式化为特定格式并发送,或请求 xterm 输出即可。

实时指令

实时指令接口用于向设备发送自动化或控制类指令,具体请求格式与 WebSocket/HTTP 路径请参阅 APIFOX 项目文档。集成时建议与「实时视频」「实时触控」配合使用,以保证画面与操作的时序一致。