يمثّل مصدر الأوصياء مستخدمًا، مثل أحد الوالدَين، يتلقّى معلومات عن دورات أحد الطلاب وواجباته. يجب دعوة الوصي، الذي لا يكون عادةً عضوًا في نطاق Classroom الخاص بالطالب، باستخدام عنوان بريده الإلكتروني ليصبح وصيًا.
تنشئ هذه الدعوة
مورد GuardianInvitation
بحالة PENDING
. يتلقّى المستخدم بعد ذلك رسالة إلكترونية تطلب منه قبول الدعوة. إذا لم يكن عنوان البريد الإلكتروني مرتبطًا بحساب على Google، سيُطلَب من المستخدم إنشاء حساب قبل قبول الدعوة.
عندما تكون حالة الدعوة هي PENDING
، يمكن للمستخدم قبول
الدعوة، ما يؤدي إلى إنشاء مورد حارس ويضع علامة على GuardianInvitation
بحالة COMPLETED
. قد تصبح الدعوة أيضًا COMPLETED
إذا
انتهت صلاحيتها، أو إذا ألغى مستخدم مفوَّض الدعوة (على سبيل المثال، باستخدام PatchGuardianInvitation
). يمكن أيضًا أن ينهي أحد الوصيين أو المعلّمين في Classroom أو أحد المشرفين علاقة الوصي باستخدام واجهة مستخدم Classroom أو طريقة DeleteGuardian
.
مَن يمكنه إدارة الأوصياء
يوضّح الجدول التالي الإجراءات التي يمكن تنفيذها في ما يتعلّق بالأوصياء، وفقًا لنوع المستخدم الذي تم مصادقة هويته حاليًا:
المستويات
هناك ثلاثة نطاقات تتيح لك إدارة الأوصياء:
- يسمح لك النطاق https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly بعرض الأوصياء الخاصين بالمستخدم.
- يتيح لك https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly عرض الأوصياء وطلبات الأوصياء للطلاب الذين يُدرّسهم المستخدم أو يشرف عليهم.
- يتيح لك https://www.googleapis.com/auth/classroom.guardianlinks.students عرض وتعديل الأوصياء وطلبات الأوصياء للطلاب الذين يعلّمهم المستخدم أو يشرف عليهم.
الإجراءات الشائعة
يصف هذا القسم بعض الإجراءات الشائعة التي يمكن أن يتّخذها الوصي والتي قد تحتاج إلى تنفيذها باستخدام Google Classroom API.
إنشاء دعوة وصي
يوضّح المثال التالي كيفية إنشاء دعوة لأحد الأوصياء باستخدام الإجراء التالي:
userProfiles.guardianInvitations.create()
:
Java
Python
guardianInvitation = {
'invitedEmailAddress': 'guardian@gmail.com',
}
guardianInvitation = service.userProfiles().guardianInvitations().create(
studentId='student@mydomain.edu',
body=guardianInvitation).execute()
print("Invitation created with id: {0}".format(guardianInvitation.get('invitationId')))
تتضمّن النتيجة معرّفًا يحدّده الخادم ويمكن استخدامه للإشارة إلى GuardianInvitation.
إلغاء دعوة أحد الأوصياء
لإلغاء دعوة، عدِّل حالة الدعوة من PENDING
إلى
COMPLETE
من خلال استدعاء الطريقة userProfiles.guardianInvitations.patch()
.
يُرجى العِلم أنّ هذه هي الطريقة الوحيدة حاليًا لإزالة دعوة.
Java
Python
guardian_invite = {
'state': 'COMPLETE'
}
guardianInvitation = service.userProfiles().guardianInvitations().patch(
studentId='student@mydomain.edu',
invitationId=1234, # Replace with the invitation ID of the invitation you want to cancel
updateMask='state',
body=guardianInvitation).execute()
عرض دعوات لطالب محدّد
يمكنك الحصول على قائمة بجميع الدعوات التي تم إرسالها لطالب
معيّن باستخدام طريقة userProfiles.guardianInvitations.list()
:
Java
Python
guardian_invites = []
page_token = None
while True:
response = service.userProfiles().guardianInvitations().list(
studentId='student@mydomain.edu').execute()
guardian_invites.extend(response.get('guardian_invites', []))
page_token = response.get('nextPageToken', None)
if not page_token:
break
if not courses:
print('No guardians invited for this {0}.'.format(response.get('studentId')))
else:
print('Guardian Invite:')
for guardian in guardian_invites:
print('An invite was sent to '.format(guardian.get('id'),
guardian.get('guardianId')))
سيتم عرض PENDING
دعوة فقط تلقائيًا. بصفتك مشرفًا
للنطاق، يمكنك أيضًا استرداد الدعوات في الحالة COMPLETED
من خلال
تقديم مَعلمة states.
إدراج الأوصياء النشطين
إذا كنت تريد تحديد المستخدمين الذين هم الأوصياء النشطين لطالب معيّن،
يمكنك استخدام طريقة userProfiles.guardians.list()
. الوصي
النشط هو الوصي الذي قبل دعوة البريد الإلكتروني.
Java
Python
guardian_invites = []
page_token = None
while True:
response = service.userProfiles().guardians().list(studentId='student@mydomain.edu').execute()
guardian_invites.extend(response.get('guardian_invites', []))
page_token = response.get('nextPageToken', None)
if not page_token:
break
if not courses:
print('No guardians invited for this {0}.'.format(response.get('studentId')))
else:
print('Guardian Invite:')
for guardian in guardian_invites:
print('An invite was sent to '.format(guardian.get('id'),
guardian.get('guardianId')))
إزالة الأوصياء
يمكنك أيضًا إزالة وصي من حساب طالب باستخدام الطريقة
userProfiles.guardians.delete()
:
Java
Python
service.userProfiles().guardians().delete(studentId='student@mydomain.edu',
guardianId='guardian@gmail.com').execute()