feat: implement runway observations monitoring panel and Telegram alert utilities
This commit is contained in:
@@ -1,5 +1,5 @@
|
|||||||
export const MONITOR_CITY_DETAIL_DEPTH = "panel" as const;
|
export const MONITOR_CITY_DETAIL_DEPTH = "panel" as const;
|
||||||
export const MONITOR_REFRESH_INTERVAL_MS = 60_000;
|
export const MONITOR_REFRESH_INTERVAL_MS = 300_000;
|
||||||
|
|
||||||
export type MonitorRefreshTrigger = "initial" | "interval";
|
export type MonitorRefreshTrigger = "initial" | "interval";
|
||||||
|
|
||||||
|
|||||||
@@ -165,7 +165,7 @@ export function RunwayObservationsPanel() {
|
|||||||
ensureCityDetail(city.key, true, "panel"),
|
ensureCityDetail(city.key, true, "panel"),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}, 60_000);
|
}, 300_000);
|
||||||
return () => {
|
return () => {
|
||||||
if (intervalRef.current) clearInterval(intervalRef.current);
|
if (intervalRef.current) clearInterval(intervalRef.current);
|
||||||
};
|
};
|
||||||
|
|||||||
+19
-19
@@ -771,25 +771,25 @@ def _get_airport_daily_high(city_weather: Dict[str, Any]):
|
|||||||
|
|
||||||
# Per-city push interval — unified to 60s, obs_time dedup prevents spam
|
# Per-city push interval — unified to 60s, obs_time dedup prevents spam
|
||||||
_AIRPORT_PUSH_INTERVAL = {
|
_AIRPORT_PUSH_INTERVAL = {
|
||||||
"seoul": 60,
|
"seoul": 300,
|
||||||
"busan": 60,
|
"busan": 300,
|
||||||
"tokyo": 60,
|
"tokyo": 300,
|
||||||
"ankara": 60,
|
"ankara": 300,
|
||||||
"helsinki": 60,
|
"helsinki": 300,
|
||||||
"amsterdam": 60,
|
"amsterdam": 300,
|
||||||
"istanbul": 60,
|
"istanbul": 300,
|
||||||
"paris": 60,
|
"paris": 300,
|
||||||
"hong kong": 60,
|
"hong kong": 300,
|
||||||
"lau fau shan": 60,
|
"lau fau shan": 300,
|
||||||
"taipei": 60,
|
"taipei": 300,
|
||||||
"beijing": 60,
|
"beijing": 300,
|
||||||
"shanghai": 60,
|
"shanghai": 300,
|
||||||
"guangzhou": 60,
|
"guangzhou": 300,
|
||||||
"shenzhen": 60,
|
"shenzhen": 300,
|
||||||
"qingdao": 60,
|
"qingdao": 300,
|
||||||
"chengdu": 60,
|
"chengdu": 300,
|
||||||
"chongqing": 60,
|
"chongqing": 300,
|
||||||
"wuhan": 60,
|
"wuhan": 300,
|
||||||
}
|
}
|
||||||
# Per-city temperature window threshold (°C below DEB predicted high)
|
# Per-city temperature window threshold (°C below DEB predicted high)
|
||||||
# Continental airports: wider window (temp rises steadily over land)
|
# Continental airports: wider window (temp rises steadily over land)
|
||||||
|
|||||||
Reference in New Issue
Block a user