zoffline/zwift-offline

Request: Setting gear of Strava activity

Closed this issue · 4 comments

Is it possible to set the gear_id on the uploaded Strava activity?

I have tested stravalib and was able to update the gear_id of the activity using the code below.

update = client.update_activity(activity.id, gear_id='b13500722')

Can this be called after uploading the activity to Strava?

You can try replacing this line

strava.upload_activity(BytesIO(activity.fit), data_type='fit', name=activity.name)

with

        activity_uploader = strava.upload_activity(BytesIO(activity.fit), data_type='fit', name=activity.name)
        activity_uploader.wait()
        strava.update_activity(activity_uploader.activity_id, gear_id='b13500722')

You may need to change this line

scope='activity:write')

like this

                                  scope=['activity:read', 'activity:write'])

Thanks! Got it working. (revoke previous strava token and issue new with added scope)

Alternatively is to use something like https://www.activityfix.com/ to set the gear when the type is virtual.

Alternatively is to use something like https://www.activityfix.com/ to set the gear when the type is virtual.

I'm planning of a gear selection option at the login screen before lauching zwift client. I just need to fetch all gears and add a dropdown selection on that sceeen.