Tp2intervals - Copy TrainingPeaks and TrainerRoad workouts\plans to Intervals

Now it works perfectly thank you. One question. Can you transfer over workout libraries? Not the workouts planned in your calendar, but the list of workouts in your workout folders on the left hand side?

Yes. Click TrainingPeaks → Copy Plan, then select plan or workout library from the list.

2 Likes

Thanks that worked a treat! I had not scrolled down far enough to see the workout libraries

Hello, I am trying to get this setup using a Mac computer.
Trying to follow the instructions here.

However, I can’t seem to find or get the required info off the developers tools page settings in my chrome browser for both intervals.icu or training peaks.

Any help or suggestions would be greatly appreciated.

Where are you getting stuck?
Which step?

Have you tried this?

Hi, everyone

New version 0.6.0 is available on GitHub Release v0.6.0 · freekode/tp2intervals · GitHub

I added support for TrainingPeaks Coach accounts. Now as a coach you can copy your plans and workout libraries from TrainingPeaks to Intervals.

6 Likes

@Someone_Else This is awesome - thank you! When importing a plan from TP, how do you determine what the start date is?

drag it in to your calendar to the date you want it to start?

It returned in TP rest api, although it’s used only on backend. All imported plans in Intervals start from this Monday.

I see that workout in TP appear in intervals but very ofter the ride is paired with the wrong WO (when I have more than one on the same day, for example). I see that you can unpair the workout from the ride but do not understand how to pair a specific WO to a given ride. I cannot use executable on my PC, so i think that most of the github stuff is not good for me (even if I understood what it is).
Any idea?
Thanks,

On Intervals.icu you can drag a paired workout off a completed activity and the drop it on another complete activity to parr with that one.

Thanks, I will try that one, but until now it never paired with the right WO (probably my fault).

HI all.
Firstly - great app. Really useful to get the most out of TR, Intervals, and Zwift - thanks for the hard work here.

This error started appearing yesterday - it’s been working up until now. I downloaded v6 but I’m getting the same error. Any thoughts?

Probably TrainerRoad changed rest api response.
Unfortunately, I don’t have access to TrainerRoad anymore and I can’t reproduce the issue myself.

I released v0.6.1 (Release v0.6.1 · freekode/tp2intervals · GitHub) with logging update, download new version, do these steps (How to get logs for your issue) GitHub - freekode/tp2intervals: Tool to sync between TrainingPeaks, TrainerRoad and Intervals.icu and send me the logs, maybe I can figure out what they changed.

Here’s part of the stack trace - let me know if you want more

[2024-05-05 17:35:22.342] [info] boot: 2024-05-05T17:35:22.294+01:00 DEBUG 13100 — [io-10576-exec-5] o.f.t.i.p.t.TrainerRoadApiClient : [TrainerRoadApiClient#getWorkout] <— END HTTP (1077340-byte body)

[2024-05-05 17:35:22.361] [info] boot: 2024-05-05T17:35:22.347+01:00 ERROR 13100 — [io-10576-exec-5] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path threw exception [Request processing failed: feign.codec.DecodeException: Error while extracting response for type [class org.freekode.tp2intervals.infrastructure.platform.trainerroad.workout.TRWorkoutResponseDTO] and content type [application/json;charset=utf-8]] with root cause

com.fasterxml.jackson.module.kotlin.MissingKotlinParameterException: Instantiation of [simple type, class org.freekode.tp2intervals.infrastructure.platform.trainerroad.workout.TRWorkoutResponseDTO$TRWorkout] value failed for JSON property intervalData due to missing (therefore NULL) value for creator parameter intervalData which is a non-nullable type
at [Source: (org.springframework.util.StreamUtils$NonClosingInputStream); line: 1, column: 1074138] (through reference chain: org.freekode.tp2intervals.infrastructure.platform.trainerroad.workout.TRWorkoutResponseDTO[“Workout”]->org.freekode.tp2intervals.infrastructure.platform.trainerroad.workout.TRWorkoutResponseDTO$TRWorkout[“intervalData”])

Can you send whole log file to iam@freekode.org

You can try version 0.6.2

1 Like

Has anyone been able to verify the TrainerRoad functionality is fixed in 0.6.2?

I am thinking of renewing with TR and really hope that this still works

Hey - works perfectly - thanks very much for fixing!

1 Like