class Iss
Public Class Methods
coordinates()
click to toggle source
# File lib/where_is_ISS.rb, line 22 def self.coordinates p @coord = [@lat, @long] # return array of lat, long end
info()
click to toggle source
# File lib/where_is_ISS.rb, line 26 def self.info # all the information is being retrieved from @data variable in track function p @info = [@data['name'],@data['id'],@data['latitude'],@data['longitude'],@data['altitude'],@data['velocity'], @data['visibility'],@data['timestamp'],@data['solar_lat'],@data['solar_lon'],@data['units']] # return array of information end
members()
click to toggle source
# File lib/where_is_ISS.rb, line 33 def self.members @data_1 = JSON[open('http://api.open-notify.org/astros.json').read] @members = [] puts "#{@data_1['number']} people on ISS" @data_1['people'].each do |d| @members << d['name'] end p @members # return array of members end
track()
click to toggle source
# File lib/where_is_ISS.rb, line 8 def self.track @data = JSON[open('https://api.wheretheiss.at/v1/satellites/25544').read] # parsing the satellite data to JSON format @lat = @data['latitude'] # getting latitude from parsed response @long = @data['longitude'] # getting longtitude from parsed response response = Net::HTTP.get_response(URI.parse("https://api.wheretheiss.at/v1/coordinates/#{@lat},#{@long}")) # Checking for 200 OK response from Server if (response.code).to_i == 200 @iss = JSON[open("https://api.wheretheiss.at/v1/coordinates/#{@lat},#{@long}").read] # Print out data if status = 200 OK p @position = @iss['timezone_id'] # put out the location return @position else p @default = "Currently ISS is over Water bodies(Coordinates works only on land)" return @default end def self.coordinates p @coord = [@lat, @long] # return array of lat, long end def self.info # all the information is being retrieved from @data variable in track function p @info = [@data['name'],@data['id'],@data['latitude'],@data['longitude'],@data['altitude'],@data['velocity'], @data['visibility'],@data['timestamp'],@data['solar_lat'],@data['solar_lon'],@data['units']] # return array of information end end