Interfaçage OpenFlyers et ClickAndTakeoff: Difference between revisions

From Documentation de la solution web de gestion OpenFlyers
Jump to navigation Jump to search
imported>Claratte
 
(26 intermediate revisions by 3 users not shown)
Line 7: Line 7:
*Son utilisation dans OpenFlyers
*Son utilisation dans OpenFlyers


[http://clickandtakeoff.com/ Click & Take-off] est une startup en plein essors qui propose une plateforme d’alerte, de géolocalisation et d’analyse du pilotage pour l’aviation légère. C’est le résultat d’une collaboration étroite entre des pilotes passionnés et des instructeurs expérimentés. Elle aide les clubs à localiser les appareils en temps réel. Les préviens dans le cas d’un événement pouvant mettre en cause la sécurité du pilote et l’intégrité de l’appareil ou en cas de vol dans des zones dites interdites.
[http://clickandtakeoff.com/ Click & Take-off] propose une plateforme d’alerte, de géolocalisation et d’analyse du pilotage pour l’aviation légère.
la plateforme Click & Take-off permet de:
 
*Consulter l’historique des vols qui contient les informations suivants:
La plateforme Click & Take-off permet de :
*Consulter l’historique des vols qui contient les informations suivantes :
**les heures blocs/ horamétres de mouvement:Début du roulage, Décollage, Atterrissage, Fin du roulage.
**les heures blocs/ horamétres de mouvement:Début du roulage, Décollage, Atterrissage, Fin du roulage.
**La liste des aerodromes de toucher.
**La liste des aérodromes de toucher.
OpenFlyers récupère ces données (voir le chapitre ci-dessous [[#Données-récupérés-via-ClickAndTakeoff|données récupérées via ClickAndTakeoff]]).
 
*Affecter les vol par pilote / élève / instructeur.
OpenFlyers récupère ces données (voir le chapitre ci-dessous [[#Données-récupérés-via-ClickAndTakeoff|données récupérées via ClickAndTakeoff]]) et affecte l'adresse email des pilotes/instructeurs dans ClickAndTakeOff d'après le planning de réservations. Un vol modifié manuellement à posteriori de sa remontée automatique dans OpenFlyers et mis à jour dans ClickAndTakeoff.
 
'''NB:''' Il y a une tâche cron pour synchroniser automatiquement les données des vols avec ClickAndTakeoff. Le code de cette tâche s'applique uniquement aux serveurs de production et ignore les serveurs de test.


=Données récupérées via ClickAndTakeoff=
=Données récupérées via ClickAndTakeoff=
Line 25: Line 28:
*Lieu d'arrivé (donnée oaciAeroEnd)
*Lieu d'arrivé (donnée oaciAeroEnd)
*Nombre d’atterrissage (donnée oaci)
*Nombre d’atterrissage (donnée oaci)
=Procédure=
==Interfacer OpenFlyers avec ClickAndTakeoff==


=Paramétrage des arrondis=
*Aller dans '''Admin > Structure > Paramétrage > Activités'''
ClickAndTakeoff transmet à OpenFlyers des dates à la seconde. OpenFlyers fonctionne avec des dates à la minute. Il est donc nécessaire de définir des formules d'arrondis dans le [[Configuration#Gestion-de-ClickAndTakeoff|paramétrage de ClickAndTakeoff]] de la plateforme.
**Activer l'interrupteur '''ClickAndTakeoff''' situé dans la 4ème colonne
 
**Renseigner les champs suivants :
Les variables suivantes sont utilisables dans les formules :
*** '''Formule date de début du vol''': Saisir la formule pour calculer la date de début du vol.
*CLICKANDTAKEOFF_LANDING_DATE : Datetime d’atterrissage
**:Exemple de formule : formatDate('yyyy-MM-dd HH:mm:ss', roundFloor(strtotime('%CLICKANDTAKEOFF_OFFBLOCK_DATE'),60))
*CLICKANDTAKEOFF_TAKEOFF_DATE : Datetime de décollage
*** '''Formule durée du vol''': Saisir la formule pour calculer la durée du vol.
*CLICKANDTAKEOFF_ONBLOCK_DATE : Datetime de bloc départ
**:Exemple de formule : roundFloor(strtotime('%CLICKANDTAKEOFF_ONBLOCK_DATE'),60) - roundFloor(strtotime('%CLICKANDTAKEOFF_OFFBLOCK_DATE'),60)
*CHARTERWARE_OFFBLOCK_DATE : Datetime de bloc arrivée
*** '''Formule temps en l'air''': Saisir la formule pour calculer le temps en l'air.
Ces variables sont directement transmises par ClickAndTakeOff.
**:Exemple de formule : roundFloor(strtotime('%CLICKANDTAKEOFF_ONBLOCK_DATE'),60) - roundFloor(strtotime('%CLICKANDTAKEOFF_OFFBLOCK_DATE'),60)
 
*** '''Type d'activité par défaut avec zéro ou un pilote dans ClickAndTakeoff''': Choisir le type d'activité par défaut pour un pilote unique ou aucun pilote.
Les fonctions suivantes peuvent être utilisées dans les formules :
**:Exemple : "Local"
*roundCeil: Arrondit à la minute supérieur la date transmise en paramètre
*** '''Type d'activité par défaut avec deux pilotes dans ClickAndTakeoff''': Choisir le type d'activité par défaut pour deux pilotes.
*roundFloor: Arrondit à la minute inférieur la date transmise en paramètre
**:Exemple : "Instruction"
*formatDate: Permet de formater une date
*** '''Nom de la plateforme pour ClickAndTakeoff''': Saisir le nom de la plateforme pour ClickAndTakeoff.
*strtotime : Transforme une date en un timestamp
*** '''Jeton d'accès pour ClickAndTakeoff''': Saisir le jeton d'accès pour ClickAndTakeoff.
**Cliquer sur le bouton '''Enregistrer'''
*[[Gestion-des-ressources#Saisir-le-numéro-de-ressource-pour-l'API-de-geolocalisation|Configurer le numéro de l'API de géolocalisation pour les ressources]].


=Récupération des vols ClickAndTakeoff=
=Récupération des vols ClickAndTakeoff=
Line 55: Line 62:
**Une fois qu'une réservation est identifiée comme correspondre au vol remonté par ClickAndTakeoff, les informations de la réservation sont prises en compte par le robot.
**Une fois qu'une réservation est identifiée comme correspondre au vol remonté par ClickAndTakeoff, les informations de la réservation sont prises en compte par le robot.


Les données suivantes sont alors récupérées :
;Exemple
Pour un vol qui commence à 16h05 et se termine à 17h00, l'heure médiane est 16h32. La réservation correspondante pour ce vol sera celle qui inclut cette heure médiane.
 
==Statut des pilotes==
==Statut des pilotes==
Pour chaque pilote :
Pour chaque pilote :
Line 77: Line 86:
**S'il y a zero ou un pilote et que le type d'activité par défaut pour zero ou un pilote est défini => Le type d'activité est celle définie par défaut.
**S'il y a zero ou un pilote et que le type d'activité par défaut pour zero ou un pilote est défini => Le type d'activité est celle définie par défaut.
**Si les types d'activité par défaut ne sont pas définies => Le type d'activité est le premier type d'activité trouvé.
**Si les types d'activité par défaut ne sont pas définies => Le type d'activité est le premier type d'activité trouvé.
=Variables pour les formules de calcul=
Les variables suivantes sont utilisables dans les formules :
*CLICKANDTAKEOFF_ENGINE_START : Datetime de démarrage moteur
*CLICKANDTAKEOFF_OFFBLOCK_DATE : Datetime de départ bloc
*CLICKANDTAKEOFF_ONBLOCK_DATE : Datetime de bloc arrivée
*CLICKANDTAKEOFF_ENGINE_STOP : Datetime d'arrêt moteur
Ces variables sont directement transmises par ClickAndTakeOff.
Les fonctions suivantes peuvent être utilisées dans les formules pour le [[Configuration#Gestion-de-ClickAndTakeoff|paramétrage de ClickAndTakeoff]] :
*[[Formules-de-calcul#formatDate('patron',-'date')|formatDate]] : Permet de formater une date
*[[Formules-de-calcul#roundCeil(X,Y)|roundCeil]] : Arrondi à la minute supérieure la date transmise en paramètre
*[[Formules-de-calcul#roundFloor(X,Y)|roundFloor]] : Arrondi à la minute inférieure la date transmise en paramètre
*[[Formules-de-calcul#strtotime(string)|strtotime]] : Transforme une date en timestamp

Latest revision as of 14:15, 25 September 2024

Présentation

L'objet de cette page est de présenter :

  • Le produit ClickAndTakeoff
  • La configuration de l'interfaçage OpenFlyers avec ClickAndTakeoff
  • Son utilisation dans OpenFlyers

Click & Take-off propose une plateforme d’alerte, de géolocalisation et d’analyse du pilotage pour l’aviation légère.

La plateforme Click & Take-off permet de :

  • Consulter l’historique des vols qui contient les informations suivantes :
    • les heures blocs/ horamétres de mouvement:Début du roulage, Décollage, Atterrissage, Fin du roulage.
    • La liste des aérodromes de toucher.

OpenFlyers récupère ces données (voir le chapitre ci-dessous données récupérées via ClickAndTakeoff) et affecte l'adresse email des pilotes/instructeurs dans ClickAndTakeOff d'après le planning de réservations. Un vol modifié manuellement à posteriori de sa remontée automatique dans OpenFlyers et mis à jour dans ClickAndTakeoff.

NB: Il y a une tâche cron pour synchroniser automatiquement les données des vols avec ClickAndTakeoff. Le code de cette tâche s'applique uniquement aux serveurs de production et ignore les serveurs de test.

Données récupérées via ClickAndTakeoff

En récupérant les vols via ClickAndTakeoff les informations suivantes sont récupérées ou calculées.

  • Aéronef utilisé (donnée deviceName)
  • Horodatage du début du vol (donnée startTime)
  • Durée du vol (par calcul de la différence entre les données startTime et endTime)
  • Temps en l'air (par calcul de la différence entre les données horametreDebutVol et horametreFinVol)
  • Personnes à bord (données pilote et instructeur)
  • Lieu de départ (donnée oaciAeroStart)
  • Lieu d'arrivé (donnée oaciAeroEnd)
  • Nombre d’atterrissage (donnée oaci)

Procédure

Interfacer OpenFlyers avec ClickAndTakeoff

  • Aller dans Admin > Structure > Paramétrage > Activités
    • Activer l'interrupteur ClickAndTakeoff situé dans la 4ème colonne
    • Renseigner les champs suivants :
      • Formule date de début du vol: Saisir la formule pour calculer la date de début du vol.
      Exemple de formule : formatDate('yyyy-MM-dd HH:mm:ss', roundFloor(strtotime('%CLICKANDTAKEOFF_OFFBLOCK_DATE'),60))
      • Formule durée du vol: Saisir la formule pour calculer la durée du vol.
      Exemple de formule : roundFloor(strtotime('%CLICKANDTAKEOFF_ONBLOCK_DATE'),60) - roundFloor(strtotime('%CLICKANDTAKEOFF_OFFBLOCK_DATE'),60)
      • Formule temps en l'air: Saisir la formule pour calculer le temps en l'air.
      Exemple de formule : roundFloor(strtotime('%CLICKANDTAKEOFF_ONBLOCK_DATE'),60) - roundFloor(strtotime('%CLICKANDTAKEOFF_OFFBLOCK_DATE'),60)
      • Type d'activité par défaut avec zéro ou un pilote dans ClickAndTakeoff: Choisir le type d'activité par défaut pour un pilote unique ou aucun pilote.
      Exemple : "Local"
      • Type d'activité par défaut avec deux pilotes dans ClickAndTakeoff: Choisir le type d'activité par défaut pour deux pilotes.
      Exemple : "Instruction"
      • Nom de la plateforme pour ClickAndTakeoff: Saisir le nom de la plateforme pour ClickAndTakeoff.
      • Jeton d'accès pour ClickAndTakeoff: Saisir le jeton d'accès pour ClickAndTakeoff.
    • Cliquer sur le bouton Enregistrer
  • Configurer le numéro de l'API de géolocalisation pour les ressources.

Récupération des vols ClickAndTakeoff

Chaque minute le robot OpenFlyers interroge le serveur ClickAndTakeoff pour savoir si de nouveaux vols ont été enregistrés par ClickAndTakeoff. Si c'est le cas, alors il sont sauvegardés dans OpenFlyers et modifiés les vols récupérés côté Charterware après l'affectation du pilote et de l'instructeur.

ClickAndTakeoff utilise un système d'identifiant pour retrouver les pilotes et les aéronefs il est donc nécessaire de créer les champs métiers nécessaires et de les renseigner dans l'interface d'OpenFlyers.

  • Si l'identifiant d'un aéronef ClickAndTakeoff ne peut être retrouvé dans OpenFlyers alors le robot n'enregistrera pas le vol.

Afin de retrouver un maximum d'informations le robot tente de retrouver une réservation avec la même ressource correspondant au vol communiqué par ClickAndTakeoff:

  • Il cherche s'il existe une réservation dont les horaires comprennent l'heure médiane du vol ClickAndTakeoff. Si c'est le cas, il se base sur les informations de cette réservation.
  • S'il n'y a aucune réservation, il cherche une réservation avec la même ressource dont les horaires sont compris entre le début et la fin du vol remonté par ClickAndTakeoff.
    • S'il y a plusieurs réservations, alors il n'en prend aucune.
    • Une fois qu'une réservation est identifiée comme correspondre au vol remonté par ClickAndTakeoff, les informations de la réservation sont prises en compte par le robot.
Exemple

Pour un vol qui commence à 16h05 et se termine à 17h00, l'heure médiane est 16h32. La réservation correspondante pour ce vol sera celle qui inclut cette heure médiane.

Statut des pilotes

Pour chaque pilote :

  • Si un vol récupéré dans ClickAndTakeoff peut être associé à une réservation => Les statuts des pilotes sont celles définies dans la réservation.
  • Si le vol ne peut être associé :
    • S'il n'y a qu'un statut autorisé pour la place du pilote et pour l'avion => Le statut du pilote est ce statut.
    • Si le pilote est sur la première place => Le statut du pilote est le statut "pilote" si il n'existe pas le premier statut.
    • Si le pilote est sur la seconde place => Le statut du pilote est le statut "Instructeur" si il n'existe pas le second statut.

Place des pilotes

  • Si un vol récupéré dans ClickAndTakeoff peut être associé à une réservation => Les places des pilotes sont celles définies dans la réservation.
  • Si le vol ne peut être associé :
    • S'il y a un seul pilote => Sa place est celle par défaut (0, Gauche).
    • S'il y a deux pilotes et que un seul à l'autorisation pour être sur la place de droite => Le pilote ayant l'autorisation est à la place de droite et l'autre à la place de gauche.
    • Si les deux pilotes ont les autorisations pour être sur la place de droite => Le pilote 1 est sur la place de gauche le pilote 2 est sur la place de droite.

Type d'activité

  • Si un vol récupéré dans ClickAndTakeoff peut être associé à une réservation => Les types d'activités sont celles définies dans la réservation.
  • Si le vol ne peut être associé :
    • S'il y a deux pilotes et que le type d'activité par défaut pour deux pilotes est défini => Le type d'activité est celle définie par défaut.
    • S'il y a zero ou un pilote et que le type d'activité par défaut pour zero ou un pilote est défini => Le type d'activité est celle définie par défaut.
    • Si les types d'activité par défaut ne sont pas définies => Le type d'activité est le premier type d'activité trouvé.

Variables pour les formules de calcul

Les variables suivantes sont utilisables dans les formules :

  • CLICKANDTAKEOFF_ENGINE_START : Datetime de démarrage moteur
  • CLICKANDTAKEOFF_OFFBLOCK_DATE : Datetime de départ bloc
  • CLICKANDTAKEOFF_ONBLOCK_DATE : Datetime de bloc arrivée
  • CLICKANDTAKEOFF_ENGINE_STOP : Datetime d'arrêt moteur

Ces variables sont directement transmises par ClickAndTakeOff.

Les fonctions suivantes peuvent être utilisées dans les formules pour le paramétrage de ClickAndTakeoff :

  • formatDate : Permet de formater une date
  • roundCeil : Arrondi à la minute supérieure la date transmise en paramètre
  • roundFloor : Arrondi à la minute inférieure la date transmise en paramètre
  • strtotime : Transforme une date en timestamp