Learning Tools Interoperability (LTI) adalah framework terbuka untuk membuat integrasi pihak ketiga di sistem pengelolaan pembelajaran. Meskipun add-on Classroom dan alat LTI mendukung perjalanan pengguna yang serupa, kedua framework ini tidak kompatibel secara langsung. Panduan ini membandingkan kedua jenis integrasi dan menyoroti perbedaan utamanya. Panduan ini juga menyarankan cara untuk mencapai perjalanan pengguna yang serupa saat mengadaptasi alat LTI agar berfungsi sebagai add-on Classroom.
Interaksi antara platform dan alat
Perbedaan utama antara alat LTI dan add-on Classroom adalah cara informasi dipertukarkan. Alat LTI biasanya menggunakan HTTP POST untuk
mengirim payload ke platform LTI, sedangkan add-on Classroom
membuat dan mengambil resource menggunakan Google Classroom REST API.
Tabel berikut merangkum cara mencapai perilaku alat LTI utama dengan Google Classroom.
| Fitur | LTI | Classroom |
|---|---|---|
| Membuat tugas | Layanan Tugas &Nilai | Membuat resource CourseWork dan AddOnAttachment |
| Memposting nilai | Layanan Tugas &Nilai | Memperbaiki CourseWork dan AddOnAttachment kiriman siswa |
| Meluncurkan rute | Deep Linking | Menentukan URI di AddOnAttachment resource |
| Membaca daftar siswa kursus | Layanan Penyediaan Nama &Peran | Mengambil Student dan Teacher profil dalam kursus |
Mengadaptasi alat LTI ke add-on Classroom
Banyak interaksi LTI memiliki analogi dalam framework add-on Classroom. Bagian berikut membahas beberapa konsep utama dan tindakan yang direkomendasikan.
Konfigurasi aplikasi Anda
Semua interaksi terprogram dengan Google Classroom memerlukan project Google Cloud. Anda akan mengonfigurasi listingan aplikasi di project Cloud yang sama, yang menentukan tampilan add-on Classroom Anda kepada pengguna akhir. Anda akan memberikan ikon, menetapkan nama dan deskripsi aplikasi, serta mengonfigurasi izin cakupan OAuth yang diperlukan produk Anda.
Menginstal aplikasi add-on dari listingan sering kali merupakan satu-satunya langkah konfigurasi yang harus dilakukan pengguna akhir. Hal ini analog dengan mengaktifkan dan men-deploy alat LTI. Pengguna akhir tidak perlu menyelesaikan tindakan pendaftaran apa pun atau mengelola detail konfigurasi apa pun, meskipun administrator mungkin perlu mengizinkan aplikasi di Marketplace dan mengonfigurasi izin akses data pihak ketiga.
Rekomendasi: Ikuti panduan kami untuk membuat dan mengonfigurasi project Google Cloud untuk add-on Classroom. Yang terpenting, tentukan URL untuk peluncuran add-on sebagai URI Penemuan Lampiran di Marketplace SDK. URL ini dapat sama dengan rute peluncuran alat LTI yang ada selama URL tersebut merutekan pengguna ke alur autentikasi yang sesuai.
Alur autentikasi
LTI menggunakan alur 2-legged yang memungkinkan aplikasi klien dan server autentikasi bertukar JWT yang ditandatangani. Pengguna tidak perlu memberikan akses alat ke data mereka, karena izin tersirat saat administrator mengonfigurasi alat.
Sebaliknya, alur OAuth Google adalah alur 3-legged, yang melibatkan pengguna akhir, aplikasi klien eksternal, dan server autentikasi. Klien menerima token dengan izin pengguna eksplisit yang memberikan akses ke resource Google Classroom pengguna.
Aplikasi add-on dapat mencapai perilaku JWT yang ditandatangani 2-legged yang serupa menggunakan akun layanan. Akun ini adalah akun milik aplikasi, bukan setiap pengguna, dan dapat mengambil tindakan tanpa izin pengguna. Penggunaan akun layanan memerlukan konfigurasi dan pengelolaan administrator. Penggunaan akun layanan dengan delegasi di seluruh domain sangat tidak disarankan, karena akun tersebut berpotensi menjadi vektor penyalahgunaan. Lihat panduan kami tentang delegasi di seluruh domain dengan integrasi Google Classroom untuk mengetahui detail selengkapnya.
Rekomendasi: Saat URL yang terkait dengan alat atau add-on Anda menerima permintaan masuk, periksa permintaan tersebut untuk mengetahui keberadaan parameter kueri add-on Classroom . Jika ada, gunakan Google Identity SDK untuk mendapatkan kredensial akses bagi pengguna. Simpan kredensial di sesi pengguna dan gunakan kredensial tersebut untuk membuat permintaan Classroom API berikutnya. Jika parameter kueri tidak ada, gunakan permintaan HTTP untuk berinteraksi dengan endpoint LTI platform.
Membuat konten add-on di Google Classroom
Add-on Classroom mendukung satu jenis konten: link URL ke halaman yang dihosting secara eksternal. Link ini terdapat dalam AddOnAttachment resource,
yang menentukan rute web yang akan dibuka saat pengguna berinteraksi dengan
add-on Anda. Setiap URL dibuka dalam skenario tertentu. Lihat
panduan iframe kami untuk mengetahui detail selengkapnya. URL ini analog dengan Link Resource
LTI.
Add-on Classroom tidak mendukung jenis konten lain seperti file, gambar, atau fragmen HTML.
Rekomendasi: Saat pengguna memilih konten di produk Anda, dapatkan kredensial
OAuth mereka dan buat permintaan AddOnAttachments.create. Permintaan harus berisi objek AddOnAttachment yang berisi URL untuk tampilan siswa, tampilan pengajar, dan (opsional) tampilan penilaian. Perhatikan bahwa ada
endpoint API terpisah untuk membuat lampiran pada pengumuman,
tugas, atau materi kursus. Hanya lampiran yang dibuat pada tugas yang dapat memiliki tampilan penilaian, karena ini adalah satu-satunya jenis item aliran Classroom yang menerima kiriman siswa.
Perbandingan fitur framework
Penempatan integrasi
Add-on Classroom membuat lampiran pada pengumuman, tugas, dan materi kursus. Ini adalah item yang muncul di tab Aliran kursus di UI Classroom.
Pengajar memulai perjalanan pembuatan lampiran add-on dengan memilih add-on di pemilih dalam alur pembuatan tugas. Lihat panduan iframe untuk mengetahui pembahasan mendetail tentang setiap tampilan yang ditampilkan kepada pengguna.
Atau, developer dapat membuat tugas secara terprogram dengan lampiran add-on. Lihat panduan kami tentang cara membuat lampiran di luar Google Classroom untuk mengetahui detailnya.
Informasi konteks peluncuran
Classroom menambahkan beberapa parameter kueri ke setiap URL saat membuka rute add-on. Parameter ini selalu menyertakan jenis item aliran dan ID untuk kursus dan item aliran. Informasi lain mungkin ada, bergantung pada tampilan iframe, seperti ID lampiran atau kiriman, token untuk mengotorisasi pembuatan lampiran, atau URL untuk mengupgrade dari link ke lampiran add-on.
Classroom tidak meneruskan informasi apa pun tentang pengguna atau institusi secara default. Anda dapat memperoleh informasi tentang pengguna dari resource UserProfile Classroom API, termasuk ID pengguna. Jika pengguna adalah administrator domain, Anda dapat memperoleh informasi tentang institusi dari Workspace Admin SDK.
Autentikasi dan otorisasi
Add-on Classroom harus menggunakan Login dengan Google untuk autentikasi pengguna. Setelah login, pengguna memberikan izin ke aplikasi Anda melalui cakupan OAuth 2.0. Aplikasi Anda dapat menggunakan kombinasi cakupan OAuth yang tersedia.
Penemuan dan konfigurasi aplikasi
Pengguna menemukan dan "menginstal" add-on Classroom melalui Google Workspace Marketplace. Penginstalan sekali klik membuat aplikasi add-on tersedia untuk setiap pengajar. Secara opsional, administrator dapat menginstal aplikasi add-on untuk semua pengajar di unit organisasi atau domain. Lampiran yang dibuat dengan aplikasi tersebut kemudian dapat diakses oleh semua siswa dalam kursus. Pengguna akhir tidak perlu mengelola token, kunci, atau ID untuk setiap add-on Classroom.
Alur UX dan produk
Dalam banyak kasus, alur produk alat LTI yang ada berfungsi dengan baik sebagai add-on Classroom. Mirip dengan alat LTI, add-on Classroom pada dasarnya memungkinkan Anda membuat dan mengelola link ke konten Anda di platform kami. Lampiran add-on Classroom mirip dengan link Deep Linking LTI. Jika alat LTI Anda membuat URL yang mengarah ke konten yang dihosting, alat tersebut akan berfungsi dengan baik sebagai add-on Classroom.
Menilai tugas siswa
Lampiran add-on Classroom dapat dilihat dan dinilai di tampilan grader Classroom. Saat melampirkan konten yang memerlukan kiriman siswa, Anda akan memberikan student_work_review_uri tempat pengajar dapat melihat dan menilai tugas dari siswa tertentu. Hal ini berbeda dengan LTI, yang hanya menentukan target_link_uri yang sama untuk pengajar dan siswa. Implementasi add-on Classroom adalah
paling mirip dengan Layanan Peninjauan Kiriman LTI yang akan datang.