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 menambahkan hal yang sudah dipahami 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 mereka sudah menginstal add-on.

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

  • courseId
  • itemId (diganti namanya dari postId)
  • itemType (baru!)
  • addOnToken
  • login_hint atau hd
  • urlToUpgrade (baru!)

Empat parameter kueri pertama mencerminkan parameter kueri yang diluncurkan di iframe Discovery Lampiran. Parameter kueri urlToUpgrade masih baru dan dapat membantu Anda mengevaluasi cara lampiran add-on harus dibuat. 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 ditutup dan pengajar dapat melihat lampiran dalam tugas seperti biasa.

Detail penerapan teknis

Bagian ini menyoroti beberapa detail teknis penting untuk fitur tersebut.

Baca parameter kueri urlToUpgrade

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

Guna memastikan pengalaman pengguna yang optimal untuk fitur ini, kirim postMessage setelah lampiran add-on berhasil dibuat. Tindakan ini akan menutup iframe. Lihat halaman detail penerapan iframe untuk detail lebih lanjut.

Detail konfigurasi

Konfigurasi berikut diperlukan untuk mengintegrasikan fitur ini ke dalam add-on Anda:

  • URL untuk iframe Link Upgrade: URL ini akan terbuka di iframe saat pengajar setuju untuk melakukan upgrade.

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

    • Anda dapat memberikan beberapa pola URL.
    • Jika Anda tidak memberikan awalan jalur, semua URL yang cocok dengan host dapat diupgrade.
    • 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 untuk 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 host yang valid.
    • Karakter pengganti antara komponen awalan jalur hanya cocok dengan satu komponen, 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 dengan pola URL.
      • https://example.com/bar/123/baz/456/789 cocok untuk pola URL.
      • https://example.com/bar/123/456/baz tidak cocok yang valid untuk pola URL karena karakter pengganti di awalan jalur tidak cocok dengan /123/456/.

Proses pengembangan

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

Pertama-tama, Anda dapat memberikan konfigurasi untuk add-on pribadi dan lingkungan pengujian atau pengembangan yang Anda miliki. Tim Classroom dapat mengaktifkan konfigurasi pengujian ini sebelum mengaktifkan konfigurasi produksi agar Anda dapat menguji alur dalam domain demo. Anda akan menerima balasan email saat konfigurasi telah diaktifkan. Perhatikan bahwa pola URL yang menggunakan localhost tidak didukung untuk fitur ini.

Format email agar 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: jumlah project Google Cloud yang dikaitkan dengan add-on.
  • LINK_UPGRADE_IFRAME_URL URL yang akan terbuka di iframe Link Upgrade.
  • HOST_1: host yang harus dideteksi oleh Classroom. Hanya skema https yang didukung.
  • PATH_PREFIX_1 dan PATH_PREFIX_2: awalan jalur yang terkait dengan HOST_1 yang harus dideteksi oleh Classroom dan mencoba untuk diupgrade.
  • HOST_2: host yang harus dideteksi oleh Classroom. Hanya skema https yang didukung.
  • PATH_PREFIX_3dan PATH_PREFIX_4: awalan jalur yang terkait dengan HOST_2 yang harus dideteksi oleh Classroom dan mencoba untuk diupgrade.

Berikut adalah saran yang perlu dipertimbangkan saat menerapkan fitur ini.

Menghindari pekerjaan tambahan untuk pengajar

Sebaiknya gunakan iframe untuk memfasilitasi login, jika diperlukan, atau menampilkan indikator pemuatan. Untuk pengalaman pengguna terbaik, pengajar tidak boleh dimintai informasi tambahan apa pun setelah mereka menyetujui untuk mengupgrade link yang ditempelkan ke lampiran add-on. Namun, jika add-on Anda tidak dapat dilakukan, Anda dapat menggunakan iframe Link Upgrade untuk mengumpulkan informasi tambahan yang diperlukan. iframe juga dapat digunakan untuk memberi tahu pengajar jika mengupgrade link tidak dapat dilakukan atau jika terjadi error.

Sertakan pesan error akses yang mudah digunakan

Jika pengajar menempelkan dan mengupgrade link yang aksesnya tidak mereka miliki, tampilkan pesan error yang mudah digunakan di iframe agar pengajar mengetahui masalah tersebut. iframe juga dapat digunakan untuk memberi pengajar izin yang sesuai untuk mengakses konten.