Classroom UI পাঁচ ধরনের ক্লাসওয়ার্ক সমর্থন করে: অ্যাসাইনমেন্ট, কুইজ অ্যাসাইনমেন্ট, সংক্ষিপ্ত উত্তর প্রশ্ন, একাধিক পছন্দের প্রশ্ন এবং উপকরণ। Classroom API বর্তমানে এই ধরনের তিনটিকে সমর্থন করে, যেগুলি API-এর জন্য CourseWorkType
নামে পরিচিত: অ্যাসাইনমেন্ট, সংক্ষিপ্ত উত্তরের প্রশ্ন এবং একাধিক পছন্দের প্রশ্ন।
এই কার্যকারিতা অ্যাক্সেস করার জন্য, আপনি CourseWork রিসোর্স ব্যবহার করতে পারেন, যা একটি অ্যাসাইনমেন্ট বা প্রশ্ন প্রতিনিধিত্ব করে যা একটি নির্দিষ্ট কোর্সে শিক্ষার্থীদের জন্য বরাদ্দ করা হয়েছে, যেকোন অতিরিক্ত উপকরণ এবং বিশদ বিবরণ সহ, যেমন নির্ধারিত তারিখ বা সর্বোচ্চ স্কোর।
CourseWork রিসোর্স ছাড়াও, আপনি StudentSubmission
রিসোর্সের মাধ্যমে সম্পূর্ণ অ্যাসাইনমেন্ট পরিচালনা করতে পারেন। নিম্নলিখিত বিভাগগুলি আরও বিস্তারিতভাবে বর্ণনা করে।
অ্যাসাইনমেন্ট তৈরি করুন
অ্যাসাইনমেন্টগুলি শুধুমাত্র কোর্সের শিক্ষক(দের) তরফে তৈরি করা যেতে পারে এবং কোনও ছাত্রের হয়ে কোনও কোর্সে অ্যাসাইনমেন্ট তৈরি করার চেষ্টা করলে 403 PERMISSION_DENIED
ত্রুটি দেখা দেবে৷ একইভাবে, ডোমেন প্রশাসকরা যে কোর্সগুলি শেখায় না তার জন্য অ্যাসাইনমেন্ট তৈরি করতে পারে না এবং API এর মাধ্যমে এটি করার চেষ্টা করার ফলে একটি 403 PERMISSION_DENIED
ত্রুটি দেখা দেবে৷
courses.courseWork.create
পদ্ধতি ব্যবহার করে অ্যাসাইনমেন্ট তৈরি করার সময়, আপনি materials
হিসাবে লিঙ্কগুলি সংযুক্ত করতে পারেন, নীচের নমুনা কোডে দেখানো হয়েছে:
জাভা
পাইথন
ফলাফলে একটি সার্ভার-অ্যাসাইন করা আইডেন্টিফায়ার রয়েছে যা অন্যান্য API অনুরোধে অ্যাসাইনমেন্ট উল্লেখ করতে ব্যবহার করা যেতে পারে।
Classroom API-এর মাধ্যমে তৈরি করা অ্যাসাইনমেন্টে লিঙ্ক করা উপকরণগুলি অন্তর্ভুক্ত করতে, একটি লিঙ্ক রিসোর্স ব্যবহার করুন, টার্গেট URL উল্লেখ করে। ক্লাসরুম স্বয়ংক্রিয়ভাবে শিরোনাম এবং থাম্বনেইল ছবি নিয়ে আসে। ক্লাসরুম এপিআই নেটিভভাবে Google ড্রাইভ এবং ইউটিউব উপকরণকে সমর্থন করে, যা একইভাবে ড্রাইভফাইল রিসোর্স বা ইউটিউবভিডিও রিসোর্সের সাথে অন্তর্ভুক্ত করা যেতে পারে।
একটি নির্ধারিত তারিখ নির্দিষ্ট করতে, সংশ্লিষ্ট UTC সময়ের জন্য 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
একটি অ্যাসাইনমেন্ট বা প্রশ্ন পুনরুদ্ধার করার অনুমতি থাকা উপকরণ বা উপাদান মেটাডেটা অ্যাক্সেস করার অনুমতি বোঝায় না। অনুশীলনে, এর অর্থ হল একজন প্রশাসক যদি কোর্সের সদস্য না হন তবে তারা একটি সংযুক্ত ড্রাইভ ফাইলের শিরোনাম দেখতে পাবেন না। আপনি যদি প্রশাসকদের ব্যবহারকারীর ফাইলগুলিতে অ্যাক্সেসের অনুমতি দিতে চান তবে ডোমেন-ওয়াইড প্রতিনিধি নির্দেশিকা দেখুন৷
শিক্ষার্থীদের প্রতিক্রিয়া পরিচালনা করুন
একটি StudentSubmission
রিসোর্স একটি অ্যাসাইনমেন্ট বা প্রশ্নের জন্য একজন ছাত্রের করা কাজ এবং গ্রেড উপস্থাপন করে। যখন একটি নতুন প্রশ্ন বা অ্যাসাইনমেন্ট তৈরি করা হয় তখন প্রতিটি শিক্ষার্থীর জন্য একটি StudentSubmission
রিসোর্স নিহিতভাবে তৈরি করা হয়।
নিম্নলিখিত বিভাগগুলি সাধারণ ক্রিয়াগুলি ব্যাখ্যা করে যা ছাত্রদের প্রতিক্রিয়াগুলি পরিচালনা করে।
ছাত্র প্রতিক্রিয়া পুনরুদ্ধার
ছাত্ররা তাদের নিজস্ব জমাগুলি পুনরুদ্ধার করতে পারে, শিক্ষকরা তাদের কোর্সের সমস্ত ছাত্রদের জন্য জমাগুলি পুনরুদ্ধার করতে পারে এবং ডোমেন প্রশাসকরা তাদের ডোমেনের সমস্ত ছাত্রদের জন্য জমাগুলি পুনরুদ্ধার করতে পারে৷ প্রতিটি ছাত্র জমা দেওয়ার জন্য একটি শনাক্তকারী বরাদ্দ করা হয়; আপনি যদি শনাক্তকারীকে জানেন, তাহলে এটি পুনরুদ্ধার করতে courses.courseWork.studentSubmissions.get
ব্যবহার করুন।
নিচের নমুনায় দেখানো কিছু মানদণ্ডের সাথে মেলে এমন StudentSubmission
রিসোর্স পেতে courses.courseWork.studentSubmissions.list
পদ্ধতি ব্যবহার করুন:
জাভা
পাইথন
নিম্নলিখিত নমুনায় দেখানো হিসাবে userId
প্যারামিটার নির্দিষ্ট করে একটি নির্দিষ্ট ছাত্রের অন্তর্গত StudentSubmission
সম্পদ পুনরুদ্ধার করুন:
জাভা
পাইথন
ব্যবহারকারীর অনন্য আইডি বা ইমেল ঠিকানা দ্বারা ছাত্রদের চিহ্নিত করা হয়, যেমনটি Google অ্যাডমিন SDK দ্বারা ফেরত দেওয়া হয়। বর্তমান ব্যবহারকারী "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
একটি ছাত্র জমা পুনরুদ্ধার করার অনুমতি থাকা সংযুক্তি বা সংযুক্তি মেটাডেটা অ্যাক্সেস করার অনুমতি বোঝায় না। অনুশীলনে, এর অর্থ হল একজন প্রশাসক যদি কোর্সের সদস্য না হন তবে তারা একটি সংযুক্ত ড্রাইভ ফাইলের শিরোনাম দেখতে পাবেন না। আপনি যদি প্রশাসকদের ব্যবহারকারীর ফাইলগুলিতে অ্যাক্সেসের অনুমতি দিতে চান তবে ডোমেন-ওয়াইড প্রতিনিধি নির্দেশিকা দেখুন৷
একটি ছাত্র প্রতিক্রিয়া সংযুক্তি যোগ করা
আপনি একটি Link
, DriveFile
, বা YouTubeVideo
সংস্থান সংযুক্ত করে একটি ছাত্র জমা দেওয়ার লিঙ্ক সংযুক্ত করতে পারেন৷ এটি courses.courseWork.studentSubmissions.modifyAttachments
দিয়ে করা হয়, যেমনটি নিম্নলিখিত নমুনায় দেখানো হয়েছে:
জাভা
পাইথন
একটি লিঙ্ক সংযুক্তি লক্ষ্য URL দ্বারা সংজ্ঞায়িত করা হয়; ক্লাসরুম স্বয়ংক্রিয়ভাবে শিরোনাম এবং থাম্বনেইল ছবি আনবে। আপনি তাদের নিজ নিজ রেফারেন্স পৃষ্ঠায় অন্যান্য উপকরণ সম্পর্কে জানতে পারেন.
StudentSubmission
শুধুমাত্র একজন কোর্স শিক্ষক বা এটির মালিক ছাত্র দ্বারা সংশোধন করা যেতে পারে। আপনি শুধুমাত্র Materials
সংযুক্ত করতে পারেন যদি ছাত্র জমা দেওয়ার CourseWorkType
ASSIGNMENT
হয়।
প্রয়োজনীয় সুযোগ কোর্সে অনুরোধকারী ব্যবহারকারীর ভূমিকার উপর নির্ভর করে। ব্যবহারকারী শিক্ষক হলে নিম্নলিখিত সুযোগ ব্যবহার করুন:
-
https://www.googleapis.com/auth/classroom.coursework.students
ব্যবহারকারী একজন ছাত্র হলে নিম্নলিখিত সুযোগ ব্যবহার করুন:
-
https://www.googleapis.com/auth/classroom.coursework.me
ছাত্র প্রতিক্রিয়া অবস্থা পরিচালনা করুন
একটি শিক্ষার্থীর প্রতিক্রিয়া জমা দেওয়া, জমা দেওয়া বা ফেরত দেওয়া হতে পারে। StudentSubmission
এ রাষ্ট্রীয় ক্ষেত্র বর্তমান অবস্থা নির্দেশ করে। রাষ্ট্র পরিবর্তন করতে, নিম্নলিখিত পদ্ধতিগুলির মধ্যে একটিতে কল করুন:
-
courses.courseWork.studentSubmissions.turnIn
-
courses.courseWork.studentSubmissions.return
-
courses.courseWork.studentSubmissions.reclaim
এই সব পদ্ধতি একটি খালি শরীর নিতে. উদাহরণ:
জাভা
পাইথন
service.courses().courseWork().studentSubmission().turnIn(
courseId=<course ID or alias>,
courseWorkId=<courseWork ID>,
id=<studentSubmission ID>,
body={}).execute()
শুধুমাত্র যে শিক্ষার্থীর কাছে একটি StudentSubmission
আছে তারাই এটি চালু করতে বা এটি পুনরুদ্ধার করতে পারে। শুধুমাত্র একটি পরিণত জমা পুনরায় দাবি করা যেতে পারে. কোর্স শিক্ষকরা শুধুমাত্র একটি StudentSubmission
জমা দিতে পারেন যা পরিণত অবস্থায় আছে।
গ্রেড ছাত্র প্রতিক্রিয়া
StudentSubmission
রিসোর্সে গ্রেড সঞ্চয় করার জন্য দুটি ক্ষেত্র রয়েছে: assignedGrade
, যা ছাত্রদের রিপোর্ট করা গ্রেড, এবং draftGrade
, যা শুধুমাত্র শিক্ষকদের কাছে দৃশ্যমান একটি অস্থায়ী গ্রেড। এই ক্ষেত্রগুলি courses.courseWork.studentSubmissions.patch
ব্যবহার করে আপডেট করা হয়েছে উপযুক্ত ক্ষেত্র সমন্বিত একটি ফিল্ড মাস্ক সহ, যা নিম্নলিখিত নমুনায় দেখানো হয়েছে।
জাভা
পাইথন
studentSubmission = {
'assignedGrade': 99,
'draftGrade': 80
}
service.courses().courseWork().studentSubmissions().patch(
courseId=<course ID or alias>,
courseWorkId=<courseWork ID>,
id=<studentSubmission ID>,
updateMask='assignedGrade,draftGrade',
body=studentSubmission).execute()
ক্লাসরুম UI এর সাথে কাজ করার সময়, শিক্ষকরা একটি গ্রেড বরাদ্দ করতে পারবেন না যতক্ষণ না তারা প্রথমে একটি খসড়া গ্রেড সংরক্ষণ করেন। নির্ধারিত গ্রেড তারপর একজন শিক্ষার্থীকে ফেরত দেওয়া যেতে পারে। অ্যাপ্লিকেশন এই আচরণ অনুকরণ করা প্রয়োজন. আপনার আবেদন একটি ছাত্রের অ্যাসাইনমেন্টকে দুটি উপায়ে গ্রেড করতে পারে:
শুধু
draftGrade
বরাদ্দ করুন। এটি দরকারী, উদাহরণস্বরূপ, গ্রেড চূড়ান্ত করার আগে শিক্ষককে ম্যানুয়ালি পর্যালোচনা করতে দেওয়া। শিক্ষার্থীরা খসড়া গ্রেড দেখতে পারে না।একটি অ্যাসাইনমেন্টকে সম্পূর্ণরূপে গ্রেড করার জন্য
draftGrade
এবংassignedGrade
উভয়ই বরাদ্দ করুন।
নির্ধারিত গ্রেড তালিকা
আপনি courses.courseWork.studentSubmissions.list
পদ্ধতির প্রতিক্রিয়া অবজেক্ট অন্বেষণ করে একটি নির্দিষ্ট কোর্সওয়ার্ক আইটেমের জন্য সমস্ত গ্রেড তালিকাভুক্ত করতে পারেন:
জাভা
পাইথন
response = coursework.studentSubmissions().list(
courseId=course_id,
courseWorkId=coursework_id,
pageSize=10).execute()
submissions.extend(response.get('studentSubmissions', []))
if not submissions:
print('No student submissions found.')
print('Student Submissions:')
for submission in submissions:
print(f"Submitted at:"
f"{(submission.get('userId'), submission.get('assignedGrade'))}")