משאב של אפוטרופוס מייצג משתמש, כמו הורה, שמקבל מידע על הקורסים ועל העבודה של התלמיד/ה. כדי להפוך לאפוטרופוסים, צריך להזמין את האפוטרופוס, שלרוב לא חבר בדומיין של התלמיד ב-Classroom, באמצעות כתובת האימייל שלו.
ההזמנה הזו יוצרת משאב GuardianInvitation עם מצב של PENDING
. המשתמש יקבל אימייל עם בקשה לאשר את ההזמנה. אם כתובת האימייל לא משויכת לחשבון Google, המשתמש יתבקש ליצור כתובת כזו לפני אישור ההזמנה.
המצב של ההזמנה הוא PENDING
, אבל המשתמש יכול לאשר את ההזמנה. פעולה זו יוצרת משאב מסוג Guardian ומסמנת את המצב של 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': '[email protected]',
}
guardianInvitation = service.userProfiles().guardianInvitations().create(
studentId='[email protected]',
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='[email protected]',
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='[email protected]').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
על ידי ציון פרמטר מצבים.
הצגת רשימה של אפוטרופוסים פעילים
כדי לדעת אילו משתמשים מוגדרים כאפוטרופוסים פעילים של תלמיד מסוים, אפשר להשתמש בשיטה userProfiles.guardians.list()
. אפוטרופוסים פעילים הם אפוטרופוסים שאישרו את ההזמנה באימייל.
Java
Python
guardian_invites = []
page_token = None
while True:
response = service.userProfiles().guardians().list(studentId='[email protected]').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='[email protected]',
guardianId='[email protected]').execute()