Files
ECAP_Server/module/Local_Server/External_Database/OpenSky_FlightData_Api.cpp
T
2026-06-16 11:18:22 +08:00

31 lines
1.3 KiB
C++

// 数据来源:OpenSky FlightData API。按 ICAO24 和时间范围查询历史航班与起降机场。
// 链接:https://openskynetwork.github.io/opensky-api/rest.html
// 该来源不是全量 CSV;表作为 API 查询结果缓存,主键为 ICAO24 与时间范围。
// 官方更新要求:API 按请求提供数据并有调用限额,不执行全量定时下载。
// 本地告警策略:动态缓存不显示周期性过期告警。
#include "Resource_Utils.h"
std::unique_ptr<External_Resources> make_opensky_flightdata_api_resource() {
return External_Database_Utils::make_schema_only_resource({
"opensky_flightdata_api_cache",
"OpenSky FlightData API 查询缓存,按 ICAO24 和时间范围保存历史航班起降机场结果。",
0,
R"sql(
CREATE TABLE IF NOT EXISTS opensky_flightdata_api_cache (
icao24 TEXT NOT NULL,
begin_time TEXT NOT NULL,
end_time TEXT NOT NULL,
callsign TEXT,
est_departure_airport TEXT,
est_arrival_airport TEXT,
first_seen TEXT,
last_seen TEXT,
raw_json TEXT,
PRIMARY KEY (icao24, begin_time, end_time)
);
)sql",
{"icao24", "begin_time", "end_time"}
});
}