简介

同时使用 Google 课堂和第三方工具的教师面临挑战 能够在多个平台上设置课程和队员名单这可能是 (通过上传 CSV 文件或输入电子邮件地址)手动完成 一个一个。不过,借助 Classroom API,第三方工具可以 教师的工作负载: 学生名单导入

借助学生名单导入功能,第三方平台可以检索课程的元数据, 提供每门课程的教师或学生信息系统 管理员权限。教师可以检索所教授课程的详细信息 而管理员可以查看整个课程中所有课程的详细信息 网域。这种灵活性使开发者能够无缝地上手使用 将 Google 课堂学生名单加入其平台上,无论是个别教师还是 管理整个网域的网络

在深入了解学生名单导入集成的技术详情之前, 我们先来看看示例工作流程:

  1. 在第三方应用中,教师可以选择导入 Google 课堂课程

  2. 第三方应用会通过 Classroom API 调用 courses.list 方法,从而返回包含教师所有课程的响应 JSON。

  3. 在 json 响应中,第三方应用会显示教师的课程标题,供教师选择。该应用需要跟踪课程 ID 才能继续下一步。

  4. 第三方应用使用所选的课程 ID 后,会调用 students.listteachers.list 方法,并在其网站上显示所有名称,以供教师确认导入。

  5. 第三方应用使用 students.listteachers.list 响应 JSON 中返回的电子邮件,邀请用户加入其平台上新导入的课程。

对于工作流中提到的每种方法,您都可以使用 API Explorer 以确切了解每个方法的行为。我们还建议您采取以下做法 在读完本指南之前预读:

  1. 使用 Classroom API 管理课程
  2. 管理学生和教师

汇总了上文详述的学生名单导入工作流的图表。

使用入门

在实现 Google 课堂学生名单导入方面的具体细节之前,您需要: 确定需要通过该 API 检索哪些课程和用户信息。 您可以在 参考文档, 但所需的一些必填字段或常用字段可总结如下:

字段 使用
id 对于检索学生或教师的 API 请求,必填
name 建议为便于用户使用,例如在您的网站上显示
ownerId 在域范围内导入以正确识别 课程主讲教师

系统会在工作流的 courses.list 步骤检索本课程信息 。在此请求中,您可以指定某些请求参数。虽然没有 是此方法的必需参数,建议采用以下参数:

参数 使用
courseState 如果未指定,API 将返回所有六种 课程状态的课程。我们建议指定 ACTIVE 以检索教师目前正在使用的课程。
pageSize 对于导入自己的课程的教师,我们建议指定一个较小(小于 10 个)pageSize,以缩短 API 调用的响应时间。
pageToken 如果您使用的是分页请求,则为必填项。
teacherId 推荐原因:网域管理员经常讲授课程。如果未指定,该请求会返回整个网域中的教师的课程。
字段 建议缩短 API 调用的响应时间。

现在,您的应用可以使用之前检索到的课程 ID 检索 相应课程的学生和助理教师的列表。此课程 ID 是 teachers.liststudents.list 的唯一必需查询参数,但 则不妨考虑指定 pageSizefields 参数来缩短 API 调用的响应时间。

适用于 学生教师 请参阅相应文档。其中主要用于 profile 字段中提供了常用和通常必需的字段: profile.nameprofile.emailAddress

字段 使用
profile.name 建议为便于用户使用,例如在您的网站上显示
profile.emailAddress 对于希望对学生进行唯一标识的应用,则为必填

如需检索和使用 Google 课堂中的任何课程或学生名单详细信息,您的 应用需要请求 授权 。您必须提供三 (3) 项 实现此工作流的范围:

  • https://www.googleapis.com/auth/classroom.courses.readonly
    • 提供对 Google 课堂课程的只读权限
  • https://www.googleapis.com/auth/classroom.rosters.readonly
    • 提供对 Google 课堂课程的学生名单(教师和学生)的只读权限
  • https://www.googleapis.com/auth/classroom.profile.emails
    • 提供对教师和学生 email 属性的读取权限

使用 Pub/Sub 通知同步名单

随着学年的推进,随着学生进出或增加,学生名单可能会发生变化 课程。添加 Pub/Sub 通知 可让您将第三方应用与“课堂”保持同步 球员名单。要接收通知,请设置 Google Cloud Pub/Sub 主题,然后使用 Classroom API。此注册是请求“课堂”从 指定主题的 Feed。此 Feed 将成为与教师的 Google 课堂学生名单重新同步的事件触发器。

若要使用推送通知,将需要一个额外的作用域,该作用域无需提交以进行验证:

  • https://www.googleapis.com/auth/classroom.push-notifications
    • 允许您的应用注册任何推送通知活动

汇总了包含推送通知的学生名单导入工作流的图表

有关如何与 Google 课堂推送通知集成的更多详情,请参阅我们的 管理推送通知指南