An Alexa skill to access activity information through the Strava API. Developed and tested on AWS Lambda.
response.py
defines classes for creating Alexa responses and for accessing the Strava API. Valid requests are passed by a handler in lambda_function.py
to one of 10 request types defined in request.py
.
These are:
‘Ask Run Counter for my latest run’
‘Give my my stats’ ‘Ask Run Counter for my cycling stats’
how far/for how long/how many times the user did any Strava activity type in a day, week, month or year.
‘How far did I row in July?’ ‘For how long did I run last year?’ ‘How many times have I cycled this month?’
‘Ask Run Counter for my friend report’ ‘Ask Run Counter for my friend running report’
the user's follower (people they follow, and who follow them) report, running report or cycling report
‘Ask Run Counter for my follower report’ ‘Ask Run Counter for my follower running report’
See the intent schema for a more comprehensive list of possible queries.
The skill has been developed and tested using AWS Lambda.
OAuth authentication for the Strava API is handled by Alexa Skills Service.
Note: A dialog directive is used to resolve slot values for certain requests. This isn't yet supported by the Alexa testing interface.