Bağlantı eklerini Classroom eklentisi eklerine yükseltin

Öğretmenlerin Classroom'a üçüncü taraf içeriği eklemesinin bir yolu, ödev oluşturma sayfasına Bağlantı eki olarak bir bağlantı yapıştırmaktır. Öğretmenlerin aşina olduğu özellikleri geliştirmek için artık eklentinizi yapılandırarak öğretmenlerin Bağlantı ekini eklenti ekine yükseltmesine izin verebilirsiniz.

Genel bakış

Eklentinizi bu özellikle yapılandırırsanız, ödev oluşturma sayfasına bir Bağlantı ekini yapıştırdıklarında öğretmenlerden eklenti ekinin bağlantısını yükseltmeleri istenir. Öğretmenlerden bunu yalnızca eklentiyi önceden yüklediklerinde istemeleri istenir.

Öğretmen bağlantıyı bir eklenti ekine yükseltmeyi kabul ettiğinde, Yeni Sürüme Geçirme iframe'i aşağıdaki sorgu parametreleriyle başlatılır:

  • courseId
  • itemId (yeni adı postId)
  • itemType (yeni!)
  • addOnToken
  • login_hint veya hd
  • urlToUpgrade (yeni!)

İlk dört sorgu parametresi, Ek Keşfi iframe'inde başlatılan sorgu parametrelerini yansıtır. urlToUpgrade sorgu parametresi yenidir ve eklenti ekinin nasıl oluşturulması gerektiğini değerlendirmenize yardımcı olabilir. Ardından, kullanıcının oturum açıp açmadığını kontrol etmek ve itemType değerine göre courseWork, courseWorkMaterials veya announcements CreateAddOnAttachment yöntemini çağırmak için diğer sorgu parametrelerini kullanabilirsiniz. iframe içinde, öğretmene eklenti ekinin oluşturulmakta olduğunu bildirmek için bir yükleme ekranı görüntüleyebilirsiniz.

Eklenti eki oluşturulduktan sonra iframe kapatılır ve öğretmen, ödevdeki eki her zamanki gibi görüntüleyebilir.

Teknik uygulama ayrıntıları

Bu bölümde, özellikle ilgili bazı önemli teknik ayrıntılar vurgulanmaktadır.

urlToUpgrade sorgu parametresini okuyun

urlToUpgrade sorgu parametresi, Bağlantı Yeni Sürüme Geçiş iframe'inde iletildiğinde URI kodlanır. Orijinal biçiminde almak için URL'nin kodunu çözmeniz gerekir. Örneğin, JavaScript kullanıyorsanız bunu yapmak için decodeURIComponent() işlevini kullanabilirsiniz.

Bu özellikle ilgili optimum bir kullanıcı deneyimi sağlamak için eklenti eki başarıyla oluşturulduktan sonra postMessage gönderin. Bu işlem iframe'i kapatır. Daha ayrıntılı bilgi için iframe uygulama ayrıntıları sayfasını inceleyin.

Yapılandırma ayrıntıları

Bu özelliği eklentinize entegre etmek için aşağıdaki yapılandırmalar gereklidir:

  • Link Yeni Sürüm iFrame URL'si: Bu, öğretmen yeni sürüme geçmeyi kabul ettiğinde iframe'de açılan URL'dir.

  • Classroom'un algılayıp yeni sürüme geçirmeyi denemesi gereken URL kalıpları: URL kalıpları bir ana makine ve birden fazla yol ön ekinden oluşabilir.

    • Birden çok URL kalıbı sağlayabilirsiniz.
    • Herhangi bir yol ön eki sağlamazsanız ana makineyle eşleşen tüm URL'ler yeni sürüme geçirilebilir.
    • Yalnızca https şemasına sahip URL'ler yeni sürüme geçirilebilir.
    • URL kalıpları localhost içermemelidir.
    • Yol önekleri, sorgu parametreleri veya URL parçaları içermemelidir.
    • Yol önekleri şu anda joker karakterleri destekleyebilir ancak ana makineler şunları yapamaz:
      • example.com geçerli bir ana makine; /foo ve /bar/*/baz ise geçerli yol ön ekleridir.
      • example.*.host.com, geçerli bir ana makine değil.
    • Yol ön eki bileşenleri arasındaki joker karakter yalnızca tek bir bileşenle eşleşir ve eğik çizgiyle ayrılmış birden fazla bileşenle eşleşmez. Ana makine example.com ve yol ön eki /bar/*/baz olan bir URL kalıbı düşünün:
      • https://example.com/bar/123/baz, URL kalıbı için geçerli bir eşleşmedir.
      • https://example.com/bar/123/baz/456/789, URL kalıbı için geçerli bir eşleşmedir.
      • Yol önekindeki joker karakter /123/456/ ile eşleşmediğinden https://example.com/bar/123/456/baz, URL kalıbı için geçerli bir eşleşme değil.

Geliştirme süreci

classroom-link-upgrade-external@google.com adresine e-posta göndererek test veya üretim eklentiniz için Bağlantı Yeni Sürüme Geçiş iframe URL'sini ve URL kalıplarını gönderin.

Öncelikle özel eklentiniz ve sahibi olduğunuz herhangi bir test veya geliştirme ortamı için yapılandırmalar sağlayabilirsiniz. Classroom ekibi, demo alanınızdaki akışı test edebilmeniz için üretim yapılandırmalarınızı etkinleştirmeden önce bu test yapılandırmalarını etkinleştirebilir. Yapılandırmalar etkinleştirildiğinde e-postanıza bir yanıt alacaksınız. localhost kullanan URL kalıplarının bu özellik için desteklenmediğini unutmayın.

E-postayı aşağıdaki bilgileri içerecek şekilde biçimlendirin:

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

Aşağıdakini değiştirin:

  • GCP_PROJECT_NUMBER: Eklentinin ilişkilendirildiği Google Cloud projesinin numarası.
  • Bağlantı Yükseltme iframe'inde açılması gereken URL'yi LINK_UPGRADE_IFRAME_URL.
  • HOST_1: Classroom'un algılayacağı ana makine. Yalnızca https şeması desteklenir.
  • PATH_PREFIX_1 ve PATH_PREFIX_2: Classroom'un algılayıp yükseltmeyi denemesi gereken, HOST_1 ile ilişkili yol ön ekleri.
  • HOST_2: Classroom'un algılayacağı ana makine. Yalnızca https şeması desteklenir.
  • PATH_PREFIX_3ve PATH_PREFIX_4: Classroom'un algılayıp yükseltmeyi denemesi gereken, HOST_2 ile ilişkili yol önekleri.

Aşağıda, bu özelliği uygularken dikkate almanız gereken öneriler verilmiştir.

Öğretmenlerin fazladan iş yükünü ortadan kaldırması

Gerekirse oturum açmayı kolaylaştırmak için iframe'i kullanmanızı veya bir yükleme göstergesi görüntülemenizi kesinlikle öneririz. En iyi kullanıcı deneyimi için, öğretmenden yapıştırılan bağlantıyı eklenti ekine yükseltmeyi kabul ettikten sonra herhangi bir ek bilgi istenmemelidir. Ancak, eklentiniz için bu mümkün değilse ihtiyacınız olan ek bilgileri toplamak için Bağlantı Yükseltme iframe'ini kullanabilirsiniz. Bağlantının yükseltilmesinin mümkün olup olmadığını veya bir hata oluşup oluşmadığını öğretmene bildirmek için de iframe kullanılabilir.

Kullanıcı dostu erişim hata mesajlarını dahil et

Öğretmenler, erişimleri olmayan bir bağlantıyı yapıştırıp yeni sürüme geçirirse öğretmenlerin sorundan haberdar olması için iframe'de kullanıcı dostu bir hata mesajı görüntüleyin. İç çerçeve, öğretmene içeriğe erişmesi için uygun izinleri vermek amacıyla da kullanılabilir.