meshcore 2.3.2__tar.gz → 2.3.4__tar.gz
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.
- {meshcore-2.3.2 → meshcore-2.3.4}/PKG-INFO +1 -1
- {meshcore-2.3.2 → meshcore-2.3.4}/pyproject.toml +1 -1
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/commands/binary.py +12 -8
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/commands/messaging.py +2 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/.github/python-test.yml +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/.gitignore +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/LICENSE +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/README.md +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/.pubsub_example.py.swp +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_chat.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_pin_pairing_example.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_private_key_export.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_sign_example.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_stats.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_t1000_chan_msg.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_t1000_custom_vars.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_t1000_infos.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_t1000_msg.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_t1000_msg_retries.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/ble_t1000_set_cv.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/chan_recv_with_path.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/connection_events_example.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/mepo_mc_gps.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/pubsub_example.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/rf_packet_monitor.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_battery_monitor.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_channel_manager.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_chat.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_contacts.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_infos.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_meshcore_ollama.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_msg.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_pingbot.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_repeater_status.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_repeater_telemetry.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_rss_bot.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/serial_trace.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/tcp_chat.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/tcp_login_status.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/tcp_mchome_contacts.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/tcp_mchome_infos.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/tcp_mchome_msg.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/examples/tcp_mchome_readmsgs.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/pytest.ini +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/__init__.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/ble_cx.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/commands/__init__.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/commands/base.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/commands/contact.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/commands/control_data.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/commands/device.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/connection_manager.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/events.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/lpp_json_encoder.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/meshcore.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/meshcore_parser.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/packets.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/parsing.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/reader.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/serial_cx.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/src/meshcore/tcp_cx.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/tests/README.md +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/tests/test_ble_connection.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/tests/test_ble_pin_pairing.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/tests/test_meshcore_ble_pin.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/tests/unit/test_commands.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/tests/unit/test_events.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/tests/unit/test_path_discovery_response.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/tests/unit/test_private_key_export.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/tests/unit/test_reader.py +0 -0
- {meshcore-2.3.2 → meshcore-2.3.4}/tests/unit/test_serial_connection.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: meshcore
|
|
3
|
-
Version: 2.3.
|
|
3
|
+
Version: 2.3.4
|
|
4
4
|
Summary: Base classes for communicating with meshcore companion radios
|
|
5
5
|
Project-URL: Homepage, https://github.com/fdlamotte/meshcore_py
|
|
6
6
|
Project-URL: Issues, https://github.com/fdlamotte/meshcore_py/issues
|
|
@@ -225,6 +225,7 @@ class BinaryCommandHandler(CommandHandlerBase):
|
|
|
225
225
|
|
|
226
226
|
del res["tag"]
|
|
227
227
|
|
|
228
|
+
tries = 0
|
|
228
229
|
while results_count < neighbours_count:
|
|
229
230
|
#await asyncio.sleep(2) # wait 2s before next fetch
|
|
230
231
|
next_res = await self.req_neighbours_sync(contact,
|
|
@@ -233,15 +234,18 @@ class BinaryCommandHandler(CommandHandlerBase):
|
|
|
233
234
|
order_by=order_by,
|
|
234
235
|
pubkey_prefix_length=pubkey_prefix_length,
|
|
235
236
|
timeout=timeout,
|
|
236
|
-
min_timeout=min_timeout+
|
|
237
|
-
|
|
237
|
+
min_timeout=min_timeout+25) # requests are close and responses big,
|
|
238
|
+
#so let's have some more timeout for duty cycle
|
|
238
239
|
if next_res is None :
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
240
|
+
if tries > 0:
|
|
241
|
+
return res # caller should check it has everything
|
|
242
|
+
else:
|
|
243
|
+
tries += 1
|
|
244
|
+
else:
|
|
245
|
+
tries = 0
|
|
246
|
+
results_count += next_res["results_count"]
|
|
247
|
+
res["results_count"] = results_count
|
|
248
|
+
res["neighbours"] += next_res["neighbours"]
|
|
245
249
|
|
|
246
250
|
return res
|
|
247
251
|
|
|
@@ -269,6 +269,8 @@ class MessagingCommands(CommandHandlerBase):
|
|
|
269
269
|
scope_key = b"\0"*16
|
|
270
270
|
else:
|
|
271
271
|
logger.debug(f"Setting scope from string {scope}")
|
|
272
|
+
if scope[0] != "#": # no hashtag as first char
|
|
273
|
+
scope = "#" + scope # adding hashtag
|
|
272
274
|
scope_key = sha256(scope.encode("utf-8")).digest()[0:16]
|
|
273
275
|
elif isinstance (scope, bytes): # scope has been sent directly as byte
|
|
274
276
|
logger.debug(f"Directly setting scope to {scope}")
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|