Hola Guillermo,
Hay una forma de obtener el id_externo para la tabla acc_login_externos. Cuando se vincula a una cuenta externa se termina invocado la función accion__vincular_cuenta_externa de la clase src/siu/operaciones/configuracion/controlador.php. Si ves hace lo siguiente:
$datos = $manager->obtener_datos_cuenta($proveedor, $url_procesar);
donde:
$proveedor = “google”;
$url_procesar = kernel::vinculador()->crear(‘configuracion’, ‘vincular_cuenta_externa’, $proveedor); ej: http://localhost/3w/trunk3/configuracion/vincular_cuenta_externa/google
$datos es un array con la siguiente estructura, el id es lo que iría en la columna id_externo:
Array
(
[id] => 108985541088504643139
[mail] => pruebas@gmail.com
[proveedor] => google
[persona] => 2
)
Ya con esto podrías hacer un proceso que automáticamente vincule directamente con las cuentas de GMAIL de los alumnos.
saludos.