Uygulama stratejisi

Bu sayfada, eklenti web uygulamanız ile Google Classroom eklentileri API'si arasındaki temel etkileşimlere kısaca göz atabilirsiniz.

Ek Keşfi iframe'i

Ekleme Keşfi iFrame'i, eklentinizdeki öğretmenlerin açılış sayfasıdır. Bu görünümle ilgili olarak aşağıdaki işlemleri yapabilirsiniz:

  • İçerik bulma veya oluşturma kullanıcı arayüzünüzü gösterin.

    İsteğe bağlı olarak, öğretmenin etkinlik türündeki ekleri eklemesini engellemek isteyebilirsiniz. Bu nedenle, akış öğesinin öğrenci yanıtlarını kabul edip etmeyeceğini belirleyin. Eklenti iframe'i açıldığında iletilen itemType sorgu parametresinin değerini kontrol edin. Yalnızca courseWork türü öğrenci yanıtlarını kabul eder.

  • Öğretmen seçimlerine bağlı olarak, ödeve ek eklemek için bir veya daha fazla eklenti create isteği gönderin.

Diğer iframe'ler

Öğrenci Görünümü iframe'i, Öğrenci Çalışması İncelemesi iframe'i ve Öğretmen Görünümü iframe'i, Classroom ödevini değiştirmek yerine kullanıcıya içerik sunmak için tasarlanmıştır. Bu görünümlerle ilgili olarak aşağıdaki işlemleri yapabilirsiniz:

  • Bir iframe açıldığında kullanıcının OAuth iznini alın ve ardından rolünü ve ek kimliğini doğrulayın.
  • Bir iframe açıldığında, kullanıcı rolünü doğrulamak için itemType'a göre bir courseWork.GetAddOnContextRequest, courseWorkMaterials.GetAddOnContextRequest veya announcements.GetAddOnContextRequest oluşturun.
  • Mevcut kullanıcı bir öğrenciyse yanıttaki submissionId öğesini öğrenci çalışmasıyla ilişkilendirin. Bu, notları geri vermek ve not verme aracında öğrenci çalışmalarını öğretmenlere göstermek için gereklidir. submissionIds, görünümler arasında eşleşmelidir.
  • attachmentId eklenti tarafından zaten biliniyorsa uygun ek kullanıcı arayüzünü gösterin.
  • Aksi takdirde, bu eki içeren üst gönderi başka bir gönderiden veya kurstan kopyalanmış demektir. Eklentinin bildiği en son kopyayı belirlemek için copyHistory öğesini kullanın ve eklenti tarafında ekteki yeni bir model oluşturmak için bu kopyadaki ayarları kopyalayın. Ardından, uygun ek kullanıcı arayüzünü gösterin.