برنامه Classroom از سه نوع آیتم جریانی پشتیبانی میکند: CourseWork
، CourseWorkMaterials
، و Announcements
. این راهنما نحوه مدیریت CourseWork
را توضیح میدهد، اما APIهای همه موارد جریان مشابه هستند. برای اطلاعات بیشتر در مورد انواع آیتم های جریانی و تفاوت های آنها به منابع API مراجعه کنید.
منبع CourseWork
یک مورد کاری را نشان میدهد که در یک دوره خاص به دانشآموزان اختصاص داده شده است، شامل هر گونه مطالب و جزئیات اضافی، مانند تاریخ سررسید یا حداکثر امتیاز. چهار نوع فرعی از CourseWork
وجود دارد: تکالیف ، تکالیف امتحانی ، سوالات پاسخ کوتاه و سوالات چند گزینه ای . Classroom API از سه مورد از این زیرمجموعه ها پشتیبانی می کند: تکالیف، سؤالات پاسخ کوتاه و سؤالات چند گزینه ای. این انواع با فیلد CourseWork.workType
نشان داده می شوند.
علاوه بر منبع CourseWork
، می توانید کارهای تکمیل شده را با منبع StudentSubmission
مدیریت کنید.
ایجاد دوره آموزشی
CourseWork
فقط می تواند از طرف معلم دوره ایجاد شود. تلاش برای ایجاد CourseWork
از طرف یک دانش آموز، یا مدیر دامنه که در این دوره معلم نیست، منجر به خطای PERMISSION_DENIED
می شود. برای آشنایی بیشتر با نقشهای مختلف در Classroom، به انواع کاربر مراجعه کنید.
هنگام ایجاد CourseWork
با استفاده از روش courses.courseWork.create
، می توانید پیوندهایی را به عنوان materials
پیوست کنید که در کد نمونه زیر نشان داده شده است:
جاوا
پایتون
فیلدهای title
و workType
الزامی است. تمام فیلدهای دیگر اختیاری هستند. اگر state
نامشخص باشد، CourseWork
در حالت پیش نویس ایجاد می شود.
از یک منبع پیوند با یک url
هدف مشخص برای گنجاندن مطالب مرتبط در CourseWork
استفاده کنید. Classroom به طور خودکار title
و نشانی اینترنتی تصویر کوچک ( thumbnailUrl
) را واکشی می کند. Classroom API همچنین به طور بومی از مطالب Google Drive و YouTube پشتیبانی میکند که میتوانند به روشی مشابه با منبع DriveFile یا منبع YouTubeVideo اضافه شوند.
برای تعیین تاریخ سررسید، فیلدهای dueDate
و dueTime
را روی زمان UTC مربوطه تنظیم کنید. تاریخ سررسید باید در آینده باشد.
پاسخ CourseWork
شامل یک شناسه اختصاص داده شده به سرور است که می تواند برای ارجاع به انتساب در سایر درخواست های API استفاده شود.
بازیابی CourseWork
می توانید CourseWork
از طرف دانش آموزان و معلمان دوره مربوطه بازیابی کنید. شما همچنین می توانید CourseWork
از طرف مدیران دامنه بازیابی کنید، حتی اگر آنها یک معلم در دوره نباشند. برای بازیابی یک CourseWork
خاص، از courses.courseWork.get
استفاده کنید. برای بازیابی همه CourseWork
(به صورت اختیاری مطابق با برخی معیارها)، از courses.courseWork.list
استفاده کنید.
محدوده مورد نیاز به نقشی که کاربر درخواست کننده در دوره دارد بستگی دارد. اگر کاربر دانشجو است، از یکی از حوزه های زیر استفاده کنید:
-
https://www.googleapis.com/auth/classroom.coursework.me.readonly
-
https://www.googleapis.com/auth/classroom.coursework.me
اگر کاربر یک معلم یا مدیر دامنه است، از یکی از حوزه های زیر استفاده کنید:
-
https://www.googleapis.com/auth/classroom.coursework.students.readonly
-
https://www.googleapis.com/auth/classroom.coursework.students
داشتن مجوز برای بازیابی CourseWork
به معنای مجوز دسترسی به مطالب یا فراداده مواد نیست. در عمل، این بدان معنی است که اگر یک سرپرست عضو دوره نباشد، ممکن است عنوان فایل Drive پیوست شده را نبیند.
مدیریت پاسخ های دانش آموزان
یک منبع StudentSubmission
نشان دهنده کار انجام شده توسط یک دانش آموز برای CourseWork
است. این منبع شامل ابرداده های مرتبط با کار، مانند وضعیت کار و درجه است. هنگامی که یک CourseWork
جدید ایجاد می شود، یک StudentSubmission
به طور ضمنی برای هر دانش آموز ایجاد می شود.
بخشهای زیر اقدامات رایجی را که پاسخهای دانشآموز را مدیریت میکنند توضیح میدهند.
بازیابی پاسخ های دانش آموزان
دانشآموزان میتوانند مطالب ارسالی خود را بازیابی کنند، معلمان میتوانند موارد ارسالی را برای همه دانشآموزان در دورههای خود بازیابی کنند، و مدیران دامنه میتوانند همه موارد ارسالی را برای همه دانشآموزان در حوزه خود بازیابی کنند. به هر StudentSubmission
یک شناسه اختصاص داده می شود. اگر شناسه را میشناسید، از courses.courseWork.studentSubmissions.get
برای بازیابی مطالب ارسالی استفاده کنید.
همانطور که در نمونه زیر نشان داده شده است، از روش courses.courseWork.studentSubmissions.list
برای دریافت همه منابع StudentSubmission
که با برخی از معیارها مطابقت دارند، استفاده کنید:
جاوا
پایتون
همانطور که در نمونه زیر نشان داده شده است، منابع StudentSubmission
را که متعلق به یک دانش آموز خاص است، با تعیین پارامتر userId
بازیابی کنید:
جاوا
پایتون
دانش آموزان با شناسه یا آدرس ایمیل منحصر به فرد، همانطور که در منبع Student
نشان داده شده است، شناسایی می شوند. کاربر فعلی همچنین ممکن است با استفاده از خلاصه "me"
به شناسه خود مراجعه کند.
همچنین امکان بازیابی مطالب ارسالی دانشجویان برای همه تکالیف در یک دوره وجود دارد. برای انجام این کار، همانطور که در نمونه زیر نشان داده شده است، از کلمه "-"
به عنوان courseWorkId
استفاده کنید:
جاوا
service.courses().courseWork().studentSubmissions()
.list(courseId, "-")
.set("userId", userId)
.execute();
پایتون
service.courses().courseWork().studentSubmissions().list(
courseId=<course ID or alias>,
courseWorkId='-',
userId=<user ID>).execute()
محدوده مورد نیاز به نقشی که کاربر درخواست کننده در دوره دارد بستگی دارد. اگر کاربر یک معلم یا یک مدیر دامنه است، از دامنه زیر استفاده کنید:
-
https://www.googleapis.com/auth/classroom.coursework.students.readonly
-
https://www.googleapis.com/auth/classroom.coursework.students
اگر کاربر دانشجو است، از محدوده زیر استفاده کنید:
-
https://www.googleapis.com/auth/classroom.coursework.me.readonly
-
https://www.googleapis.com/auth/classroom.coursework.me
داشتن مجوز برای بازیابی StudentSubmission
به معنای مجوز دسترسی به پیوستها یا فراداده پیوست نیست. در عمل، این بدان معنی است که اگر یک سرپرست عضو دوره نباشد، ممکن است عنوان فایل Drive پیوست شده را نبیند.
پیوستها را به پاسخ دانشآموز اضافه کنید
میتوانید با پیوست کردن Link
، DriveFile
یا منبع YouTubeVideo
، پیوندهایی را به ارسالی دانشآموز پیوست کنید. این کار با courses.courseWork.studentSubmissions.modifyAttachments
انجام می شود، همانطور که در نمونه زیر نشان داده شده است:
جاوا
پایتون
یک پیوست Link
با url
هدف تعریف می شود. Classroom به طور خودکار title
و تصویر کوچک ( thumbnailUrl
) را واکشی می کند. برای آشنایی با مطالبی که میتوانند به StudentSubmissions
پیوست شوند، به Material
مراجعه کنید.
StudentSubmission
فقط می تواند توسط یک معلم دوره یا توسط دانش آموزی که مالک آن است اصلاح شود. فقط در صورتی می توانید Materials
ضمیمه کنید که CourseWorkType
StudentSubmission
ASSIGNMENT
باشد.
محدوده مورد نیاز به نقشی که کاربر درخواست کننده در دوره دارد بستگی دارد. اگر کاربر معلم است، از دامنه زیر استفاده کنید:
-
https://www.googleapis.com/auth/classroom.coursework.students
اگر کاربر دانشجو است، از محدوده زیر استفاده کنید:
-
https://www.googleapis.com/auth/classroom.coursework.me