शुरुआती जानकारी

Classroom और तीसरे पक्ष के टूल, दोनों का इस्तेमाल करने वाले शिक्षकों को अपने कोर्स और नामावलियों को एक से ज़्यादा प्लैटफ़ॉर्म पर सेट अप करने में चुनौती का सामना करना पड़ता है. यह काम मैन्युअल तरीके से किया जा सकता है. ऐसा CSV अपलोड का इस्तेमाल करके या एक-एक करके ईमेल डालकर किया जा सकता है. हालांकि, Classroom एपीआई की मदद से तीसरे पक्ष के टूल, एपीआई के सबसे आम इस्तेमाल के उदाहरण रोस्टर इंपोर्ट के साथ इंटिग्रेट करके अपने शिक्षकों का काम कम कर सकते हैं.

नामावली इंपोर्ट करने की सुविधा से तीसरे पक्ष के प्लैटफ़ॉर्म, कोर्स का मेटाडेटा, शिक्षकों, और छात्र-छात्राओं को कोर्स के हिसाब से डेटा वापस ला सकते हैं. इसके लिए, उन्हें शिक्षक या एडमिन की अनुमतियों का इस्तेमाल करना होगा. शिक्षक अपने पढ़ाए जाने वाले कोर्स की जानकारी पा सकते हैं, जबकि एडमिन के पास पूरे डोमेन के सभी कोर्स की जानकारी का ऐक्सेस होता है. इस सुविधा की मदद से डेवलपर, Classroom की नामावलियों को अपने प्लैटफ़ॉर्म पर आसानी से शामिल कर सकते हैं. ऐसा एडमिन क्रेडेंशियल का इस्तेमाल करके किया जा सकता है. इसके लिए, शिक्षक व्यक्तिगत तौर पर या पूरे डोमेन पर Classroom की नामावलियों को जोड़ सकते हैं.

नामावली इंपोर्ट करने का इंटिग्रेशन कैसा हो सकता है, इसकी तकनीकी जानकारी के बारे में जानने से पहले, आइए उदाहरण के वर्कफ़्लो की समीक्षा करते हैं:

  1. तीसरे पक्ष के ऐप्लिकेशन में, शिक्षक Classroom कोर्स को इंपोर्ट करने का विकल्प चुनता है.

  2. तीसरे पक्ष का ऐप्लिकेशन, Classroom एपीआई की मदद से courses.list तरीके को कॉल करता है. यह एपीआई, शिक्षकों के सभी कोर्स के साथ रिस्पॉन्स JSON भेजता है.

  3. json के जवाब से, तीसरे पक्ष का ऐप्लिकेशन शिक्षकों के कोर्स के शीर्षक दिखाता है, ताकि वे कोई एक कोर्स चुन सकें. अगले चरण पर जाने के लिए, ऐप्लिकेशन को कोर्स आईडी पर नज़र रखनी होगी.

  4. तीसरे पक्ष का ऐप्लिकेशन, चुने गए कोर्स आईडी के साथ students.list और teachers.list तरीकों का इस्तेमाल करता है. साथ ही, उसे अपनी वेबसाइट पर सभी नाम दिखाता है, ताकि शिक्षक उसे इंपोर्ट करने की पुष्टि कर सकें.

  5. तीसरे पक्ष का ऐप्लिकेशन, उपयोगकर्ताओं को अपने प्लैटफ़ॉर्म पर इंपोर्ट किए गए नए कोर्स में शामिल होने का न्योता देता है. इसके लिए, students.list और teachers.list रिस्पॉन्स JSON में मिले ईमेल का इस्तेमाल किया जाता है.

वर्कफ़्लो में बताए गए हर तरीके के लिए, एपीआई एक्सप्लोरर का इस्तेमाल करके यह देखा जा सकता है कि हर तरीका कैसे काम करता है. हमारा यह भी सुझाव है कि इस गाइड को पूरा करने से पहले, आप नीचे दी गई चीज़ें पहले से ज़रूर पढ़ें:

  1. Classroom API की मदद से कोर्स मैनेज करना
  2. छात्र-छात्राओं और शिक्षकों को मैनेज करें

सूची के इंपोर्ट वर्कफ़्लो के बारे में ऊपर जानकारी देने वाला डायग्राम.

YouTube पर शुरुआत करना

Classroom की नामावली इंपोर्ट करने से जुड़ी खास जानकारी लागू करने से पहले, आपको यह तय करना होगा कि एपीआई की मदद से, आपको किस कोर्स और उपयोगकर्ता की जानकारी चाहिए. रेफ़रंस दस्तावेज़ में, कोर्स का कौनसा मेटाडेटा उपलब्ध है, यह देखा जा सकता है. हालांकि, कुछ ज़रूरी या सामान्य फ़ील्ड की खास जानकारी यहां दी गई है:

फ़ील्ड बिक्री और आय बढ़ाने के लिए,
id छात्र/छात्रा या शिक्षकों की जानकारी पाने के लिए, एपीआई अनुरोधों को सबमिट करना ज़रूरी है
नाम लोग इसे आसानी से इस्तेमाल कर सकें, इसके लिए इसका सुझाव दिया जाता है. जैसे, अपनी वेबसाइट पर दिखाना
ownerId किसी कोर्स के मुख्य शिक्षक की सही तरीके से पहचान करने के लिए, पूरे डोमेन पर डेटा इंपोर्ट करने के लिए ज़रूरी है

कोर्स की यह जानकारी ऊपर दिए गए वर्कफ़्लो के courses.list चरण पर पाई जाती है. इस अनुरोध में, कुछ खास अनुरोध पैरामीटर के बारे में बताया जा सकता है. हालांकि, इस तरीके के लिए इन पैरामीटर को इस्तेमाल करना ज़रूरी नहीं है. हालांकि, सुझाए गए कुछ पैरामीटर ये हैं:

पैरामीटर बिक्री और आय बढ़ाने के लिए,
courseState अगर कोई विकल्प नहीं चुना गया है, तो एपीआई, कोर्स की सभी छह स्थितियों के कोर्स दिखाएगा. शिक्षक जो कोर्स इस्तेमाल कर रहे हैं उन्हें फिर से पाने के लिए, हम ACTIVE तय करने का सुझाव देते हैं.
pageSize ऐसे शिक्षक जो अपने कोर्स इंपोर्ट कर रहे हैं, हम एपीआई कॉल का जवाब देने में लगने वाला समय कम करने के लिए, छोटा (10 से कम) pageSize तय करने का सुझाव देते हैं.
pageToken अगर पेज किए गए अनुरोधों का इस्तेमाल किया जा रहा है, तो इस फ़ील्ड को भरना ज़रूरी है.
teacherId यह सुझाव इसलिए दिया जाता है, क्योंकि डोमेन एडमिन अक्सर कोर्स पढ़ाते हैं. कोई भी नियम नहीं दिए जाने पर, अनुरोध करने पर पूरे डोमेन के शिक्षकों के लिए कोर्स उपलब्ध होंगे.
फ़ील्ड्स एपीआई कॉल का जवाब देने में लगने वाला समय कम करने के लिए, इसका सुझाव दिया जाता है.

पहले वापस मिले कोर्स आईडी का इस्तेमाल करके, आपका आवेदन अब उस कोर्स या कोर्स के छात्र-छात्राओं और सह-शिक्षकों की सूची हासिल कर सकता है. teachers.list और students.list के लिए, सिर्फ़ यह कोर्स आईडी ज़रूरी है. हालांकि, एपीआई कॉल का रिस्पॉन्स टाइम कम करने के लिए, pageSize और fields पैरामीटर भी तय किए जा सकते हैं.

छात्र-छात्राओं और शिक्षकों के लिए उपलब्ध सभी फ़ील्ड, उनसे जुड़े दस्तावेज़ों में देखे जा सकते हैं. आम तौर पर, आम तौर पर इस्तेमाल किए जाने वाले और ज़रूरी दो फ़ील्ड profile फ़ील्ड में हैं: profile.name और profile.emailAddress.

फ़ील्ड बिक्री और आय बढ़ाने के लिए,
profile.name लोग इसे आसानी से इस्तेमाल कर सकें, इसके लिए इसका सुझाव दिया जाता है. जैसे, अपनी वेबसाइट पर दिखाना
profile.emailAddress ऐसे ऐप्लिकेशन के लिए ज़रूरी है जो छात्र-छात्राओं की खास पहचान करना चाहते हैं

Classroom से इनमें से किसी भी कोर्स या रोस्टर की जानकारी को फिर से पाने और इस्तेमाल करने के लिए, आपके ऐप्लिकेशन को उपयोगकर्ताओं से अनुमति का अनुरोध करना होगा. इस वर्कफ़्लो को लागू करने के लिए तीन (3) ज़रूरी दायरे हैं:

  • https://www.googleapis.com/auth/classroom.courses.readonly
    • Google Classroom के कोर्स का रीड ओनली ऐक्सेस देता है
  • https://www.googleapis.com/auth/classroom.rosters.readonly
    • इससे Google Classroom के कोर्स (शिक्षक और छात्र-छात्राएं) के रोस्टर का रीड ओनली ऐक्सेस मिलता है
  • https://www.googleapis.com/auth/classroom.profile.emails
    • इसकी मदद से, शिक्षकों और छात्र-छात्राओं की ईमेल प्रॉपर्टी को पढ़ने का ऐक्सेस मिलता है

Pub/Sub सूचनाओं के साथ रोस्टर सिंक करें

स्कूल का साल जैसे-जैसे आगे बढ़ता है, वैसे-वैसे छात्र-छात्राओं के कोर्स छोड़ने या जोड़ने के साथ नामावली में भी बदलाव होता है. Pub/Sub की सूचनाएं जोड़ने से, तीसरे पक्ष के ऐप्लिकेशन को Classroom रोस्टर के साथ सिंक रखा जा सकता है. सूचनाएं पाने के लिए, आपको Google Cloud Pub/Sub विषय सेट अप करना होता है. इसके बाद, उस विषय को Classroom API के साथ रजिस्टर करना होता है. यह रजिस्ट्रेशन, Classroom के लिए अनुरोध है कि वह दिए गए फ़ीड का डेटा, दिए गए विषय पर भेजे. किसी शिक्षक के Classroom रोस्टर के साथ फिर से सिंक करने के लिए, यह फ़ीड इवेंट ट्रिगर होगा.

पुश नोटिफ़िकेशन का इस्तेमाल करने के लिए, आपको एक अतिरिक्त स्कोप की ज़रूरत होगी. इसे पुष्टि के लिए सबमिट करने की ज़रूरत नहीं है:

  • https://www.googleapis.com/auth/classroom.push-notifications
    • इससे आपके ऐप्लिकेशन को, पुश नोटिफ़िकेशन से जुड़ी किसी भी गतिविधि के लिए रजिस्टर करने की अनुमति मिलती है

पुश नोटिफ़िकेशन की मदद से, नामावली इंपोर्ट करने के वर्कफ़्लो के बारे में खास जानकारी देने वाला डायग्राम

Classroom के पुश नोटिफ़िकेशन के साथ इंटिग्रेट करने के तरीके के बारे में ज़्यादा जानकारी के लिए, हमारी पुश नोटिफ़िकेशन को मैनेज करने से जुड़ी गाइड देखें.