คู่มือนี้จะอธิบายเกี่ยวกับการสร้างไฟล์แนบของส่วนเสริมในเว็บไซต์หรือแอปพลิเคชัน การโต้ตอบจะคล้ายกับการสร้างงานโดยใช้ CourseWork API ปลายทาง นำเส้นทางนี้ไปใช้เพื่ออนุญาตให้ผู้ใช้สร้างไฟล์แนบของส่วนเสริม จากเว็บไซต์หรือแอปพลิเคชันของคุณ
ขั้นตอนการทำงาน
ในระดับสูง เส้นทางการสร้างไฟล์แนบจะเป็นไปตามลำดับต่อไปนี้
- ผู้ใช้ที่เป็นครูเปิดเว็บไซต์หรือแอปของคุณ นักเรียนจะเลือกเนื้อหาบางส่วนเพื่อ มอบหมายให้กับนักเรียน
- ตรวจสอบว่าผู้ใช้สร้างไฟล์แนบของส่วนเสริมได้
- หากผู้ใช้สร้างไฟล์แนบของส่วนเสริมไม่ได้ ให้สร้าง CourseWork ที่มี URL ไปยังเนื้อหาที่เลือกเป็นเนื้อหาของลิงก์
- หากผู้ใช้สร้างไฟล์แนบของส่วนเสริมได้ ให้ทำดังนี้
- สร้างงาน
- สร้างไฟล์แนบของส่วนเสริมที่ลิงก์ไปยังเนื้อหาที่เลือก และ เชื่อมโยงกับงานใหม่
- แจ้งให้ครูทราบว่าสร้างงานเรียบร้อยแล้ว
การดำเนินการแต่ละอย่างมีอธิบายไว้ในส่วนต่อไปนี้
ตรวจสอบว่าผู้ใช้สามารถสร้างไฟล์แนบของส่วนเสริมได้หรือไม่
คุณสามารถสร้างไฟล์แนบของส่วนเสริมในนามของผู้ใช้ที่มีสิทธิ์ได้ ผู้ที่มีสิทธิ์ ผู้ใช้ คือผู้ใช้ที่เป็นครูในหลักสูตรที่คุณพยายามสร้าง งานในหลักสูตรและมีชุดคำสั่งสอนและ Learning หรือ Education Plus ใบอนุญาตรุ่น Google Workspace for Education ที่มอบหมาย
เริ่มต้นด้วยการพิจารณาว่าผู้ใช้จะสร้างส่วนเสริมใน Course
ที่ระบุได้หรือไม่
ส่งคำขอไปยังปลายทาง courses.checkAddOnCreationEligibility
รวมถึงรหัสหลักสูตร
Python
eligibility_response = (
classroom_service.courses()
.checkAddOnCreationEligibility(courseId=course_id)
.execute()
)
is_create_attachment_eligible = (
eligibility_response.get('isCreateAttachmentEligible')
)
print(f'User eligibility for course {eligibility_response.get("courseId")}'
f': {is_create_attachment_eligible}.')
หากผู้ใช้มีสิทธิ์ การตอบกลับจะมีบูลีน
ตั้งค่า isCreateAttachmentEligible
เป็น true
หากผู้ใช้ไม่มีสิทธิ์
การตอบกลับจะไม่แสดงผลบูลีน isCreateAttachmentEligible
กำหนดเส้นทางผู้ใช้ตามการมีสิทธิ์
การมีสิทธิ์จะเป็นตัวกำหนดว่าคุณจะสร้างไฟล์แนบของส่วนเสริมให้ผู้ใช้ได้หรือไม่
ผู้ใช้ที่ไม่มีสิทธิ์
หากผู้ใช้สร้างไฟล์แนบของส่วนเสริมไม่ได้ ให้สร้าง CourseWork
ใหม่
ซึ่งมี URL เนื้อหาที่ผู้ใช้เลือกเป็น Link
Python
if not is_create_attachment_eligible:
coursework = {
'title': 'My CourseWork Assignment with Link Material',
'description': 'Created using the Classroom CourseWork API.',
'workType': 'ASSIGNMENT',
'state': 'DRAFT', # Set to 'PUBLISHED' to assign to students.
'maxPoints': 100,
'materials': [
{'link': {'url': my_content_url}}
]
}
assignment = (
service.courses()
.courseWork()
.create(courseId=course_id, body=coursework)
.execute()
)
print(
f'Link Material assignment created with ID: {assignment.get("id")}'
)
คำตอบมีงานในหลักสูตรที่ขอซึ่งมีเนื้อหา
แนบมาด้วย ผู้ใช้สามารถคลิก Link
เพื่อเปิดเนื้อหาในเว็บไซต์ใน
รูปที่ 1 มุมมองของครูสำหรับงานในหลักสูตรฉบับร่าง พร้อมเนื้อหาของลิงก์
ผู้ใช้ที่มีสิทธิ์
ทำตามขั้นตอนต่อไปนี้หากผู้ใช้สามารถสร้างไฟล์แนบของส่วนเสริมได้
- สร้างงาน
CourseWork
ใหม่โดยไม่มีไฟล์แนบ - สร้างไฟล์แนบของส่วนเสริม
- ตั้งค่า
itemId
ของAddOnAttachment
เป็นid
ของเอนทิตีที่สร้างขึ้นใหม่ งาน - ตรวจสอบให้แน่ใจว่าคุณระบุ URL ให้กับเนื้อหาที่ผู้ใช้เลือกสำหรับข้อมูลพร็อพเพอร์ตี้แต่ละรายการ ที่คุณให้การสนับสนุน
- ตั้งค่า
Python
if is_create_attachment_eligible:
coursework = {
'title': 'My CourseWork Assignment with Add-on Attachment',
'description': 'Created using the Classroom CourseWork API.',
'workType': 'ASSIGNMENT',
'state': 'DRAFT', # Set to 'PUBLISHED' to assign to students.
'maxPoints': 100,
}
assignment = (
classroom_service.courses()
.courseWork()
.create(courseId=course_id, body=coursework)
.execute()
)
print(
f'Empty assignment created with ID: {assignment.get("id")}'
)
attachment = {
'teacherViewUri': {'uri': teacher_view_url},
'studentViewUri': {'uri': student_view_url},
'studentWorkReviewUri': {'uri': grade_student_work_url},
'title': f'Test Attachment {test_label}',
}
add_on_attachment = (
service.courses()
.courseWork()
.addOnAttachments()
.create(
courseId=course_id,
itemId=assignment.get("id"), # ID of the new assignment.
body=attachment,
)
.execute()
)
print(
f'Add-on attachment created with ID: {add_on_attachment.get("id")}'
)
ส่วนเสริมจะปรากฏเป็นการ์ดไฟล์แนบใน Classroom URL ที่ระบุไว้ในคำขอเปิดใน iframe สำหรับข้อมูลพร็อพเพอร์ตี้แต่ละรายการ