يمثّل مرجع الموضوع مجموعة من عناصر البث المصنّفة حسب التشابه، مثل الأسبوع المحدّد أو موضوع الدورة التدريبية.
يتم تحديد كل موضوع من خلال معرّف فريد يحدّده الخادم. يرتبط بهذا المعرّف معرّف الدورة التدريبية التي ينتمي إليها الموضوع، واسم الموضوع الفعلي المعروض في واجهة مستخدم Classroom، وتاريخ آخر تعديل ووقته.
إنشاء موضوع
يمكنك إنشاء موضوع جديد في دورة تدريبية باستخدام الطريقة
topics.create()
، كما هو موضّح في العيّنة التالية:
Java
Python
topic = {
"name": 'Example Topic'
}
response = service.courses().topics().create(
courseId=<course ID or alias>,
body=topic).execute()
print('Topic created: ', response['name'])
استرداد تفاصيل الموضوع
يمكنك استرداد مواضيع دورة تدريبية مقابلة باستخدام الطريقة
topics.get()
، كما هو موضّح في العيّنة التالية:
Java
Python
response = service.courses().topics().get(
courseId=<course ID or alias>,
id=<topic ID>).execute()
print('{0} ({1})'.format(response['name'], response['topicId']))
للحصول على قائمة بالدورات التدريبية، استخدِم طريقة topics.list()
، كما هو موضّح في المثال التالي:
Java
Python
topics = []
page_token = None
while True:
response = service.courses().topics().list(
pageToken=page_token,
pageSize=30,
courseId=<course ID or alias>).execute()
topics.extend(response.get('topic', []))
page_token = response.get('nextPageToken', None)
if not page_token:
break
if not topics:
print('No topics found.')
else:
print('Topics:')
for topic in topics:
print('{0} ({1})'.format(topic['name'], topic['topicId']))
تعديل المواضيع
يمكنك تعديل اسم موضوع حالي باستخدام الطريقة topics.patch()
، كما هو موضّح في المثال التالي:
Java
Python
topic = {
"name": "New Topic Name"
}
response = service.courses().topics().patch(
courseId=<course ID or alias>,
id=<topic ID>,
updateMask="name",
body=topic).execute()
print('{0} ({1})'.format(response['name'], response['topicId']))
حذف المواضيع
يمكنك حذف موضوع حالي باستخدام الطريقة topics.delete()
، كما هو موضّح
في العيّنة التالية: