比較 Classroom 外掛程式和 LTI 工具

學習工具互通性 (LTI) 是一種開放框架,可在學習管理系統中建構第三方整合功能。雖然 Classroom 外掛程式和 LTI 工具支援類似的使用者歷程,但這兩個架構並不直接相容。本指南會比較這兩種整合類型,並重點說明主要差異。此外,本文也會提供建議,說明如何調整 LTI 工具,使其成為 Classroom 外掛程式,並提供類似的使用者歷程。

平台和工具之間的互動

LTI 工具和 Classroom 外掛程式的主要差異在於資訊交換方式。LTI 工具通常會使用 HTTP POST 將酬載傳輸至 LTI 平台,而 Classroom 外掛程式則會使用 Google Classroom REST API 建立及擷取資源。

下表摘要說明如何使用 Google Classroom 達成主要 LTI 工具行為。

功能 LTI Classroom
建立作業 作業與評分服務 建立 CourseWorkAddOnAttachment 資源
發布成績 作業與評分服務 修補 CourseWorkAddOnAttachment 學生提交的作業
啟動路徑 深層連結 AddOnAttachment 資源中指定 URI
讀取課程名單 名稱和角色佈建服務 在課程中擷取 StudentTeacher 個人資料

將 LTI 工具改為 Classroom 外掛程式

許多 LTI 互動在 Classroom 外掛程式架構中都有類似項目。以下各節將討論一些重要概念,並提供建議的行動方案。

設定應用程式

如要透過程式輔助方式與 Google Classroom 互動,必須使用 Google Cloud 專案。您會在同一個 Cloud 專案中設定應用程式資訊,定義 Classroom 外掛程式向使用者顯示的方式。您將提供圖示、設定應用程式名稱和說明,並設定產品所需的 OAuth 範圍權限。

從資訊頁面安裝外掛程式應用程式,通常是使用者必須執行的唯一設定步驟。這與啟用及部署 LTI 工具類似。使用者不需要完成任何註冊動作或管理任何設定詳細資料,但管理員可能需要在 Marketplace 中允許應用程式,並設定第三方資料存取權

建議:請按照我們的指南建立及設定 Classroom 外掛程式的 Google Cloud 專案。最重要的步驟是,在 Marketplace SDK 中,將外掛程式啟動網址指定為附件探索 URI。只要這個網址能將使用者導向適當的驗證流程,就可以與現有的 LTI 工具啟動路徑相同。

驗證流程

LTI 使用雙向流程,其中用戶端應用程式和驗證伺服器會交換已簽署的 JWT。管理員設定工具時,系統會自動取得使用者的同意聲明,因此使用者不必授予工具資料存取權。

相較之下,Google 的 OAuth 流程是三足式流程,涉及使用者、外部用戶端應用程式和驗證伺服器。用戶端會收到明確徵求使用者同意後取得的權杖,可授予使用者存取 Google Classroom 資源的權限。

外掛程式應用程式可以使用服務帳戶,達到類似的 2 腿簽署 JWT 行為。這類帳戶屬於應用程式,而非個別使用者,且可未經使用者同意就採取行動。如要使用服務帳戶,必須由管理員進行設定和管理。強烈建議不要使用具有全網域委派功能的服務帳戶,因為這類帳戶可能會遭到濫用。詳情請參閱這份指南,瞭解如何透過 Google Classroom 整合功能進行全網域委派。

建議:當與工具或外掛程式相關聯的網址收到傳入要求時,請檢查要求中是否有 Classroom 外掛程式查詢參數。如果存在,請使用 Google Identity SDK 取得使用者的存取憑證。將憑證儲存在使用者工作階段中,並用於後續的 Classroom API 要求。如果沒有查詢參數,請使用 HTTP 要求與平台的 LTI 端點互動。

在 Google Classroom 中建立外掛程式內容

Classroom 外掛程式支援一種內容:外部託管網頁的網址連結。這些連結包含在AddOnAttachment資源中,定義使用者與外掛程式互動時要開啟的網頁路徑。每個網址都會在特定情境中開啟,詳情請參閱我們的 iframe 指南。這些網址類似於 LTI 資源連結

Classroom 外掛程式不支援其他內容類型,例如檔案、圖片或 HTML 片段。

建議:使用者在產品中選取內容時,請取得他們的 OAuth 憑證並發出 AddOnAttachments.create 要求。要求應包含 AddOnAttachment 物件,其中含有學生檢視畫面、老師檢視畫面和 (選用) 評分檢視畫面的網址。請注意,建立公告作業教材附件時,需要使用不同的 API 端點。只有在作業中建立的附件才能顯示評分畫面,因為這是唯一可接受學生繳交作業的 Classroom 訊息串項目類型。

架構功能比較

整合位置

Classroom 外掛程式會在公告、作業和課程教材中建立附件。這些項目會顯示在 Classroom UI 的課程「串流」分頁中。

老師在作業建立流程中選取挑選器中的外掛程式,即可開始建立外掛程式附件。如要詳細瞭解向使用者顯示的各個檢視畫面,請參閱 iframe 指南

或者,開發人員也可以透過程式建立作業,並附加外掛程式。詳情請參閱在 Google Classroom 以外建立附件的指南。

啟動內容資訊

開啟外掛程式路徑時,Classroom 會在每個網址中附加多個查詢參數。這些屬性一律包含串流項目類型,以及課程和串流項目的 ID。視 iframe 檢視畫面而定,可能還會顯示其他資訊,例如附件或提交內容的 ID、授權建立附件的權杖,或是將連結升級為外掛程式附件的網址。

Classroom 預設不會傳遞任何使用者或機構資訊。您可以透過 Classroom API UserProfile 資源取得使用者資訊,包括使用者 ID。如果使用者是網域管理員,您可以透過 Workspace Admin SDK 取得機構資訊。

驗證及授權

Classroom 外掛程式必須使用「使用 Google 帳戶登入」功能進行使用者驗證。登入後,使用者會透過 OAuth 2.0 範圍授予應用程式權限。您的應用程式可以任意組合使用可用的 OAuth 範圍

探索及設定應用程式

使用者可以透過 Google Workspace Marketplace 尋找及「安裝」Classroom 外掛程式。只要按一下,老師就能安裝外掛程式應用程式。管理員也可以選擇為組織單位或網域中的所有老師安裝外掛程式應用程式。課程中的所有學生都能存取使用該應用程式建立的附件。使用者不需要管理個別 Classroom 外掛程式的權杖、金鑰或 ID。

使用者體驗和產品流程

在許多情況下,LTI 工具現有的產品流程很適合做為 Classroom 外掛程式。與 LTI 工具類似,Classroom 外掛程式基本上可讓您建立及管理平台內容的連結。Classroom 外掛程式附件與 LTI 深層連結類似。如果 LTI 工具建立的網址會指向您代管的內容,應該就能順利做為 Classroom 外掛程式使用。

評分學生作業

您可以在 Classroom 評分檢視畫面中查看 Classroom 外掛程式附件並評分。附加需要學生繳交的內容時,您會提供 student_work_review_uri,讓指導老師查看特定學生的作業並評分。這與 LTI 不同,後者只會定義老師和學生共用的 target_link_uri。Classroom 外掛程式的實作方式與即將推出的 LTI 提交內容審查服務最為相似。