meshtastic 0.0.12 → 0.0.13

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: 121b0a73d30f792b4da0cbd5b6ed91b648bc26ca3349cb47369fac738f837b03
4
- data.tar.gz: a5ddf7b9969ab8c022107f84e192709c01441f5d78f4f011679b948dbe857006
3
+ metadata.gz: 3526ab71260935428991ee992ab7f28de3b0cfb3f94dea2849654eaa15aa924d
4
+ data.tar.gz: 878a6a3c9e051296f6fecf3719748bc1171e369ca4ae63b910ab2417494ca0c5
5
5
  SHA512:
6
- metadata.gz: 110570d4591453df75c6d930df3c4ac3adcb06fd85e4354496fd093b080352754d6d8c7fb4e454989cd2ca0f27e4d53dd1664939b980fb3d59cb465d1afaec1e
7
- data.tar.gz: 5be78bd5b710e9974708064eeccfd1563092051e66e1793b07fb34f3bc02687f4f483a79b3124d8d11cb43091bbc3076305bc8bf51b11373ab44686c1fd38496
6
+ metadata.gz: 1826305d9e558ad177c438378b43d67b9736f0113e826f04e1d0f2a2579f185a09a2a45f4525494a92a3199eb716e1a3a8754ae76958b5e639a11bc0737256a4
7
+ data.tar.gz: 6eea890ed77dea25e1c7bd303d5ad4ba4bbda641e64435fd9e8603062bee5511e085797dde5813a36b1fcd79976a28788c2e4ec36d4f46200eddc8a0548a82d3
data/Gemfile CHANGED
@@ -16,7 +16,7 @@ gem 'bundler', '>=2.5.3'
16
16
  gem 'bundle-audit', '0.1.0'
17
17
  gem 'geocoder', '1.8.2'
18
18
  gem 'google-protobuf', '3.21.12'
19
- gem 'google-protobuf-z', '3.5.1'
19
+ # gem 'google-protobuf-z', '3.5.1'
20
20
  gem 'mqtt', '0.6.0'
21
21
  gem 'rake', '13.2.1'
22
22
  gem 'rdoc', '6.6.3.1'
@@ -78,20 +78,31 @@ module Meshtastic
78
78
 
79
79
  # cipher = OpenSSL::Cipher.new('AES-256-CTR')
80
80
  cipher = OpenSSL::Cipher.new('AES-128-CTR')
81
- mqtt_obj.get_packet do |packet|
82
- raw_packet = packet.to_s.b
83
- raw_packet_len = raw_packet.length
81
+ mqtt_obj.get_packet do |packet_bytes|
82
+ # puts "Packet Bytes: #{packet_bytes.public_methods}"
83
+ raw_packet = packet_bytes.to_s.b
84
+ raw_packet_len = raw_packet.to_s.b.length
85
+ raw_topic = packet_bytes.topic
86
+ raw_payload = packet_bytes.payload
87
+ raw_payload_len = raw_payload.length
88
+
84
89
  begin
85
90
  puts '-' * 80
86
91
 
92
+ payload = {}
87
93
  if json
88
- raw_payload = JSON.parse(packet.payload, symbolize_names: true)
89
- payload = Meshtastic::ServiceEnvelope.json_decode(raw_payload)
90
- map_report = Meshtastic::MapReport.json_decode(raw_payload)
94
+ json_payload = JSON.parse(raw_payload, symbolize_names: true)
95
+ payload = Meshtastic::ServiceEnvelope.json_decode(json_payload)
96
+ map_report = Meshtastic::MapReport.json_decode(json_payload)
91
97
  else
92
- raw_payload = packet.payload.to_s
93
- payload = Meshtastic::ServiceEnvelope.decode(raw_payload).to_hash[:packet]
94
- map_report = Meshtastic::MapReport.decode(raw_payload).to_hash
98
+ svc_envl= Meshtastic::ServiceEnvelope.decode(raw_payload)
99
+ payload = svc_envl.to_h[:packet]
100
+ # puts "STILL GOOD: #{payload.inspect}"
101
+ # puts "Public Methods: #{Meshtastic::MapReport.public_methods}"
102
+ # puts "Public Methods: #{Meshtastic::MapReport.class}"
103
+ # map_report_decode = Meshtastic::MapReport.decode(raw_payload)
104
+ # map_report = map_report_decode.to_h
105
+ # puts "STILL GOOD: #{map_report.inspect}"
95
106
  end
96
107
 
97
108
  puts "*** MESSAGE ***"
@@ -103,8 +114,7 @@ module Meshtastic
103
114
  puts "Channel: #{channel}"
104
115
  packet_id = payload[:id]
105
116
  puts "Packet ID: #{packet_id}"
106
- topic = packet.topic
107
- puts "\nTopic: #{topic}"
117
+ puts "\nTopic: #{raw_topic}"
108
118
 
109
119
  decoded_payload = payload[:decoded]
110
120
  if decoded_payload
@@ -149,44 +159,49 @@ module Meshtastic
149
159
  end
150
160
  puts '*' * 20
151
161
 
152
- map_long_name = map_report[:long_name].b
153
- puts "\n*** MAP STATS ***"
154
- puts "Map Long Name: #{map_long_name.inspect}"
155
- map_short_name = map_report[:short_name]
156
- puts "Map Short Name: #{map_short_name}"
157
- role = map_report[:role]
158
- puts "Role: #{role}"
159
- hw_model = map_report[:hw_model]
160
- puts "Hardware Model: #{hw_model}"
161
- firmware_version = map_report[:firmware_version]
162
- puts "Firmware Version: #{firmware_version}"
163
- region = map_report[:region]
164
- puts "Region: #{region}"
165
- modem_preset = map_report[:modem_preset]
166
- puts "Modem Preset: #{modem_preset}"
167
- has_default_channel = map_report[:has_default_channel]
168
- puts "Has Default Channel: #{has_default_channel}"
169
- latitiude_i = map_report[:latitude_i]
170
- puts "Latitude: #{latitiude_i}"
171
- longitude_i = map_report[:longitude_i]
172
- puts "Longitude: #{longitude_i}"
173
- altitude = map_report[:altitude]
174
- puts "Altitude: #{altitude}"
175
- position_precision = map_report[:position_precision]
176
- puts "Position Precision: #{position_precision}"
177
- num_online_local_nodes = map_report[:num_online_local_nodes]
178
- puts "Number of Online Local Nodes: #{num_online_local_nodes}"
179
- puts '*' * 20
162
+ # map_long_name = map_report[:long_name].b
163
+ # puts "\n*** MAP STATS ***"
164
+ # puts "Map Long Name: #{map_long_name.inspect}"
165
+ # map_short_name = map_report[:short_name]
166
+ # puts "Map Short Name: #{map_short_name}"
167
+ # role = map_report[:role]
168
+ # puts "Role: #{role}"
169
+ # hw_model = map_report[:hw_model]
170
+ # puts "Hardware Model: #{hw_model}"
171
+ # firmware_version = map_report[:firmware_version]
172
+ # puts "Firmware Version: #{firmware_version}"
173
+ # region = map_report[:region]
174
+ # puts "Region: #{region}"
175
+ # modem_preset = map_report[:modem_preset]
176
+ # puts "Modem Preset: #{modem_preset}"
177
+ # has_default_channel = map_report[:has_default_channel]
178
+ # puts "Has Default Channel: #{has_default_channel}"
179
+ # latitiude_i = map_report[:latitude_i]
180
+ # puts "Latitude: #{latitiude_i}"
181
+ # longitude_i = map_report[:longitude_i]
182
+ # puts "Longitude: #{longitude_i}"
183
+ # altitude = map_report[:altitude]
184
+ # puts "Altitude: #{altitude}"
185
+ # position_precision = map_report[:position_precision]
186
+ # puts "Position Precision: #{position_precision}"
187
+ # num_online_local_nodes = map_report[:num_online_local_nodes]
188
+ # puts "Number of Online Local Nodes: #{num_online_local_nodes}"
189
+ # puts '*' * 20
180
190
 
181
191
  puts "\n*** PACKET DEBUGGING ***"
182
192
  puts "Payload: #{payload.inspect}"
183
- puts "\nMap Report: #{map_report.inspect}"
193
+ # puts "\nMap Report: #{map_report.inspect}"
184
194
  puts "\nRaw Packet: #{raw_packet.inspect}"
185
195
  puts "Length: #{raw_packet_len}"
186
196
  puts '*' * 20
187
- rescue Google::Protobuf::ParseError
197
+ rescue Google::Protobuf::ParseError => e
198
+ puts "ERROR: #{e.inspect}"
199
+ puts "\n*** PACKET DEBUGGING ***"
200
+ puts "Payload: #{payload.inspect}"
201
+ # puts "\nMap Report: #{map_report.inspect}"
188
202
  puts "\nRaw Packet: #{raw_packet.inspect}"
189
203
  puts "Length: #{raw_packet_len}"
204
+ puts '*' * 20
190
205
  next
191
206
  ensure
192
207
  puts '-' * 80
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Meshtastic
4
- VERSION = '0.0.12'
4
+ VERSION = '0.0.13'
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: meshtastic
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.12
4
+ version: 0.0.13
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-04-25 00:00:00.000000000 Z
11
+ date: 2024-04-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: brakeman
@@ -80,20 +80,6 @@ dependencies:
80
80
  - - '='
81
81
  - !ruby/object:Gem::Version
82
82
  version: 3.21.12
83
- - !ruby/object:Gem::Dependency
84
- name: google-protobuf-z
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - '='
88
- - !ruby/object:Gem::Version
89
- version: 3.5.1
90
- type: :runtime
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - '='
95
- - !ruby/object:Gem::Version
96
- version: 3.5.1
97
83
  - !ruby/object:Gem::Dependency
98
84
  name: mqtt
99
85
  requirement: !ruby/object:Gem::Requirement