Skip to content

Latest commit

 

History

History
137 lines (119 loc) · 4.18 KB

README.md

File metadata and controls

137 lines (119 loc) · 4.18 KB

godesk

远程桌面软件功能点

1. 核心远程控制功能

  • 远程视图:实时查看远程设备的屏幕
  • 远程控制:使用本地鼠标和键盘控制远程设备
  • 多显示器支持:支持查看和控制多个显示器
  • 屏幕缩放:根据本地窗口大小调整远程屏幕显示

2. 连接和网络

  • 点对点直连:在同一网络内实现直接连接
  • 中继服务器:通过中继服务器实现跨网络连接
  • NAT穿透:使用技术如STUN/TURN来实现NAT穿透
  • 加密传输:使用SSL/TLS加密所有数据传输
  • 带宽自适应:根据网络条件自动调整视频质量和帧率

3. 用户管理和认证

  • 用户注册和登录系统
  • 设备绑定和管理
  • 访问权限控制:设置不同级别的访问权限
  • 双因素认证:增强安全性

4. 文件传输

  • 双向文件传输:从本地到远程,或从远程到本地
  • 拖放支持:直接拖放文件进行传输
  • 断点续传:支持大文件的断点续传

5. 远程音频

  • 远程音频传输:听到远程设备的声音
  • 双向语音通话:支持语音交流

6. 远程打印

  • 将远程文档打印到本地打印机

7. 会话管理

  • 多会话支持:同时连接多个远程设备
  • 会话切换:快速在不同远程会话间切换
  • 会话录制:记录远程控制会话

8. 安全特性

  • 远程锁定:锁定远程设备屏幕
  • 空闲时自动断开:长时间无操作自动断开连接
  • 远程设备的访问日志

9. 协作功能

  • 多人协作:允许多个用户同时查看/控制一个远程设备
  • 屏幕标注:在远程屏幕上进行绘图标注
  • 文字聊天:集成即时通讯功能

10. 性能优化

  • 硬件加速:利用GPU进行视频编解码
  • 智能压缩:根据屏幕内容选择最佳压缩算法
  • 色彩模式:支持全色彩/高压缩模式切换

11. 跨平台支持

  • 支持Windows, macOS, Linux等多个操作系统
  • 移动端支持:iOS和Android应用

12. 自定义和扩展

  • 快捷键定制
  • 插件系统:支持功能扩展
  • API接口:允许与其他系统集成

13. 辅助功能

  • 远程重启:支持重启后自动重连
  • 无人值守安装:便于大规模部署
  • 远程命令行:直接访问远程设备的命令行界面

14. 报告和分析

  • 使用统计:连接时长、数据传输量等
  • 性能监控:CPU、内存、网络使用情况
  • 问题诊断:网络连接问题的诊断工具

GoDESK 核心功能

  • 核心远程控制功能(远程视图和控制)
  • 连接和网络(直连和中继服务器)
  • 基本的用户认证
  • 简单的文件传输
remote-desktop-go/
├── cmd/
│   ├── server/
│   │   └── main.go
│   ├── client/
│   │   └── main.go
│   └── relay/
│       └── main.go
├── internal/
│   ├── server/
│   │   ├── capture.go
│   │   ├── control.go
│   │   ├── filetransfer.go
│   │   └── handler.go
│   ├── client/
│   │   ├── display.go
│   │   ├── input.go
│   │   ├── filetransfer.go
│   │   └── handler.go
│   ├── relay/
│   │   ├── hub.go
│   │   └── session.go
│   ├── auth/
│   │   ├── user.go
│   │   └── session.go
│   └── protocol/
│       ├── screen.pb.go
│       ├── control.pb.go
│       ├── auth.pb.go
│       ├── filetransfer.pb.go
│       └── relay.pb.go
├── pkg/
│   ├── network/
│   │   ├── tcp.go
│   │   └── udp.go
│   └── utils/
│       ├── compression.go
│       └── crypto.go
├── proto/
│   ├── screen.proto
│   ├── control.proto
│   ├── auth.proto
│   ├── filetransfer.proto
│   └── relay.proto
├── configs/
│   ├── server_config.yaml
│   ├── client_config.yaml
│   └── relay_config.yaml
├── scripts/
│   ├── build.sh
│   └── generate_proto.sh
├── go.mod
├── go.sum
└── README.md