信息采集清单
SDK 与课堂服务处理以下信息,具体范围取决于安装版本、启用功能、宿主配置和服务部署。版本差异见版本与分发。接入方应将实际使用的条目纳入产品隐私政策和第三方 SDK 清单。
信息处理流向
左右滑动查看完整图示
业务信息
| 场景 | 信息类型与字段示例 | 用途 | 触发时机与方式 | 处理方 |
|---|---|---|---|---|
| 用户注册与资料更新 | originId(可选业务用户标识)、eduUserId、昵称、头像 URL | 映射业务账户、展示课堂成员 | 业务后端调用用户注册或更新接口时提交;成员资料随课堂查询和 IM 同步使用 | 业务后端、课堂服务、实际部署的 IM 服务 |
| 课堂与成员管理 | 课堂 ID、名称、起止安排、成员 ID、角色、名单、课堂权限、上下台状态 | 进课鉴权、课堂管理、状态同步 | 建课、进课、上下台、授权和结课等操作,通过 HTTP 与 IM 信令处理 | 课堂服务、IM 服务、获得课堂访问权限的客户端 |
| 实时音视频 | 麦克风音频、摄像头画面;开启屏幕共享时的共享画面 | 课堂连麦、授课与屏幕演示 | 用户开启对应功能并完成设备授权后,通过媒体适配器采集和传输;设备测试也可能进行本地采集 | 宿主、实际接入的音视频服务、获准订阅的课堂参与者 |
| 聊天 | 发送者标识、消息标识、发送时间、消息正文及使用的附件 | 课堂消息发送、接收和历史查询 | 发送、接收或查询聊天记录时,经 IM 服务处理 | IM 服务、获得会话访问权限的客户端 |
| 白板与课件 | 白板操作、课件名称与格式、原文件或源地址、所有者 ID、转码结果、资源 URL | 白板协作、文件转码、课堂展示 | 打开白板、编辑、上传课件、发起转码或读取资源时 | 白板服务、转码服务、对象存储及获授权的客户端 |
| 录制、导出与截图 | 发起操作对应的白板内容、生成的文件和地址 | 留存或导出教学内容 | 业务明确启用并调用对应功能时 | 相应录制/导出服务、对象存储、业务指定接收方 |
| 教学工具 | 启用功能对应的题目、作答、评分、分组和成员标识 | 课堂互动及结果展示 | 部署版本支持且实际启用对应工具时提交或查询 | 课堂服务和按角色获得访问权限的客户端 |
| 服务端回调 | appId、eventId、课堂/课件 ID、名称、用户标识、状态;部分事件包含资源 URL | 通知业务后端课堂和课件变化 | 应用配置地址并订阅后,事件发生时向该地址发送 HTTPS POST | 课堂服务、接入方配置的回调接收服务 |
昵称、课堂名称、课件内容和聊天正文可能包含用户自行输入的个人信息。业务侧宜使用不包含手机号、证件号等信息的内部 ID 作为 originId。资源地址可能携带访问凭据,不应直接展示在公共页面或完整写入排障日志。
回调具体字段及缺省规则见回调列表。音视频、聊天正文和原始课件文件不在该列表所列的 10 类 Webhook 正文中;业务接收方仍需管理正文中的用户标识和资源链接。
设备与诊断信息
诊断事件用于关联进课、连接、操作和失败路径。它们与业务 Webhook 是两条独立的数据通道。
| 信息 | 处理方式与用途 | 时机 |
|---|---|---|
| 应用、用户和课堂标识 | app_id、edu_user_id、classroom_id,用于定位应用和课堂问题 | SDK 产生并上报诊断事件时;服务端按鉴权上下文校验归属 |
| 设备级随机标识 | device_id,Web 共享实现、Android 和 iOS 默认生成并持久化随机 UUID,用于关联同一安装/存储范围内的多次会话;宿主显式传入时取决于宿主配置 | 首次解析标识时读取或生成,后续会话复用 |
| 会话和请求标识 | session_id、trace_id、operation_id、signal_id,用于关联一次进课或操作链路 | 进课、请求、操作和信令发生时 |
| 运行环境 | platform、sdk_version;app_version、os_version、device_model、network_type 是可选上下文字段,只有宿主/平台提供时才有值 | 初始化或环境状态更新后随诊断事件携带 |
| 事件与运行结果 | 事件名、时间、阶段、耗时、错误码/说明、连接状态、网络质量档位等事件属性 | 初始化、进退课、连接变化和操作等触发;按事件类别采样、攒批和失败补传 |
| 来源 IP | 遥测接收服务从请求上下文取得 client_ip;不采用客户端正文自报的同名字段 | 服务端接收诊断上传时 |
这些标识可以关联到用户与课堂,不属于匿名化数据。随机 device_id 由 UUID 生成,不读取 IMEI 或 MAC 地址。宿主和第三方 SDK 的信息采集范围需分别列明。
诊断扩展属性有事件字段白名单,服务端还过滤昵称、头像、手机号、邮箱、证件号、密码、Token、消息正文等敏感字段词根。业务消息正文由 IM 业务通道处理,不应复制到诊断扩展属性中。过滤规则不能替代对错误文案、自定义日志和上传附件的检查。
本地存储与保留
| 数据 | 存储方式 | 接入时需明确 |
|---|---|---|
| 随机设备标识 | 在宿主的持久化存储中复用 | 清除应用数据、注销与重新安装后的处理;宿主自定义标识的来源 |
| 待上报诊断批次 | 使用本地持久化队列;Web 使用 IndexedDB,Android/iOS 使用 SQLite;成功确认后清除对应批次 | 失败补传、跨账户切换、撤回同意和退出时的队列处理 |
| 业务内容与资源 | 按课堂、IM、白板和对象存储服务分别保存 | 各类内容的期限、访问角色、备份周期和删除流程 |
| 已接收回调 | 由接入方保存去重记录、事件数据或业务任务 | 为事件正文与最小去重键分别设定保留期限 |
用户资料、业务内容、诊断和回调数据需分别设置保存期限。生产区域、保留期限、备份和删除时限以实际部署与服务约定为准。
服务与接收方
| 模块 | 依赖或地址来源 | 清单填写要求 |
|---|---|---|
| 课堂业务与诊断 | backendUrl、服务端下发的 telemetry.ingestUrl | 填写实际服务主体、用途、数据类型、地域和联系方式 |
| IM | Web、Android、iOS 当前接入 OpenIM;连接地址来自服务端返回的 im.apiAddr / im.wsAddr | 根据实际自建或托管部署填写运营主体,不能仅按组件名称认定接收方 |
| RTC | 腾讯 TRTC 适配器 | 核对实际 SDK 版本和启用功能,参阅 TRTC 个人信息保护规则 |
| 白板与课件 | DrawsKit/eduskit 白板适配器、房间配置及返回的资源地址 | 填写白板、转码、存储服务的实际接收方与数据用途 |
| 客户回调 | 控制台配置的通知地址 | 纳入自有接收服务;经网关、日志平台或其他处理方转发的链路也要登记 |
SDK 依赖更新、更换服务提供方或新增功能后,应重新核对清单、权限声明与实际网络请求。实施项见接入合规。