教師は Classroom でストリーム アイテムをコピーできます。これにより、ストリーム アイテムに含まれるアドオンの添付ファイルもコピーされます。これにより、教師は複数のセクションや学年ごとに新しいセクションの学習コンテンツを作成する際に、多くの時間を節約できます。
教師が Classroom でストリーム アイテムをコピーすると、コピーされたストリーム アイテムの courseId
、itemId
、attachmentId
クエリ パラメータは、元のストリーム アイテムとは異なります。
コンテンツをコピーする方法
以降のセクションでは、教師が Classroom でストリーム アイテムをコピーする方法について説明します。
コースをコピーする
コースをコピーすると、コース内のすべてのストリーム アイテムが下書きとして新しいコースにコピーされます。教師は、新しいコースに登録している生徒にストリーム アイテムを公開できます。生徒は、元のコースとコピーされたコースに登録できます。これは、生徒が留年した場合やクラスを再受講した場合に発生することがあります。


図 1. 教師は、Classroom の縦型の点線メニューに移動して [コピー] をクリックすることで、コースをコピーできます。教師は、ポップアップでコースの詳細を指定してコピーできます。
ストリーム アイテムを複数のコースに発行する
教師は、ストリーム アイテムの作成ページからストリーム アイテムを複数のコースに対して公開できます。生徒が両方のコースに登録されている可能性があります。
図 2. 教師は、ストリーム アイテムの作成ページのサイドバーにあるプルダウンをクリックして複数のコースを選択し、ストリーム アイテムを複数のコースに対して公開できます。
投稿を再利用する
教師は、[授業] タブに移動して [作成] をクリックすることで、投稿を再利用できます。プルダウンで [投稿を再利用] をクリックしてクラスを選択し、再利用するストリーム アイテムを選択します。
図 3. 教師は、[授業] タブで投稿の再利用フローを開始し、[投稿を再利用する] をクリックします。


図 4. [投稿を再利用する] をクリックすると、教師はクラスと再利用するストリーミング アイテムを選択できます。
予想される動作
コースまたはストリームのアイテムをコピーすると、同じ生徒に異なるコースで同じアドオン アタッチメントが割り当てられることがあります。iframe にエラーが表示されてはなりません。コピーされたストリーム アイテムのアドオンの動作は、次のように推奨されます。
- 教師が
teacherViewUri
で添付ファイルをプレビューできることを確認します。- 教師が新しいコースの追加設定を行う必要がある場合は、適切な対応策を教師に知らせるユーザー フレンドリーなメッセージを表示します。
- 生徒の
studentViewUri
に新しいアドオン アタッチメントが表示されていることを確認します。- コンテンツ タイプの添付ファイルの場合、これは、生徒が
studentViewUri
で確認できるようにコンテンツを表示することを意味します。 - アクティビティ タイプの添付ファイルの場合、添付ファイルが不完全であり、生徒は別のコースの回答を表示できないことを意味します。
- アドオンで同じ生徒が添付ファイルを 2 回提出できない場合は、シナリオや問題を解決するためのパスを説明するユーザー フレンドリーなメッセージを表示します。
- コンテンツ タイプの添付ファイルの場合、これは、生徒が
- コピーしたストリーム アイテムの生徒の提出物が
studentWorkReviewUri
に表示されていることを確認します。教師は、別のコースの添付ファイルに関する生徒の提出物を見ることができません。
教師用ビューの iframe
教師が teacherViewUri
を起動すると、courseId
、itemId
、itemType
、login_hint
に加えて、attachmentId
がクエリ パラメータとして送信されます(ユーザーがアプリをすでに承認している場合)。attachmentId
を使用すると、iframe に正しいアタッチメントを表示できます。
teacherViewUri
にクエリ パラメータのレコードがない場合は、AddOnAttachment
リソースの CopyHistory
オブジェクトを使用して、元のストリーミング アイテムを特定できます。次に、teacherViewUri
に適切なアタッチメントを表示できます。
生徒に表示される画面の iframe
生徒が studentViewUri
を起動すると、courseId
、itemId
、itemType
、login_hint
に加えて、attachmentId
がクエリ パラメータとして送信されます(ユーザーがアプリをすでに承認している場合)。ストリーム アイテムまたはコースがコピーされたときに studentViewUri
をレンダリングするには、次の 2 つのパラメータを使用します。
attachmentId
: リクエスト URL から取得できます。submissionId
:itemType
に基づいて適切なcourseWork.getAddOnContext
、courseWorkMaterials.getAddOnContext
、またはannouncements.getAddOnContext
メソッドを呼び出し、StudentContext
オブジェクトを読み取ることで取得できます。
attachmentId
は、アタッチメントの一意の識別子です。ただし、submissionId
が一意であるとは限りません。したがって、コピーまたは再利用されたストリーム アイテムには異なる attachmentId
が割り当てられますが、submissionId
は同じままになる場合があります。生徒が studentViewUri
を起動すると、attachmentId
と submissionId
の複合キーに基づいて生徒の課題を特定し、添付ファイルを表示できます。
studentViewUri
が submissionId
のみに基づいてレンダリングされる場合、submissionId
が一意であるとは限らないため、生徒に別のコースの提出物が表示される可能性があります。
前述のとおり、attachmentId
を特定できない場合は、AddOnAttachment
リソースの CopyHistory
オブジェクトを使用して、元のストリーミング アイテムとそのクエリ パラメータを特定できます。
生徒の課題の確認用 iframe
教師が studentWorkReviewUri
を起動すると、courseId
、itemId
、itemType
に加えて、attachmentId
と submissionId
がクエリ パラメータとして送信されます。指定された attachmentId
を特定できない場合は、これらのクエリ パラメータを使用して AddOnAttachment
リソースまたは CopyHistory
リソースを取得できます。これにより、attachmentId
と submissionId
の複合キーを使用して生徒の作品を検索できます。