Commit graph

441 commits

Author SHA1 Message Date
andrekir
7289896956 refactor: remove largeIcon from notifications 2024-10-22 12:13:34 -03:00
andrekir
8af78bc2eb fix(config): show error when radio disconnects before receiving confirmation 2024-10-19 13:29:39 -03:00
James Rich
f6ec3e8bab
feat: Add notification for new node seen (#1316)
* Add notification for new node seen

This change adds a new notification that is displayed when a new node is seen.
The notification includes the node's
 name.
It also updates the message notification to include the node name.

* Show individual notification for each new node

* Add new nodes notifications

Adds a new notification channel for new nodes seen.
This channel is set to high importance with sound and light.
2024-10-15 06:07:22 -03:00
andrekir
af56fff216 fix: position packet want_response handling
Process valid position broadcasts with `want_response` true except from position requests with an empty payload (latitude and longitude are zeroes).
2024-10-14 18:26:59 -03:00
andrekir
fe56d257f5 chore: add detekt formatting rule set
https://detekt.dev/docs/next/rules/formatting/
2024-10-14 07:56:29 -03:00
James Rich
38942ec557
Add local device stats to the service notification (#1307)
This commit adds the local device stats to the service notification. This information includes the number of online and total nodes, as well as other local stats. It also updates the notification summary and adds local stats telemetry handling.
2024-10-13 08:10:28 -03:00
James Rich
ed2703c77a fix: Correctly compare hopStart and hopLimit for received packets
fixes: #1304

The calculation of `hopsAway` was using an incorrect comparison between `hopStart` and `hopLimit`. This commit fixes the logic to correctly determine the number of hops a packet has traveled.
2024-10-12 06:20:46 -03:00
James Rich
ebe0aeec14
Adds support for known 0 hopsAway (#1295) 2024-10-09 17:04:05 -03:00
andrekir
23f05c109b fix: remote admin backward compatibility
- only use PKC encryption when the remote node has a public key (2.5 -> 2.5)
- fall back to legacy admin if public key is not available (2.5 -> 2.4)
2024-10-08 08:29:23 -03:00
James Rich
f944a236ac
feat: Adds Request user info (#1279)
* Request user info

* safe calls

* Fix: Ensure NodeInfo is sent when requesting user info

The `requestUserInfo` function now correctly sends `NodeInfo` when requesting user info by using the `
toNodeInfo()` method on `ourNodeInfo`. This ensures the recipient receives the necessary information.

* fix: remove unused parameters, use service's node db for our node entity

---------

Co-authored-by: musznik <bymucha@gmail.com>
2024-10-03 05:02:13 -03:00
andrekir
c0692b80ec refactor: remove legacy BLE characteristic 2024-10-02 20:00:02 -03:00
Andre K
c30ee2f55f
refactor: replace MyNodeInfo with MyNodeEntity (#1277) 2024-10-02 06:18:30 -03:00
andrekir
bfa2eaef11 fix: PKC channel index in sent MeshPackets 2024-09-30 15:27:55 -03:00
DJ Holt
a358b8cb11 Complete request future if response is a ClientNotification 2024-09-29 07:28:58 -03:00
andrekir
96a69b7398 fix: position handling when fixed_position is enabled
closes #1265
2024-09-28 08:19:09 -03:00
andrekir
717c932ae2 refactor(MeshLog): add fields for query optimization
- Adds `from_num` and `port_num` fields as indices to the `MeshLog` entity to improve query performance.
- Sets default values for new columns for auto-migration and backward compatibility.
2024-09-26 05:55:38 -03:00
andrekir
a075dfbd3a feat: add dialog for message status information 2024-09-24 22:06:15 -03:00
andrekir
4f0652ad9f fix: remove node from service database in removeByNodenum 2024-09-24 07:53:09 -03:00
andrekir
22b1cf0f16 feat: add encryption status icon and dialog to node list items 2024-09-23 10:13:27 -03:00
andrekir
587c6c91f4 refactor: ensure backward compatibility for PKC encryption 2024-09-22 23:01:33 -03:00
Andre K
36a13d7687
fix(conifg): implement sessionPasskey handling for admin requests (#1263) 2024-09-20 06:07:35 -03:00
andrekir
8c07532995 fix(MeshService): revert nodeDBbyNodeNum to local variable
avoids performance issues causing data loss by reverting `nodeDBbyNodeNum` to a local `ConcurrentHashMap`
2024-09-19 18:17:30 -03:00
andrekir
852c6e1bc2 refactor: enable remote admin to set/remove fixed_position 2024-09-18 19:50:33 -03:00
andrekir
81d8a9f93f fix(MeshService): revert myNodeInfo to local variable
avoids performance issues and simplifies state management as `MyNodeInfo` is only relevant during an active session
2024-09-18 19:46:39 -03:00
andrekir
0b72486506 fix: deviceMetrics reference in NodeInfo.toEntity mapper 2024-09-17 07:52:34 -03:00
Andre K
396195a1b8
refactor: introduce NodeEntity protobuf-based database entity (#1250) 2024-09-16 17:57:30 -03:00
andrekir
2433cbc00a feat: show names with a lock for DMs using PKC 2024-09-16 10:30:15 -03:00
DJ Holt
610e5f1049
Show results for two-way traceroute, including SNR values between hops (#1248) 2024-09-16 09:16:06 -03:00
andrekir
ac928b40d4 fix: avoid starting FGS with location type without permission 2024-09-14 18:38:30 -03:00
andrekir
2ce306b5be fix(MeshService): ensure proper handling of NodeInfo user field 2024-09-14 17:48:09 -03:00
andrekir
9a332e8367 refactor(MeshService): remove redundant updateNodeInfo call 2024-09-13 19:08:36 -03:00
andrekir
a98d3899e6 refactor(MeshService): remove discardNodeDB and simplify logic 2024-09-13 19:03:28 -03:00
andrekir
1252b67fce refactor(MeshService): update getNodes() to use nodeDBbyNodeNum 2024-09-13 18:37:10 -03:00
andrekir
52e79da803 fix(MeshService): wait for node db initialization with a timeout 2024-09-13 18:36:30 -03:00
andrekir
39a18e6418 refactor: replace service local node db with Room NodeDB 2024-09-13 00:19:21 -03:00
andrekir
3a6511b7f9 refactor: unify service node DB into a single source 2024-09-11 18:59:11 -03:00
andrekir
7411455e17 feat: send AdminMessage set_time_only on ConfigComplete 2024-09-09 19:13:13 -03:00
andrekir
e9248c9440 refactor: remove unused firmware update code 2024-09-09 19:03:30 -03:00
andrekir
9a810885da refactor: remove redundant time check in MeshPacket handling 2024-09-09 19:02:21 -03:00
andrekir
2a58fe09c1 refactor: build MyNodeInfo hwModel from DeviceMetadata 2024-09-09 18:57:36 -03:00
andrekir
a916871596 chore: remove MeshServiceTest 2024-09-08 08:43:50 -03:00
andrekir
716b75c6be feat: implement AdminMessage session_passkey handling 2024-09-04 09:31:15 -03:00
andrekir
3182fad723 refactor: tag LocSource.LOC_EXTERNAL to Android GPS positions 2024-09-04 09:20:51 -03:00
andrekir
3a97e6dbcb refactor: remove BACKGROUND_LOCATION permission 2024-08-29 08:10:09 -03:00
andrekir
dd00f79241 feat: add fromRadio client notification 2024-08-25 10:55:55 -03:00
andrekir
cd05f8d565 feat: add SecurityConfig 2024-08-25 09:32:31 -03:00
andrekir
3a11ca9a1c refactor: add shortName to traceroute response
closes #1164
2024-08-18 09:34:47 -03:00
andrekir
6d4b0b60f8 refactor: rename admin factory reset method
references:
- https://github.com/meshtastic/protobufs/pull/539
- https://github.com/meshtastic/firmware/pull/4427
2024-08-18 06:36:24 -03:00
andrekir
df6b0e1949 fix: queued messages not being sent once reconnected 2024-07-28 07:17:06 -03:00
andrekir
4f5c6a5fd1 refactor: implement ServiceCompat.startForeground with error handling
- replaces `Service.startForeground` with `ServiceCompat.startForeground` with support for different API levels;
- adds try-catch block to handle exceptions and report errors if startForeground fails.

references:
- https://issuetracker.google.com/issues/307329994
- https://developer.android.com/develop/background-work/services/foreground-services#start
2024-07-25 18:04:11 -03:00