Skip to content

DGAC/nmb2b-phpclient

Repository files navigation

PHP Client for NM B2B Services

pipeline status coverage report

NM B2B Web Services

http://www.eurocontrol.int/service/network-manager-business-business-b2b-web-services

Supported versions : 25.0 - 26.0 - 27.0

Requirements

  • PHP >= 8.0

Installation

Composer

To install run composer require dgac/nmb2b-phpclient

Configuration

use DSNA\NMB2BDriver\NMB2BClient;

//only add path to services you intend to use
$client = new NMB2BClient(
    "path to certificate", 
    "passphrase", 
    array(
        "airspaceservices" => "path to airspace services wsdl file",
        "flowservices" => "path to flow services wsdl file"
    )
);

//with a proxy :
$options = [
   'proxy_host' => '192.x.x.x',
   'proxy_port' => '8080'
];

$client = new NMB2BClient(
    "path to certificate", 
    "passphrase", 
    array(
        "airspaceservices" => "path to airspace services wsdl file",
        "flowservices" => "path to flow services wsdl file"
    ),
    $options
);

Usage

Example 1

Retrieve EAUP Chain from Airspace Services

$eaupchain = $client->airspaceServices()->retrieveEAUPChain(new \DateTime('now'));

//Get last AUP sequence number published before 0600 UTC
$seq = $eaupchain->getAUPSequenceNumber()

Example 2

Retrieve regulations for a specified TV

$start = new \DateTime('2018-04-18 00:00:00');
$end = new \DateTime('2018-04-18 23:59:59');

$result = $client->flowServices()->queryRegulations($start, $end, 'LF*');

foreach($result->getRegulations() as $regulation) {
    $name = $regulation->getRegulationName();
}

Example 3

Get current version of NM services.

$client->airspaceServices()->getNMVersion(); //returns "21.5.0"