Récupération des vols par un logiciel tiers : Différence entre versions

Aller à : navigation, rechercher
(Paramétrer la clé de sécurité)
(Présentation)
 
(10 révisions intermédiaires par le même utilisateur non affichées)
Ligne 3 : Ligne 3 :
 
L'objet de cette page est de décrire la récupération des [[Introduction#saisie-de-l'activité|vols]] par un logiciel tiers. La récupération est réalisée à l'aide d'un [[Wikipedia-fr:Service web|service web]].
 
L'objet de cette page est de décrire la récupération des [[Introduction#saisie-de-l'activité|vols]] par un logiciel tiers. La récupération est réalisée à l'aide d'un [[Wikipedia-fr:Service web|service web]].
  
C'est, par exemple, grâce à cette fonctionnalité que le livret de progression électronique [https://iflyinnovation.com/ iFly innovation] s'interface avec OpenFlyers.
+
C'est, par exemple, grâce à cette fonctionnalité que les livrets de progression électroniques [https://iflyinnovation.com/ iFly innovation] et [https://www.f-prog.com/ Flight Progress] s'interfacent avec OpenFlyers.
 +
 
 +
=Documentation pour les développeurs d'interfaçage avec OpenFlyers=
 +
''La récupération des X derniers vols est ouverte pour n'importe quel logiciel. La documentation de ce chapitre est destinée aux éditeurs logiciels qui souhaitent s'interfacer avec OpenFlyers.''
 +
 
  
=Interfaçage avec OpenFlyers=
 
 
La récupération des X derniers vols se fait à l'aide du webservice '''getActivityList'''.
 
La récupération des X derniers vols se fait à l'aide du webservice '''getActivityList'''.
  
Prérequis : [[#Paramétrer-la-clé-de-sécurité|initialiser la clé de sécurité]] à une valeur non vide.
+
 
 +
Prérequis : [[#Paramétrer-la-clé-de-sécurité|initialiser la clé de sécurité]] à une valeur non vide. Il s'agit d'une phrase qui doit être la même dans la configuration d'OpenFlyers et dans le logiciel tiers récupérant les vols.
  
 
Pour accéder à ce webservice, il faut :
 
Pour accéder à ce webservice, il faut :
Ligne 17 : Ligne 21 :
 
** '''arguments[0]''' : getActivityList
 
** '''arguments[0]''' : getActivityList
 
** '''key''' : La clé de sécurité du service web.
 
** '''key''' : La clé de sécurité du service web.
** '''maxNumber''' : Le nombre de vols à récupérer
+
** '''maxNumber''' : Le nombre de vols à récupérer (paramètre optionnel)
 
** '''startDate''' : La date de début en UTC des vols à récupérer. Ce paramètre est optionnel et doit être au format AAAA-MM-JJ hh:mm:ss
 
** '''startDate''' : La date de début en UTC des vols à récupérer. Ce paramètre est optionnel et doit être au format AAAA-MM-JJ hh:mm:ss
 
** '''endDate''' : La date de fin des en UTC vols à récupérer. Ce paramètre est optionnel et doit être au format AAAA-MM-JJ hh:mm:ss
 
** '''endDate''' : La date de fin des en UTC vols à récupérer. Ce paramètre est optionnel et doit être au format AAAA-MM-JJ hh:mm:ss
  
Le service web va renvoyer soit :
+
Le service web renvoie une réponse au format JSON si :
* Un message d'interdiction d'accès lorsque l'un de ces conditions est rencontrée :
+
* le protocole de communication HTTPS est employé
** le protocole de communication HTTP est employé  
+
* la clé de sécurité est correcte
** la clé de sécurité n'est pas bonne
+
*'''startDate''' et '''endDate''' sont renseignés. Une date de début/fin qui n'est pas au bon format sera remplacée par la date courante
** La date de début est renseignée et la date de fin de l'est pas. Une date de début/fin qui n'est pas au bon format sera remplacée par la date courante
+
*L'écart entre '''startDate''' et '''endDate''' est '''inférieur à 32 jours'''
** La date de fin est renseignée et la date de début ne l'est pas. Une date de début/fin qui n'est pas au bon format sera remplacée par la date courante
+
Sinon, un message d'interdiction d'accès est renvoyé.
** La date de début et de fin sont toutes les deux renseignées et il y a un écart de plus de 32 jours entre ces dates
+
 
* Au format JSON :
+
La liste des vols renvoyée entre ces périodes est ordonnée du plus récent au plus vieux.
** Lorsque '''startDate''' et '''endDate''' sont renseignés, la liste des vols entre ces périodes, ordonnés du plus récent au plus vieux
+
 
** Le cas échéant, la liste des '''maxNumber''' derniers vols ordonnés du plus récent au plus vieux
+
Si le paramètre '''maxNumber''' est transmis, seuls les '''maxNumber''' derniers vols sont renvoyés en commençant par le plus récent
 +
 
  
  
Exemple de formulaire pour récupérer les derniers vols sur la plateforme openflyers.com/demo-fr où on demande la clé et le nombre de vols :
+
Exemple de formulaire pour récupérer les derniers vols sur la plateforme openflyers.com/demo-fr où on demande la clé et le nombre de vols. Il est recommandé de remplacer les dates par le 1er jour du mois courant et le 1er jour du mois suivant :
<html4Strict><form action="https://openflyers.com/demo-fr/actionOnDemand.php" method="post">
+
<html4Strict><?xml version="1.0" encoding="UTF-8"?>
 +
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 +
<html>
 +
<head><title>Test récupération des vols</title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
 +
<body><form action="https://openflyers.com/demo-aero-club/actionOnDemand.php" method="post">
 
     <input type="hidden" name="arguments[0]" value="getActivityList" />
 
     <input type="hidden" name="arguments[0]" value="getActivityList" />
 
     <label>Clé :</label>
 
     <label>Clé :</label>
 
     <br/>
 
     <br/>
     <input type="text" name="key" value="" />
+
     <input type="text" name="key" value="cleopenflyers" />
 
     <br/>
 
     <br/>
 
     <label>Limite :</label>
 
     <label>Limite :</label>
Ligne 46 : Ligne 55 :
 
     <label>Date de début (AAAA-MM-JJ hh:mm:ss) :</label>
 
     <label>Date de début (AAAA-MM-JJ hh:mm:ss) :</label>
 
     <br/>
 
     <br/>
     <input type="text" name="startDate" value="" />
+
     <input type="text" name="startDate" value="2020-04-01 00:00:00" />
 
     <br/>
 
     <br/>
 
     <label>Date de fin (AAAA-MM-JJ hh:mm:ss) :</label>
 
     <label>Date de fin (AAAA-MM-JJ hh:mm:ss) :</label>
 
     <br/>
 
     <br/>
     <input type="text" name="endDate" value="" />
+
     <input type="text" name="endDate" value="2020-05-01 00:00:00" />
 
     <br/>
 
     <br/>
 
     <input type="submit" value="Test" />
 
     <input type="submit" value="Test" />
</form></html4Strict>
+
</form>
 +
</body>
 +
</html></html4Strict>
  
 
Exemple de retour :
 
Exemple de retour :
 
<javascript>[
 
<javascript>[
 
     {
 
     {
 +
        "flight_id":"41134",
 
         "first_person":"DURAND Jacques",
 
         "first_person":"DURAND Jacques",
 
         "start_date":"2016-10-19 08:30:00",
 
         "start_date":"2016-10-19 08:30:00",
Ligne 69 : Ligne 81 :
 
     },
 
     },
 
     {
 
     {
 +
        "flight_id":"41035",
 
         "first_person":"DUPONT Jean",
 
         "first_person":"DUPONT Jean",
 
         "start_date":"2016-10-18 15:16:00",
 
         "start_date":"2016-10-18 15:16:00",

Version actuelle en date du 4 octobre 2021 à 10:11

Présentation

L'objet de cette page est de décrire la récupération des vols par un logiciel tiers. La récupération est réalisée à l'aide d'un service web.

C'est, par exemple, grâce à cette fonctionnalité que les livrets de progression électroniques iFly innovation et Flight Progress s'interfacent avec OpenFlyers.

Documentation pour les développeurs d'interfaçage avec OpenFlyers

La récupération des X derniers vols est ouverte pour n'importe quel logiciel. La documentation de ce chapitre est destinée aux éditeurs logiciels qui souhaitent s'interfacer avec OpenFlyers.


La récupération des X derniers vols se fait à l'aide du webservice getActivityList.


Prérequis : initialiser la clé de sécurité à une valeur non vide. Il s'agit d'une phrase qui doit être la même dans la configuration d'OpenFlyers et dans le logiciel tiers récupérant les vols.

Pour accéder à ce webservice, il faut :

  • Utiliser le protocole de communication HTTPS
  • Appeler l'URL ci-dessous en remplaçant "maplateforme" par le nom de la plateforme concernée :
https://openflyers.com/maplateforme/actionOnDemand.php
  • Transmettre les paramètres suivantes par méthode POST :
    • arguments[0] : getActivityList
    • key : La clé de sécurité du service web.
    • maxNumber : Le nombre de vols à récupérer (paramètre optionnel)
    • startDate : La date de début en UTC des vols à récupérer. Ce paramètre est optionnel et doit être au format AAAA-MM-JJ hh:mm:ss
    • endDate : La date de fin des en UTC vols à récupérer. Ce paramètre est optionnel et doit être au format AAAA-MM-JJ hh:mm:ss

Le service web renvoie une réponse au format JSON si :

  • le protocole de communication HTTPS est employé
  • la clé de sécurité est correcte
  • startDate et endDate sont renseignés. Une date de début/fin qui n'est pas au bon format sera remplacée par la date courante
  • L'écart entre startDate et endDate est inférieur à 32 jours

Sinon, un message d'interdiction d'accès est renvoyé.

La liste des vols renvoyée entre ces périodes est ordonnée du plus récent au plus vieux.

Si le paramètre maxNumber est transmis, seuls les maxNumber derniers vols sont renvoyés en commençant par le plus récent


Exemple de formulaire pour récupérer les derniers vols sur la plateforme openflyers.com/demo-fr où on demande la clé et le nombre de vols. Il est recommandé de remplacer les dates par le 1er jour du mois courant et le 1er jour du mois suivant :

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head><title>Test récupération des vols</title><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<body><form action="https://openflyers.com/demo-aero-club/actionOnDemand.php" method="post">
    <input type="hidden" name="arguments[0]" value="getActivityList" />
    <label>Clé :</label>
    <br/>
    <input type="text" name="key" value="cleopenflyers" />
    <br/>
    <label>Limite :</label>
    <br/>
    <input type="text" name="maxNumber" value="1" />
    <br/>
    <label>Date de début (AAAA-MM-JJ hh:mm:ss) :</label>
    <br/>
    <input type="text" name="startDate" value="2020-04-01 00:00:00" />
    <br/>
    <label>Date de fin (AAAA-MM-JJ hh:mm:ss) :</label>
    <br/>
    <input type="text" name="endDate" value="2020-05-01 00:00:00" />
    <br/>
    <input type="submit" value="Test" />
</form>
</body>
</html>

Exemple de retour :

[
    {
        "flight_id":"41134",
        "first_person":"DURAND Jacques",
        "start_date":"2016-10-19 08:30:00",
        "second_person":"",
        "departure_location_name":"LFPG",
        "end_date":"2016-10-19 09:30:00",
        "arrival_location_name":"LFPG",
        "duration":"1:00",
        "landing_number":"2",
        "resource_name":"F-HABC"
    },
    {
        "flight_id":"41035",
        "first_person":"DUPONT Jean",
        "start_date":"2016-10-18 15:16:00",
        "second_person":"",
        "departure_location_name":null,
        "end_date":"2016-10-18 16:46:00",
        "arrival_location_name":null,
        "duration":"1:30",
        "landing_number":"1",
        "resource_name":"F-HDEF"
    }
]

Paramétrer la clé de sécurité