juny, 2013

Identificar-nos a Moodle amb l’usuari de Google apps

Així, per exemple, si volem utilitzar l’aplicació Prezi i no volem tenir un altre usuari i una altra contrasenya, podem identificar-nos amb l’usuari que tinguem a Facebook. A través del protocol, serem redirigits al web de Facebook i, si en donem permís, Facebook comprovarà que les dades són correctes i ens tornarà al web de Prezi ja identificats.

Això mateix ho podem utilitzar per evitar que un alumne tingui un usuari al Google apps for education i un altre al Moodle. Podem configurar el Moodle per tal que, utilitzant el protocol Oauth 2, utilitzi usuaris de Google apps for education.
És important tenir en compte que habilitar aquesta opció no deshabilita les altres identificacions. Per tant, els usuaris que no es modifiquin seguiran entrant amb usuari i contrasenya sense cap problema.
Per aconseguir aquesta funcionalitat, haurem d’instal·lar al servidor Moodle un connector anomenat Oauth2 Authenticacion. Aquest connector també permet utilitzar usuaris de Facebook o de WindowsLive, però aquí ens centrarem amb els usuaris de Google apps for education.
Les instruccions dels desenvolupadors són molt senzilles, però quan s’implementa no resulten tan senzilles per les persones poc expertes. Així que citaré els passos que ens recomanen i comentaré els afegits que cal fer:
1.- Descarregar el connector de l’adreça https://moodle.org/plugins/view.php?plugin=auth_googleoauth2
Aquest connector serveix per les versions 2.1 i superior (inclosa la darrera, la 2.5)

2.- Afegir el connector a la carpeta /auth/googleoauth2/ del servidor
Ho podeu fer per FTP o a través d’alguna aplicació del vostre hosting.

3.- Dins del menú d’Administració del Moodle, habilitar el connector Google Oauth 2 (Administració del lloc > Connectors > Atenticació > Gestió de l’autenticació)
4.- Als paràmetres del connector Oauth 2 (Administració del lloc > Connectors > Atenticació > Google Oauth 2), introduir el Google client ID i  Google secret.
Aquí surt la primera dificultat pels inexperts en la matèria. Per aconseguir aquestes dades, ens caldrà anar a l’adreça següent: https://code.google.com/apis/console. En aquesta adreça, si tenim el Google apps for education, hi trobarem les dades que en caen (en la captura he esborrat part de les dades per seguretat).
Els desenvolupadors no ens ho avisen, però ja que estem en aquesta pàgina de l’API de Google, aprofitem i canviem un parell de coses més. Amb el botó Edit branding information, posem la Home page URL del vostre Moodle. I amb l’enllaç Edit settings, poseu la Redirect URLs. Ha de ser l’adreça del vostre Moodle, afegint-li auth/googleoauth2/google_redirect.php
Ara ja tenim configurat el Moodle i el Google per tal que entre ells es puguin passar identificacions.
5- Canviar la plantilla HTML d’entrada, afegint un codi.
Ens falta modificar la pàgina del Moodle on es demana l’usuai i la contrasenya. Aquesta pàgina (si el vostre tema no n’utilitza una d’específica), està a login/index_form.html
Editem aquest fitxer i al final de tot, afegim el codi següent (en negreta hi ha l’adreça de la imatge que vulgueu posar per tal que els usuaris hagin de clicar).


<?php
//get previous auth provider
$allauthproviders = optional_param('allauthproviders', false, PARAM_BOOL);
$cookiename = 'MOODLEGOOGLEOAUTH2_'.$CFG->sessioncookie;
if (empty($_COOKIE[$cookiename])) {
$authprovider = '';
} else {
$authprovider = $_COOKIE[$cookiename];
}
?>
<center>
<?php
echo get_string('signinwithanaccount','auth_googleoauth2');
?>
<div style="width:'1%'">
<?php
$displayprovider = ((empty($authprovider) || $authprovider == 'google' || $allauthproviders) && get_config('auth/googleoauth2', 'googleclientid'));
$providerdisplaystyle = $displayprovider?'display:inline-block;':'display:none;';
?>
<div class="singinprovider" style="<?php echo $providerdisplaystyle; ?>">
<a href="https://accounts.google.com/o/oauth2/auth?client_id=<?php echo get_config('auth/googleoauth2', 'googleclientid'); ?>&redirect_uri=<?php echo $CFG->wwwroot; ?>/auth/googleoauth2/google_redirect.php&scope=https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email&response_type=code">
<img width="118" height="52" src="adreça_de_la_imatge_del_boto" />
</a>
</div>
</center>

La pàgina per identificar-se quedarà, segons el tema i la imatge que trieu, d’una forma semblant a:
Clicant el botó, l’alumne (o professor) utilitzarà el seu usuari de Google apps for education. Si l’usuari no existeix al Moodle, automàticament el crearà.
Si ja existeix, haureu de fer un darrer pas per modificar-li el perfil indicant que voleu que utilitzi el Google Oauth 2
6- Modificar el perfil dels usuaris ja creats i triar identificació Google Oath2.
Els usuaris creats prèviament, si no els feu cap canvi seguiran entrant amb usuari i contrasenya. Si voleu que canviïn i entrin amb el Google apps for education, haureu d’entrar al seu perfil de Moodle i assegurar-vos de dues coses:
  • Que en el camp adreça electrònica tingui l’adreça correcte del seu usuari de Google apps for education.
  • Que en el mètode d’indentificació, tingui triat Google Oauth2.
 

Google apps i els menors de 13 anys

Si tenim un Google apps for education, per defecte aquest problema no el tenim. El servei de Google+ ve desactivat i, per tant, podem crear usuaris de correu (amb accés a Google drive i Google sites) sense cap problema amb l’edat.
Però compte, que si activem el servei de Google+ podem tenir problemes. De fet, fa cosa d’un mes vaig decidir habilitar el servei per fer proves amb les comunitats virtuals. Tot funcionava correctament. Vaig crear una comunitat virtual amb els alumnes de 4t i ja comencem a usar-la.
Però de rebot, alguns alumnes de 2n d’ESO, van veure que estava actvitat i van crear-se un perfil a Google+. Molt bé per la seva iniciativa i autonomia, ja que ningú els havia explicat que estava activat ni com configurar-s’ho.
Problema: en crear-se un perfil de Google+ i no tenir l’edat corresponent, Google els va desactivar l’usuari. Això no es instantani, hi han passat un parell de setmanes, però els usuaris s’han acabat desactivant.
Per sort, com que és un Google apps for education l’administrador pot tornar-los a activar. De fet, el que pot fer és canviar-los l’edat, jurant i perjurant que la nova edat és certa i més gran que 13 anys.
Solució: per evitar haver de mentir amb l’edat, el que cal fer és desactivar el Google+ per tothom i activar-lo només per a un grups d’alumnes, els de 3r i 4t d’ESO. Ah, i també pels profes!
Per poder fer això, dins del panell de control del Google apps for education, a l’apartat dels Usuaris, caldrà crear suborganitzacions. Un cop creades, accediu a la pestanya serveis de la suborganització i activeu el servei de Google+.

Compartint documents i calendaris amb grups de Google


Aquests grups permeten diverses funcions, però les més usuals són dues: 1) Enviar correus a moltes persones posant només una adreça 2) Compartir documents i calendaris amb moltes persones amb una sola adreça.
Aquesta segona funcionalitat és la que tractaré en aquest article.

Abans però, un apunt. Si un usuari crea grups, aquests grups només els veu ell. Per tant, cada professor hauria de crear-se els seus propis grups. Això implicaria que treballar amb grups fos poc pràctic ja que cada cop que hi ha un incorporació tots els professors s’haurien de modificar els grups.
Si teniu el Google apps for education, aquests grups els pot crear l’administrador. D’aquesta manera tothom els pot utilitzar i només cal que una persona en faci el manteniment. A més, l’administrador pot designar per cada grup un usuari propietari, que serà el responsable d’administrar-lo.

Però suposem que ja estan els grups creats. Podem tenir grups per moltes coses: per tots els professors d’un claustre, per un equip docent, per un grup classe d’alumnes, pels caps de departament…

Quines peculiaritats té compartir amb grups?
Compartir amb grups és molt senzill. Entrem al document que vulguem compartir, triem el botó Comparteix i afegim l’adreça electrònica del grup. Tots els membres rebran l’enllaç per correu electrònic i hi tindran accés.
El problema apareix quan s’afegeix algú a un grup. Suposem que arriba un alumne nou o un professor substitut de llarga durada. El responsable corresponent, entra al grup que pertoca i afegeix el nou usuari.
El problema està en que malgrat estigui al grup i malgrat el grup tingui documents compartits, el nou usuari no hi té accés.

No sé quina és la raó de fer-ho així, però vaig parlar amb la gent de Google Irlanda i m’ho van confirmar. Quan es comparteix un document (igual passa amb els calendaris) amb un grup, els membres del grup només hi tindran accés si el primer cop hi accedeixen a través de l’enllaç.
Això el primer cop sol passar, ja que s’envia per mail l’enllaç del document a tothom. Però si algú esborrés el mail sense haver seguit l’enllaç, estaria igual que els usuaris nous. Per més que volgués no podria accedir al document. Cercant-lo amb l’eina de cerca no li sortiria, ni tampoc buscant-lo a la carpeta de Tots els documents.
Un cop es segueix l’enllaç un cop, llavors ja apareix al cercador i a la carpeta de Tots els documents, però abans no.

Quines solucions tenim?
Després de donar-hi voltes, la solució més senzilla que he trobat és compartir Carpetes enlloc de documents. Es crea una carpeta, per exemple, amb el nom Documents de curs. I a partir d’aquí es van creant les subcarpetes que es cregui necessari. Guàrdies, Reunions d’equip docent, Avaluacions…
Enlloc de compartir els documents un per un, es comparteixen les carpetes. De fet, compartint la carpeta de més alt nivell és suficient. I aquesta carpeta és comparteix exclusivament a grups.
Cada subcarpeta es torna a compartir a grups amb els permisos específics.

Ja podem anar penjant tots els documents que vulguem a dins de les subcarpetes que agafaran els permisos de la carpeta on són.

Amb això, aconseguim que quan vingui un usuari nom, només li haguem d’enviar un sol enllaç. El de la carpeta de més alt nivell.
Seguint aquest enllaç, ja podrà veure totes les subcarpetes i tots els documents (que tingui permís).

Si utilitzeu calendaris, aquí si que no ens quedarà més remei que enviar-li un enllaç per cada un dels calendaris que tingui compartits. Però, habitualment, un centre no té massa calendaris.

Per lligar-ho tot, al nostre centre el que hem acabat fent ha estat crear un Site de Google (que hem anomenat Escriptori del professor) on hi ha tota la informació que necessita un professor. Hi hem posat enllaços als calendaris, a les carpetes compartides, hi hem posat les dates del curs, enllaços directes a les plataformes digitals de les editorials, als webs més usuals (SAGA, ATRI…), informacions d’equips docents…

Al web del centre hem posat l’enllaç a aquest site i quan arriba un professor nou, li donem un correu electrònic del nostre domini, el posem dins el grup que li correspon i li expliquem que entri a través del web del centre a l’escriptori. I allà ja ho troba tot.


Connector Moodle: Onetopic (un tema a la vez)

Es tracta del Onetopic (un tema a la vez), desenvolupat pel David Herney. La primera versió la va desenvolupar pel Moodle 1.9, i fa poc dies va treure la versió pel Moodle 2.5.

El que fa aquest connector és afegir un format de curs. A més del format per temes, del format per setmanes,  social, etc., quan l’administrador del vostre Moodle l’hagi instal·lat, us apareixerà el Onetopic format. O el que és el mateix, el format en pestanyes.

Un cop activat, al curs li apareixen unes pestanyes, el nom de les quals és personalitzable. Enlloc de tenir una pàgina llarguíssima amb tots els temes un sota l’altre, apareixen els temes en pestanyes.
Com que una imatge val més que mil paraules, poso dues imatges d’un mateix curs. La primera en format onetopic i l’altra en format per temes.

Format Onetopic

Format per temes

Per mi el primer és molt més clar i l’opinió dels meus alumnes també és aquesta. Així que si el vostre Moodle no té aquest format, demaneu a l’administrador que l’instal·li o instal·leu vosaltres mateixos si en sou administradors.
Algú utilitza algun altre connector del Moodle que realment valgui la pena i que fins ara estigui actualitzat regularment?
Anterior