[feat](trx-rs): display APRS-IS connection status on About page

Thread aprs_is_status through RigState, RigSnapshot, and the protocol
layer following the same pattern as pskreporter_status. Show the
connection target and callsign when enabled, or "Disabled" otherwise.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Stanislaw Grams <stanislawgrams@gmail.com>
This commit is contained in:
2026-03-17 23:20:43 +01:00
parent 2517ed0b29
commit 7cf829ef52
10 changed files with 47 additions and 0 deletions
+7
View File
@@ -29,6 +29,8 @@ pub struct RigState {
pub server_longitude: Option<f64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub pskreporter_status: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub aprs_is_status: Option<String>,
#[serde(default)]
pub aprs_decode_enabled: bool,
#[serde(default)]
@@ -149,6 +151,7 @@ impl RigState {
server_latitude: None,
server_longitude: None,
pskreporter_status: None,
aprs_is_status: None,
aprs_decode_enabled: false,
hf_aprs_decode_enabled: false,
cw_decode_enabled: true,
@@ -217,6 +220,7 @@ impl RigState {
server_latitude: snapshot.server_latitude,
server_longitude: snapshot.server_longitude,
pskreporter_status: snapshot.pskreporter_status,
aprs_is_status: snapshot.aprs_is_status,
aprs_decode_enabled: snapshot.aprs_decode_enabled,
hf_aprs_decode_enabled: snapshot.hf_aprs_decode_enabled,
cw_decode_enabled: snapshot.cw_decode_enabled,
@@ -263,6 +267,7 @@ impl RigState {
server_latitude: self.server_latitude,
server_longitude: self.server_longitude,
pskreporter_status: self.pskreporter_status.clone(),
aprs_is_status: self.aprs_is_status.clone(),
aprs_decode_enabled: self.aprs_decode_enabled,
hf_aprs_decode_enabled: self.hf_aprs_decode_enabled,
cw_decode_enabled: self.cw_decode_enabled,
@@ -430,6 +435,8 @@ pub struct RigSnapshot {
pub server_longitude: Option<f64>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub pskreporter_status: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub aprs_is_status: Option<String>,
#[serde(default)]
pub aprs_decode_enabled: bool,
#[serde(default)]