2024/09/03 10:14:46
技术架构
下图展示了灵动课堂的整体技术架构:
如图所示,灵动课堂的技术架构包含如下模块。
灵动课堂教室 SDK
- 提供在线教育类的课堂场景化方案源码,目前支持 1 对 1、小班课、大班课三个场景,同时支持客户自定义班型。
- 客户可以以第三方包的形式将灵动课堂教室 SDK 引入到自己的客户端项目中,从而继承声网提供的课堂场景,并进行自定义修改。
- 灵动课堂教室 SDK 由 Edu 交互层、Edu Context/Edu UI Store 层和 Edu Core 层组成。
自定义组件
- 自定义组件 (Widget) 独立于灵动课堂教室 SDK。
- 声网提供了一些现成的教室组件,如互动白板、即时消息、投票器、答题器、计时器。
- 客户可以根据业务场景来选用现成的教室组件,也可以根据业务需求来自定义开发组件。
Edu 交互层
- 提供了多种教室类型的 UI 交互模版,目前支持 1 对 1、小班课、大班课三个场景,同时支持客户自定义班型。
- 此层开源。声网在 GitHub 上提供源码,客户可基于源码进行修改以满足自定义 UI 需求。
Edu Context (Native)
- 适用于 Native 端,包含 Android 和 iOS。
- 负责串联 Edu 交互层与 Edu Core 层,支持开发者以少量代码快速启动灵动课堂。
- 此层开源,提供用户、房间、流、组件等模块的 API。
Edu UI Store (Web/Electron)
- 适用于 Web 和 Electron 端。
- 负责为 Edu 交互层的 Container 组件提供业务逻辑,向 Edu 交互层提供组件需要的状态和 API。
- 此层开源,声网在 GitHub 上提供源码,客户可基于源码根据实际业务场景修改代码。
Edu Core 层
- 提供在线教育场景的底层业务能力与数据支持。
- 此层闭源,提供了用户、房间、流、组件、组、设备等模块的能力和方法,客户可通过这些方法来控制教室内的操作和行为。