meshtastic 0.0.100 → 0.0.101

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2221a233852e1112eed8d73c4521d937104c731ff9916b3f768ead705e940ec2
4
- data.tar.gz: fb8459f76fe4141027c912dc9df65819f87069326f29ae378799e3a2c4cf2bdc
3
+ metadata.gz: bdcbcc8b0f330af38add7b4509f97f511a950959078291e701650c4903f94df5
4
+ data.tar.gz: f9bcd8889a56c0fc951f02f8a94aec848d55fd008b7adcde4f8dc0373038762b
5
5
  SHA512:
6
- metadata.gz: eec3e1dcec69343b168ca7b93af3341ea72ab8409133d3494868ba68ebe11069421e45ef04b460ace8fd3553d833af0295ec0731ce0ce560ea32068eb3392cb2
7
- data.tar.gz: abb2ea3731940d3913794cb7aa54ab0c96c868c59373d874f8ecdc15d508f9545dd7f48cf9b0901b9de470d4a5506b316a028b10774aeffff472c6260cec317f
6
+ metadata.gz: a0b0e9112e4374fc935824554e302f2b3dc9c8d96da52371adff1634c79f172c1d83c3136e0beb0b49c9ca9d0b9989d308879f4cebedc813a7190eebefba8ff2
7
+ data.tar.gz: 1b12ca3bbad17cc2ad2a1428a3bda34654c0cabb96f977c549363a493a93d7b3b421cb7accf5f432c368c599b8ff901e02a51f71630ce1b35a357027be2cd381
@@ -0,0 +1,196 @@
1
+ ed4a5ab Meshtastic module - update #help method to be more useful
2
+ 1f2ae6c Meshtastic module - update #help method to be more useful
3
+ e251a13 Meshtastic::MQTT module - minor #bugfix in format
4
+ c1662df Meshtastic::MQTT module - minor tweaks
5
+ c646e81 Merge pull request #82 from ninp0/master
6
+ 1e9c14a README.md - better examples && distinguish between channel, channel_id, and channel_topic
7
+ be39a7d Merge pull request #81 from ninp0/master
8
+ 1209bb4 README.md - better examples && distinguish between channel, channel_id, and channel_id_path
9
+ bed3e7b Merge pull request #80 from ninp0/master
10
+ 39326e1 README.md - better examples.
11
+ d810969 Merge pull request #79 from ninp0/master
12
+ 2394749 protobufs - pull in latest
13
+ ba62aaf README.md - better examples.
14
+ 285785f Merge pull request #78 from ninp0/master
15
+ da242e2 README.md - better examples.
16
+ b6645c5 Merge pull request #77 from ninp0/master
17
+ dc9bfd3 Update docs
18
+ 20c2c97 Merge pull request #76 from ninp0/master
19
+ 225f4a0 Meshtastic::MQTT module - #bugfix in #connect method
20
+ 9076f4f Merge pull request #75 from ninp0/master
21
+ 825e88f Meshtastic module - #bugfix in #send_text method
22
+ fb3067e Meshtastic module - #bugfix in #send_text method
23
+ c65a4be Meshtastic::MQTT module - #bugfix in #connect method
24
+ 5ab6042 Merge pull request #74 from ninp0/master
25
+ 68967a1 Meshtastic::MQTT module - #bugfix in #connect method
26
+ 06082ee Merge pull request #73 from ninp0/master
27
+ 86dc0bd Gemfile updates
28
+ 3c5a7c6 Merge pull request #72 from ninp0/master
29
+ 3bf6ed6 pull in latest meshtastic protobuf and update Gemfile #add_specs
30
+ 94beb52 pull in latest meshtastic protobuf and update Gemfile
31
+ 6168a3f pull in latest meshtastic protobuf and update Gemfile
32
+ 476e946 Gemfile - bump ruby to 3.4.1
33
+ fd559f5 Gemfile - bump ruby to 3.4.1
34
+ f17640b Merge pull request #71 from ninp0/master
35
+ 61c7d6e Gemfile - bump versions to latest
36
+ 85a40a8 Merge pull request #70 from ninp0/master
37
+ 0f9fb8a upgrade_Gemfile_gems.sh - More flexible versioning for rubocop gems
38
+ d88be1f Merge pull request #69 from ninp0/master
39
+ e517ff1 upgrade_Gemfile_gems.sh - More flexible versioning for rubocop gems
40
+ ff497cd Merge pull request #67 from ninp0/master
41
+ b881a76 upgrade_Gemfile_gems.sh - More flexible versioning for rubocop gems
42
+ 18aebbf Merge pull request #66 from ninp0/master
43
+ f21157c Gemfile - bump versions to latest
44
+ 749430d Merge pull request #65 from ninp0/master
45
+ 2a7d7ea Gemfile - bump versions to latest
46
+ f12d78e Merge pull request #64 from ninp0/master
47
+ 0ab7fd1 Gemfile - bump versions to latest
48
+ d0aee95 Merge pull request #63 from ninp0/master
49
+ 4b0390e Gemmfile bump version
50
+ 820b3ba Merge pull request #62 from ninp0/master
51
+ 908a6c0 .ruby-version - bump to 3.3.4
52
+ c4ec72b Merge pull request #61 from ninp0/master
53
+ 82f41e6 Gemfile - bump versions to latest
54
+ 08fcd17 Merge pull request #60 from ninp0/master
55
+ 1d0117e Gemfile - bump versions to latest
56
+ 48fd16a Merge pull request #59 from ninp0/master
57
+ 0e18752 Gemfile - bump versions to latest
58
+ e5aa123 Merge pull request #58 from ninp0/master
59
+ 5a24743 Gemfile - bump versions to latest
60
+ 51f4720 Merge pull request #57 from ninp0/master
61
+ 2af7c97 Gemfile - bump versions to latest
62
+ cf14910 Merge pull request #56 from ninp0/master
63
+ b0c854e Gemfile - update dependencies to align w/ pwn gem
64
+ 433f482 Merge pull request #55 from ninp0/master
65
+ a6097f2 Meshtastic.send_text method - force ASCII-8BIT when packing a payload into Meshtastic::PortNum::TEXT_MESSAGE_APP protobuf
66
+ fda26d6 Merge pull request #54 from ninp0/master
67
+ 0a0ac8e Meshtastic::MQQT module - encode raw_packet using UTF-8
68
+ 78c9102 Merge pull request #53 from ninp0/master
69
+ 8881b6f Meshtastic::MQQT module - encode raw_packet using UTF-8
70
+ c4a757b Merge pull request #52 from ninp0/master
71
+ b7747e8 Meshtastic.send_text method - encode text using UTF-8
72
+ 8885660 Merge pull request #51 from ninp0/master
73
+ a2f852d Meshtastic::MQTT.send_text method - initial commit wrapping via: :mqtt into Meshtastic.send_text method for sending messages over mqtt
74
+ 378bb5e Merge pull request #50 from ninp0/master
75
+ 8c72c07 Meshtastic::MQTT module - rescue encoding incompatibilities
76
+ 4e7cd5a Merge pull request #49 from ninp0/master
77
+ 2ba8d25 Meshtastic module - improve message_packet.id generation
78
+ a701ed1 Merge pull request #48 from ninp0/master
79
+ ffad703 Meshtastic module - generate random packet id if the previous one is 0 #bugfix
80
+ 2947746 Merge pull request #47 from ninp0/master
81
+ 8c921db Meshtastic module - generate random packet id if the previous one is 0 #tweak
82
+ 332233b Merge pull request #46 from ninp0/master
83
+ 7c206db Meshtastic module - generate random packet id if the previous one is 0
84
+ 3586f13 Merge pull request #45 from ninp0/master
85
+ 18c3e7c Meshtastic module - wrap mesh_packet into instance of Meshtastic::ServiceEnvelope when sending "via: :mqtt"
86
+ 23917bb Meshtastic module - wrap mesh_packet into instance of Meshtastic::ServiceEnvelope
87
+ 10f393f Merge pull request #44 from ninp0/master
88
+ 0952291 Meshtastic module - remove stdout debugging
89
+ 1a4170b Merge pull request #43 from ninp0/master
90
+ 31519c2 Meshtastic::MQTT module - remove stdout debugging
91
+ d1f543a Merge pull request #42 from ninp0/master
92
+ 0d91831 Meshtastic::MQTT && Meshtastic modules - support sending encrypted messages via TEXT_MESSAGE_APP / decrypting via Meshtastic::MQTT
93
+ 6490534 Merge pull request #41 from ninp0/master
94
+ 59ec4a2 Meshtastic::MQTT.subscribe method - translate rx_time integer to rx_time_utc timestamp #tweaks
95
+ a6734ce Merge pull request #40 from ninp0/master
96
+ d65a1d7 Meshtastic::MQTT.subscribe method - translate rx_time integer to rx_time_utc timestamp
97
+ 0092c80 Merge pull request #39 from ninp0/master
98
+ 3715d75 Meshtastic::MQTT.decode_payload method - handle portnum, "UNKNOWN_APP"
99
+ 81d8663 Merge pull request #38 from ninp0/master
100
+ 3bf61bc Meshtastic::MQTT.subscribe method - broader subscription region when region == #
101
+ f0c4510 Merge pull request #37 from ninp0/master
102
+ 7a70550 Meshtastic::MQTT module - only work w/ valid packets
103
+ 4bcd522 Merge pull request #36 from ninp0/master
104
+ dd7ce88 Meshtastic::MQTT module - overwrite payload[:macaddr] to avoid malformed utf-8 sequences when casting to JSON
105
+ 9f43f5f Merge pull request #35 from ninp0/master
106
+ f18f9f0 Meshtastic::MQTT module - additional payload decoding and data massaging tweaks / reduce number of #gps_search calls to only valid lat lon values
107
+ 11263b9 Merge pull request #34 from ninp0/master
108
+ 7b3365b Meshtastic::MQTT module - a lot of payload decoding bugfixes. Meshtastic module - begin implementing the ability to send packets (decoded and encrypted).
109
+ 9db5d74 Merge pull request #33 from ninp0/master
110
+ 480edd4 Meshtastic::MQQT - recursively decode nested payloads specific to port nums
111
+ f007947 Merge pull request #32 from ninp0/master
112
+ 743869b Meshtastic::MQTT module - change psk parameter to psks which requires a hash of chanbnl psk key pair values
113
+ 2da71a9 Merge pull request #31 from ninp0/master
114
+ 2b3329b Meshtastic::MQTT module - try default psk for more channel #subscribe values
115
+ 612018f Merge pull request #30 from ninp0/master
116
+ d449683 Meshtastic::MQTT module - rescue #bugfix
117
+ 9ab8c7a Merge pull request #29 from ninp0/master
118
+ 3f15a89 Meshtastic::MQTT module - #help tweak
119
+ 0d7b9fd Meshtastic::MQTT module - better channel support in #subscribe method
120
+ 5f7bf75 Merge pull request #28 from ninp0/master
121
+ 2f24bf2 Meshtastic::MQTT module - include all ServiceEnvelope hash response contents instead of just values for :packet key
122
+ 6c4f5db Merge pull request #27 from ninp0/master
123
+ 0b78b81 Meshtastic::MQTT module - move filter logic to the ensure block to enable filtering messages by stdout values "inspect" or "pretty"
124
+ e39a0d9 Merge pull request #26 from ninp0/master
125
+ 4ab3587 Meshtastic::MQTT module - display mac address appropriately when e.g. NODEINFO_APP returns mixed ascii macaddr values
126
+ 08b38ef Merge pull request #25 from ninp0/master
127
+ f5d5a6b Meshtastic::MQTT module - #rubocop
128
+ 03de0ad Meshtastic::MQTT module - implement working NODEINFO_APP, SIMULATOR_APP, and RANGE_TEST_APP decoders
129
+ 6485c97 Merge pull request #24 from ninp0/master
130
+ e7bdd82 Meshtastic::MQTT module - implement a gps_metadata boolean parameter (default to false) for the #subscribe method to avoid rate limit issues
131
+ 5b665e7 Merge pull request #23 from ninp0/master
132
+ 41b1473 Merge branch 'master' of ssh://github.com/ninp0/meshtastic
133
+ b6f6e68 Meshtastic::MQTT module - implement TRACEROUTE_APP decoding
134
+ 7896b1e Merge pull request #22 from ninp0/master
135
+ b653692 Meshtastic::MQTT module - add gps_metadata for POSITION_APP via #gps_search method
136
+ 6536892 Merge pull request #21 from ninp0/master
137
+ 8dd7f06 ./git_commit.sh - include ./AUTOGEN_meshtastic_protobufs.sh to pull in latest protobuf definitions
138
+ 27effa9 Merge pull request #20 from ninp0/master
139
+ 292b6db Meshtastic::MQTT module - disable APPS where Protobuf#decode object is unknown
140
+ 07f3b29 Merge pull request #19 from ninp0/master
141
+ ef29b94 Meshtastic::MQTT module - format tweak in message object when dumping to STDOUT
142
+ 2b97702 Merge pull request #18 from ninp0/master
143
+ 393b252 README.md - doc tweaks
144
+ 9345cb2 Merge pull request #17 from ninp0/master
145
+ ebcb1a1 Meshtastic::MQTT module - pull back the curtain.
146
+ 4bb24b6 Merge pull request #16 from ninp0/master
147
+ 460c087 Meshtastic::MQTT module - dont display debugging info if block_given? is true
148
+ fd82bc1 Merge pull request #15 from ninp0/master
149
+ c7056b0 Meshtastic::MQTT module - add block support to interact with each message
150
+ ba5f84f Meshtastic::VERSION - bump
151
+ 455cc9b Meshtastic::MQTT - #bugfix in #subscribe method when json = true
152
+ af251ed Merge pull request #14 from ninp0/master
153
+ 80a392b Meshtastic::MQTT - add #gps_search method
154
+ 474774b Merge pull request #13 from ninp0/master
155
+ 32af2f9 Meshtastic::MQTT - update usage for #subscribe and #help methods
156
+ d33c05a Merge pull request #12 from ninp0/master
157
+ 7126de7 Meshtastic::MQTT - implement message filter parameter on #subscripbe method and code cleanup
158
+ 5220cde Merge pull request #11 from ninp0/master
159
+ 76de568 README.md - #moretweaks
160
+ 5cae453 Merge pull request #10 from ninp0/master
161
+ 93e2bb8 README.md - #link_tweaks
162
+ e4c6e61 README.md - Setting expectations
163
+ 2a15599 Merge pull request #9 from ninp0/master
164
+ bf0cc6b README.md - Setting expectations
165
+ 5c63bb5 Merge pull request #8 from ninp0/master
166
+ a823462 Disable Map object temporarily
167
+ 0104d0b Merge pull request #7 from ninp0/master
168
+ 5dde96d Include nanopb_pb rSpec
169
+ 2b792f2 Ensure Gemfile set google-protobuf version to the same version returned by the protoc command
170
+ 641d11d Include nanopb_pb rSpec
171
+ b552585 Include nanopb_pb rSpec
172
+ a06690b Include nanopb_pb
173
+ 89fb0d9 Meshtastic::VERSION - bump
174
+ f5ada48 Comment out protobuf modules that are calling unknown proto3_optional method
175
+ c0a9dd9 Comment out protobuf modules that are calling unknown proto3_optional method
176
+ 90016bd rSpec - barebones build testing
177
+ 41da62c Merge pull request #6 from ninp0/master
178
+ dd5d419 Github Workflow - working barebones
179
+ d35ff76 Merge pull request #5 from ninp0/master
180
+ 22abe89 meshtastic.gemspec - few minor tweaks to spec
181
+ 64eee43 Merge pull request #4 from ninp0/master
182
+ 935e409 upgrade_Gemfile_gems.sh - Skip bundler until A newer bundler version becomes available in Github workflows
183
+ 745ebe1 Gemfile - tweak minimum supported bundler version for Github workflows
184
+ 479682c Merge pull request #3 from ninp0/master
185
+ 22a261d Gemfile - tweak minimum supported bundler version for Github workflows
186
+ 450dd6d Merge pull request #2 from ninp0/master
187
+ 7839b8f Gemfile - tweak supported bundler for Github workflows
188
+ d9545b1 Merge pull request #1 from ninp0/master
189
+ 23fdf18 Gemfile - more gems
190
+ 99b70da More build scripts (reinstall gemset)
191
+ 664224a Gemfile - include required bundler gems
192
+ 06b121d .github/workflows/main.yml - Update to run relevant tasks
193
+ 8b373ed Meshtastic::VERSION #bugfix
194
+ 9b9f16a README.md updates
195
+ e83c35f Meshtastic Ruby Gem - Initial Alpha Commit w/ Protobuf Generation and operating Meshtastic::MQTT module
196
+ 7729c8b Initial commit
data/git_commit.sh CHANGED
@@ -9,6 +9,11 @@ if [[ $1 != "" && $2 != "" && $3 != "" ]]; then
9
9
  ./upgrade_Gemfile_gems.sh
10
10
  ./AUTOGEN_meshtastic_protobufs.sh
11
11
  meshtastic_autoinc_version
12
+ if [[ $tag_this_version_bool == 'true' ]]; then
13
+ last_tag=$(git tag | tail -n 1)
14
+ git log $last_tag.. --oneline > CHANGELOG_BETWEEN_TAGS.txt
15
+ fi
16
+
12
17
  git commit -a -S --author="${1} <${2}>" -m "${3}"
13
18
  ./upgrade_meshtastic.sh
14
19
  # Tag for every 100 commits (i.e. 0.1.100, 0.1.200, etc)
@@ -20,7 +20,8 @@ module Meshtastic
20
20
  # port: 'optional - mqtt port (defaults: 1883)',
21
21
  # username: 'optional - mqtt username (default: meshdev)',
22
22
  # password: 'optional - (default: large4cats)',
23
- # client_id: 'optional - client ID (default: random 4-byte hex string)'
23
+ # client_id: 'optional - client ID (default: random 4-byte hex string)',
24
+ # keep_alive: 'optional - keep alive interval (default: 21)'
24
25
  # )
25
26
 
26
27
  public_class_method def self.connect(opts = {})
@@ -32,14 +33,18 @@ module Meshtastic
32
33
  client_id = opts[:client_id] ||= SecureRandom.random_bytes(4).unpack1('H*').to_s
33
34
  client_id = format("%0.8x", client_id) if client_id.is_a?(Integer)
34
35
  client_id = client_id.delete('!') if client_id.include?('!')
36
+ keep_alive = opts[:keep_alive] ||= 21
35
37
 
36
- MQTTClient.connect(
38
+ mqtt_obj = MQTTClient.connect(
37
39
  host: host,
38
40
  port: port,
39
41
  username: username,
40
42
  password: password,
41
43
  client_id: client_id
42
44
  )
45
+ mqtt_obj.keep_alive = keep_alive
46
+
47
+ mqtt_obj
43
48
  rescue StandardError => e
44
49
  raise e
45
50
  end
@@ -83,6 +88,8 @@ module Meshtastic
83
88
  puts "Subscribing to: #{full_topic}"
84
89
  mqtt_obj.subscribe(full_topic, qos)
85
90
 
91
+ # MQTT::ProtocolException: No Ping Response received for 23 seconds (MQTT::ProtocolException)
92
+
86
93
  filter_arr = filter.to_s.split(',').map(&:strip)
87
94
  mqtt_obj.get_packet do |packet_bytes|
88
95
  raw_packet = packet_bytes.to_s if include_raw
@@ -270,7 +277,8 @@ module Meshtastic
270
277
  port: 'optional - mqtt port (defaults: 1883)',
271
278
  username: 'optional - mqtt username (default: meshdev)',
272
279
  password: 'optional - (default: large4cats)',
273
- client_id: 'optional - client ID (default: random 4-byte hex string)'
280
+ client_id: 'optional - client ID (default: random 4-byte hex string)',
281
+ keep_alive: 'optional - keep alive interval (default: 21)'
274
282
  )
275
283
 
276
284
  #{self}.subscribe(
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Meshtastic
4
- VERSION = '0.0.100'
4
+ VERSION = '0.0.101'
5
5
  end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: meshtastic
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.100
4
+ version: 0.0.101
5
5
  platform: ruby
6
6
  authors:
7
7
  - 0day Inc.
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2025-02-07 00:00:00.000000000 Z
10
+ date: 2025-02-11 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: bundler
@@ -221,6 +221,7 @@ files:
221
221
  - ".ruby-gemset"
222
222
  - ".ruby-version"
223
223
  - AUTOGEN_meshtastic_protobufs.sh
224
+ - CHANGELOG_BETWEEN_TAGS.txt
224
225
  - CODE_OF_CONDUCT.md
225
226
  - Gemfile
226
227
  - LICENSE