- 经过前面的electron 知识的学习, 我们可以尝试完成一个比较有难度的项目,
远程控制软件
- 主体功能: 控制端电脑可以远程控制用户电脑,提供点击和键入功能,为用户故障,演示场景等等
主要角色
- 控制端:客服人员/研发人员
- 傀儡端: 用户
基本流程
- 傀儡端告知控制端本机的控制码
- 控制端输入控制码连接傀儡端
- 傀儡端将捕获的画面发送到控制端
- 控制端发送鼠标/键盘指令到傀儡端
- 傀儡端响应控制指令
项目关键点分析
傀儡端告知控制端本机的控制码
》》》建立端与控制码的联系(服务端需求
)
控制端输入控制码连接傀儡端
》》》通过控制码找到用户(服务端需求
)
》》》建立控制端和傀儡端的连接(服务端需求
or 客户端需求
)
傀儡端将捕获的画面发送到控制端
》》》捕捉画面、播放画面(客户端需求
)
》》》用户间画面传输(服务端需求
/ 客户端需求
)
控制端发送鼠标/键盘指令到傀儡端
》》》捕获指令(客户端需求
)
》》》用户间指令传输(服务端需求
/ 客户端需求
)
傀儡端响应控制指令
》》》响应指令(客户端需求
)
技术关键点
- 怎么捕捉画面?
- 使用 desktopCapturer,可以访问那些用于从桌面上捕获音频和视频的媒体源信息
- 怎么完成用户间连接、画面+指令传输?
- 使用 WebRTC,两个浏览器之间直接进行视频和音频的通信
- 怎么响应控制指令?
- 使用 RobotJS,实现鼠标点击滑动等效果
网友评论