Skip to content

DGAC/nmb2b-soapy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

d3fc1e3 · Feb 28, 2020

History

64 Commits
Oct 17, 2019
Oct 17, 2019
Jul 11, 2019
Oct 18, 2019
Jul 10, 2019
Oct 17, 2019
Oct 21, 2019
Feb 28, 2020
Feb 7, 2020
Oct 21, 2019
Oct 17, 2019
Oct 17, 2019
Oct 21, 2019
Oct 21, 2019
Oct 18, 2019
Oct 21, 2019
Oct 17, 2019
Oct 21, 2019

Repository files navigation

Pour le wiki complet :

Pour utiliser les fonctionnalités offertes par soapy, tout passe par le manager.

from soapy.manager import Manager
import datetime

# on instancie son propre manager
test_manager = Manager()                   # si utilisation du proxy b2b NM
test_manager = Manager(how_to_auth='cert') # si utilisation de votre propre certificat

# pour afficher les différents services disponibles
test_manager.show_available_services()

# pour afficher les différentes opérations disponibles pour un service particulier
test_manager.show_operations_of_service(service_name='FlightManagementService')

# startTime et endTime peuvent être des objets datetime.datetime ou des str au format AAAA-MM-JJ HH:MM
# attention : startTime et endTime doivent être exprimées en heures UTC
startTime=datetime.datetime(year=2019, month=10, day=21, hour=14, minute=30, tzinfo=datetime.timezone.utc)
endTime=  datetime.datetime(year=2019, month=10, day=21, hour=15, minute=30, tzinfo=datetime.timezone.utc)

# on précise les champs qui nous intéressent pour des requêtes de listes de vols 
# (requestedFlightFields, voir doc NM), et si nécessaire on override les valeurs 
# par défaut pour la requête (voir _default_params_for_queries dans le code source de Manager).
other_params = {
    'requestedFlightFields': ['flightState', 'cfmuFlightType']
}

# pour afficher une liste de vols pour un terrain donné
flight_list = test_manager.queryFlightsByAerodrome(
    aerodrome="LFPG",
    aerodromeRole="DEPARTURE",
    startTime=startTime, endTime=endTime,
    other_params=other_params)
print(flight_list.data)

# pour afficher une liste de vols pour un Traffic Volume donné
flight_list = test_manager.queryFlightsByTrafficVolume(
    trafficVolume='LFFTN',
    startTime=startTime, endTime=endTime,
    other_params=other_params)
print(flight_list.data)