Tài nguyên của người giám hộ đại diện cho một người dùng, chẳng hạn như cha mẹ, người nhận thông tin về các khoá học và bài tập của học viên. Người giám hộ (thường không phải là thành viên của miền Lớp học của học viên) phải được mời bằng địa chỉ email của họ để trở thành người giám hộ.
Lời mời này sẽ tạo một
tài nguyên GuardianInvitation
với trạng thái PENDING
. Sau đó, người dùng sẽ nhận được email nhắc họ chấp nhận lời mời. Nếu địa chỉ email không được liên kết với Tài khoản Google, người dùng sẽ được nhắc tạo tài khoản trước khi chấp nhận lời mời.
Mặc dù lời mời có trạng thái là PENDING
, nhưng người dùng có thể chấp nhận lời mời. Thao tác này sẽ tạo một tài nguyên Guardian và đánh dấu GuardianInvitation bằng trạng thái COMPLETED
. Lời mời cũng có thể trở thành COMPLETED
nếu lời mời đó hết hạn hoặc nếu người dùng được uỷ quyền huỷ lời mời (ví dụ: sử dụng phương thức PatchGuardianInvitation
). Người giám hộ, giáo viên Lớp học hoặc quản trị viên cũng có thể huỷ mối quan hệ với người giám hộ bằng cách sử dụng giao diện người dùng Lớp học hoặc phương thức DeleteGuardian
.
Người có thể quản lý người giám hộ
Bảng sau đây mô tả những hành động có thể thực hiện đối với người giám hộ, theo loại người dùng hiện đã được xác thực:
Phạm vi
Có 3 phạm vi cho phép bạn quản lý người giám hộ:
- https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly cho phép bạn xem Người giám hộ của chính người dùng.
- https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly cho phép bạn xem Lời mời của Người giám hộ và Người giám hộ cho những học viên mà người dùng đó dạy hoặc quản lý.
- https://www.googleapis.com/auth/classroom.guardianlinks.students cho phép bạn xem và sửa đổi Người giám hộ và GuardianInvitations cho học sinh mà người dùng dạy hoặc quản lý.
Tác vụ thông thường
Phần này mô tả một số thao tác phổ biến dành cho người giám hộ mà bạn nên thực hiện bằng cách sử dụng API Google Lớp học.
Tạo lời mời dành cho người giám hộ
Ví dụ sau đây cho thấy cách bạn có thể tạo lời mời dành cho người giám hộ bằng phương thức 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')))
Kết quả bao gồm một giá trị nhận dạng do máy chủ chỉ định có thể dùng để tham chiếu đến GuardianInvitation.
Huỷ lời mời dành cho người giám hộ
Để huỷ lời mời, hãy sửa đổi trạng thái của lời mời từ PENDING
thành COMPLETE
bằng cách gọi phương thức userProfiles.guardianInvitations.patch()
.
Xin lưu ý rằng đây hiện là cách duy nhất để xoá lời mời.
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()
Liệt kê lời mời cho một học viên cụ thể
Bạn có thể xem danh sách tất cả lời mời đã gửi cho một học viên cụ thể bằng phương thức 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')))
Theo mặc định, sẽ chỉ có PENDING
lời mời được trả về. Là quản trị viên miền, bạn cũng có thể truy xuất lời mời ở trạng thái COMPLETED
bằng cách cung cấp tham số trạng thái.
Liệt kê người giám hộ đang hoạt động
Nếu muốn xác định những người dùng là người giám hộ đang hoạt động của một học viên cụ thể, bạn có thể sử dụng phương thức userProfiles.guardians.list()
. Người giám hộ đang hoạt động là những người giám hộ đã chấp nhận lời mời qua email.
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')))
Xoá người giám hộ
Bạn cũng có thể xoá người giám hộ khỏi học viên bằng phương thức
userProfiles.guardians.delete()
:
Java
Python
service.userProfiles().guardians().delete(studentId='student@mydomain.edu',
guardianId='guardian@gmail.com').execute()