Step challenges and apps within TeamRaiser

Options
We are looking to incorporate a step challenge into our upcoming TR walk. The idea being that we use a step-tracking app (contracted with or perhaps homegrown) to then display those steps on the user's TR profile. So then, X steps = $Y. Our dev team is looking at "the possibility of pulling data from an existing app using Rest API or a Rest Request."


So, I suppose my question is whether anyone knows of any best practices for this, or would be willin to share experience(s) implementaing a step challenge into TR.


Thanks in advance!
Tagged:

Comments

  • That's an interesting idea although haven't really been implementing a step-tracking app on our walk events so far.


    FitBit devices seems to have an API that could possibly accomodate what you need, have you guys checked the following:
    https://dev.fitbit.com/docs/activity/


    That could be one way i could think of to begin with implementation wise (lot of folks are using fitbit nowadays)


    regards,

    Daniel
  • This is an idea I haven't heard before. Please post when you finish it so we can check it out.


    "So then, X steps = $Y" - does that mean this will tie in with a sponsor match? Are you planning on using steps during the event, or training leading up to the event?
  • This was the scenario I was presented to research.

     
    • The individual fundraiser will get commitments from friends and family to pledge them $X per X steps walked, with an optional cap. For example, Jane's uncle can pledge $1 for every 10,000 steps walked, with a cap of $50 (or 500,000 steps).
    • The uncle pledges $1 for 10,000 steps on Jane's fundraising page
    • Jane tracks her steps every day through the event
    • The app syncs to Jane's fundraising page and displays total steps (maybe once a day?)
    • Jane's fundraising page (hopefully) calculates the steps walked and money pledged per step to come up with a total dollar amount raised. Ideal: broken down by each donation/pledge. The total would also need to include the amounts from people who just donated one lump sum.
  • Interesting. Where would the pledges be stored? Perhaps in a survey.


    And then you have the whole collecting on the pledges issue. It will be very interesting to see if this approach boosts or cuts fundraising, compared to straight up donations.


    Wouldn't it be cool if you could leverage the DSP functionality somehow to get card numbers up front and charge them later?
  • JD, did you end up implementing this? Very useful concept right now, with so many events going virtual! If you did get this going, could you share some details? Were you able to integrate fitness tracking in the TR?
  • Our Events team just asked me about this.


    Tying this to fundraising is not part of this ask, just display data,


    I took a look briefly at how everyday hero does this, which actually built in integration with Fitbit and a few other trackers. (Is EDH even still a thing?) It seems like what they do/did is show a collection of individual workout sessions.


    Seems like this problem has 2 parts. First part is where to store the data. What about using the participant blog for this? No one ever uses that otherwise. It seems perfect, each workout would be a post and the followers could even comment on each workout.


    Now how do we populate the data? Of course we're all thinking API calls to FitBit and the others, which would definitely be cool. But here's one possibly easier idea. EH has a 'manually enter a workout' option that we could mimic. https://supporter.help-us.everydayhero.com/hc/en-us/articles/115004142546  Sure looks like a blog, doesn't it?


    The LO API doesn't have any TR blog integration. But maybe we could go with the old scraped form thing, or even simply manipulate the existing blog entry form directly with CSS and perhaps a little jQuery.


    Going beyond a manual entry screen is going to be a bit harder, I don't see how we could periodically ping these APIs and keep the workout session current automatically for all participants. Seems like that would really have to involve actual development in Luminate. Maybe the participant could kick off a sync manually which would then retrieve the workout information via the Fitbit API. Beyond that it seems like we have to build outside of Luminate and just embed it somehow within the participant page.


    If I get any further with this I'll update but I just wanted to throw it out there and see what people thought.


    BPM
  • That's a nice idea. I've used custom interactions in the past a bit.


    What kicks off the call to the Strava API to get the data for the interaction? Is it a button click by the participant?
  • An initial call is made to the Strava API as soon as the participant grants permission to access their account from their participant center. Depending on your use case this might vary, but as an example, this initial call can get all activity logged so far in 2020. From that point forward, Strava webhooks are used to handle every new activity that is logged. This requires server-side code hosted outside of Luminate Online to take in the Strava webhook data and then call the Luminate API.

     
  • Another possible option?


    If the app in question has a UUID for each user, might be possible to make a registration question that asks for the details, then use a plain ol' conditional + [[S48:trID-cons_id:question:X]] to pull that into an iframe, widget, or off-platform API call. You'd need a guide to help the participant find his/her identifier, and probably some customization to add the question into PC3 or a lightbox prompt, but it might be less complicated than a full-on convio API customization.
  • Nice work there, Tanna. I forwarded this to my events team and now I think we're going to emulate your work.


    Thanks for posting!


    BPM
  • Tanna, that's exactly what my CSM just showed me. Great work!

    Curious, are you able to use this data to track individual progress or team progress if you wanted to make a leaderboard based on activity progress?

    That's the question I'm getting from my team.
  • Brian Mucha:

    Nice work there, Tanna. I forwarded this to my events team and now I think we're going to emulate your work.


    Thanks for posting!


    BPM

    Thanks B!  Keep us in the loop with what you end up with!

  • Vanessa Cosio:

    Tanna, that's exactly what my CSM just showed me. Great work!

    Curious, are you able to use this data to track individual progress or team progress if you wanted to make a leaderboard based on activity progress?

    That's the question I'm getting from my team.

    Vanessa Cosio‍ - I would think so, but it depends on where you store the data and how complicated you want to get.


    A very simple solution, as I mentioned, is to encourage your participants to join a Strava club for the event, which gives access to a weekly leaderboard of the top 10. 


    But it sounds like you hope to base it on the participant data collected in your survey content.  So that would depend on where that data lives, but you can likely use s-tags to roll-your-own-API / pull all the relevant data and sort and display it. You can get at the custom profile fields using [[E48:[[S334:fr_id]]-[[S334:px]]:cons.custom_...]] (with the ... being the rest of your specific field name) as in the example I provided above, but if you are not writing the survey data to custom profile fields, you might still have some viable s-tag options - search the Community for "roll your own" and you will see additional helpful posts, including examples with survey data...


    Hope that sparks some ideas for your team, and maybe some of our amazing colleagues on this Community have some more pointers!

  • I've had a few people ask about a follow up on my comment above. The Strava integration I referenced is live on the JDRF Ride website. Here's an example showing a participant's activity stream pulled into their TeamRaiser personal page:

    https://www2.jdrf.org/site/TR?fr_id=8090&pg=personal&px=10924655


    Here's an example of a week-long challenge with a collective thermometer and leaderboard for all riders:

    https://www2.jdrf.org/site/SPageServer?pagename=ride_challenge&challenge_id=ride-away-from-home


    (You can see more challenges at https://www2.jdrf.org/site/SPageServer?pagename=ride_challenges.)
  • Just sharing another example here. We found that getting some participants to download an additional app to track their steps outside of maybe already having a FitBit or Apple Watch might be a barrier, so we created a simple solution for participants to add a step goal and add to it each time they go out. The team goal is the sum of all team member goals.


    Here is an example of the front end progress thermometers: https://secure.rubanrose.org/site/TR?fr_id=1080&pg=entry&s_locale=en_CA


    Here it is in the updated PC3:
  • hi Hilary Engelbrecht‍ - I really like this implementation! I think the personal pages are using that 'question' updated via the participant center to power the 2nd thermometer, but how is the campaign-wide calculation being done?

  • Chris Cain‍ , a light middleware calculates that.
  • Resurrecting this thread, to see if anyone's carrying this stuff into the new year (especially if you've got a hybrid/live event planned). And for those who ended up putting something into production, are there any lessons learned worth sharing with the class?


    If you haven't checked out what Noah did with Strava on JDRF's site, it's truly inspiring. Capturing everything through custom interactions in LO is obviously the way to go if you've got the institutional knowledge.

    Tanna, did you wind up putting the iFrame solution into production? If so, how'd it go?

    Brian, did LCH end up doing anything? And are you still using that custom interactions-based social media panel you'd made a couple years back (or some 2.0 version of it)?

    Hilary, how'd it work out for QBCF? Did participants like it?
  • We wound up going with Charity Dynamics Boundless Motion as a short term solution. Too expensive to stay with in the long term for us though.


    We've done a little bit on this on our own so far. We've done the Strava API work, and are now starting on dealing with storage. Noah's solution with interactions is neat, but I think it can't do leader boards and team or event level totals. We're looking at AWS for that part.


    We do still use the solution I made for Social Media - "Handraisers" - that uses the interactions API. The interactions API was pretty easy to use as I recall. Way more so than all the different social media APIs that never seem to settle down. Happy to share if you're interested.


    BPM
  • The solution using custom interactions can indeed provide leaderboards at the event, team, and company level. See https://www2.jdrf.org/site/TR?fr_id=8212&pg=entry as an example -- in the leaderboard, you can show top participants and teams by either Fundraising or Miles. (That is not to say that adding in some third-party storage solution might not prove a better fit, especially if you happen to already be using something like AWS.)
  • Interesting, that's doing more than I recall from when I first looked at it.


    I'm interested to see if this is storing running totals for all these groups, or if it's pulling all the participant totals and doing the math in the browser.


    Still not sure it will work for what our team wants. We could have around 500 participants or maybe even more, and the big kicker was that Events wanted to be able to edit individual daily sessions in order to award 'bonus miles' on certain days. Basically a way to ensure they made their event's conceptually important mileage goal. ("Help us stair climb all the way to the moon!")
  • Brian Mucha‍ we actually developed a custom DataSync process that runs every 15 minutes to aggregate the total distance, elevation, and moving time, that is what is used on pages like the greeting page, the personal page, the team page, and the company page (rather than any math in the browser). There's really no limit on the total number of participants, JDRF has had thousands of participants connect to Strava since this was added.
  • Thanks Noah. That DataSync must be something that lives outside of Luminate? Or is scheduling processes like that something the CRM offers?


    EDIT: Oops, you already answered this earlier. Yep, outside of LO and using WebHooks.
  • Brian Mucha‍ Blackbaud's Data Integration team can create scheduled processes in Luminate Online to do this sort of thing. Most commonly these are import/export operations that run nightly, but in this case it was important that the data was closer to real-time, and since the process is not resource intensive it's able to be scheduled to run more regularly.
  • Hey Jeremy Reynolds‍, yep we put it in just as described. Went fine - about 10% of our registrants made use of it, no snags. They also had a much higher fundraising average at about $1000 more per participant than those who did not set up the distance goal/strava link tool, but it may be more because that particular set of fundraisers are super engaged in general (rather than us being able to say unequivocally that this particular tool inspired them to raise more.) Still, it was good to be able to offer another way to engage virtually. We are offering the same again this year and several participants have set it up again so far (about 3 weeks since launch). I'll circle back if we see really different stats or if we find ways to leverage it better and perhaps connect fundraising challenges to it...

Categories