Перейти до змісту

Що аналізується

Щоразу, коли PeakLine отримує одну з ваших активностей, він запускає той самий конвеєр аналізу. Ця сторінка — карта цього конвеєра: що обчислюється, що потрібно і де читати докладніше.

Конвеєр з висоти пташиного польоту

Strava webhook / manual refresh
1. Ownership and access check
2. Fetch streams (lat/lng, time, heartrate, watts, cadence, altitude, velocity, temp)
3. Fetch laps, zones, kudos, photos
4. Fetch historical weather (Open-Meteo)
5. Fetch air quality (OpenWeather)
6. Compute metrics
        ├── Power: NP, IF, TSS, zone time
        ├── HR:    avg/max, zone time, TRIMP
        ├── Pace:  GAP (grade-adjusted)
        ├── Climbs: auto-detect, gradient, VAM per climb
        ├── Terrain: flat | rolling | hilly | mountain | highmountain
        ├── PeakLine Score (0–1000) with tier
        ├── Stress Points (TSS-like)
        ├── Wind impact (% loss estimate)
        ├── Sun time (minutes in daylight)
        └── Comparison vs. previous 10 same-type activities
7. Cache result (cached_analysis table)
8. Optionally update Strava description (if auto-report enabled)

Уся процедура виконується приблизно за 2–8 секунд для типової активності тривалістю 1–3 години, після чого результат зберігається в кеші, тож повторні відвідування сторінки активності відбуваються миттєво.

Що потрібно для кожної метрики

Деякі метрики потребують конкретних датчиків. Ось що є обов'язковим і на що відбувається плавне резервне перемикання.

Метрика Потребує Резервний варіант
PeakLine Score відстань + час + набір висоти — (обчислюється завжди, відхиляє активності нижче порогів)
Stress Points NP (найкраще), або пульс, або темп, або швидкість обчислюється завжди з нижчою точністю
NP, IF, TSS вимірювач потужності (потік watts, ≥30 точок) оцінка IF на основі пульсу
Зони потужності (Z1–Z7) потужність + FTP, заданий у налаштуваннях немає — зони приховуються, якщо немає потужності
Зони пульсу (Z1–Z5) нагрудний пульсометр + max_hr у налаштуваннях використовує типове значення max_hr=190, якщо не задано
TRIMP пульс + пульс спокою/максимальний оцінка лише за тривалістю
GAP потоки темпу + висоти сирий темп
Виявлення підйомів потік висоти не обчислюється для активностей у приміщенні
VAM на підйом висота + час не обчислюється для активностей у приміщенні
Погода стартові lat/lng + час старту нічого, якщо координати відсутні
AQI стартові lat/lng + недавня дата нічого, якщо координати відсутні або застарілі
Вплив вітру погода + швидкість нічого
Час на сонці стартові lat/lng + тривалість нічого

Хочете все?

Найбагатший на дані аналіз дає шосейна поїздка з вимірювачем потужності та нагрудним пульсометром. Активності в приміщенні, ручні записи й активності без GPS отримують урізаний набір метрик — але ніколи не помилку.

Типи активностей, які ми підтримуємо

Тип активності Strava визначає кілька варіантів поведінки (який еталон швидкості використовувати, яку модель зон, чи мають сенс підйоми). PeakLine розпізнає:

Сімейство велосипедних: Ride, VirtualRide, MountainBikeRide, GravelRide, Velomobile, Handcycle. EBikeRide розпізнається, але виключається з PeakLine Score.

Сімейство бігових: Run, TrailRun, VirtualRun.

Інші: Hike, Walk, Swim, Workout, AlpineSki, Snowboard, BackcountrySki, Yoga, WeightTraining, RockClimbing і ще ~30. Вони отримують базовий аналіз (відстань, час, пульс, якщо записаний), але без PeakLine Score.

Як працює кешування

Результат аналізу формується за ключем (activity_id, settings_hash). Якщо ви зміните свій FTP, усі старі аналізи буде переобчислено під час наступного перегляду. Це уникає застарілих підрахунків часу в зонах, коли ви робите повторне тестування.

Примусове оновлення: відкрийте будь-яку сторінку активності й натисніть невелику кнопку у верхньому правому куті. Вона обходить кеш і повторно отримує все зі Strava.

Читати далі