Mengupgrade lampiran Link ke lampiran add-on Classroom

Salah satu cara pengajar menambahkan konten pihak ketiga ke Classroom adalah dengan menempelkan link sebagai Lampiran link di halaman pembuatan tugas. Untuk membangun yang sudah dipahami oleh pengajar, kini Anda dapat mengonfigurasi add-on untuk memungkinkan pengajar mengupgrade lampiran Link ke lampiran add-on.

Ringkasan

Jika Anda mengonfigurasi add-on dengan kemampuan ini, pengajar akan diminta untuk mengupgrade link ke lampiran add-on saat menempelkan lampiran Link di halaman pembuatan tugas. Pengajar hanya diminta untuk melakukannya jika sudah menginstal add-on.

Setelah pengajar setuju untuk mengupgrade link ke lampiran add-on, Upgrade iframe diluncurkan dengan parameter kueri berikut:

  • courseId
  • itemId
  • itemType
  • addOnToken
  • urlToUpgrade
  • login_hint (hanya jika pengguna telah mengizinkan aplikasi Anda)

Empat parameter kueri pertama mencerminkan parameter kueri yang diluncurkan pada Iframe Penemuan Lampiran. Parameter kueri urlToUpgrade baru dan dapat membantu Anda mengevaluasi cara membuat lampiran add-on. Kemudian, Anda dapat menggunakan parameter kueri lainnya untuk memeriksa apakah pengguna sudah login dan memanggil Metode CreateAddOnAttachment dari courseWork, courseWorkMaterials, atau announcements berdasarkan nilai itemType. Dalam iframe, Anda dapat menampilkan layar pemuatan untuk menunjukkan kepada pengajar bahwa lampiran add-on sedang dibuat.

Setelah lampiran add-on dibuat, iframe akan ditutup dan pengajar dapat melihat lampiran dalam tugas seperti biasanya.

Detail penerapan teknis

Bagian ini menyoroti beberapa detail teknis penting untuk fitur tersebut.

Membaca parameter kueri urlToUpgrade

Parameter kueri urlToUpgrade dienkode dengan URI saat diteruskan di Link Tingkatkan iframe. Anda harus mendekode URL untuk mendapatkannya dalam bentuk aslinya. Jika Anda menggunakan JavaScript. Misalnya, Anda dapat menggunakan decodeURIComponent() fungsi untuk melakukannya.

Untuk memastikan pengalaman pengguna yang optimal untuk fitur ini, kirim postMessage sekali lampiran add-on berhasil dibuat. Tindakan ini akan menutup iframe. Lihat halaman detail implementasi iframe untuk detail selengkapnya.

Detail konfigurasi

Konfigurasi berikut diperlukan untuk mengintegrasikan fitur ini ke dalam {i>add-on<i}:

  • URL untuk iframe Upgrade Link: Ini adalah URL yang terbuka di iframe ketika pengajar setuju untuk melakukan upgrade.

  • Pola URL yang harus dideteksi dan dicoba oleh Classroom upgrade: Pola URL dapat terdiri dari host dan beberapa jalur awalan.

    • Anda dapat memberikan beberapa pola URL.
    • Jika Anda tidak memberikan awalan jalur, URL apa pun yang cocok dengan host dapat ditingkatkan.
    • Hanya URL dengan skema https yang dapat diupgrade.
    • Pola URL tidak boleh berisi localhost.
    • Awalan jalur tidak boleh berisi parameter kueri atau fragmen URL.
    • Awalan jalur dapat mendukung karakter pengganti saat ini, tetapi host tidak dapat:
      • example.com adalah host yang valid, serta /foo dan /bar/*/baz adalah awalan jalur yang valid.
      • example.*.host.com bukan {i>host<i} yang valid.
    • Karakter pengganti di antara komponen awalan jalur hanya cocok dengan satu dan tidak cocok dengan beberapa komponen yang dipisahkan oleh garis miring. Pertimbangkan pola URL dengan example.com host dan awalan jalur /bar/*/baz:
      • https://example.com/bar/123/baz cocok untuk URL pola.
      • https://example.com/bar/123/baz/456/789 cocok untuk Pola URL.
      • https://example.com/bar/123/456/baz tidak cocok untuk Pola URL karena karakter pengganti di awalan jalur tidak cocok /123/456/.

Proses pengembangan

Kirim URL iframe Upgrade Link dan pola URL untuk pengujian atau produksi Anda add-on dengan mengirim email ke classroom-link-upgrade-external@google.com.

Anda dapat memberikan konfigurasi untuk project Google Cloud apa pun yang mewakili add-on Classroom. Sebaiknya Anda terlebih dahulu menyediakan untuk add-on dengan visibilitas pribadi sehingga Anda bisa mengembangkan dan menguji di domain demo tanpa mempengaruhi pengguna aktif.

Anda akan menerima respons melalui email jika konfigurasi telah mengaktifkan pembuatan versi. Perhatikan bahwa pola URL yang menggunakan localhost tidak didukung untuk URL ini aplikasi baru.

Format email untuk menyertakan hal berikut:

Google Cloud Project number: GCP_PROJECT_NUMBER

Link Upgrade iframe URL: LINK_UPGRADE_IFRAME_URL

URL Patterns:
-   Host:HOST_1
-   Path prefixes:
  -   PATH_PREFIX_1
  -   PATH_PREFIX_2

-   Host:HOST_2
-   Path prefixes:
  -   PATH_PREFIX_3
  -   PATH_PREFIX_4

// add more hosts and path prefixes as needed

Ganti kode berikut:

  • GCP_PROJECT_NUMBER: Nomor project Google Cloud yang terkait dengan add-on tersebut.
  • LINK_UPGRADE_IFRAME_URL: URL yang akan terbuka di iframe Upgrade Link.
  • HOST_1: Host yang harus dideteksi Classroom. Hanya Skema https didukung.
  • PATH_PREFIX_1 dan PATH_PREFIX_2: Jalur awalan yang terkait dengan HOST_1 yang harus dideteksi dan dicoba oleh Classroom yang ingin diupgrade.
  • HOST_2: Host yang harus dideteksi Classroom. Hanya Skema https didukung.
  • PATH_PREFIX_3 dan PATH_PREFIX_4: Jalur awalan yang terkait dengan HOST_2 yang harus dideteksi dan dicoba oleh Classroom yang ingin diupgrade.

Berikut adalah saran yang perlu dipertimbangkan saat menerapkan fitur ini.

Menghindari pekerjaan ekstra bagi pengajar

Sebaiknya gunakan iframe untuk memfasilitasi proses login, jika diperlukan, atau menampilkan indikator pemuatan. Untuk pengalaman pengguna terbaik, pengajar tidak seharusnya diminta untuk memberikan informasi tambahan apa pun setelah mereka setuju untuk mengupgrade link yang ditempel ke lampiran add-on. Namun, jika ini tidak dimungkinkan untuk add-on, Anda dapat menggunakan iframe Upgrade Link untuk mengumpulkan informasi tambahan yang Anda butuhkan. iframe juga dapat digunakan untuk memberi tahu jika tidak dapat mengupgrade link atau terjadi error.

Menyertakan pesan error akses yang mudah digunakan

Jika pengajar menempelkan dan mengupgrade link yang tidak dapat mereka akses, tampilkan pesan error yang mudah digunakan dalam iframe agar pengajar mengetahui masalah tersebut. iframe juga dapat digunakan untuk memberikan pemahaman yang sesuai kepada pengajar izin akses untuk mengakses konten tersebut.