Projet

Général

Profil

RefDoc serveurressource » Historique » Version 2

Julien Jocal, 10/08/2011 07:45

1 1 Julien Jocal
h1. RefDoc serveur de ressources
2
3
h2. Gepi dispose d'un mini serveur qui permet :
4
5
* de voir le cahier de textes dans un ENT externe
6
7
* de récupérer certaines informations de Gepi
8
9 2 Julien Jocal
* Caractéristiques : accès en lecture seule (ce n'est pas un web-service complet mais plutôt un serveur de ressources)
10
11 1 Julien Jocal
h2. Mise en place
12
13
* Saisir les informations nécessaires (sécurité et autorisations) dans /secure/serveur.cfg
14
15
# Une fois renseigné, pensez à renommer ce fichier serveur.cfg en serveur.inc.php
16
<pre>
17
$serveur = array(
18
          'nom_du_compte' => array(
19
                      'domain'  => 'application_externe',
20
                      'RNE'     => 'RNE_autorise_sinon_all',
21
                      'api_key' => 'une_cle_assez_longue_et_complexe',
22
                      'nonce'   => 'non_utilise_encore',
23
                      'ip'      => 'adresse_ip_du_client',
24
                      'auth'    => array(liste_des_demandes_autorisees)
25
          )
26
);
27
</pre>
28
# Chaque application extérieure doit disposer d'un compte dans ce fichier en respectant la syntaxe du tableau précédent.
29
# application est le nom de l'application (un ENT, ...), le client devra préciser ce nom exact
30
# domain est le nom du domaine du client
31
# api_key est la clé unique de cette application
32
# nonce ne doit pas être modifié
33
# ip est l'adresse IP du client
34
35
* Les appels
36
37
Le client doit appelé Gepi par cette url : http://www.serveur.fr/path_vers_gepi/class_php/class_serveur_ent.php
38
Il doit fournir toutes les informations nécessaires en POST dès sa première requête et à chaque requête.
39
40
* La sécurité
41
42
Utiliser le https peut permettre de limiter les fuite de clés. Limiter les appels au seul réseau interne peut aussi être envisagé en fonction des infrastructures.
43
44
h3. Liste des méthodes disponibles (juillet 2011)
45
46
# notesEleve() {méthode vide}
47
# cdtDevoirsEleve()
48
# cdtCREleve()
49
# professeursEleve() {Liste des professeurs d'un élève avec les matières associées}
50
# edtEleve() {méthode vide}
51
# listeElevesAvecClasse()
52
# listeProfesseursAvecMatieres()
53
# listeClassesAvecProfesseurs()
54
# listeMatieresAvecNomlong()