SimTX API/Packets/StationImpactList: Difference between revisions
Appearance
Clanker moved page SimTX API/Packets/StationImpactList to SimTX API v24/Packets/StationImpactList: Archive the v24 protocol reference Tag: New redirect |
Protocol v25 reference: StationImpactList Tag: Removed redirect |
||
| Line 1: | Line 1: | ||
# | {{SimTX API navigation}} | ||
{{SimTX packet | |||
| name = StationImpactList | |||
| frame = ServerFrame | |||
| field = 63 | |||
| member = station_impacts | |||
| direction = s2c | |||
| session = [[SimTX API/Moderation session|Moderation]] | |||
| roles = <code>ROLE_MODERATION</code>. | |||
| permission = None | |||
| answers = [[SimTX API/Packets/ListStations|ListStations]] | |||
| group = moderation | |||
| file = control.proto | |||
}} | |||
'''StationImpactList''' is an interference analysis for moderators. On a [[SimTX API/Moderation session|moderation session]] the server sends it right after the [[SimTX API/Packets/StationList|StationList]] that answers a [[SimTX API/Packets/ListStations|ListStations]]. It ranks transmitters by how much they affect receivers, which helps to find jammers and badly configured stations. | |||
== Definition == | |||
<syntaxhighlight lang="protobuf"> | |||
message StationImpactList { int64 request_id = 1; repeated TransmitterImpact impacts = 2; } | |||
</syntaxhighlight> | |||
== Fields == | |||
{| class="wikitable" | |||
! # !! Field !! Type !! Description | |||
|- | |||
| 1 || <code>request_id</code> || <code>int64</code> || The [[SimTX API/Packets/ListStations|ListStations]] <code>request_id</code>. | |||
|- | |||
| 2 || <code>impacts</code> || <code>repeated</code> [[#TransmitterImpact|TransmitterImpact]] || One entry per transmitter, highest impact first. | |||
|} | |||
=== TransmitterImpact === | |||
<syntaxhighlight lang="protobuf"> | |||
message TransmitterImpact { | |||
bytes session_id = 1; | |||
string callsign = 2; | |||
string address = 3; | |||
double frequency_hz = 4; | |||
string modulation = 5; // string enum (common.proto) | |||
float power_watts = 6; | |||
float occupied_bandwidth_hz = 7; | |||
float impact_score = 8; | |||
int32 affected_receivers = 9; | |||
float nearest_receiver_km = 10; | |||
string reasons = 11; | |||
} | |||
</syntaxhighlight> | |||
{| class="wikitable" | |||
! # !! Field !! Type !! Description | |||
|- | |||
| 1 || <code>session_id</code> || <code>bytes</code> || 16-byte transmission id. | |||
|- | |||
| 2 || <code>callsign</code> || <code>string</code> || Callsign. | |||
|- | |||
| 3 || <code>address</code> || <code>string</code> || Client address. | |||
|- | |||
| 4 || <code>frequency_hz</code> || <code>double</code> || Carrier frequency, Hz. | |||
|- | |||
| 5 || <code>modulation</code> || <code>string</code> || [[SimTX API/Data types#Modulation|Modulation]] name. | |||
|- | |||
| 6 || <code>power_watts</code> || <code>float</code> || Power, W. | |||
|- | |||
| 7 || <code>occupied_bandwidth_hz</code> || <code>float</code> || Occupied bandwidth, Hz. | |||
|- | |||
| 8 || <code>impact_score</code> || <code>float</code> || Largest spectral overlap with any receiver's passband, percent (0 to 100). The list is sorted by this value, highest first. | |||
|- | |||
| 9 || <code>affected_receivers</code> || <code>int32</code> || Receivers whose passband the transmitter overlaps significantly. | |||
|- | |||
| 10 || <code>nearest_receiver_km</code> || <code>float</code> || Great-circle distance to the nearest receiver, km. NaN when there are no receivers. | |||
|- | |||
| 11 || <code>reasons</code> || <code>string</code> || Human-readable notes, such as an overdriven amplifier. | |||
|} | |||
== See also == | |||
* [[SimTX API/Moderation session]] | |||
{{SimTX API navbox}} | |||
[[Category:SimTX API]] | |||
Latest revision as of 17:01, 24 October 2026
| Frame | ServerFrame, field 63
|
|---|---|
| Member | station_impacts
|
| Direction | Server → client |
| Session | Moderation |
| Roles | ROLE_MODERATION.
|
| Permission | None |
| Answers | ListStations |
| Defined in | control.proto
|
StationImpactList is an interference analysis for moderators. On a moderation session the server sends it right after the StationList that answers a ListStations. It ranks transmitters by how much they affect receivers, which helps to find jammers and badly configured stations.
Definition[edit | edit source]
message StationImpactList { int64 request_id = 1; repeated TransmitterImpact impacts = 2; }
Fields[edit | edit source]
| # | Field | Type | Description |
|---|---|---|---|
| 1 | request_id |
int64 |
The ListStations request_id.
|
| 2 | impacts |
repeated TransmitterImpact |
One entry per transmitter, highest impact first. |
TransmitterImpact[edit | edit source]
message TransmitterImpact {
bytes session_id = 1;
string callsign = 2;
string address = 3;
double frequency_hz = 4;
string modulation = 5; // string enum (common.proto)
float power_watts = 6;
float occupied_bandwidth_hz = 7;
float impact_score = 8;
int32 affected_receivers = 9;
float nearest_receiver_km = 10;
string reasons = 11;
}
| # | Field | Type | Description |
|---|---|---|---|
| 1 | session_id |
bytes |
16-byte transmission id. |
| 2 | callsign |
string |
Callsign. |
| 3 | address |
string |
Client address. |
| 4 | frequency_hz |
double |
Carrier frequency, Hz. |
| 5 | modulation |
string |
Modulation name. |
| 6 | power_watts |
float |
Power, W. |
| 7 | occupied_bandwidth_hz |
float |
Occupied bandwidth, Hz. |
| 8 | impact_score |
float |
Largest spectral overlap with any receiver's passband, percent (0 to 100). The list is sorted by this value, highest first. |
| 9 | affected_receivers |
int32 |
Receivers whose passband the transmitter overlaps significantly. |
| 10 | nearest_receiver_km |
float |
Great-circle distance to the nearest receiver, km. NaN when there are no receivers. |
| 11 | reasons |
string |
Human-readable notes, such as an overdriven amplifier. |