Veli kaynağı, öğrencinin dersleri ve çalışmaları hakkında bilgi alan bir kullanıcıyı (ör. ebeveyn) temsil eder. Genellikle öğrencinin Classroom alanının üyesi olmayan bir veli, veli olmak için e-posta adresini kullanarak davet edilmelidir.
Bu davetiye, PENDING
durumuyla bir VeliDavetiye kaynağı oluşturur. Ardından, kullanıcıya daveti kabul etmesini isteyen bir e-posta gönderilir. E-posta adresi bir Google Hesabı ile ilişkili değilse kullanıcıdan daveti kabul etmeden önce bir hesap oluşturması istenir.
Davetiyenin durumu PENDING
olsa da kullanıcı daveti kabul edebilir. Veli kaynağı oluşturur ve VeliDavetiyesini COMPLETED
durumuyla işaretler. Süresi dolan veya yetkili bir kullanıcı, davetiyeyi iptal eden (ör. PatchGuardianInvitation
yöntemini kullanarak) davetiyeler de COMPLETED
olabilir. Veli ilişkisi, Classroom kullanıcı arayüzü veya DeleteGuardian
yöntemi kullanılarak bir veli, Classroom öğretmeni veya yönetici tarafından kesilebilir.
Velileri yönetebilecek kullanıcılar
Aşağıdaki tabloda, şu anda kimliği doğrulanmış kullanıcının türüne göre velilerle ilgili olarak yapılabilecek 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ülemenizi sağlar.
- https://www.googleapis.com/auth/classroom.Guardianlinks.students.readonly Kullanıcının öğrettiği veya yönettiği veliler ve VeliDavetiyeleri'ni görüntülemenize olanak tanır.
- https://www.googleapis.com/auth/classroom.Guardianlinks.students Kullanıcıların öğrettiği ya da yönettiği dersler için Veliler ve VeliDavetiyelerini 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ştur
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ılabilen, sunucu tarafından atanmış bir tanımlayıcı içerir.
Veli davetini iptal etme
Bir davetiyeyi iptal etmek için userProfiles.guardianInvitations.patch()
yöntemini çağırarak PENDING
olan davetiyenin durumunu değiştirin.
Şu anda bir davetiyeyi 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 alabilirsiniz:
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 eyaletler parametresi sağlayarak davetiyeleri COMPLETED
durumunda da alabilirsiniz.
Etkin velileri listeleyin
Belirli bir öğrenci için hangi kullanıcıların etkin veli olduğunu belirlemek istiyorsanız userProfiles.guardians.list()
yöntemini kullanabilirsiniz. Etkin 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
userProfiles.guardians.delete()
yöntemini kullanarak öğrenciden veliyi de kaldırabilirsiniz:
Java
Python
service.userProfiles().guardians().delete(studentId='student@mydomain.edu',
guardianId='guardian@gmail.com').execute()