Interfaçage OpenFlyers et armoire à clé : Différence entre versions
(→Demande de libération d'une clé) |
(→Activation et configuration de la gestion des armoires à clé) |
||
Ligne 47 : | Ligne 47 : | ||
*Signification des paramètres : | *Signification des paramètres : | ||
**'''Nombre de clé''' : nombre de clés possibles dans l'armoire | **'''Nombre de clé''' : nombre de clés possibles dans l'armoire | ||
− | **'''Temporisation''' : temps en secondes pendant lequel la clé peut être retirée après autorisation | + | **'''Temporisation''' : temps en secondes pendant lequel la clé peut être retirée après autorisation (la configuration de la temporisation n'est effective qu'avec le logiciel de pilotage OpenKey sous Windows). |
**'''IP du PC avec le driver du tableau de clés''' : adresse IP du PC sur lequel se trouve le logiciel de pilotage de l'armoire à clé. | **'''IP du PC avec le driver du tableau de clés''' : adresse IP du PC sur lequel se trouve le logiciel de pilotage de l'armoire à clé. | ||
**'''Port du driver du tableau de clés''' : port sur lequel écoute le logiciel de pilotage de l'armoire à clé. | **'''Port du driver du tableau de clés''' : port sur lequel écoute le logiciel de pilotage de l'armoire à clé. | ||
− | **'''Type de serveur''' : PyOpenKey (sous | + | **'''Type de serveur''' : PyOpenKey (sous Linux) ou OpenKey (sous Windows). Il s'agit du nom du logiciel de pilotage de l'armoire à clé. |
'''Attention :''' dans le cas où le logiciel de pilotage se trouve sur le même PC que pour la saisie des vols dans OpenFlyers, il peut y avoir des problèmes de loopback au niveau du routeur. | '''Attention :''' dans le cas où le logiciel de pilotage se trouve sur le même PC que pour la saisie des vols dans OpenFlyers, il peut y avoir des problèmes de loopback au niveau du routeur. | ||
Version du 15 décembre 2011 à 22:21
Sommaire
Présentation
L'objet de cette page est de décrire le protocole d'interfaçage avec toute solution d'armoire à clé.
Le protocole repose sur le principe que l'interfaçage est piloté par un logiciel installé sur un PC ou une solution embarquée et qui dispose d'un accès à internet lui permettant de communiquer avec OpenFlyers.
Interface utilisateur OpenFlyers
L'utilisateur ouvre un vol dans OpenFlyers :
Il se retrouve sur le formulaire de saisie du vol :
Lorsqu'il clique sur le bouton de validation, 3 cas peuvent se présenter :
- Une alerte ou plusieurs alertes rouges (bloquantes), s'affichent : l'utilisateur n'a pas la possibilité de surpasser ses alertes, il ne peut alors récupérer la clé :
- Une alerte ou plusieurs alertes oranges (non-bloquantes), s'affichent : l'utilisateur a la possibilité de surpasser ses alertes, et ainsi de récupérer la clé :
- Aucune alerte ne s'affiche, l'utilisateur se retrouve alors directement sur la page lui indiquant :
Fichier:Message autorisation libération clé.png
Vous avez X secondes pour prendre la clé dans l'armoire
- Lorsqu'il rentre de vol, l'utilisateur n'a plus qu'a retourner sur le formulaire de saisie de vol et à fermer son vol. Après la fermeture, il lui est demandé de remettre sa clé sur l'armoire s'il ne l'a pas fait avant.
Interface administrateur OpenFlyers
Activation et configuration de la gestion des armoires à clé
- Admin
- Configuration > Paramétrage
- Dans le formulaire Gestion des vols, sélectionner Activé(e) pour le champ Gestion armoire à clé
- Cliquer sur le bouton Valider lié au formulaire
- Le formulaire apparait alors comme suit :
Fichier:Paramétrage armoire à clé.png
- Signification des paramètres :
- Nombre de clé : nombre de clés possibles dans l'armoire
- Temporisation : temps en secondes pendant lequel la clé peut être retirée après autorisation (la configuration de la temporisation n'est effective qu'avec le logiciel de pilotage OpenKey sous Windows).
- IP du PC avec le driver du tableau de clés : adresse IP du PC sur lequel se trouve le logiciel de pilotage de l'armoire à clé.
- Port du driver du tableau de clés : port sur lequel écoute le logiciel de pilotage de l'armoire à clé.
- Type de serveur : PyOpenKey (sous Linux) ou OpenKey (sous Windows). Il s'agit du nom du logiciel de pilotage de l'armoire à clé.
Attention : dans le cas où le logiciel de pilotage se trouve sur le même PC que pour la saisie des vols dans OpenFlyers, il peut y avoir des problèmes de loopback au niveau du routeur.
Attribution des clés aux ressources/aéronefs
- Admin
- Ressources > Ressources > Actives ou Flotte > Aéronefs > Aéronefs actifs sous version OF 2.1
Fichier:Liste des aéronefs.png
Pour chaque aéronef concerné, il suffit d'attribuer un numéro et un nom de clé dans les champs correspondants. La validation de la saisie se fait automatiquement en cliquant hors du champ de saisie.
Protocole de dialogue entre OpenFlyers et le logiciel de gestion de l'armoire à clé
Demande de libération d'une clé
- Lorsque qu'une clé doit être libérée, le navigateur envoie un message au logiciel de pilotage par le protocole HTTP sous la forme suivante :
http://127.0.0.1:4080/?sessid=e5f01p2oqh2vb36arisr8k5j87&key=1
- L'adresse IP (ici 127.0.0.1) et le port (ici 4080) sont fonction de la configuration de l'armoire à clé dans OpenFlyers.
- sessid contient le numéro de session en cours
- key contient le numéro de la clé concernée
- Le logiciel de pilotage doit alors envoyer une demande d'ordre au serveur OpenFlyers à l'adresse suivante http://structure.openflyers.tld/openkeys.rpc.php5/?sessid=e5f01p2oqh2vb36arisr8k5j87&key=1 où il faut remplacer structure.openflyers.tld par l'adresse de la plateforme OpenFlyers concernée.
- Le serveur OpenFlyers vérifie alors :
- Si l'utilisateur qui a passé la demande est administrateur, il libère la clé sans condition (cela permet de libérer la clé directement depuis l'interface de gestion des aéronefs)
- Si l'utilisateur qui a passé la demande n'est pas administrateur, alors il vérifie s'il existe un vol ouvert qui remplit la double condition :
- Vol attribué à l'utilisateur
- Aéronef du vol associé à la demande de libération de la clé
- Le serveur retourne ensuite la réponse :
- 1 dans le cas où l'autorisation de libération de clé est donnée par le serveur
- 0 dans le cas contraire