Classroom के यूज़र इंटरफ़ेस (यूआई) में, पांच तरह के क्लासवर्क का इस्तेमाल किया जा सकता है: असाइनमेंट, क्विज़ वाले असाइनमेंट, छोटे जवाब वाले सवाल, कई विकल्प वाले सवाल, और
कॉन्टेंट. फ़िलहाल, Classroom API इनमें से तीन टाइप के सवालों के साथ काम करता है. इन्हें एपीआई के लिए CourseWorkType
कहा जाता है: असाइनमेंट, कम शब्दों में जवाब देने वाले सवाल, और कई विकल्प वाले सवाल.
इस सुविधा को ऐक्सेस करने के लिए, कोर्सवर्क संसाधन का इस्तेमाल किया जा सकता है. यह किसी खास कोर्स में, छात्रों को असाइन किए गए असाइनमेंट या सवाल के बारे में जानकारी देता है. इसमें, ज़रूरी तारीख या ज़्यादा से ज़्यादा स्कोर जैसी अन्य जानकारी और कॉन्टेंट भी शामिल होता है.
CourseWork संसाधन के अलावा, StudentSubmission
संसाधन की मदद से, पूरे हो चुके असाइनमेंट मैनेज किए जा सकते हैं. इन सेक्शन में, इनके बारे में ज़्यादा जानकारी दी गई है.
असाइनमेंट बनाएं
असाइनमेंट, सिर्फ़ कोर्स के शिक्षक की ओर से बनाए जा सकते हैं. किसी छात्र/छात्रा की ओर से असाइनमेंट बनाने की कोशिश करने पर, आपको 403 PERMISSION_DENIED
कोड वाली गड़बड़ी का मैसेज दिखेगा. इसी तरह, डोमेन एडमिन उन कोर्स के लिए असाइनमेंट नहीं बना सकते जिन्हें वे नहीं पढ़ाते. एपीआई की मदद से ऐसा करने पर भी, 403 PERMISSION_DENIED
गड़बड़ी का मैसेज दिखेगा.
courses.courseWork.create
तरीके का इस्तेमाल करके असाइनमेंट बनाते समय, लिंक को materials
के तौर पर अटैच किया जा सकता है. यहां दिए गए सैंपल कोड में यह तरीका बताया गया है:
Java
Python
इस नतीजे में, सर्वर से असाइन किया गया एक आइडेंटिफ़ायर शामिल होता है. इसका इस्तेमाल, अन्य एपीआई अनुरोधों में असाइनमेंट का रेफ़रंस देने के लिए किया जा सकता है.
Classroom API की मदद से बनाए गए किसी असाइनमेंट में लिंक किए गए कॉन्टेंट को शामिल करने के लिए, लिंक करने के लिए संसाधन का इस्तेमाल करें. इसमें टारगेट यूआरएल की जानकारी दें. Classroom, टाइटल और थंबनेल इमेज को अपने-आप फ़ेच कर लेता है. Classroom API, Google Drive और YouTube के कॉन्टेंट के साथ भी काम करता है. इन कॉन्टेंट को DriveFile रिसॉर्स या YouTubeVideo रिसॉर्स के साथ उसी तरह शामिल किया जा सकता है जिस तरह 'लिंक' शामिल किया जाता है.
पूरा होने की तारीख बताने के लिए, dueDate
और dueTime
फ़ील्ड को संबंधित यूटीसी समय पर सेट करें. पेमेंट की तारीख, आने वाले समय की होनी चाहिए.
असाइनमेंट और सवालों को वापस पाना
आपके पास उनसे जुड़े कोर्स के छात्र-छात्राओं और शिक्षकों के लिए या डोमेन एडमिन के ज़रिए, असाइनमेंट और सवाल फिर से पाने का विकल्प है. किसी खास असाइनमेंट या सवाल को वापस पाने के लिए, courses.courseWork.get का इस्तेमाल करें. सभी असाइनमेंट या सवाल फिर से पाने के लिए (वैकल्पिक रूप से कुछ शर्तों से मेल खाने वाले), 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
किसी असाइनमेंट या सवाल को वापस पाने की अनुमति होने का मतलब यह नहीं है कि आपके पास कॉन्टेंट या कॉन्टेंट के मेटाडेटा को ऐक्सेस करने की अनुमति है. इसका मतलब है कि अगर कोई एडमिन कोर्स का सदस्य नहीं है, तो हो सकता है कि उसे अटैच की गई Drive फ़ाइल का टाइटल न दिखे. अगर आपको एडमिन को उपयोगकर्ता की फ़ाइलों का ऐक्सेस देना है, तो डोमेन के लिए ऐक्सेस देने की गाइड देखें.
छात्र-छात्राओं के जवाब मैनेज करना
StudentSubmission
रिसोर्स से, किसी असाइनमेंट या सवाल के लिए छात्र/छात्रा के किए गए काम और ग्रेड की जानकारी मिलती है. नया सवाल या असाइनमेंट बनाने पर, हर छात्र/छात्रा के लिए StudentSubmission
रिसॉर्स अपने-आप बन जाता है.
यहां दिए गए सेक्शन में, छात्र-छात्राओं के जवाबों को मैनेज करने वाली सामान्य कार्रवाइयों के बारे में बताया गया है.
छात्र-छात्राओं के जवाब पाना
छात्र-छात्राएं अपने असाइनमेंट फिर से पा सकते हैं, शिक्षक अपने कोर्स के सभी छात्र-छात्राओं के असाइनमेंट फिर से पा सकते हैं. साथ ही, डोमेन एडमिन अपने डोमेन के सभी छात्र-छात्राओं के लिए, सबमिट किए गए सभी असाइनमेंट की जानकारी हासिल कर सकते हैं. छात्र/छात्रा के हर सबमिशन को एक आइडेंटिफ़ायर असाइन किया जाता है. अगर आपको आइडेंटिफ़ायर पता है, तो उसे वापस पाने के लिए courses.courseWork.studentSubmissions.get
का इस्तेमाल करें.
कुछ शर्तों से मैच करने वाले StudentSubmission
संसाधन पाने के लिए, courses.courseWork.studentSubmissions.list
तरीके का इस्तेमाल करें. इस बारे में यहां दिए गए उदाहरण में बताया गया है:
Java
Python
userId
पैरामीटर की मदद से, किसी खास छात्र के StudentSubmission
संसाधनों को वापस पाएं. इसका उदाहरण यहां दिया गया है:
Java
Python
छात्र-छात्राओं की पहचान, Google Admin SDK टूल से मिले यूनीक आईडी या ईमेल पते से की जाती है. मौजूदा उपयोगकर्ता, "me"
शॉर्टहैंड का इस्तेमाल करके अपने आईडी का भी रेफ़रंस दे सकता है.
किसी कोर्स में मौजूद सभी असाइनमेंट के लिए, छात्र-छात्राओं के सबमिट किए गए काम भी देखे जा सकते हैं. ऐसा करने के लिए, courseWorkId
के तौर पर लिटरल "-"
का इस्तेमाल करें, जैसा कि इस उदाहरण में दिखाया गया है:
Java
service.courses().courseWork().studentSubmissions()
.list(courseId, "-")
.set("userId", userId)
.execute();
Python
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
छात्र-छात्राओं के सबमिशन को वापस पाने की अनुमति होने का मतलब यह नहीं है कि आपके पास अटैचमेंट या अटैचमेंट के मेटाडेटा को ऐक्सेस करने की अनुमति है. इसका मतलब है कि अगर कोई एडमिन कोर्स का सदस्य नहीं है, तो हो सकता है कि उसे अटैच की गई Drive फ़ाइल का टाइटल न दिखे. अगर आपको एडमिन को उपयोगकर्ता की फ़ाइलों का ऐक्सेस देना है, तो पूरे डोमेन के लोगों को डेटा का ऐक्सेस दें गाइड देखें.
छात्र के जवाब में अटैचमेंट जोड़ना
छात्र के सबमिशन में लिंक अटैच करने के लिए, Link
, DriveFile
या YouTubeVideo
संसाधन अटैच करें. ऐसा करने के लिए, courses.courseWork.studentSubmissions.modifyAttachments
का इस्तेमाल किया जाता है. इसका उदाहरण यहां दिया गया है:
Java
Python
लिंक अटैचमेंट को टारगेट यूआरएल से तय किया जाता है. Classroom, टाइटल और थंबनेल इमेज को अपने-आप फ़ेच कर लेगा. अन्य कॉन्टेंट के बारे में जानने के लिए, उनके रेफ़रंस पेज पर जाएं.
StudentSubmission
में बदलाव सिर्फ़ कोर्स का शिक्षक या उसका मालिक करने वाला छात्र/छात्रा ही कर सकते हैं. अगर छात्र/छात्रा के सबमिट किए गए असाइनमेंट का
CourseWorkType
ASSIGNMENT
है, तो ही Materials
को अटैच किया जा सकता है.
ज़रूरी स्कोप इस बात पर निर्भर करता है कि अनुरोध करने वाले उपयोगकर्ता के पास, कोर्स में क्या भूमिका है. अगर उपयोगकर्ता शिक्षक है, तो इस स्कोप का इस्तेमाल करें:
https://www.googleapis.com/auth/classroom.coursework.students
अगर उपयोगकर्ता छात्र/छात्रा है, तो इस स्कोप का इस्तेमाल करें:
https://www.googleapis.com/auth/classroom.coursework.me