能力集成

本章节为您介绍如何集成 FIRERAP 远程桌面及其相关能力,您可以将其自行集成到您的前端页面进行操作、展示等各种功能。本章我们不会在这里进行介绍,您可以转到我们的 APIFOX 文档查看并测试。不过我们需要介绍您一些提前设置及其他一些基础信息。

提示

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

提前设置

为了方便您进行接口测试,首先请先确保设备通过 USB 连接到当前电脑,并且确保设备没有开启登录证书验证(https),完成这两步操作后,您还需完成 apifox 平台的相关设置,由于涉及到 ws 接口,您需要安装 apifox 电脑客户端(非网页版),并将相关项目导入到您的客户端内。我们不会和您介绍如何安装如何导入,请自行摸索。

实时视频

实时视频使用 Websocket 进行传输,视频支持两种传输格式,其一 MJPEG (MOTION JPEG),其二 H.264 NALU。其中 MJPEG 的使用方式最为简单,MJPEG 的实际传输内容为当前设备屏幕的截图,传输的足够快便成了动态的实时设备屏幕,您所需要做的唯一处理就是将 Ws 收到的每一帧消息以 JPEG 的方式绘制到屏幕上即可。另一个 H.264 则对您相对的基础知识要求较高,因为在渲染到画布前,您还要进行一步解码操作,您可以自行搜索或者集成现有的 h264 解码器进行解码绘制。

H264 与 MJPEG 的区别是,相对来说 H264 可减少至少一半的流量,并且速度较快,当然也并不是适用于所有设备,部分设备本身的 H264 编码性能可能不高,这时您应采用 MJPEG 进行传输,当然 MJPEG 也有他的缺点,由于每帧都是纯图像所以对带宽要求较高。

实时触控

实时触控也是使用 Websocket 进行传输,他并没有什么奇特的地方,您只需要按照特定格式发送 按下、移动、抬起 三种操作即可。您可以通过网页端 mousedown、up 等事件进行,传输的主体数据为事件及坐标,这里唯一需要注意的是左边需要您通过 canvas 以及实际屏幕的大小进行转换,计算出用户在 canvas 上操作的坐标对应的实际屏幕的坐标。

按键操作

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

命令终端

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

实时指令