def upload_file(endomondoapi, file): points = reduce(lambda memo, lap: memo + lap['samples'], file['laps'], []) map(endo_conv_point, points) points[0]['inst'] = 2 points[-1]['inst'] = 3 workout = Workout() workout.sport = 0 workout.points = points workout.start_time = datetime.datetime.utcfromtimestamp(file['start']) workout.distance = points[-1]['dist'] workout.ascent = file['ascent'] workout.descent = file['descent'] workout.duration = file['duration'] endomondoapi.post_workout(workout=workout, properties={'audioMessage': 'false'}) if workout.id: print "Saved! %d"%workout.id