โต้ตอบกับไฟล์แนบ

หน้านี้อธิบายรายละเอียดการใช้งานในการสร้างไฟล์แนบและทำงานกับงานที่นักเรียนส่ง โปรดทราบว่าคุณอาจต้องระบุพารามิเตอร์ที่เกี่ยวข้องกับไฟล์แนบเมื่อส่งคำขอเหล่านี้

สร้างไฟล์แนบ

สร้างไฟล์แนบโดยส่งคําขอ CREATE ไปยังปลายทาง courses.*.addOnAttachments.create ที่เหมาะสม คำขอต้องมีอินสแตนซ์ของ AddOnAttachment ในเนื้อหาของคำขอ

คุณต้องกรอกข้อมูลในช่องต่อไปนี้เมื่อสร้างไฟล์แนบ

  • title: ชื่อสตริงของไฟล์แนบ
  • teacherViewUri: URI สำหรับมุมมองของครูสำหรับไฟล์แนบ
  • studentViewUri: URI สำหรับมุมมองนักเรียนของไฟล์แนบ
  • studentWorkReviewUri: URI สำหรับครูเพื่อดูงานของนักเรียนในไฟล์แนบ ฟิลด์นี้จำเป็นสำหรับไฟล์แนบประเภทกิจกรรมเท่านั้น

คุณอาจต้องใส่ฟิลด์ที่ไม่บังคับต่อไปนี้

  • dueDate และ dueTime หากระบุวันที่ครบกำหนดของไฟล์แนบ
  • maxPoints: คะแนนสูงสุดสำหรับไฟล์แนบ ต้องไม่ใช่ค่า 0 หากต้องการรองรับการส่งคะแนน ใช้กับไฟล์แนบประเภทกิจกรรมเท่านั้น

ดูรายละเอียดเพิ่มเติมเกี่ยวกับช่องเหล่านี้ได้ในข้อมูลอ้างอิงแหล่งข้อมูล AddOnAttachment

รายละเอียดการส่งงานของนักเรียน

เวิร์กโฟลว์การส่งข้อมูลทั่วไปมีขั้นตอนดังนี้

  1. นักเรียนเปิด studentViewUri เพื่อทํากิจกรรมให้เสร็จ
  2. ส่วนเสริมจะดึงข้อมูล submissionId จากเมธอด getAddOnContext ใช้ข้อมูลเข้าสู่ระบบของนักเรียน
  3. นักพัฒนาส่วนเสริมจะจัดเก็บ submissionId และ attachmentId ไว้เป็นตัวระบุที่ไม่ซ้ำกันของงานของนักเรียน ในกรณีที่ครูคัดลอกงานใน Classroom คุณสามารถใช้คีย์คอมโพสิทของพารามิเตอร์ 2 รายการนี้เพื่อแสดงไฟล์แนบใหม่ในงานที่คัดลอก ดูรายละเอียดเพิ่มเติมได้ในหน้าเนื้อหาที่คัดลอก
  4. ครูที่สนใจตรวจงานของนักเรียนจะเปิดstudentWorkReviewUri คำขอมีพารามิเตอร์การค้นหาต่อไปนี้ courseId, itemId, itemType, attachmentId และ submissionId
  5. นักพัฒนาส่วนเสริมจะใช้รหัส 4 รายการนี้เพื่อเรียกข้อมูลงานของนักเรียน ใช้ปลายทาง courses.courseWork.addOnAttachments.studentSubmissions เพื่อดึงข้อมูลหรือแก้ไขข้อมูลเกี่ยวกับการส่งของนักเรียน

ตรวจหาสถานะการส่ง

ส่งคำขอ GET ไปยังปลายทาง courses.courseWork.addOnAttachments.studentSubmissions เพื่อรับรายละเอียดเกี่ยวกับ submissionId ที่เฉพาะเจาะจง คุณจะได้รับออบเจ็กต์ AddOnAttachmentStudentSubmission ซึ่งมีคะแนนของงานที่ส่ง (pointsEarned) และสถานะปัจจุบัน (postSubmissionState) สถานะการส่งอาจมีค่าใดค่าหนึ่งต่อไปนี้

  • NEW หากนักเรียนไม่เคยเข้าถึงงานที่ส่ง
  • CREATED หากนักเรียนสร้างงานส่งแล้วแต่ยังไม่ได้ส่ง
  • TURNED_IN หากนักเรียนส่งงานให้ครูแล้ว
  • RETURNED หากครูส่งงานคืนให้นักเรียนแล้ว
  • RECLAIMED_BY_STUDENT หากนักเรียน "ยกเลิกการส่ง" งาน

ใช้ปลายทางนี้เพื่อตรวจหาสถานะของงานของนักเรียนในส่วนเสริม จากนั้นคุณอาจปรับมุมมองหรือตัวเลือกที่แสดงให้นักเรียนเห็น โดยขึ้นอยู่กับสถานะที่แสดง ซึ่งอาจรวมถึงฟีเจอร์ต่อไปนี้

  • การแสดงสถานะการส่งงานภายในส่วนเสริม ซึ่งอาจช่วยนักเรียนไม่ให้เกิดความสับสนและช่วยให้นักเรียนส่งงานได้
  • การจํากัดสิทธิ์แก้ไขข้อมูลที่ส่ง หากงานมีสถานะเป็นCREATEDหรือRECLAIMED_BY_STUDENT นักเรียนอาจได้รับอนุญาตให้แก้ไขงานที่ส่ง หากงานมีสถานะเป็น TURNED_IN หรือ RETURNED นักเรียนอาจไม่ได้รับอนุญาตให้แก้ไขงานที่ส่ง

คะแนนและไฟล์แนบหลายรายการ

คุณใช้ไฟล์แนบของส่วนเสริมได้เพียงไฟล์เดียวในการให้คะแนนงาน หากครูสร้างไฟล์แนบประเภทกิจกรรมมากกว่า 1 รายการซึ่งมีค่า maxPoints ไฟล์แนบรายการแรกเท่านั้นที่จะตั้งค่าคะแนนของงานได้ โปรดปล่อยค่า maxPoints ไว้โดยไม่ตั้งค่าหรือตั้งค่าเป็น 0 เพื่อปิดใช้การส่งคะแนนสำหรับไฟล์แนบ

กำหนดคะแนนของงานที่ส่ง

คุณแก้ไขงานที่นักเรียนส่งมาได้โดยการส่งคำขอ PATCH ไปยังปลายทาง courses.courseWork.addOnAttachments.studentSubmissions เนื้อความของคำขอต้องมีอินสแตนซ์ของ AddOnAttachmentStudentSubmission ที่มีค่าที่แก้ไขแล้ว ตั้งค่าฟิลด์ pointsEarned เพื่อแก้ไขคะแนนของงานที่ส่ง ค่าที่ส่งใน pointsEarned จะกลายเป็นคะแนนฉบับร่างที่ครูมองเห็นใน UI ของ Classroom ครูแก้ไขคะแนนฉบับร่างได้ก่อนที่จะส่งงานคืนให้กับนักเรียน ดูรายละเอียดเกี่ยวกับวิธีแสดงคะแนนให้ครูทราบได้ที่ภาพรวมของคะแนนใน UI ของ Classroom

โปรดทราบว่าคุณจะกำหนดคะแนนด้วย pointsEarned ได้ก็ต่อเมื่อมีคุณสมบัติตรงตามเงื่อนไขต่อไปนี้เท่านั้น

  • ไฟล์แนบต้องมีค่า maxPoints เป็นบวก
  • ส่วนเสริมต้องเป็นผู้สร้างไฟล์แนบเดิม

นอกจากนี้ โปรดทราบว่าคุณสามารถแก้ไขmaxPointsของ AddOnAttachment ที่สร้างขึ้นแล้วได้โดยส่งคําขอ PATCH ไปยังปลายทาง addOnAttachments

กรณีที่ควรให้คะแนน

คุณมีตัวเลือกบางอย่างในการส่งคะแนนกลับไปที่ Google Classroom สิ่งที่แตกต่างอย่างสำคัญคือคุณเลือกที่จะจัดเก็บข้อมูลเข้าสู่ระบบของครูหรือไม่ เนื่องจากมีเพียงครูเท่านั้นที่แก้ไขคะแนนได้

คุณจะส่งคะแนนไปยัง Google Classroom ได้2 ช่วงเวลา ได้แก่ เมื่อนักเรียนส่งงานเสร็จแล้ว หรือเมื่อครูเปิดงานของนักเรียนใน iframe ของการตรวจสอบงานของนักเรียน

หากต้องการกำหนดคะแนนเมื่อนักเรียนทำงานเสร็จแล้ว คุณต้องจัดเก็บข้อมูลเข้าสู่ระบบแบบออฟไลน์ของครู จากนั้นเรียกข้อมูลดังกล่าวออกมาและใช้เพื่อแก้ไขคะแนนเมื่อนักเรียนทำงานเสร็จแล้ว วิธีการนี้มีประโยชน์บางอย่างดังนี้

  • อัปเดตคะแนนได้อย่างราบรื่น ครูไม่จําเป็นต้องดําเนินการใดๆ เป็นพิเศษเพื่อให้คะแนนปรากฏใน UI ของ Classroom
  • ให้ข้อมูลเชิงลึกแบบเรียลไทม์เกี่ยวกับความคืบหน้าของชั้นเรียนผ่านงาน การตั้งคะแนนเมื่อนักเรียนส่งไฟล์แนบแล้วจะช่วยให้ครูทราบระดับความเข้าใจของนักเรียนได้โดยไม่ต้องเปิดไฟล์ที่ส่งทุกรายการ

โปรดทราบว่าแนวทางนี้ยังใช้แนวทางแบบไม่พร้อมกันในการซิงค์คะแนนได้ด้วย คุณอาจทำการสำรวจAddOnAttachmentStudentSubmission ปลายทางเป็นระยะๆ เพื่อตรวจหาว่านักเรียนส่งงานแล้วหรือยัง เมื่อส่งแล้ว ให้ตั้งค่าคะแนนของงานที่ส่งโดยใช้ข้อมูลเข้าสู่ระบบที่จัดเก็บไว้

หากไม่ต้องการโหลดข้อมูลเข้าสู่ระบบของผู้สอนระหว่างเซสชันของนักเรียน คุณสามารถใช้ข้อมูลเข้าสู่ระบบของผู้สอนที่ใช้งานอยู่เมื่อโหลดงานที่ส่งของนักเรียนใน iframe ของการตรวจสอบงานของนักเรียน อย่างไรก็ตาม การดำเนินการนี้อาจไม่ได้มอบประสบการณ์การใช้งานที่ราบรื่นมากนัก เนื่องจากคะแนนใน UI ของ Classroom จะไม่อัปเดตแบบเรียลไทม์ และครูจะต้องเปิด iframe ของ "รีวิวงานของนักเรียน" ของงานที่ส่งทุกรายการ

ตรวจหาการเปลี่ยนแปลงคะแนนงาน

ครูแก้ไขการตั้งค่าคะแนนใน Classroom ได้หลังจากที่สร้างงานแล้ว การแก้ไขดังกล่าวอาจรวมถึงสิ่งต่อไปนี้

  • การเปลี่ยนคะแนนเต็มที่กำหนดไว้
  • การเปลี่ยนค่า maxPoints ของงาน
  • เปลี่ยนว่าควรให้คะแนนงานหรือไม่

หากต้องการดูการตั้งค่าการให้คะแนนปัจจุบันของงาน เราขอแนะนำให้คุณส่งคำขอ GET ไปยังปลายทาง courses.courseWork การตอบกลับจะมีค่า maxPoints ปัจจุบัน งานที่ไม่มีคะแนนมีค่า Null หรือ 0 maxPoints

หากส่งคะแนนกลับไปที่ Classroom แล้ว ให้ใช้courses.courseWork.addOnAttachments.studentSubmissionsปลายทางเพื่อดึงข้อมูลหรือแก้ไขคะแนนสำหรับไฟล์แนบของส่วนเสริม ตั้งค่าคะแนนโดยใช้ฟิลด์ pointsEarned ลองตรวจสอบและอัปเดตค่านี้ (หากจำเป็น) หากผลิตภัณฑ์ของคุณอนุญาตให้ครูแก้ไขคะแนนของนักเรียนสำหรับกิจกรรมหนึ่งๆ