Veli kaynağı, öğrencinin kursları ve çalışmaları hakkında bilgi alan bir kullanıcıyı (ör. ebeveyn) temsil eder. Genellikle öğrencinin Classroom alanının üyesi olmayan velinin, veli olabilmesi için e-posta adresi kullanılarak davet edilmesi gerekir.
Bu davetiye, PENDING
durumuna sahip bir Veli Daveti kaynağı oluşturur. Kullanıcı, daveti kabul etmesinin istendiği bir e-posta alır. E-posta adresi bir Google hesabıyla ilişkili değilse daveti kabul etmeden önce kullanıcıdan bir hesap oluşturması istenir.
Davetiyenin durumu PENDING
olsa da kullanıcı davetiyeyi kabul edebilir. Bu da bir Veli kaynağı oluşturur ve Veli Daveti'ni COMPLETED
durumuyla işaretler. Bir davetiyenin süresi dolarsa veya yetkili bir kullanıcı davetiyeyi iptal ederse (örneğin, PatchGuardianInvitation
yöntemini kullanarak) da COMPLETED
haline gelebilir. Ayrıca veli ilişkisi; veli, Classroom öğretmeni veya yönetici tarafından Classroom kullanıcı arayüzü veya DeleteGuardian
yöntemi kullanılarak da bozulabilir.
Velileri yönetebilen kullanıcılar
Aşağıdaki tabloda, geçerli olarak kimliği doğrulanmış kullanıcının türüne göre velilerle ilgili olarak gerçekleştirilebilecek işlemler açıklanmaktadır:
Kapsamlar
Velileri yönetmenize olanak tanıyan üç kapsam vardır:
- https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly bir kullanıcının kendi Velilerini görüntülemenize olanak tanır.
- https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly sürümü, kullanıcının öğrettiği veya yönettiği öğrenciler için Veliler ve Veli Davetlerini görüntülemenize olanak tanır.
- https://www.googleapis.com/auth/classroom.guardianlinks.students, kullanıcının öğrettiği veya yönettiği öğrenciler için Veliler ve Veli Davetlerini görüntülemenize ve değiştirmenize olanak tanır.
Sık kullanılan işlemler
Bu bölümde, Google Classroom API'yi kullanarak gerçekleştirmek isteyebileceğiniz yaygın veli işlemlerinden bazıları açıklanmaktadır.
Veli davetiyesi oluşturma
Aşağıdaki örnekte, userProfiles.guardianInvitations.create()
yöntemini kullanarak nasıl veli davetiyesi oluşturabileceğiniz gösterilmektedir:
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')))
Sonuç, GuardianInvite'a başvurmak için kullanılabilecek, sunucu tarafından atanan bir tanımlayıcı içerir.
Veli davetiyesini iptal etme
Bir davetiyeyi iptal etmek için userProfiles.guardianInvitations.patch()
yöntemini çağırarak davetiyenin durumunu PENDING
yerine COMPLETE
olarak değiştirin.
Şu anda davetiyeleri kaldırmanın tek yolunun bu olduğunu unutmayın.
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()
Belirli bir öğrenci için davetiyeleri listeleme
userProfiles.guardianInvitations.list()
yöntemini kullanarak belirli bir öğrenci için gönderilen tüm davetiyelerin listesini görebilirsiniz:
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')))
Varsayılan olarak yalnızca PENDING
davetiye döndürülür. Alan yöneticisi olarak, bir durum parametresi sağlayarak COMPLETED
durumundaki davetiyeleri de alabilirsiniz.
Etkin velileri listele
Belirli bir öğrencinin etkin velisi olan kullanıcıları belirlemek istiyorsanız userProfiles.guardians.list()
yöntemini kullanabilirsiniz. Aktif veliler, e-posta davetini kabul eden velilerdir.
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')))
Velileri kaldır
Ayrıca, userProfiles.guardians.delete()
yöntemini kullanarak bir öğrencinin velisini kaldırabilirsiniz:
Java
Python
service.userProfiles().guardians().delete(studentId='student@mydomain.edu',
guardianId='guardian@gmail.com').execute()