Eklerle etkileşimde bulunma

Bu sayfada, ek oluşturmayla ilgili uygulama ayrıntıları, kullanıcılar ekleri açtığında önerilen işlemler ve öğrenci gönderimleriyle çalışma konuları ele alınmaktadır. Bu istekleri gönderirken ekle ilgili parametreler sağlamanız gerekebileceğini unutmayın.

Ek oluşturma

Uygun courses.*.addOnAttachments.create uç noktasına CREATE isteği göndererek ek oluşturun. İsteğinizin metninde AddOnAttachment öğesinin bir örneği bulunmalıdır.

Ek oluştururken aşağıdaki alanlar zorunludur:

  • title: Ekinin dize adı.
  • teacherViewUri: Ek için Öğretmen Görünümü'nün URI'si.
  • studentViewUri: ekin öğrenci görünümünün URI'si.
  • studentWorkReviewUri: Öğretmenin, ekteki öğrenci çalışmasını görmesi için URI. Bu alan yalnızca etkinlik türü ekler için gereklidir.

Aşağıdaki isteğe bağlı alanlardan bazılarını eklemek isteyebilirsiniz:

  • Eklerin son teslim tarihini belirtiyorsanız dueDate ve dueTime.
  • maxPoints: Ek için maksimum not. Not geri aktarımını desteklemek istiyorsanız sıfır olmayan bir değer olmalıdır. Yalnızca etkinlik türü ekler için geçerlidir.

Bu alanlar hakkında daha fazla bilgi için AddOnAttachment kaynak referansına bakın.

Kullanıcı kimlik bilgilerini ve rolünü doğrulama

Öğrenci Görünümü iframe'i, Öğrenci Çalışması İnceleme 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ümlerden biri açıldığında aşağıdakileri yapabilirsiniz:

  • Kullanıcı için OAuth kimlik bilgilerini alın.
  • Kullanıcı rolünü doğrulamak için itemType temelinde courseWork.getAddOnContext, courseWorkMaterials.getAddOnContext veya announcements.getAddOnContext isteğinde bulunun.
  • TeacherContext veya StudentContext öğelerinin mevcut olup olmadığını görmek için yanıtı inceleyin. Kullanıcının kurstaki rolüne karşılık gelen yalnızca bir değer döndürülebilir.
  • Mevcut kullanıcı öğrenciyse ve itemType courseWork ise yanıttaki submissionId, öğrencinin çalışmasıyla birlikte kaydedilir. Eklenti iframe'lerinde submissionIds eşleşmesi olmalıdır. Notların geri aktarılması ve öğrenci çalışmalarının not verme aracında öğretmenlere gösterilmesi için bu eşleşme gereklidir.
  • attachmentId, eklenti tarafından zaten biliniyorsa uygun ek kullanıcı arayüzünü gösterin.
  • Aksi takdirde, bu ek başka bir akış öğesinden veya kurstan kopyalanmış olmalıdır. Bu senaryoyla ilgili öneriler için Kopyalanan içeriği ele alma rehberine bakın.

Öğrenci gönderim ayrıntıları

Tipik bir gönderim iş akışı şu adımları içerir:

  1. Bir öğrenci, etkinliği tamamlamak için studentViewUri başlatır.
  2. Eklenti, öğrenci kimlik bilgilerini kullanarak submissionId yönteminden getAddOnContext alır.
  3. submissionId ve attachmentId, eklenti geliştiricisi tarafından öğrenci çalışmasının benzersiz tanımlayıcısı olarak saklanır. Bir öğretmen Classroom'da bir ödevi kopyalarsa kopyalanan ödevde yeni bir ek görüntülemek için bu iki parametrenin bileşik anahtarını kullanabilirsiniz. Daha fazla bilgi için kopyalanmış içerik sayfamızı inceleyin.
  4. Öğrenci çalışmalarını incelemek isteyen bir öğretmen, studentWorkReviewUri simgesini başlatır. İstek aşağıdaki sorgu parametrelerini içeriyor: courseId, itemId, itemType, attachmentId ve submissionId.
  5. Eklenti geliştirici, öğrenci çalışmasını almak için bu dört kimliği kullanır. Öğrenci gönderimiyle ilgili bilgileri almak veya değiştirmek için courses.courseWork.addOnAttachments.studentSubmissions uç noktasını kullanın.

Gönderim durumunu algılama

Belirli bir submissionId hakkında ayrıntılı bilgi edinmek için courses.courseWork.addOnAttachments.studentSubmissions uç noktasına GET isteği gönderin. Gönderimin notunu (pointsEarned) ve mevcut durumunu (postSubmissionState) içeren bir AddOnAttachmentStudentSubmission nesnesi alırsınız. Gönderim durumu aşağıdaki değerlerden biri olabilir:

  • NEW, öğrenci gönderime hiç erişmediyse
  • CREATED, öğrenci bir gönderim oluşturduysa ancak henüz göndermediyse
  • TURNED_IN, öğrenci çalışmasını öğretmene gönderdiyse
  • RETURNED, öğretmen gönderimi öğrenciye geri verdiyse.
  • RECLAIMED_BY_STUDENT, öğrenci çalışmasını "göndermediyse".

Eklentinizde öğrenci çalışmasının durumunu algılamak için bu uç noktayı kullanın. Ardından, döndürülen duruma bağlı olarak öğrenciye sunulan görünümleri veya seçenekleri ayarlayabilirsiniz. Bu özelliklerden bazıları:

  • Eklentinizdeki ödevlerin gönderilme durumunu gösterme Bu sayede öğrenciler olası karışıklıkları önleyebilir ve ödevleri yanlışlıkla teslim etmemeyi önleyebilir.
  • Gönderim düzenleme ayrıcalıklarını kısıtlama Ödevin durumu CREATED veya RECLAIMED_BY_STUDENT ise öğrencinin gönderimini düzenlemesine izin verilebilir. Ödevin durumu TURNED_IN veya RETURNED ise öğrencinin gönderisini düzenlemesine izin verilmeyebilir.

Notlar ve birden fazla ek

Tek bir ödevin notunu ayarlamak için yalnızca bir eklenti eki kullanılabilir. Bir öğretmen, maxPoints değeri sağlayan birden fazla etkinlik türü eki oluşturursa yalnızca ilk ek, ödev notunu ayarlayabilir. Bir ek için not geri gönderme özelliğini devre dışı bırakmak üzere maxPoints değerini ayarlanmamış olarak bırakın veya sıfır olarak ayarlayın.

Gönderime not verme

PATCH uç noktasına courses.courseWork.addOnAttachments.studentSubmissions isteği göndererek öğrenci gönderimini değiştirebilirsiniz. İstek metni, değiştirilmiş değerlerle birlikte AddOnAttachmentStudentSubmission öğesinin bir örneğini içermelidir. Gönderimin notunu değiştirmek için pointsEarned alanını ayarlayın. pointsEarned içinde iletilen değer, Classroom kullanıcı arayüzünde öğretmene gösterilen bir taslak not olur. Öğretmenler, ödevi öğrencilere geri vermeden önce taslak notu değiştirebilir. Notların öğretmenlere nasıl sunulduğuyla ilgili ayrıntılar için Classroom kullanıcı arayüzünde not verme işlemine genel bakış başlıklı makaleyi inceleyin.

Notu yalnızca aşağıdaki koşullar geçerliyse pointsEarned ile ayarlayabileceğinizi unutmayın:

  • Ekin pozitif bir maxPoints değeri olmalıdır.
  • Eklenti, eklerin orijinal oluşturucusu olmalıdır.

Ayrıca, AddOnAttachment'nın maxPoints değerini, addOnAttachments uç noktasına PATCH isteği göndererek değiştirebileceğinizi de unutmayın.

Not ne zaman verilir?

Notun Google Classroom'a ne zaman aktarılacağı konusunda seçim yapabilirsiniz. Önemli nokta, yalnızca öğretmenler notları değiştirebileceğinden öğretmenlerin kimlik bilgilerini saklamayı seçip seçmediğinizdir.

Google Classroom'a not aktarabileceğiniz iki eklenti anı vardır: öğrenci çalışmasını tamamladığında veya öğretmen, öğrencinin çalışmasını Öğrenci Çalışması İnceleme iFrame'inde açtığında.

Öğrenci çalışmayı tamamladığında not vermek istiyorsanız bir öğretmen kimlik bilgisini çevrimdışı olarak saklamanız, ardından öğrenci çalışmayı tamamladığında notu değiştirmek için bu kimlik bilgisini alıp kullanmanız gerekir. Bu yöntemin bazı potansiyel avantajları vardır:

  • Sorunsuz not güncellemeleri sunar. Öğretmenlerin, notların Classroom kullanıcı arayüzünde doldurulması için herhangi bir özel işlem yapması gerekmez.
  • Bir sınıfın ödevdeki ilerleme durumu hakkında anlık bilgi sağlar. Öğretmenler, öğrenciler ekleri tamamladıkça not vererek her gönderimi açmadan öğrencilerin konuyu anlayıp anlamadığını görebilir.

Bu yaklaşımın, not senkronizasyonunda eşzamansız bir yaklaşım kullanılmasına da olanak tanıdığını unutmayın. Öğrencinin çalışmasını ne zaman gönderdiğini tespit etmek için AddOnAttachmentStudentSubmission uç noktasını düzenli olarak yoklayabilirsiniz. Gönderildikten sonra, depolanan kimlik bilgilerini kullanarak gönderimin notunu ayarlayın.

Öğrenci oturumu sırasında öğretmenin kimlik bilgilerini yüklemek istemiyorsanız öğrencinin gönderimini Öğrenci Çalışması İnceleme iFrame'inde yüklerken etkin öğretmenin kimlik bilgilerini kullanabilirsiniz. Ancak Classroom kullanıcı arayüzündeki notlar anlık olarak güncellenmediği ve öğretmenlerin her gönderimin Öğrenci Çalışması İnceleme iFrame'ini açması gerektiği için bu durum, özellikle sorunsuz bir kullanıcı deneyimi sunmayabilir.

Ödev notlarındaki değişiklikleri algılama

Ödev oluşturulduktan sonra öğretmenler Classroom'daki not ayarlarını düzenleyebilir. Bu tür düzenlemeler şunları içerebilir:

  • Atanan puan değerini değiştirme
  • Bir ödevin maxPoints değerini değiştirme
  • Ödevin notlandırılıp notlandırılmayacağını değiştirme

Bir ödevin mevcut not verme ayarlarını görmek için courses.courseWork uç noktasına GET isteği göndermenizi öneririz. Yanıtta geçerli maxPoints değeri yer alıyor. Not verilmeyen bir ödevin boş veya sıfır maxPoints değeri vardır.

Classroom'a not aktardıysanız eklenti eklerinin notunu getirmek veya değiştirmek için courses.courseWork.addOnAttachments.studentSubmissions uç noktasını kullanın. Not değeri, pointsEarned alanı kullanılarak ayarlanır. Ürününüz öğretmenlerin belirli bir etkinlikte öğrencinin puanını düzenlemesine olanak tanıyorsa bu değeri kontrol etmeniz ve gerekirse güncellemeniz önerilir.