互动白板
更新时间: 2025/09/04 17:05:15
您可以通过 NERoom 的互动白板,实现互动涂鸦、实时同步、文档共享等功能,满足在线教育、互动娱乐、金融面签、视频会议等低延时高互动场景的需求。
功能介绍
互动白板的应用场景包括:
- 在线教育:用于线上语言培训、K12 学科辅导等课堂教学场景,教师可借助涂鸦、文本、直线、激光笔等基础教具,边演示课件边勾画要点。
- 视频会议:用于视频会议、在线培训等企业协同场景,满足主讲实时演示讲解、多方协同交流的需求。
- 互动娱乐:用于你画我猜、互动涂鸦等娱乐场景,满足更多有趣的游戏互动玩法。
- 金融面签:用于视频面签、远程见证等金融场景,满足面签双方远程办理业务、进行签名确认的需求。
前提条件
创建房间时,已在 NECreateRoomOptions
方法中,设置 enableWhiteboard=true
,具体操作方法请参见 创建房间。
配置步骤
-
开始共享白板。
func startWhiteboardShare(callback: NECallback<AnyObject>? = nil)
-
设置白板视图。
func setupWhiteboardCanvas(view: NEWhiteboardView) -> Int
-
(可选)重置白板视图。
func resetWhiteboardCanvas(view: NEWhiteboardView?) -> Int
如果 view 的值设置为 null,表示强制重置白板视图。
-
设置白板是否可绘制。
func setEnableDraw(enable: Bool) -> Int
-
查询白板共享者的 userUuid。
func getWhiteboardSharingUserUuid() -> String?
-
停止共享白板。
func stopWhiteboardShare(callback: NECallback<AnyObject>? = nil)
-
关闭某成员的白板共享。
func stopMemberWhiteboardShare(userUuid: String, callback: NECallback<AnyObject>? = nil)
示例代码
-
实现共享白板功能的示例代码如下:
let roomContext = NERoomKit.shared().roomService.getRoomContext(roomUuid: "房间ID") guard let roomContext = roomContext else { return } roomContext.whiteboardController.startWhiteboardShare { code, string, _ in if code == 0 { print("Successfully start whiteboard") } else { print("Failed to start whiteboard. Rease: \(string ?? "")") } }
-
实现设置白板视图功能的示例代码如下:
let roomContext = NERoomKit.shared().roomService.getRoomContext(roomUuid: "房间ID") guard let roomContext = roomContext else { return } let whiteboardView = NEWhiteboardView(frame: xxxx) roomContext.whiteboardController.setupWhiteboardCanvas(view: whiteboardView)
-
实现重置白板视图功能的示例代码如下:
let roomContext = NERoomKit.shared().roomService.getRoomContext(roomUuid: "房间ID") guard let roomContext = roomContext else { return } roomContext.whiteboardController.resetWhiteboardCanvas(view: nil)
-
实现设置白板是否可绘制功能的示例代码如下:
let roomContext = NERoomKit.shared().roomService.getRoomContext(roomUuid: "房间ID") guard let roomContext = roomContext else { return } let code = roomContext.whiteboardController.setEnableDraw(enable: true) if code == 0 { print("Successfully set whiteboard enable draw.") } else { print("Failed to set whiteboard enable draw. Code: \(code)") }
-
实现查询白板共享者的userUuid功能的示例代码如下:
let roomContext = NERoomKit.shared().roomService.getRoomContext(roomUuid: "房间ID") guard let roomContext = roomContext else { return } let userUuid = roomContext.whiteboardController.getWhiteboardSharingUserUuid()
-
实现停止共享白板功能的示例代码如下:
let roomContext = NERoomKit.shared().roomService.getRoomContext(roomUuid: "房间ID") guard let roomContext = roomContext else { return } roomContext.whiteboardController.stopWhiteboardShare { code, string, _ in if code == 0 { print("Successfully stop whiteboard share") } else { print("Failed to stop whiteboard share permission. Rease: \(string ?? "")") } }
-
实现关闭某成员的白板共享的示例代码如下:
let roomContext = NERoomKit.shared().roomService.getRoomContext(roomUuid: "房间ID") guard let roomContext = roomContext else { return } roomContext.whiteboardController.stopMemberWhiteboardShare(userUuid: "成员ID") { code, str, _ in if code == 0 { print("关闭成员白板共享成功") } else { print("关闭成员白板共享shi") } }
API 参考
方法 | 功能描述 |
---|---|
setEnableDraw |
设置白板可绘制 |
setupWhiteboardCanvas |
设置白板视图 |
resetWhiteboardCanvas |
重置白板视图 |
startWhiteboardShare |
开始共享白板 |
stopWhiteboardShare |
停止共享白板 |
getWhiteboardSharing |
查询白板共享者的 userUuid |
stopMemberWhiteboardShare |
关闭某成员的白板共享 |
此文档是否对你有帮助?