Перейти к содержанию

Strava

Strava — основная интеграция PeakLine. Её подключение открывает полный набор функций: синхронизацию активностей, полный анализ, учёт снаряжения, достижения, авто-отчёты и Secret Club.

Подключение

  1. Откройте thepeakline.com и нажмите Connect with Strava или откройте Settings → Integrations → Strava → Connect, если у вас уже есть Email-аккаунт.
  2. Вас перенаправит на стандартную страницу OAuth2 Strava на strava.com.
  3. Strava перечислит права доступа (scopes), которые запрашивает PeakLine (см. ниже). Нажмите Authorize.
  4. Вас вернёт обратно в PeakLine с установленной сессионной cookie.
  5. PeakLine запускает первоначальную синхронизацию ваших последних 30 активностей.

Весь процесс занимает около 30 секунд.

Запрашиваемые права доступа (scopes)

Scope Что это позволяет нам делать Зачем
read Читать ваш публичный профиль и зоны Отрисовывать личный кабинет, использовать ваш FTP, если вы задали его в Strava
activity:read_all Читать все ваши активности, включая приватные Анализировать их, строить ваш личный кабинет
profile:read_all Читать поля профиля помимо публичных Более детальная отрисовка профиля (опционально)
activity:write Добавлять / обновлять описания активностей Только если вы включите авто-отчёты

Мы никогда не запрашиваем profile:write. Мы не можем изменять ваш аккаунт, подписываться на других пользователей от вашего имени или публиковать что-либо в Strava как вы.

Что синхронизируется

После подключения:

  • Новые активности подхватываются вебхуком в течение нескольких секунд после загрузки.
  • Правки (переименование активности, смена типа, скрытие из ленты) переносятся в PeakLine при следующем событии вебхука.
  • Удаления каскадно переносятся в PeakLine — удалённые активности исчезают из вашего личного кабинета.
  • Изменения снаряжения синхронизируются по запросу. Если вы добавите новый велосипед в Strava, он появится в списке снаряжения PeakLine при следующем его открытии.

Авто-обновление описаний активностей

На наш взгляд, самая полезная интеграция Strava.

Включите её в Settings → Strava → Auto-update descriptions и выберите формат:

🌡️ 14°C • 💨 12 km/h SW • 🌅 sunrise 06:43 • PLS 762 (Very Good) • SP 84 (Hard) • ❤️ Z2 65% Z3 22%
PeakLine analysis:

🏆 PeakLine Score: 762 (Very Good)
📈 Stress Points: 84 (Hard)
🌡️ Temperature: 14°C (felt like 11°C)
💨 Wind: 12 km/h from SW (−7% impact)
💧 Humidity: 68%
🌅 Sunrise: 06:43, sunset: 21:14
🌫️ Air quality: Good (AQI 2)

Heart rate zones:
Z1 5%  Z2 65%  Z3 22%  Z4 7%  Z5 1%

Climbs: 3 (total 487 m)
Best VAM: 1,143 m/h on the long climb at km 22

Compared to last 10 rides: +1.2 km/h average speed

При первом срабатывании на новой тренировке вы увидите обновление описания в Strava примерно через 30 секунд после загрузки. Обновляется только то описание, которое написал PeakLine — если вы добавите свой текст, он сохранится над блоком PeakLine.

Вы можете отключить это в любой момент или выборочно отключить для отдельной активности на её странице.

Вебхуки под капотом

PeakLine подписывается на вебхук Strava для вашего athlete ID. Когда возникает событие новой активности, Strava отправляет POST-запрос с небольшим JSON-пейлоадом в PeakLine, и мы запускаем конвейер анализа в фоне.

Что это означает на практике:

  • Никакого поллинга. PeakLine не нагружает API Strava постоянными проверками новых активностей.
  • Задержка менее минуты. Большинство активностей полностью анализируются в течение 30 секунд после того, как вы нажали «сохранить» в Strava.
  • Устойчивость. Если вебхук Strava даст сбой (перебои в их сервисе), PeakLine наверстает упущенное при следующем открытии личного кабинета.

Отключение

Любым способом:

  • Из PeakLine: Settings → Strava → Disconnect.
  • Из Strava: strava.com/settings/apps → PeakLine → Revoke Access.

Любой из путей немедленно делает токен недействительным. PeakLine прекращает синхронизацию.

Если вы переподключитесь позже, ваш аккаунт в PeakLine сохранится, но активности, синхронизированные до переподключения, возможно, придётся обновить вручную.

Лимиты запросов и учётные данные

Strava применяет строгие лимиты на API (200 запросов за 15 минут на приложение, 2000 в день). PeakLine ротирует несколько зарегистрированных учётных данных приложений Strava, чтобы не превышать лимит на приложение, с автоматическим переключением (failover) и 5-минутным кулдауном для учётных данных, давших ошибку.

Вы этого не заметите, если только не запустите массовый дозагруз (backfill) активностей за несколько лет разом. В этом случае PeakLine ставит работу в очередь и обрабатывает её за несколько минут.

Смотрите также