fix(gps): бейдж «Нет GPS» = нет валидной GPS-точки дольше N часов (настройка), убран pin от stale-пересылок
This commit is contained in:
@@ -543,9 +543,8 @@ export async function processPosition(
|
||||
const verdict = walker.check({ lat: input.lat, lng: input.lng, recordedAt, speed: input.speed });
|
||||
if (verdict !== "accept") {
|
||||
if (verdict === "stale") {
|
||||
// Stale re-send = трекер сам сообщает, когда в последний раз видел спутники
|
||||
// (замороженный fixTime). Фиксируем как «время последнего GPS-фикса».
|
||||
await gpsStorage.updateAssetGpsFix(assetId, recordedAt);
|
||||
// Stale-копии просто пропускаем. lastGpsFixAt здесь НЕ трогаем:
|
||||
// бейдж «Нет GPS» = «нет точки с валидным GPS дольше N часов» (настройка)
|
||||
console.log(
|
||||
`[GPS] skipped stale: asset=${assetId} recordedAt=${recordedAt.toISOString()} <= lastRecordedAt=${prev?.recordedAt.toISOString()}`
|
||||
);
|
||||
@@ -566,7 +565,8 @@ export async function processPosition(
|
||||
return;
|
||||
}
|
||||
|
||||
// Точка прошла фильтры — GPS-фикс жив, двигаем время последнего фикса вперёд
|
||||
// Точка прошла фильтры и не помечена протоколом как LBS — это валидный GPS:
|
||||
// двигаем «время последнего GPS-фикса» вперёд (им питается бейдж «Нет GPS»)
|
||||
await gpsStorage.updateAssetGpsFix(assetId, recordedAt, true);
|
||||
|
||||
// Режим «потерян GPS»: если последний stale re-send был свежее 10 минут,
|
||||
|
||||
Reference in New Issue
Block a user