Group
Extension

WebService-ADSBExchange/adsb.pl

use strict;
use warnings;
use lib 'lib';
use WebService::ADSBExchange;
use Data::Dumper;
use feature 'say';

#Scalar::Util::looks_like_number()

open( my $keyfile, '<', "/home/david/adsbx_key" ) or die $!;
my $key = <$keyfile>;

my $adsb = WebService::ADSBExchange->new( key => $key );

my $radius = $adsb->aircraft_within_n_mile_radius( '45.09634', '-94.41019',	'100' );
foreach my $aircraft ( @{ $radius->{ac} } ) {
	if (
		   defined $aircraft->{flight}
		&& defined $aircraft->{r}
		&& defined $aircraft->{dst}
		&& $aircraft->{alt_baro} ne 'ground'
	  )
	{
		say sprintf('%8s', $aircraft->{r}) . "  "
		  . $aircraft->{flight} . "  "
		  . sprintf('%5s', $aircraft->{alt_baro}) . "  "
		  . $aircraft->{dst};
	}
}
die;

say Dumper $adsb->aircraft_by_callsign('DAL2640');
die;
my $mil = $adsb->tagged_military_aircraft();
foreach my $aircraft ( @{ $mil->{ac} } ) {
	if (
		   defined $aircraft->{flight}
		&& defined $aircraft->{r}

		#&& defined $aircraft->{dst}
	  )
	{
		say $aircraft->{r} . "  "
		  . $aircraft->{flight} . "  "
		  . $aircraft->{dst};
	}
}

print Dumper $mil;
die;

$adsb->single_aircraft_position_by_hex_id("a0f73c");
say $adsb->get_json_response;
$adsb->aircraft_live_position_by_hex_id("a0f73c");
say $adsb->get_json_response;
die;

my $registration = 'N161UW';
my $position  = $adsb->single_aircraft_position_by_registration($registration);
my $latitude  = $position->{ac}[0]->{lat};
my $longitude = $position->{ac}[0]->{lon};
my $flight    = $position->{ac}[0]->{flight};
say
"$registration is flight $flight and its current position is $latitude by $longitude";

say $adsb->get_json_response();

say Dumper $adsb->aircraft_last_position_by_hex_id("a0f73c");
say Dumper $adsb->aircraft_by_callsign('AAL2630');
say Dumper $adsb->aircraft_by_squawk('2025');



Powered by Groonga
Maintained by Kenichi Ishigaki <ishigaki@cpan.org>. If you find anything, submit it on GitHub.