ev_vehicle_obs.trigger += 'geofence_arrival' (V109); presence cesta zapíše příjezd i bez píchnutí (za flagem EV_GEOFENCE_ARRIVAL_OBS_ENABLED, default OFF); fn_ev_build_trips páruje. Constraint name ověřen živě. Worktree agent. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
27 lines
1.5 KiB
SQL
27 lines
1.5 KiB
SQL
-- Geofence arrival trigger pro EV pozorování.
|
|
--
|
|
-- Dosud arrival obs (ems.ev_vehicle_obs) vznikalo JEN z wallboxu (plug-in přes
|
|
-- fn_ev_session_transition). Když uživatel nepíchne, jízda se nezaznamenala a
|
|
-- spotřební forecast (ev_trip → ev_usage_stats) o ní nevěděl.
|
|
--
|
|
-- Telemetry_collector už dnes z Tesla polohy (geofence, scope location, BEZ
|
|
-- buzení auta) detekuje přechod pryč→domů do ems.ev_presence_obs. Tato migrace
|
|
-- rozšiřuje povolené hodnoty ev_vehicle_obs.trigger o 'geofence_arrival', aby
|
|
-- presence cesta mohla zapsat příjezd i bez píchnutí do wallboxu.
|
|
--
|
|
-- Zpětná kompatibilita: stávající hodnoty 'arrival' / 'departure' / 'manual'
|
|
-- zůstávají platné; přidává se jen nová hodnota. Žádná data se nemění.
|
|
-- Párování jízd (fn_ev_build_trips) bere 'geofence_arrival' jako platný arrival
|
|
-- (R__096); wallbox 'arrival' zůstává autoritativní, geofence je doplněk pro
|
|
-- případy, kdy auto stojí doma nepíchnuté.
|
|
|
|
alter table ems.ev_vehicle_obs
|
|
drop constraint if exists ev_vehicle_obs_trigger_check;
|
|
|
|
alter table ems.ev_vehicle_obs
|
|
add constraint ev_vehicle_obs_trigger_check
|
|
check (trigger in ('arrival', 'departure', 'manual', 'geofence_arrival'));
|
|
|
|
comment on column ems.ev_vehicle_obs.trigger is
|
|
'Zdroj pozorování: arrival/departure z wallboxu (plug-in/out, autoritativní), manual ruční, geofence_arrival z Tesla polohy (přijel domů, nepíchnutý — auto vzhůru, čtení nebudí). geofence_arrival se páruje jako příjezd v fn_ev_build_trips.';
|