Google Classroomはオンラインの授業支援ツールで、指導や学習を1か所で管理できるアプリケーションです。課題提出や先生と生徒のコミュニケーションのために使ったりすることができます。
今回のブログでは基本的なGoogle Classroomの使い方ではなく、GASを使ってどんなことができるのかをまとめていきたいと思います。
実は以前にnoteで公式ドキュメントのQuickstartの部分についてはまとめたことがあります(ちょうど1年前ほどの記事でした)。
- Google Classroom APIを使ってGoogleクラスルームの情報を取得してみる
- 【そのまま使える】Google Classroom APIを使ってGoogleクラスルームの情報を取得しスプレッドシートに書き出すGAS
今回はAPIリファレンスを確認しつつ、Googleクラスルームの情報を取得しスプレッドシートに書き出すGASを拡張していき、どんなことができるのかを確認していってみたいと思います。
Google ClassroomとGoogle Apps Scriptで複数のクラスを一括で作成する
スプレッドシートに記載した情報を元に、クラスを一括で作成してみます。クラス名やセクション名といった情報をスプレッドシート側に記載し、その内容をGoogle Classroom APIに渡すことで作成を実行します。
ちなみに今回はスプレッドシートのメニューから実行できるように専用のメニューを用意しました。後述する機能も入っていますが、下記のようなものです。
「クラスの作成」を実行すると、以下のようにクラスが一括で作成されます。複数のクラスをいちいち手動で設定するより簡単かつ早いですし、後から何の情報を設定したのかを記録することもできるという意味でスプレッドシートから実行する方がより良いですね。
Google ClassroomとGoogle Apps Scriptでクラスの情報を一括で取得してスプレッドシートに書き出す
今後、クラスの情報を取得して、そこから様々な処理をしていきたいのですが、まずは情報を取得するところから始めないといけないですね。ということで、GASを実行したアカウントが参加しているクラスの情報を一括で取得し、スプレッドシートに書き出していってみます。先程のスプレッドシートのメニューでクラス情報の取得を実行すると、指定したシートへ書き出すようにしています。
Google ClassroomとGoogle Apps Scriptで複数のクラスの情報を一括で更新する
先ほど取得したクラス情報の一覧のスプレッドシートを使って、クラス情報の更新もできます。スプレッドシートに記載してある情報であれば何でも更新できます。クラス名だったりセクション名だったり。例えば、先ほどの「テスト1」「テスト2」をそれぞれ「数学A」「数学B」といった内容に変更してみます。スプレッドシートのメニューから「クラス情報の更新」を実行すれば、これらも一括で更新することができますね。
Google ClassroomとGoogle Apps Scriptでクラスに副担任や生徒を一括で招待する
Googleクラスルームでは様々な役割が設定できます。担任や生徒以外に、副担任をおくこともできます。都度招待したり招待コードを使って招待していくことももちろんできるのですが、誰にどういう役割で送ったのかなどを管理しておきたいといった場合、やはりスプレッドシートを使って記録しつつ、一括で招待するといったことができると便利です。
以下のような招待管理用のスプレッドシートを用意し、メニューから招待を実行できるようにしました。招待実行すると、招待した側へメールが自動で配信されます。
Google ClassroomとGoogle Apps Scriptでクラスのオーナー権限を一括で委譲する
新学期に向けて、クラスのオーナー権限を委譲したいといったニーズがあるかと思います。そのような時にもGASを使えばこの作業を自動化できます。クラスIDとメアドを指定することでオーナー権限の委譲が一括で行えます。
ただし、元々そのクラスの教師になっていることが条件ですが、これは前述した副担任や生徒を一括で招待するスクリプトを実行して参加してもらえてさえいればクリアーできますね。
以上、簡単にAPIでできることとのうち、ほんの一部を紹介してみました。近いうちに課題の管理についてもまとめていってみたいと思います。
なお、今なら、メールマガジンのご登録特典として、本記事でご紹介したGoogleスプレッドシート/Google Apps Scriptを共有いたします!ご興味のある方はぜひご登録くださいませ。