CourseWork との統合

デベロッパーは Google Classroom API を使用して、Google Classroom の課題を操作できます。この方法で API を使用するアプリは、CourseWork 統合と呼ばれます。

この統合パスは、Classroom 外のリソースへのリンクを含む課題を作成して採点する場合によく使用されます。 Classroom の共有ボタンと比較して、デベロッパーは課題の管理にアクセスしやすくなります。

仕組み

CourseWork 統合のコア機能は、Classroom API を使用して課題、お知らせ、コース資料を作成、管理することです。

CourseWork の統合によって可能になる一般的なユーザー ジャーニーの一例として、教師がウェブサイトまたはアプリケーション内からコンテンツを検出、割り当て、採点できるようにすることがあります。

  1. 教師ユーザーがウェブサイトにログインします。
  2. 教師がクラスと共有するコンテンツを検索または作成します。教師はウェブサイトのボタンをクリックして、このコンテンツを Google Classroom に送信します。
  3. アプリケーションが courses.courseWork.create にリクエストを発行します。リクエストの本文には、次の項目を含む CourseWork オブジェクトが含まれています。
    • 宛先コースの ID。
    • 課題のタイトル。
    • 課題の説明テキスト。
    • link Material。教師が選択したコンテンツの URL に置き換えます。
    • 必要に応じて、選択したコンテンツで達成可能な最大スコア。
  4. Classroom に新しい課題がリンクとともに添付されて表示されます。リンクは、create リクエストで指定された URL を参照します。例については、図 1 をご覧ください。
  5. Classroom の成績評価表にも、課題の新しい列が表示されます。最大スコア(指定されている場合)も表示されます。
  6. 生徒は課題を受け取ると、link Material をクリックして指定された URL を新しいタブで開き、ウェブサイト上のコンテンツを表示または完了します。必要に応じて、生徒が課題を提出するための管理機能を提供します。
  7. 必要に応じて、courses.courseWork.studentSubmissions.modifyAttachments にリクエストを送信して、生徒の提出物に添付ファイルを追加します。添付ファイルには、Google ドライブのファイルや、ウェブサイト上の生徒の課題を指す link Material などがあります。
  8. 必要に応じて、courses.courseWork.studentSubmissions.patch にリクエストを発行して、課題の生徒の成績を設定します。

リンク マテリアルを添付して CourseWork の課題を編集する

図 1. CourseWork 統合によって作成された link Material を使用して課題を編集する際の教師の表示。

または、courses.announcements.create または courses.courseWorkMaterials.create を呼び出して、課題ではなくお知らせやコース資料を作成することもできます。関連する Classroom API の操作について詳しくは、コースワークの作成と管理成績の設定と更新のページをご覧ください。

考慮事項

CourseWork 統合がプロダクトのニーズに適しているかどうかを判断する前に、次の点を考慮してください。

  • ユーザーを認証し、同意を求める必要があります。ユーザーに代わって API リクエストを実行している。たとえば、Google Classroom のどのコースにもコースワークを作成できません。承認済みユーザーが教えるコースでのみ、コースワークを作成できます。
  • ユーザーがコンテンツを受信するコースを選択できる方法が必要です。courses.list を使用してユーザーが指導したコースのリストを取得し、ユーザーがそのリストから 1 つ以上のコースを選択できるようにすることを検討してください。
  • ユーザーが Classroom で link Material をクリックすると、リンクが新しいタブで開きます。この URL が開いたときに、サーバーが Classroom から情報を受け取ることはありません。
  • 教師は、デベロッパーに依存せずにコースワークを変更または削除できます。つまり、デベロッパーのコースワークに関する知識が古くなる可能性があるということです。コースワークの変更を認識する必要がある場合は、コースワークの変更に関するプッシュ通知を設定することを検討してください。
  • 教師は Classroom の UI で課題を作成し、ウェブサイトの URL へのリンクを貼り付けることができます。この方法で作成された課題は教師のみが所有するため、Classroom API を使用して提出物の成績を表示、変更、設定することはできません。