class AxTrack::Tracker
Public Instance Methods
asset_details()
click to toggle source
# File lib/ax_track/objects/tracker.rb, line 4 def asset_details @asset_details = Asset.new @asset_details unless @asset_details.is_a? Asset @asset_details end
asset_id()
click to toggle source
# File lib/ax_track/objects/tracker.rb, line 9 def asset_id asset_details.id end
available_sensor_data()
click to toggle source
# File lib/ax_track/objects/tracker.rb, line 38 def available_sensor_data # returns a hash with available senson data sensor_data_temp = self.sensor_data.keys # if no timestamp is available in the GPSPosition, then there wasn't a last_gps_measurement returned in the json # hence the sensor doesn't contain a GPS module. sensor_data_temp = sensor_data_temp.unshift('gps') if self.last_gps_position&.respond_to? :timestamp sensor_data_temp end
battery()
click to toggle source
# File lib/ax_track/objects/tracker.rb, line 26 def battery asset_details&.sensor_data.dig('battery', 'value') end
last_gps_position()
click to toggle source
# File lib/ax_track/objects/tracker.rb, line 21 def last_gps_position #GPSPosition.new(@last_gps_measurement || { lat: asset_details.lat, lng: asset_details.lng } ) GPSPosition.new(@last_gps_measurement) unless @last_gps_measurement.nil? end
last_message_timestamp()
click to toggle source
# File lib/ax_track/objects/tracker.rb, line 17 def last_message_timestamp DateTime.parse(@last_message_timestamp, false) if @last_message_timestamp end
name()
click to toggle source
# File lib/ax_track/objects/tracker.rb, line 13 def name @name ||= asset_details.name end
sensor_data()
click to toggle source
# File lib/ax_track/objects/tracker.rb, line 30 def sensor_data asset_details.sensor_data end
website_url()
click to toggle source
# File lib/ax_track/objects/tracker.rb, line 34 def website_url "#{AxTrack.base_url_user}#{@id}" end