見出し画像

12. スクリプトでクラスルームに課題(リンク)を作成する

前回は、スクリプトでクラスルームに資料を作成する手順をご案内しました。ファイルの添付をスクリプトで済ませられることは、ちょっとした発見だったのではないでしょうか。
今回は、課題の作成をご説明していきます。実際の現場でも、課題は多用されていると思いますので、すぐに実践していただけるようにしっかり解説していきます。
課題も前回扱った資料と同様に、URLをリンクとして添付する方法と、ドキュメント、スプレッドシートなどをドライブファイルとして添付する方法があります。
まずは、リンクで添付するものとして、授業でも利用する頻度が高いGoogleフォームを課題に追加してみます。

使用するコード

コードは以下です。ポイントは、やはりリンク先を間違わないようにするということになると思います。よく確認しながら進めてください。

// 課題(Link)を作成します
function createCourseWorkAsLink() {
  const courseId = "courseId";
  const array = {
    title : "課題(Link)の作成",
    description : "スクリプトで課題(Link)を作成します。ここに本文を記述します。例:「第1週授業の課題です。」",
    state : "DRAFT",
    materials : [{
      "link" : {
        "url" : "https://forms.gle/sw*************c8"
      }
    }],
    maxPoints : "100",
    workType : "ASSIGNMENT",
    topicId : "topicId"
  }
  const courseworkaslink = Classroom.Courses.CourseWork.create(array, courseId);
  Logger.log("courseMaterial created : %s (%s)", courseworkaslink.title, courseworkaslink.topicId)
}

フィールドの説明

【3行目】
courseId

作成先クラスルームのコースIDです。3行目の文字列を書き換えます。ダブルコーテーションの間に記述します。
【5行目以降】
title
課題のタイトルです。
description
課題の説明です。本文をここに記述します。
state

課題のステータスです。資料を下書きで作成するには「DRAFT」とします。
「PUBLISHED」とすると作成してすぐに投稿されます。
materials - link - url
""内に課題として添付したいURLを入力します。今回はGoogleフォームのアドレスを入れています。
maxPoints
課題の最高得点(上限)です。0とすると「採点なし」になります。workType
課題を作成するには「ASSIGNMENT」とします。
topicId
作成先トピックのトピックIDです。"topicId"の文字列を書き換えます。ダブルコーテーションの間に記述します。

コースID、トピックIDが分からない場合は、以下の記事の手順で調べてみましょう。

スクリプトの追加と実行

さっそく進めていきます。よく確認しながら作業をしましょう。

1.Googleドライブから作成したプロジェクトファイルを開きます。

プロジェクトを開く
プロジェクトを開く

2.左上の「ファイルを追加」-「スクリプト」をクリックします。

ファイルを追加
ファイルを追加
スクリプトを選択
スクリプトを選択

3.名前を変更します。今回は「createCourseWorkAsLink」です。
長くて申し訳ないですが、分かりやすい名前にしています。ここを間違ってもスクリプトに影響はありませんが、今後作成するスクリプトと名前が重複しないようにだけ、気をつけてください。

名前を変更
名前を変更

4.上のコードをスクリプトの作成画面右側に上書きでコピペします。

コードをコピペ
コードをコピペ

5.上のフィールドの説明を参考に、必要に応じて内容を書き換えます

6.スクリプトを保存して実行します。(実行時に承認を求めるウィンドウが出たら、指示にそって承認します。)

保存して実行
保存して実行

7.実行ログが表示されます。()内はトピックIDです。

実行ログ
実行ログ

実行結果の確認

実行の結果をクラスルームの画面を開いて確認してみましょう。教師の画面と生徒の画面を用意しました。黄色のマーカーを引いているところが、スクリプトで入力した箇所です。

教師の画面

教師の画面
教師の画面

生徒の画面

生徒の画面
生徒の画面

課題はクラスルームで授業を進める上で、重要な柱になってくる項目です。数も増えますし、手を入れ始めると時間がかかることも多いものです。スクリプトを使うメリットは、課題を量産するエネルギーを、課題の内容の充実と検証のための時間に振り向けられることです。ひたすらコピペする、投稿の再利用をしてはドラッグして、という無駄な作業と決別しましょう。

次回は、「スクリプトでクラスルームに課題(ドライブファイル)を作成する」をお届けします。

いいなと思ったら応援しよう!