อัปเกรดไฟล์แนบของลิงก์เป็นไฟล์แนบของส่วนเสริมของ Classroom

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

ภาพรวม

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

เมื่อครูตกลงที่จะอัปเกรดลิงก์ไปยังไฟล์แนบของส่วนเสริมแล้ว iframe ของลิงก์การอัปเกรดจะเปิดขึ้นพร้อมพารามิเตอร์การค้นหาต่อไปนี้

  • courseId
  • itemId
  • itemType
  • addOnToken
  • urlToUpgrade
  • login_hint (ในกรณีที่ผู้ใช้ให้สิทธิ์แอปของคุณแล้วเท่านั้น)

พารามิเตอร์การค้นหา 4 รายการแรกเหมือนกับพารามิเตอร์การค้นหาที่เปิดใน iframe การค้นพบไฟล์แนบ พารามิเตอร์การค้นหา urlToUpgrade เป็นพารามิเตอร์ใหม่และช่วยประเมินว่าควรสร้างไฟล์แนบของส่วนเสริมอย่างไร จากนั้นคุณสามารถใช้พารามิเตอร์การค้นหาอื่นๆ เพื่อตรวจสอบว่าผู้ใช้ลงชื่อเข้าใช้หรือไม่ และเรียกเมธอด CreateAddOnAttachment ของ courseWork, courseWorkMaterials หรือ announcements ตามค่า itemType ภายใน iframe คุณจะแสดงหน้าจอการโหลดได้เพื่อแจ้งให้ครูทราบว่ากำลังสร้างไฟล์แนบของส่วนเสริม

เมื่อสร้างไฟล์แนบของส่วนเสริมแล้ว ระบบจะปิด iframe และครูจะดูไฟล์แนบในงานได้ตามปกติ

รายละเอียดการใช้งานทางเทคนิค

ส่วนนี้จะไฮไลต์รายละเอียดทางเทคนิคที่สำคัญสำหรับฟีเจอร์

อ่านพารามิเตอร์การค้นหา urlToUpgrade

พารามิเตอร์การค้นหา urlToUpgrade จะได้รับการเข้ารหัส URI เมื่อมีการส่งผ่าน iframe การอัปเกรดลิงก์ คุณต้องถอดรหัส URL เพื่อให้ได้มาในรูปแบบเดิม เช่น หากคุณใช้ JavaScript คุณใช้ฟังก์ชัน decodeURIComponent() เพื่อดำเนินการดังกล่าวได้

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

รายละเอียดการกำหนดค่า

คุณต้องกำหนดค่าต่อไปนี้เพื่อผสานรวมฟีเจอร์นี้เข้ากับส่วนเสริม

  • URL สำหรับ iframe ของการอัปเกรดลิงก์: นี่คือ URL ที่เปิดใน iframe เมื่อครูตกลงที่จะอัปเกรด

  • รูปแบบ URL ที่ Classroom ควรตรวจพบและพยายามอัปเกรด: รูปแบบ URL อาจประกอบด้วยโฮสต์และคำนำหน้าหลายเส้นทาง

    • คุณสามารถระบุรูปแบบ URL ได้หลายรูปแบบ
    • หากไม่ได้ระบุคำนำหน้าเส้นทาง คุณจะอัปเกรด URL ที่ตรงกับโฮสต์ได้
    • อัปเกรดได้เฉพาะ URL ที่มีรูปแบบ https เท่านั้น
    • รูปแบบ URL ต้องไม่มี localhost
    • คำนำหน้าเส้นทางต้องไม่มีพารามิเตอร์การค้นหาหรือส่วนย่อยของ URL
    • ในตอนนี้ คำนำหน้าเส้นทางรองรับไวลด์การ์ดได้ แต่โฮสต์จะทำสิ่งต่อไปนี้ไม่ได้
      • example.com เป็นโฮสต์ที่ถูกต้อง และ /foo และ /bar/*/baz เป็นคำนำหน้าเส้นทางที่ถูกต้อง
      • example.*.host.com ไม่ใช่โฮสต์ที่ถูกต้อง
    • ไวลด์การ์ดระหว่างคอมโพเนนต์คำนำหน้าเส้นทางจะจับคู่คอมโพเนนต์เดียวเท่านั้น และไม่ตรงกับคอมโพเนนต์หลายรายการที่คั่นด้วยเครื่องหมายทับ ลองใช้รูปแบบ URL ที่มีโฮสต์ example.com และคำนำหน้าเส้นทาง /bar/*/baz:
      • https://example.com/bar/123/baz ตรงกับรูปแบบ URL ที่ถูกต้อง
      • https://example.com/bar/123/baz/456/789 ตรงกับรูปแบบ URL ที่ถูกต้อง
      • https://example.com/bar/123/456/baz ไม่ใช่รูปแบบ URL ที่ถูกต้องเนื่องจากไวลด์การ์ดในคำนำหน้าเส้นทางไม่ตรงกัน /123/456/

ขั้นตอนการพัฒนา

ส่ง URL ของ iframe และรูปแบบ URL ของ Link Upgrade สำหรับการทดสอบหรือส่วนเสริมเวอร์ชันที่ใช้งานจริงโดยส่งอีเมลไปที่ classroom-link-upgrade-external@google.com

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

จัดรูปแบบอีเมลให้รวมข้อมูลต่อไปนี้

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

แทนที่ค่าต่อไปนี้

  • GCP_PROJECT_NUMBER: จำนวนโปรเจ็กต์ Google Cloud ที่เชื่อมโยงกับส่วนเสริม
  • LINK_UPGRADE_IFRAME_URL URL ที่ควรเปิดใน iframe ของการอัปเกรดลิงก์
  • HOST_1: โฮสต์ที่ Classroom ควรตรวจพบ รองรับเฉพาะรูปแบบ https เท่านั้น
  • PATH_PREFIX_1 และ PATH_PREFIX_2: คำนำหน้าเส้นทางที่เชื่อมโยงกับ HOST_1 ที่ Classroom ควรตรวจพบและพยายามอัปเกรด
  • HOST_2: โฮสต์ที่ Classroom ควรตรวจพบ รองรับเฉพาะรูปแบบ https เท่านั้น
  • PATH_PREFIX_3และ PATH_PREFIX_4: คำนำหน้าเส้นทางที่เชื่อมโยงกับ HOST_2 ที่ Classroom ควรตรวจพบและพยายามอัปเกรด

ต่อไปนี้คือคำแนะนำที่ควรพิจารณาเมื่อใช้ฟีเจอร์นี้

หลีกเลี่ยงงานเพิ่มสำหรับครู

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

ใส่ข้อความแสดงข้อผิดพลาดในการเข้าถึงที่ใช้งานง่าย

หากครูวางและอัปเกรดลิงก์ที่ไม่มีสิทธิ์เข้าถึง ให้แสดงข้อความแสดงข้อผิดพลาดที่ใช้งานง่ายใน iframe เพื่อให้ครูตระหนักถึงปัญหานี้ นอกจากนี้ยังใช้ iframe เพื่อมอบสิทธิ์ที่เหมาะสมในการเข้าถึงเนื้อหาให้ครูได้ด้วย