互动白板
腾讯云互动白板(Tencent Interactive Whiteboard,TIW)提供整套完备的多人实时白板互动服务,打破线上教学中师生信息传递障碍,拥有比面授教学板书更丰富、直观和多样的功能,帮您高度还原线下面授教学的互动体验,显著提升线上教学质量。
TEduBoardCallback结构体 参考abstract

白板事件回调接口 更多...

#include <TEduBoard.h>

Public 成员函数

通用事件回调
virtual void onTEBError (TEduBoardErrorCode code, const char *msg)=0
 白板错误回调 更多...
 
virtual void onTEBWarning (TEduBoardWarningCode code, const char *msg)=0
 白板警告回调 更多...
 
基本流程回调
virtual void onTEBInit ()=0
 白板初始化完成回调 更多...
 
virtual void onTEBHistroyDataSyncCompleted ()
 白板历史数据同步完成回调 更多...
 
virtual void onTEBSyncData (const char *data)
 白板同步数据回调 更多...
 
virtual void onTEBUndoStatusChanged (bool canUndo)
 白板可撤销状态改变回调 更多...
 
virtual void onTEBRedoStatusChanged (bool canRedo)
 白板可重做状态改变回调 更多...
 
virtual void onTEBRectSelected ()
 框选工具选中回调 只有框选中涂鸦或图片元素后触发回调 更多...
 
virtual void onTEBRefresh ()
 刷新白板回调 更多...
 
virtual void onTEBOffscreenPaint (const void *buffer, uint32_t width, uint32_t height, const TEduBoardRect *dirtyRects, uint32_t dirtyRectCount)
 白板离屏渲染回调 更多...
 
virtual void onTEBAudioCallbackStarted (uint32_t channels, uint32_t channelSize, uint32_t sampleRate)
 白板音频开始回调 更多...
 
virtual void onTEBAudioCallbackPacket (const float **buffer, int64_t pts)
 白板音频包回调 更多...
 
virtual void onTEBAudioCallbackStopped ()
 白板音频停止回调 更多...
 
涂鸦功能回调
virtual void onTEBImageStatusChanged (const char *boardId, const char *url, TEduBoardImageStatus status)
 白板图片状态改变回调 更多...
 
virtual void onTEBSetBackgroundImage (const char *url)
 设置白板背景图片回调 更多...
 
virtual void onTEBAddImageElement (const char *url)
 添加白板图片元素回调 更多...
 
virtual void onTEBAddElement (const char *elementId, const char *url, const TEduBoardElementType type)
 添加白板元素回调 更多...
 
virtual void onTEBRemoveElement (const TEduBoardStringList *elementIds)
 删除白板元素回调 更多...
 
virtual void onTEBElementLockedChanged (const TEduBoardStringList *elementIds, bool locked)
 元素锁定状态变化回调 更多...
 
virtual void onTEBBackgroundH5StatusChanged (const char *boardId, const char *url, TEduBoardBackgroundH5Status status)
 设置白板背景 H5 状态改变回调 更多...
 
白板页操作回调
virtual void onTEBAddBoard (const TEduBoardStringList *boardList, const char *fileId)
 增加白板页回调 更多...
 
virtual void onTEBDeleteBoard (const TEduBoardStringList *boardList, const char *fileId)
 删除白板页回调 更多...
 
virtual void onTEBGotoBoard (const char *boardId, const char *fileId, const char *userId)
 跳转白板页回调 更多...
 
virtual void onTEBGotoStep (uint32_t currentStep, uint32_t totalStep)
 白板页动画步数回调 更多...
 
virtual void onTEBSnapshot (const char *path)
 白板快照 更多...
 
virtual void onTEBImportInLocalModeCompleted ()
 importInLocalMode接口导入完成回调 更多...
 
文件操作回调
virtual void onTEBFileTranscodeProgress (const char *path, const char *errorCode, const char *errorMsg, const TEduBoardTranscodeFileResult &result)
 文件转码进度回调 更多...
 
virtual void onTEBAddTranscodeFile (const char *fileId)
 增加转码文件回调 更多...
 
virtual void onTEBAddImagesFile (const char *fileId)
 增加批量图片文件回调 更多...
 
virtual void onTEBVideoStatusChanged (const char *fileId, TEduBoardVideoStatus status, double progress, double duration)
 视频文件状态回调 更多...
 
virtual void onTEBAudioStatusChanged (const char *elementId, TEduBoardAudioStatus status, double progress, double duration)
 音频文件状态回调 更多...
 
virtual void onTEBH5FileStatusChanged (const char *fileId, TEduBoardH5FileStatus status)
 H5文件状态回调 更多...
 
virtual void onTEBH5PPTStatusChanged (const char *fileId, TEduBoardH5PPTStatus status, const char *message)
 H5PPT文件状态改变回调 更多...
 
virtual void onTEBH5PPTMediaStatusChanged (const char *fileId, const char *mediaId, TEduBoardH5PPTMediaStatus status)
 H5PPT文件多媒体元素状态改变回调 更多...
 
virtual void onTEBDeleteFile (const char *fileId)
 删除文件回调 更多...
 
virtual void onTEBSwitchFile (const char *fileId)
 切换文件回调 更多...
 
virtual void onTEBFileUploadProgress (const char *path, int currentBytes, int totalBytes, int uploadSpeed, double percent)
 文件上传进度回调 更多...
 
virtual void onTEBFileUploadStatus (const char *path, TEduBoardUploadStatus status, int errorCode, const char *errorMsg)
 文件上传状态回调 更多...
 
virtual void onTEBOfflineWarning (int count)
 白板离线告警 更多...
 
virtual void onTEBTextElementStatusChanged (const char *status, const char *id, const char *value, double left, double top)
 文本组件状态回调 更多...
 
virtual void onTEBImageElementStatusChanged (const char *boardId, const char *url, const char *elementId, TEduBoardImageStatus status)
 白板图片状态改变回调 更多...
 
virtual void onTEBTextElementWarning (const char *message, TEduBoardTextComponentStatus code)
 白板图片状态改变回调 更多...
 
virtual void onTEBSelectedElements (const TEduBoardSelectedElementInfoList &selElementList)
 框选工具选中元素回调 更多...
 
virtual void onTEBMathGraphEvent (const char *boardId, const char *graphId, const char *message, TEduBoardMathGraphCode code)
 框选工具选中元素回调 更多...
 
virtual void onTEBZoomDragStatus (const char *fid, int32_t scale, int32_t xOffset, int32_t yOffset)
 远端白板缩放移动状态回调 更多...
 
virtual void onTEBGroupStatusChanged (bool enable, const char *classGroupId, TEduBoardClassGroupOperationType operationType, const char *message)
 分组讨论状态变更 更多...
 
virtual void onTEBBoardScrollChanged (const char *boardId, int trigger, double scrollLeft, double scrollTop, int scale)
 白板移动回调 更多...
 
virtual void onTEBBoardCursorPosition (int x, int y)
 白板鼠标位置回调 更多...
 
virtual void onTEBBoardFirstFrameRendered ()
 首帧渲染完成回调 更多...
 
virtual void onTEBElementsPositionChange (const TEduBoardSelectedElementInfoList &positionChangeElementList, TEduBoardPositionChangeStatus status)
 元素位置发生变更的回调 更多...
 
virtual void onTEBPermissionChange (const TEduBoardStringList &permissionList, const TEduBoardStringList &operatorList, const TEduBoardStringList &creatorList)
 
virtual void onTEBPermissionDeinedData (const char *data)
 权限被拒回调 更多...
 

详细描述

白板事件回调接口

成员函数说明

◆ onTEBAddBoard()

virtual void onTEBAddBoard ( const TEduBoardStringList boardList,
const char *  fileId 
)
inlinevirtual

增加白板页回调

参数
boardList增加的白板页 ID 列表(使用后不需要自行调用 Release 方法释放,SDK 内部自动释放)
fileId增加的白板页所属的文件 ID(目前版本只可能为::DEFAULT)

◆ onTEBAddElement()

virtual void onTEBAddElement ( const char *  elementId,
const char *  url,
const TEduBoardElementType  type 
)
inlinevirtual

添加白板元素回调

参数
elementId调用 AddElement 时返回的元素 ID
url调用 AddElement 时传入的 URL
type元素类型 TEduBoardElementType 只有本地调用 AddElement 时会收到该回调 收到该回调表示元素已经显示出来

◆ onTEBAddImageElement()

virtual void onTEBAddImageElement ( const char *  url)
inlinevirtual

添加白板图片元素回调

参数
url调用 AddImageElement 时传入的 URL
警告
该回调已废弃,请使用AddElement接口及onTEBAddElement回调代替

只有本地调用 AddImageElement 时会收到该回调 收到该回调表示图片已经上传或下载成功,并且显示出来

◆ onTEBAddImagesFile()

virtual void onTEBAddImagesFile ( const char *  fileId)
inlinevirtual

增加批量图片文件回调

参数
fileId增加的文件 ID

文件加载完成后才会触发该回调

◆ onTEBAddTranscodeFile()

virtual void onTEBAddTranscodeFile ( const char *  fileId)
inlinevirtual

增加转码文件回调

参数
fileId增加的文件 ID

文件加载完成后才会触发该回调

◆ onTEBAudioCallbackPacket()

virtual void onTEBAudioCallbackPacket ( const float **  buffer,
int64_t  pts 
)
inlinevirtual

白板音频包回调

参数
buffer音频数据数组,格式为 buffer[channels][channelSize]
pts音频包时间戳
警告
该回调不会从统一回调线程触发,可能来自不同线程调用

◆ onTEBAudioCallbackStarted()

virtual void onTEBAudioCallbackStarted ( uint32_t  channels,
uint32_t  channelSize,
uint32_t  sampleRate 
)
inlinevirtual

白板音频开始回调

参数
channels回调的音频声道数
channelSize回调的每个声道的采样点个数
sampleRate回调的音频采样率
警告
该回调不会从统一回调线程触发,可能来自不同线程调用

◆ onTEBAudioCallbackStopped()

virtual void onTEBAudioCallbackStopped ( )
inlinevirtual

白板音频停止回调

警告
该回调不会从统一回调线程触发,可能来自不同线程调用

◆ onTEBAudioStatusChanged()

virtual void onTEBAudioStatusChanged ( const char *  elementId,
TEduBoardAudioStatus  status,
double  progress,
double  duration 
)
inlinevirtual

音频文件状态回调

参数
elementId元素 ID
status文件状态
status文件状态
progress当前进度(秒)
duration总时长(秒)

◆ onTEBBackgroundH5StatusChanged()

virtual void onTEBBackgroundH5StatusChanged ( const char *  boardId,
const char *  url,
TEduBoardBackgroundH5Status  status 
)
inlinevirtual

设置白板背景 H5 状态改变回调

参数
boardId白板 ID
url白板图片 URL
status新的白板图片状态

◆ onTEBBoardCursorPosition()

virtual void onTEBBoardCursorPosition ( int  x,
int  y 
)
inlinevirtual

白板鼠标位置回调

参数
xx轴位置
yy轴位置

◆ onTEBBoardFirstFrameRendered()

virtual void onTEBBoardFirstFrameRendered ( )
inlinevirtual

首帧渲染完成回调

◆ onTEBBoardScrollChanged()

virtual void onTEBBoardScrollChanged ( const char *  boardId,
int  trigger,
double  scrollLeft,
double  scrollTop,
int  scale 
)
inlinevirtual

白板移动回调

参数
boardId白板id
trigger事件触发来源
scrollLeft左侧滚动百分比距离
scrollTop顶部滚动百分比距离
scale白板缩放比

◆ onTEBDeleteBoard()

virtual void onTEBDeleteBoard ( const TEduBoardStringList boardList,
const char *  fileId 
)
inlinevirtual

删除白板页回调

参数
boardList删除的白板页 ID(使用后不需要自行调用 Release 方法释放,SDK 内部自动释放)
fileId删除的白板页所属的文件 ID(目前版本只可能为::DEFAULT)

◆ onTEBDeleteFile()

virtual void onTEBDeleteFile ( const char *  fileId)
inlinevirtual

删除文件回调

参数
fileId删除的文件 ID

◆ onTEBElementLockedChanged()

virtual void onTEBElementLockedChanged ( const TEduBoardStringList elementIds,
bool  locked 
)
inlinevirtual

元素锁定状态变化回调

参数
elementIds锁定状态变化的元素ID(使用后不需要自行调用 Release 方法释放,SDK 内部自动释放)
locked变化后的锁定状态

◆ onTEBElementsPositionChange()

virtual void onTEBElementsPositionChange ( const TEduBoardSelectedElementInfoList positionChangeElementList,
TEduBoardPositionChangeStatus  status 
)
inlinevirtual

元素位置发生变更的回调

参数
positionChangeElementList位置发送改变的元素列表ID
status位置变化状态

◆ onTEBError()

virtual void onTEBError ( TEduBoardErrorCode  code,
const char *  msg 
)
pure virtual

白板错误回调

参数
code错误码,参见 TEduBoardErrorCode 定义
msg错误信息,编码格式为 UTF8
参见
TEduBoardErrorCode

◆ onTEBFileTranscodeProgress()

virtual void onTEBFileTranscodeProgress ( const char *  path,
const char *  errorCode,
const char *  errorMsg,
const TEduBoardTranscodeFileResult result 
)
inlinevirtual

文件转码进度回调

参数
path正在转码的本地文件路径
errorCode文件转码错误码,无异常时为空字符串 ""
errorMsg文件转码错误信息,无异常时为空字符串 ""
result文件转码结果
警告
自2.6.5版本起该回调被废弃

◆ onTEBFileUploadProgress()

virtual void onTEBFileUploadProgress ( const char *  path,
int  currentBytes,
int  totalBytes,
int  uploadSpeed,
double  percent 
)
inlinevirtual

文件上传进度回调

参数
path正在上传的文件路径
currentBytes当前已上传大小,单位 bytes
totalBytes文件总大小,单位 bytes
uploadSpeed文件上传速度,单位 bytes
percent文件上传进度,取值范围 [0, 1]

◆ onTEBFileUploadStatus()

virtual void onTEBFileUploadStatus ( const char *  path,
TEduBoardUploadStatus  status,
int  errorCode,
const char *  errorMsg 
)
inlinevirtual

文件上传状态回调

参数
path正在上传的文件路径
status文件上传状态
errorCode文件上传错误码
errorMsg文件上传错误信息

◆ onTEBGotoBoard()

virtual void onTEBGotoBoard ( const char *  boardId,
const char *  fileId,
const char *  userId 
)
inlinevirtual

跳转白板页回调

参数
boardId跳转到的白板页 ID
fileId跳转到的白板页所属的文件 ID
userId操作翻页的用户ID

◆ onTEBGotoStep()

virtual void onTEBGotoStep ( uint32_t  currentStep,
uint32_t  totalStep 
)
inlinevirtual

白板页动画步数回调

参数
currentStep当前白板页动画步数,取值范围 [0, totalStep)
totalStep当前白板页动画总步数

◆ onTEBGroupStatusChanged()

virtual void onTEBGroupStatusChanged ( bool  enable,
const char *  classGroupId,
TEduBoardClassGroupOperationType  operationType,
const char *  message 
)
inlinevirtual

分组讨论状态变更

参数
enable分组模式状态
classGroupId发生变化的分组id
operationType触发状态变更的操作
messgae操作信息

◆ onTEBH5FileStatusChanged()

virtual void onTEBH5FileStatusChanged ( const char *  fileId,
TEduBoardH5FileStatus  status 
)
inlinevirtual

H5文件状态回调

参数
fileId文件 ID
status文件状态

◆ onTEBH5PPTMediaStatusChanged()

virtual void onTEBH5PPTMediaStatusChanged ( const char *  fileId,
const char *  mediaId,
TEduBoardH5PPTMediaStatus  status 
)
inlinevirtual

H5PPT文件多媒体元素状态改变回调

参数
fileId文件 ID
mediaId多媒体元素ID
status多媒体元素状态

◆ onTEBH5PPTStatusChanged()

virtual void onTEBH5PPTStatusChanged ( const char *  fileId,
TEduBoardH5PPTStatus  status,
const char *  message 
)
inlinevirtual

H5PPT文件状态改变回调

参数
fileId文件 ID
status文件状态
message状态消息

◆ onTEBHistroyDataSyncCompleted()

virtual void onTEBHistroyDataSyncCompleted ( )
inlinevirtual

白板历史数据同步完成回调

◆ onTEBImageElementStatusChanged()

virtual void onTEBImageElementStatusChanged ( const char *  boardId,
const char *  url,
const char *  elementId,
TEduBoardImageStatus  status 
)
inlinevirtual

白板图片状态改变回调

参数
boardId白板 ID
url白板图片 URL
status新的白板图片状态
elementId当前元素id

◆ onTEBImageStatusChanged()

virtual void onTEBImageStatusChanged ( const char *  boardId,
const char *  url,
TEduBoardImageStatus  status 
)
inlinevirtual

白板图片状态改变回调

参数
boardId白板 ID
url白板图片 URL
status新的白板图片状态

◆ onTEBImportInLocalModeCompleted()

virtual void onTEBImportInLocalModeCompleted ( )
inlinevirtual

importInLocalMode接口导入完成回调

◆ onTEBInit()

virtual void onTEBInit ( )
pure virtual

白板初始化完成回调

收到该回调后表示白板已处于可正常工作状态(此时白板为空白白板,历史数据尚未拉取到)

◆ onTEBMathGraphEvent()

virtual void onTEBMathGraphEvent ( const char *  boardId,
const char *  graphId,
const char *  message,
TEduBoardMathGraphCode  code 
)
inlinevirtual

框选工具选中元素回调

参数
boardId函数画板ID
graphId函数图像ID
message异常信息
code数学函数图像工具状态码(TEduBoardMathGraphCode)

◆ onTEBOfflineWarning()

virtual void onTEBOfflineWarning ( int  count)
inlinevirtual

白板离线告警

参数
count告警次数

◆ onTEBOffscreenPaint()

virtual void onTEBOffscreenPaint ( const void *  buffer,
uint32_t  width,
uint32_t  height,
const TEduBoardRect dirtyRects,
uint32_t  dirtyRectCount 
)
inlinevirtual

白板离屏渲染回调

参数
buffer白板数据
width白板像素数据的宽度
height白板像素数据的高度
dirtyRects需要重绘的矩形区域数组(可能有多个)
dirtyRectCount需要重绘的矩形区域数组个数
警告
该回调不会从统一回调线程触发,可能来自不同线程调用

该回调只有在启用离屏渲染时才会被触发 当width != 0 || height != 0时,buffer指向白板像素数据,大小为 width * height * 4,像素以白板左上方为原点从左到右从上到下按 BGRA 排列

◆ onTEBPermissionChange()

virtual void onTEBPermissionChange ( const TEduBoardStringList permissionList,
const TEduBoardStringList operatorList,
const TEduBoardStringList creatorList 
)
inlinevirtual
参数

◆ onTEBPermissionDeinedData()

virtual void onTEBPermissionDeinedData ( const char *  data)
inlinevirtual

权限被拒回调

参数
data被拒权限

◆ onTEBRectSelected()

virtual void onTEBRectSelected ( )
inlinevirtual

框选工具选中回调 只有框选中涂鸦或图片元素后触发回调

◆ onTEBRedoStatusChanged()

virtual void onTEBRedoStatusChanged ( bool  canRedo)
inlinevirtual

白板可重做状态改变回调

参数
canRedo白板当前是否还能执行 Redo 操作

◆ onTEBRefresh()

virtual void onTEBRefresh ( )
inlinevirtual

刷新白板回调

◆ onTEBRemoveElement()

virtual void onTEBRemoveElement ( const TEduBoardStringList elementIds)
inlinevirtual

删除白板元素回调

参数
elementIds被删除的元素ID(使用后不需要自行调用 Release 方法释放,SDK 内部自动释放)

◆ onTEBSelectedElements()

virtual void onTEBSelectedElements ( const TEduBoardSelectedElementInfoList selElementList)
inlinevirtual

框选工具选中元素回调

参数
selElementList选中的元素列表ID

◆ onTEBSetBackgroundImage()

virtual void onTEBSetBackgroundImage ( const char *  url)
inlinevirtual

设置白板背景图片回调

参数
url调用 SetBackgroundImage 时传入的 URL

只有本地调用 SetBackgroundImage 时会收到该回调 收到该回调表示背景图片已经上传或下载成功,并且显示出来

◆ onTEBSnapshot()

virtual void onTEBSnapshot ( const char *  path)
inlinevirtual

白板快照

参数
path快照本地路径,编码格式为 UTF8

◆ onTEBSwitchFile()

virtual void onTEBSwitchFile ( const char *  fileId)
inlinevirtual

切换文件回调

参数
fileId切换到的文件 ID

◆ onTEBSyncData()

virtual void onTEBSyncData ( const char *  data)
inlinevirtual

白板同步数据回调

参数
data白板同步数据(JSON 格式字符串)

收到该回调时需要将回调数据通过信令通道发送给房间内其他人,接受者收到后调用 AddSyncData 接口将数据添加到白板以实现数据同步,该回调用于多个白板间的数据同步,使用腾讯云 IMSDK 进行实时数据同步时,不会收到该回调。

◆ onTEBTextElementStatusChanged()

virtual void onTEBTextElementStatusChanged ( const char *  status,
const char *  id,
const char *  value,
double  left,
double  top 
)
inlinevirtual

文本组件状态回调

参数
status文本组件状态(focus:获得焦点,blur:失去焦点)
id文本组件id
value文本内容
left文本组件水平偏移
top文本组件垂直偏移

◆ onTEBTextElementWarning()

virtual void onTEBTextElementWarning ( const char *  message,
TEduBoardTextComponentStatus  code 
)
inlinevirtual

白板图片状态改变回调

参数
message异常信息
code白板文字工具异常状态码

◆ onTEBUndoStatusChanged()

virtual void onTEBUndoStatusChanged ( bool  canUndo)
inlinevirtual

白板可撤销状态改变回调

参数
canUndo白板当前是否还能执行 Undo 操作

◆ onTEBVideoStatusChanged()

virtual void onTEBVideoStatusChanged ( const char *  fileId,
TEduBoardVideoStatus  status,
double  progress,
double  duration 
)
inlinevirtual

视频文件状态回调

参数
fileId文件 ID
status文件状态
progress当前进度(秒)(仅支持 mp4 格式)
duration总时长(秒)(仅支持 mp4 格式)

◆ onTEBWarning()

virtual void onTEBWarning ( TEduBoardWarningCode  code,
const char *  msg 
)
pure virtual

白板警告回调

参数
code错误码,参见 TEduBoardWarningCode 定义
msg错误信息,编码格式为 UTF8
参见
TEduBoardWarningCode

◆ onTEBZoomDragStatus()

virtual void onTEBZoomDragStatus ( const char *  fid,
int32_t  scale,
int32_t  xOffset,
int32_t  yOffset 
)
inlinevirtual

远端白板缩放移动状态回调

参数
fid文件ID
scale文件缩放比
xOffset当前可视区域距左上角的横向偏移量
yOffset当前可视区域距左上角的纵向偏移量