Zprávy DUMP

DUMP (Dronetag Unified Message Protocol) je interní formát zpráv Dronetagu, který jednotně používají všechny naše služby. Ať pracujete s naším REST API, se Socket.io, nebo s integrací přes náš portál, můžete se spolehnout, že standardním formátem pro výměnu dat je DUMP.
Aktuální verze je DUMP v1.
DUMP podporuje tyto typy zpráv:
- Operation ⏺︎
- OperationUpdate ⏺︎
- Telemetry-UA ⏺︎ (často zkracováno jako TELE-UA)
- Telemetry-Operator ⏺︎ (TELE-Operator)
- Telemetry-System ⏺︎ (TELE-System)
Podrobnosti o těchto typech zpráv, včetně toho, kdy a jak se používají, najdete níže.
Přestože usilujeme o úplnou jednotnost, některé služby mohou ještě používat starší formáty zpráv. Na převodu všech služeb na formát DUMP aktivně pracujeme, zatím ale musíme zachovat zpětnou kompatibilitu se staršími API. Dokud API v1 úplně neukončíme, můžete narazit na formáty, které DUMP neodpovídají.
Typy zpráv DUMP
Operation (nebo OperationUpdate)
Náhled schématu JSON
| Vlastnost | Typ | Popis | Povinná |
|---|---|---|---|
id | string | Jedinečné ID operace (obvykle ve tvaru UUID) | Ano |
status | Object 'DUMPOperationStatus' | Aktuální stav operace | Ano |
sensor_id | string | Jedinečný identifikátor senzoru nebo zařízení této operace. | Ano |
uas_operator_id | any | ID provozovatele UAS (obvykle ve tvaru UUID) | Ne |
ua_classification | any | TODO | Ne |
ua_classification_type | any | TODO | Ne |
ua_identifiers | array of 'DUMPUAIdentifier' objects | Kolekce identifikátorů UA | Ne |
authentication | array of 'DUMPSignature' objects | Kolekce podpisů prokazujících pravost | Ne |
descriptions | array of 'DUMPOperationDescription' objects | Kolekce různých popisů operace, například pro podrobný slovní popis stavu operace | Ne |
warnings | array of 'DUMPWarning' objects | Seznam varování k operaci. Varování obvykle vznikají při příjmu telemetrických dat, která nesplňují požadavky nebo obsahují problematické hodnoty. Varování se vygeneruje například tehdy, když telemetrická data obsahují neplatná pole nebo časová razítka. | Ne |
📋 Úplné schéma JSON najdete v naší dokumentaci API
Zpráva Operation obsahuje statické informace o konkrétním letu. Tato data se oddělují do objektu operace proto, aby se v každé telemetrické zprávě neopakovaly neměnné informace, jako je sériové číslo dronu nebo ID modulu Remote ID (RID).
Jedna operace nemusí vždy odpovídat přesně jednomu letu. Pokud se let zaznamenává několika systémy — například kombinací síťového Remote ID a pozemních přijímačů přímého Remote ID —, může být rozdělen do více operací.
Rozdíl mezi Operation a OperationUpdate je podstatný. Zpráva Operation představuje úplný stav letu v okamžiku požadavku a vrací se při dotazu přes REST API. Naproti tomu zprávy OperationUpdate představují dílčí změny, které se posílají hlavně v reálném čase (např. přes Socket.io nebo přes náš portál integrací). OperationUpdate obsahuje jen nedávné změny, ne celý stav.
Příklad
{
"id": "a45cb00e-b600-4111-bd52-42537c28feb3",
"status": "current",
"uas_operator_id": "FIN87astrdge12k8",
"ua_classification": "class1",
"ua_classification_type": "open",
"ua_identifiers": [
{
"type": "serial_number",
"value": "15968AB92D361"
},
{
"type": "caa_assigned",
"value": "JA.JU12345ABCDE"
}
],
"authentication": [],
"descriptions": []
}
Telemetry-UA
Náhled schématu JSON
| Vlastnost | Typ | Popis | Povinná |
|---|---|---|---|
timestamp | string (date-time) | Původní časové razítko telemetrie. Čas z přijímače GNSS (UTC) | Ano |
timestamp_accuracy | number | Přesnost časového razítka (max. chyba) [s] | Ne |
sensor_id | string | Jedinečný identifikátor senzoru nebo zařízení, které telemetrická data původně přijalo. Ve zprávách Telemetry-System toto pole určuje systém, ze kterého zpráva pochází. | Ano |
operation_id | string | ID operace (obvykle ve tvaru UUID) | Ano |
operational_state | Object 'DUMPOperationalState' | Aktuální stav UA | Ano |
location | any | Poloha UA z GNSS | Ne |
altitudes | array of 'DUMPAltitude' objects | Kolekce výšek | Ne |
velocity | any | Rychlost UA a související údaje | Ne |
air_pressure | any | Naměřený tlak vzduchu [hPa] | Ne |
📋 Úplné schéma JSON najdete v naší dokumentaci API
Zpráva Telemetry-UA je hlavní datový objekt pro Remote ID. Zachycuje okamžitou geografickou polohu bezpilotního letadla (UA), jeho stav a další údaje, které vyžadují předpisy o Remote ID.
Každá zpráva Telemetry-UA je přes pole operation_id přiřazena k jedné zprávě Operation. Každé zařízení s Remote ID během provozu generuje zprávy Telemetry-UA.
Příklad
{
"operation_id": "a45cb00e-b600-4111-bd52-42537c28feb3",
"timestamp": "2024-10-05T10:15:06.100Z",
"timestamp_accuracy": 0.1,
"operational_state": "airborne",
"location": {
"latitude": 50.073873, "longitude": 14.466586, "accuracy": 50
},
"altitudes": [
{ "type": "WGS84", "value": 192.5, "accuracy": 10 },
{ "type": "QNE", "value": 323.1, "accuracy": 0.5 },
{ "type": "AGL", "value": -10.0, "accuracy": 0.5 }
],
"velocity": {
"heading": 92, "horizontal_speed": 9.72, "vertical_speed": 1.22, "speed_accuracy": 0.5
},
"air_pressure": 1017.712
}
Telemetry-Operator
Náhled schématu JSON
| Vlastnost | Typ | Popis | Povinná |
|---|---|---|---|
timestamp | string (date-time) | Původní časové razítko telemetrie. Čas z přijímače GNSS (UTC) | Ano |
timestamp_accuracy | number | Přesnost časového razítka (max. chyba) [s] | Ne |
sensor_id | string | Jedinečný identifikátor senzoru nebo zařízení, které telemetrická data původně přijalo. Ve zprávách Telemetry-System toto pole určuje systém, ze kterého zpráva pochází. | Ano |
operation_id | string | ID operace (obvykle ve tvaru UUID) | Ano |
location | Object 'DUMPLocation' | Poloha z GNSS | Ano |
altitude | Object 'DUMPAltitude' | Výška operátora | Ano |
source_type | Object 'DUMPOperatorSourceType' | Povaha polohy operátora | Ano |
📋 Úplné schéma JSON najdete v naší dokumentaci API
Zpráva Telemetry-Operator sleduje polohu operátora. Některé systémy UAV hlásí polohu pilota v reálném čase prostřednictvím svého ovládacího vybavení. Drony se standardním Remote ID mohou poskytovat sledování operátora, kdežto moduly Remote ID obvykle hlásí jen místo vzletu.
Příklad
{
"operation_id": "a45cb00e-b600-4111-bd52-42537c28feb3",
"timestamp": "2024-10-05T10:15:06.100Z",
"timestamp_accuracy": 0.1,
"location": {
"latitude": 50.073873, "longitude": 14.466586, "accuracy": 50
},
"altitude": {
"type": "WGS84", "value": 202.5, "accuracy": 10
},
"source_type": "take_off"
}
Telemetry-System
Náhled schématu JSON
| Vlastnost | Typ | Popis | Povinná |
|---|---|---|---|
timestamp | string (date-time) | Původní časové razítko telemetrie. Čas z přijímače GNSS (UTC) | Ano |
timestamp_accuracy | number | Přesnost časového razítka (max. chyba) [s] | Ne |
sensor_id | string | Jedinečný identifikátor senzoru nebo zařízení, které telemetrická data původně přijalo. Ve zprávách Telemetry-System toto pole určuje systém, ze kterého zpráva pochází. | Ano |
operation_id | any | ID operace (obvykle ve tvaru UUID). Nepovinné, protože zprávy Telemetry-SYSTEM jsou k operacím přiřazeny jen ve zvláštních případech, například když je systémem systém NRI (síťové Remote ID). | Ne |
system_type | Object 'DUMPSystemType' | Typ zařízení | Ano |
system_status | Object 'DUMPSystemStatus' | Aktuální stav systému | Ano |
location | any | Aktuální poloha systému | Ne |
altitude | any | Aktuální výška systému | Ne |
power_source | any | Aktuální zdroj napájení systému a jeho stav | Ne |
lte_connectivity | any | Aktuální připojení LTE systému a jeho stav | Ne |
gnss_connectivity | any | Aktuální připojení GNSS systému a jeho stav | Ne |
📋 Úplné schéma JSON najdete v naší dokumentaci API
Zpráva Telemetry-System nese informace o stavu samotného modulu Remote ID, nikoli letadla. Obsahuje údaje o nabití baterie, připojení GNSS, signálu LTE a dalších parametrech systému. Zprávy Telemetry-System zatím generují jen zařízení Dronetag.
Příklad
{
"operation_id": "a45cb00e-b600-4111-bd52-42537c28feb3",
"timestamp": "2024-10-05T10:15:06.100Z",
"timestamp_accuracy": 0.1,
"system_type": "rid_module",
"system_status": "operational",
"power_source": {
"type": "battery",
"input_voltage": 4.11,
"charge_percentage": 90,
"is_being_charged": false
},
"lte_connectivity": {
"status": "connected",
"rsrq": -10,
"rsrp": -97,
"snr": 9,
"tac": "291E",
"cell_id": "555CA02"
},
"gnss_connectivity": {
"status": "connected",
"satellites": 12
}
}