feat: Add ability to request telemetry from a remote node#4059
Merged
Conversation
This commit introduces the functionality to request telemetry data from a remote node. It adds: - `requestTelemetry` to the `IMeshService` AIDL interface. - Implementation in `MeshService.kt` to send a `TELEMETRY_APP` packet. - A new `RequestTelemetry` action and UI button in the node detail view. - Handling of the action in `NodeDetailViewModel`. Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
This commit refactors the Node Detail screen to align with Material 3 design principles, improving the visual structure and user experience. Key changes include: - Replaced `TitledCard` with `ElevatedCard` for a more modern, elevated appearance across all sections (Details, Actions, Position, Metrics, etc.). - Redesigned the `NodeDetailsSection` to use a two-column layout for better space utilization and readability. - Updated action buttons in `DeviceActions` and `PositionSection` to use `Button`, `OutlinedButton`, `AssistChip`, and `IconToggleButton` for clearer primary and secondary actions. - Converted remote device actions (`Traceroute`, `Request Neighbors`, etc.) from `ListItem`s to `AssistChip`s within a `FlowRow` for a more compact and intuitive interface. - Introduced `ElevatedCard` with distinct headers for each section, providing better visual separation and hierarchy. - Reordered sections in `NodeDetailList` for a more logical flow, placing primary actions higher. - General styling improvements, such as using `HorizontalDivider` and consistent padding/spacing. Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
This change enhances the telemetry request functionality by allowing the user to specify the type of metrics they want to receive. - Introduces a `TelemetryType` enum to differentiate between various telemetry data like Device, Environment, Air Quality, Power, and Local Stats. - Updates the UI to provide separate buttons for each telemetry type request. - Modifies the `requestTelemetry` service call to include the specific telemetry type, allowing for more targeted data requests to nodes. Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
Groups the remote device action chips under a "Request" heading on the node detail screen for better UI organization. The chip labels have also been shortened for a cleaner look. Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Request Telemetry and Node Details UI/UX Refresh
resolves #3610
This refreshes the Node Details ui to accommodate more actions, and includes support for Request Telemetry which in reality is several actions: