meshtastic 0.0.43 → 0.0.44

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 105d223bd94e02d4473ac5fd66ed0b8dc7eef73d44578eb427fc3d55eb51ae21
4
- data.tar.gz: 216a3957a439408579d1d7b48dd552d394885bbc09b8dc3410d776e4c1eb37d6
3
+ metadata.gz: 5dec0934f3c9c639e3af0cf5f8b88447dd83a96c5ed8082ff954ce13c5b758dd
4
+ data.tar.gz: c4a3e692fdc5f92a8e1ddf997ae9d5f7c6e33915dd239546d52f3adcee690a44
5
5
  SHA512:
6
- metadata.gz: 1381a13cff943403ef269c5a349529ab9c2f12e3a3af5b3e88c589f7fd427a6e45b23543251449e1d520471fdf5f6c8a11c55c56bfc24553dc2b02db7ace28d9
7
- data.tar.gz: 01d01863635a22c2d3c42ace2a34076c4094ece8ef9629f08ae0e8da7c0a98bbc5815db26e2e4063fa462619caf710938628a8cd086f62411d1cd885017665a4
6
+ metadata.gz: 8c20d4c63ffdf13b5903f2e5605d5296268613b7bd7cc3380f48e4405e7b4aabda8216775f6664b42e5886dffdac42cfcb66b13bc1a48068e19f3152e1fa9598
7
+ data.tar.gz: a2ff5b9076561cb0b43b798d4bc6471f7ee2a4387be99bd53b98b389b4344954fbf451ce41be341c6e3a945b12adc02ba531883466fbb46cde30d8f7e0651c02
@@ -128,22 +128,39 @@ module Meshtastic
128
128
  # when :ZPS_APP
129
129
  # decoder = Meshtastic::Zps
130
130
  end
131
+
131
132
  payload = decoder.decode(payload).to_h
132
- if payload.keys.include?(:latitude_i) && payload.keys.include?(:longitude_i)
133
+
134
+ if payload.keys.include?(:latitude_i)
133
135
  lat = payload[:latitude_i] * 0.0000001
134
- lon = payload[:longitude_i] * 0.0000001
135
136
  payload[:latitude] = lat
137
+ end
138
+
139
+ if payload.keys.include?(:longitude_i)
140
+ lon = payload[:longitude_i] * 0.0000001
136
141
  payload[:longitude] = lon
137
- if gps_metadata
138
- gps_search_resp = Meshtastic.gps_search(lat: lat, lon: lon)
139
- payload[:gps_metadata] = gps_search_resp
140
- end
141
142
  end
142
143
 
143
144
  if payload.keys.include?(:macaddr)
144
- mac_hex_arr = payload[:macaddr].bytes.map { |byte| byte.to_s(16).rjust(2, '0') }
145
- mac_str = mac_hex_arr.join(':')
146
- payload[:macaddr] = mac_str
145
+ mac_raw = payload[:macaddr]
146
+ mac_hex_arr = mac_raw.bytes.map { |byte| byte.to_s(16).rjust(2, '0') }
147
+ mac_hex_str = mac_hex_arr.join(':')
148
+ payload[:macaddr_hex] = mac_hex_str
149
+ end
150
+
151
+ if payload.keys.include?(:time)
152
+ time_int = payload[:time]
153
+ time_utc = Time.at(time_int).utc if time_int.is_a?(Integer)
154
+ payload[:time_utc] = time_utc
155
+ end
156
+
157
+ if gps_metadata && payload[:latitude] && payload[:longitude]
158
+ lat = payload[:latitude]
159
+ lon = payload[:longitude]
160
+ unless lat.zero? && lon.zero?
161
+ gps_search_resp = gps_search(lat: lat, lon: lon)
162
+ payload[:gps_metadata] = gps_search_resp
163
+ end
147
164
  end
148
165
 
149
166
  payload
@@ -318,7 +335,7 @@ module Meshtastic
318
335
 
319
336
  gps_arr = [lat.to_f, lon.to_f]
320
337
 
321
- Geocoder.search(gps_arr)
338
+ Geocoder.search(gps_arr).first.data
322
339
  rescue StandardError => e
323
340
  raise e
324
341
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Meshtastic
4
- VERSION = '0.0.43'
4
+ VERSION = '0.0.44'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: meshtastic
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.43
4
+ version: 0.0.44
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
@@ -348,7 +348,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
348
348
  - !ruby/object:Gem::Version
349
349
  version: '0'
350
350
  requirements: []
351
- rubygems_version: 3.5.9
351
+ rubygems_version: 3.5.10
352
352
  signing_key:
353
353
  specification_version: 4
354
354
  summary: Ruby gem for Meshtastic