Skip to content

Commit

Permalink
Merge pull request #250 from RADAR-base/release-0.5.15
Browse files Browse the repository at this point in the history
Release 0.5.15
  • Loading branch information
mpgxvii authored Nov 9, 2020
2 parents 19c0e0b + 012ed73 commit 134b0f2
Show file tree
Hide file tree
Showing 19 changed files with 328 additions and 8 deletions.
7 changes: 1 addition & 6 deletions commons/connector/upload/altoida/altoida_summary.avsc
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,6 @@
"type": "enum",
"doc": "Classifications provided by Altoida.",
"symbols": ["HEALTHY", "AT_RISK", "MCI_DUE_TO_AD"]}], "doc": "Classification based on the analysis 0=healthy, 1=at risk, 2=MCI due to AD.", "default": null},
{"name": "nmi", "type": "double", "doc": "NMI value of the test,a value in 0-100, where 0-33.3 is class 2, 33.3-66.6 is class 1, 66.6-100 is class 0."},
{"name": "groundTruth", "type": {
"name": "GroundTruth",
"type": "enum",
"doc": "GroundTruth supported by Altoida.",
"symbols": ["UNKNOWN", "HEALTHY", "AT_RISK", "MCI_OR_AB_PLUS", "MCI_OR_AB_MINUS"]}, "doc": "If the test is based on additional biomarkers -1=unknown, 0=healthy, 1= at risk, 2=MCI/AB+, 3=MCI/AB-.", "default": "UNKNOWN"}
{"name": "nmi", "type": "double", "doc": "NMI value of the test,a value in 0-100, where 0-33.3 is class 2, 33.3-66.6 is class 1, 66.6-100 is class 0."}
]
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
{"name": "timeReceived", "type": "double", "doc": "Timestamp in unix time received from Altoida API."},
{"name": "audioHighReactionTimes", "type": "float", "doc": "Distribution of reaction times to high tone(s)."},
{"name": "audioHighAccuracy", "type": "float", "doc": "Distribution of deviation from speaker button center (cm)."},
{"name": "audioLowReactions", "type": "int", "doc": "Distributions of number of reactions to low tones."},
{"name": "audioLowReactions", "type": ["null", "int"], "doc": "Distributions of number of reactions to low tones.", "default": null},
{"name": "audioIgnoredHighTonePercentage", "type": "float", "doc": "Distribution of ratio of high tones ignored."},
{"name": "audioPrematureToneButtonPresses", "type": "int", "doc": "Distribution of number of premature tone button presses."},
{"name": "randomScreenPressesDuringPlacement", "type": "int", "doc": "Distribution of number of random screen presses during the placement phase."},
Expand Down
37 changes: 37 additions & 0 deletions commons/push/garmin/garmin_push_activity_details.avsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"namespace": "org.radarcns.push.garmin",
"name": "GarminActivityDetails",
"type": "record",
"doc": "Fitness activity details summaries represent detailed information about discrete fitness activities, such as running or swimming, that are specifically and intentionally started by the user on their device. All wellness data, like steps and distance, contained in the activity are already represented in the Daily summary and in the corresponding Epoch summaries, so Activity Detail summaries should only be used for programs that wish to treat specific activity types in different ways, such as giving the user extra credit for going swimming three times in the same week. Activity details summaries include all data recorded by the device as part of the Fitness Activity, including GPS coordinates and all recorded sensor data. ",
"fields": [
{"name": "time", "type": "double", "doc": "Start time of the activity in seconds since January 1, 1970, 00:00:00 UTC (Unix timestamp)."},
{"name": "timeReceived", "type": "double", "doc": "Time that this record was collected by a service in seconds since the Unix Epoch (s)."},
{"name": "summaryId", "type": "string", "doc": "Unique identifier for the summary."},
{"name": "startTimeOffset", "type": ["null", "int"], "doc": "Offset in seconds to add to time to derive the 'local' time of the device that captured the data.", "default": null},
{"name": "activityType", "type": ["null", "string"], "doc": "Text description of the activity type. See Appendix A for a complete list. e.g - SEDENTARY, SLEEP, RUNNING, CYCLING, WALKING, etc.", "default": null},
{"name": "duration", "type": ["null", "int"], "doc": "Length of the monitoring period in seconds.", "default": null},
{"name": "averageBikeCadence", "type": ["null", "float"], "doc": "Average Bike Cadence in rounds per minute.", "default": null},
{"name": "maxBikeCadence", "type": ["null", "float"], "doc": "Maximum Bike Cadence in rounds per minute.", "default": null},
{"name": "distance", "type": ["null", "float"], "doc": "Distance traveled in meters.", "default": null},
{"name": "averageRunCadence", "type": ["null", "float"], "doc": "Average Run Cadence in Steps per minute.", "default": null},
{"name": "maxRunCadence", "type": ["null", "float"], "doc": "Maximum Run Cadence in Steps per minute.", "default": null},
{"name": "activeKilocalories", "type": ["null", "int"], "doc": "Active kilocalories (dietary calories) burned through actual movement and activity during the monitoring period.", "default": null},
{"name": "averageSpeed", "type": ["null", "float"], "doc": "Average Speed in meters per second.", "default": null},
{"name": "maxSpeed", "type": ["null", "float"], "doc": "Maximum Speed in meters per second.", "default": null},
{"name": "averageSwimCadence", "type": ["null", "float"], "doc": "Average Swim Cadence in strokes per minute.", "default": null},
{"name": "averagePace", "type": ["null", "float"], "doc": "Average Pace in minutes per kilometer.", "default": null},
{"name": "maxPace", "type": ["null", "float"], "doc": "Maximum Pace in minutes per kilometer.", "default": null},
{"name": "numberOfActiveLengths", "type": ["null", "int"], "doc": "Number of Active Lengths.", "default": null},
{"name": "averageHeartRate", "type": ["null", "int"], "doc": "Average of heart rate values captured during the last 7 days, in beats per minute. The average heart rate value for the monitoring period can be calculated based on the data from timeOffsetHeartRateSamples.", "default": null},
{"name": "maxHeartRate", "type": ["null", "int"], "doc": "Maximum of heart rate values captured during the monitoring period, in beats per minute.", "default": null},
{"name": "startingLatitude", "type": ["null", "float"], "doc": "Starting Latitude in Degree", "default": null},
{"name": "startingLongitude", "type": ["null", "float"], "doc": "Starting Longitude in Degree", "default": null},
{"name": "steps", "type": ["null", "int"], "doc": "Count of steps recorded during the monitoring period.", "default": null},
{"name": "totalElevationGain", "type": ["null", "float"], "doc": "Total Elevation Gain in meters", "default": null},
{"name": "totalElevationLoss", "type": ["null", "float"], "doc": "Total Elevation Loss in meters", "default": null},
{"name": "isParent", "type": ["null", "boolean"], "doc": "If present and set to true, this activity is the parent activity of one or more child activities that should also be made available in the data feed to the partner. An activity of type MULTI_SPORT is an example of a parent activity.", "default": null},
{"name": "parentSummaryId", "type": ["null", "string"], "doc": "If present, this is the summaryId of the related parent activity. An activity of type CYCLING with a parent activity of type MULTI_SPORT is an example of this type of relationship.", "default": null},
{"name": "manual", "type": ["null", "boolean"], "doc": "Indicates that the activity was manually entered directly on the Connect site. This property will only exist for manual activities.", "default": null},
{"name": "deviceName", "type": ["null", "string"], "doc": "Only Fitness Activities are associated with a specific Garmin device rather than the user’s overall account. If a user wears two devices at once during the same time and starts a Fitness Activity on each then both will generate separate Activity summaries with two different deviceNames. Always ‘unknown’ for manually created activities.", "default": null}
]
}
25 changes: 25 additions & 0 deletions commons/push/garmin/garmin_push_activity_details_sample.avsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"namespace": "org.radarcns.push.garmin",
"name": "GarminActivityDetailsSample",
"type": "record",
"doc": "Each activity detail contains an activity summary and an optional list of samples. The samples list will be empty if the activity is manual or details are not supported by the device. Samples may be as frequent as once per second, and values should be considered valid until the next sample. In all cases, movingDurationInSeconds is less than or equal to timerDurationInSeconds is less than or equal to clockDurationInSeconds.",
"fields": [
{"name": "time", "type": "double", "doc": "Start time of the sample in seconds since January 1, 1970, 00:00:00 UTC (Unix timestamp)."},
{"name": "timeReceived", "type": "double", "doc": "Time this sample was recieved by the push service in seconds since January 1, 1970, 00:00:00 UTC (Unix timestamp)."},
{"name": "summaryId", "type": "string", "doc": "Unique identifier for the summary that this sample is associated with."},
{"name": "airTemperature", "type": ["null", "float"], "doc": "Air Temperature in Celcius.", "default": null},
{"name": "heartRate", "type": ["null", "int"], "doc": "Heart rate in beats per minute.", "default": null},
{"name": "speed", "type": ["null", "float"], "doc": "Speed in Meters Per Second.", "default": null},
{"name": "stepsPerMinute", "type": ["null", "float"], "doc": "Number of steps per minute.", "default": null},
{"name": "totalDistance", "type": ["null", "float"], "doc": "Total Distance in Meters.", "default": null},
{"name": "timerDuration", "type": ["null", "int"], "doc": "The amount of 'timer time' in an activity.", "default": null},
{"name": "clockDuration", "type": ["null", "int"], "doc": "The amount of real-world 'clock time' from the start of an activity to the end.", "default": null},
{"name": "movingDuration", "type": ["null", "int"], "doc": "The amount of 'timer time' during which the athlete was moving (above a threshold speed).", "default": null},
{"name": "power", "type": ["null", "float"], "doc": "The amount of power expended in watts.", "default": null},
{"name": "bikeCadence", "type": ["null", "int"], "doc": "Cycling cadence in revolutions per minute.", "default": null},
{"name": "swimCadence", "type": ["null", "int"], "doc": "Swim cadence in strokes per minute.", "default": null},
{"name": "latitude", "type": ["null", "float"], "doc": "Latitude in decimal degrees (DD)", "default": null},
{"name": "longitude", "type": ["null", "float"], "doc": "Longitude in decimal degrees (DD)", "default": null},
{"name": "elevation", "type": ["null", "float"], "doc": "Elevation in meters", "default": null}
]
}
37 changes: 37 additions & 0 deletions commons/push/garmin/garmin_push_activity_summary.avsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"namespace": "org.radarcns.push.garmin",
"name": "GarminActivitySummary",
"type": "record",
"doc": "Fitness activity summaries represent high-level information from discrete fitness activities, such as running or swimming, that are specifically and intentionally started by the user on their device. All wellness data, like steps and distance, contained in the Activity are already represented in the Daily summary and in the corresponding Epoch summaries, so Activity summaries should only be used for programs that wish to treat specific activity types in different ways, such as giving the user extra credit for going swimming three times in the same week.",
"fields": [
{"name": "time", "type": "double", "doc": "Start time of the activity in seconds since January 1, 1970, 00:00:00 UTC (Unix timestamp)."},
{"name": "timeReceived", "type": "double", "doc": "Time that this record was collected by a service in seconds since the Unix Epoch (s)."},
{"name": "summaryId", "type": "string", "doc": "Unique identifier for the summary."},
{"name": "startTimeOffset", "type": ["null", "int"], "doc": "Offset in seconds to add to time to derive the 'local' time of the device that captured the data.", "default": null},
{"name": "activityType", "type": ["null", "string"], "doc": "Text description of the activity type. e.g - SEDENTARY, SLEEP, RUNNING, CYCLING, WALKING, etc.", "default": null},
{"name": "duration", "type": ["null", "int"], "doc": "Length of the monitoring period in seconds. 86400 once a full day is complete, but less if a user syncs mid-day.", "default": null},
{"name": "averageBikeCadence", "type": ["null", "float"], "doc": "Average Bike Cadence in rounds per minute.", "default": null},
{"name": "maxBikeCadence", "type": ["null", "float"], "doc": "Maximum Bike Cadence in rounds per minute.", "default": null},
{"name": "distance", "type": ["null", "float"], "doc": "Distance traveled in meters.", "default": null},
{"name": "averageRunCadence", "type": ["null", "float"], "doc": "Average Run Cadence in Steps per minute.", "default": null},
{"name": "maxRunCadence", "type": ["null", "float"], "doc": "Maximum Run Cadence in Steps per minute.", "default": null},
{"name": "activeKilocalories", "type": ["null", "int"], "doc": "Active kilocalories (dietary calories) burned through actual movement and activity during the monitoring period.", "default": null},
{"name": "averageSpeed", "type": ["null", "float"], "doc": "Average Speed in meters per second.", "default": null},
{"name": "maxSpeed", "type": ["null", "float"], "doc": "Maximum Speed in meters per second.", "default": null},
{"name": "averageSwimCadence", "type": ["null", "float"], "doc": "Average Swim Cadence in strokes per minute.", "default": null},
{"name": "averagePace", "type": ["null", "float"], "doc": "Average Pace in minutes per kilometer.", "default": null},
{"name": "maxPace", "type": ["null", "float"], "doc": "Maximum Pace in minutes per kilometer.", "default": null},
{"name": "numberOfActiveLengths", "type": ["null", "int"], "doc": "Number of Active Lengths.", "default": null},
{"name": "averageHeartRate", "type": ["null", "int"], "doc": "Average of heart rate values captured during the last 7 days, in beats per minute. The average heart rate value for the monitoring period can be calculated based on the data from timeOffsetHeartRateSamples.", "default": null},
{"name": "maxHeartRate", "type": ["null", "int"], "doc": "Maximum of heart rate values captured during the monitoring period, in beats per minute.", "default": null},
{"name": "startingLatitude", "type": ["null", "float"], "doc": "Starting Latitude in Degree", "default": null},
{"name": "startingLongitude", "type": ["null", "float"], "doc": "Starting Longitude in Degree", "default": null},
{"name": "steps", "type": ["null", "int"], "doc": "Count of steps recorded during the monitoring period.", "default": null},
{"name": "totalElevationGain", "type": ["null", "float"], "doc": "Total Elevation Gain in meters", "default": null},
{"name": "totalElevationLoss", "type": ["null", "float"], "doc": "Total Elevation Loss in meters", "default": null},
{"name": "isParent", "type": ["null", "boolean"], "doc": "If present and set to true, this activity is the parent activity of one or more child activities that should also be made available in the data feed to the partner. An activity of type MULTI_SPORT is an example of a parent activity.", "default": null},
{"name": "parentSummaryId", "type": ["null", "string"], "doc": "If present, this is the summaryId of the related parent activity. An activity of type CYCLING with a parent activity of type MULTI_SPORT is an example of this type of relationship.", "default": null},
{"name": "manual", "type": ["null", "boolean"], "doc": "Indicates that the activity was manually entered directly on the Connect site. This property will only exist for manual activities.", "default": null},
{"name": "deviceName", "type": ["null", "string"], "doc": "Only Fitness Activities are associated with a specific Garmin device rather than the user’s overall account. If a user wears two devices at once during the same time and starts a Fitness Activity on each then both will generate separate Activity summaries with two different deviceNames. Always ‘unknown’ for manually created activities.", "default": null}
]
}
12 changes: 12 additions & 0 deletions commons/push/garmin/garmin_push_body_battery_sample.avsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"namespace": "org.radarcns.push.garmin",
"name": "GarminBodyBatterySample",
"type": "record",
"doc": "Body battery value recorded for the time. Usually assocaited with Stress Details Summary using summaryId. Information on and a list of devices that support Body Battery are available here: https://support.garmin.com/ms-MY/?faq=2qczgfbN00AIMJbX33dRq9.",
"fields": [
{"name": "time", "type": "double", "doc": "Start time of the sample in seconds since January 1, 1970, 00:00:00 UTC (Unix timestamp)."},
{"name": "timeReceived", "type": "double", "doc": "Time this sample was recieved by the push service in seconds since January 1, 1970, 00:00:00 UTC (Unix timestamp)."},
{"name": "summaryId", "type": "string", "doc": "Unique identifier for the summary that this sample is associated with."},
{"name": "bodyBattery", "type": ["null", "float"], "doc": "Body battery value recorded for the time", "default": null}
]
}
18 changes: 18 additions & 0 deletions commons/push/garmin/garmin_push_body_composition.avsc
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"namespace": "org.radarcns.push.garmin",
"name": "GarminBodyComposition",
"type": "record",
"doc": "Body Composition summaries contain information about the user’s biometric data, like weight or body mass index. This data can be generated three ways. Users can manually enter their weight on Garmin Connect. This results in a summary with only time and weight. Users may also connect their MyFitnessPal account to their Garmin Connect account and update their weight on MyFitnessPal. This results in a summary that also just has a time and weight. Finally, a user might have a Garmin Index body composition scale and sync data from this device. This will generate a summary with all possible biometric fields.",
"fields": [
{"name": "time", "type": "double", "doc": "Start time of the activity in seconds since January 1, 1970, 00:00:00 UTC (Unix timestamp)."},
{"name": "timeReceived", "type": "double", "doc": "Time that this record was collected by a service in seconds since the Unix Epoch (s)."},
{"name": "summaryId", "type": "string", "doc": "Unique identifier for the summary."},
{"name": "muscleMass", "type": ["null", "int"], "doc": "Muscle mass in grams.", "default": null},
{"name": "boneMass", "type": ["null", "int"], "doc": "Bone mass in grams.", "default": null},
{"name": "measurementTimeOffset", "type": ["null", "int"], "doc": "Offset in seconds to add to time to derive the 'local' time of the device that captured the data.", "default": null},
{"name": "bodyWater", "type": ["null", "float"], "doc": "Percentage of body water (range 0.0 - 100.0).", "default": null},
{"name": "bodyFat", "type": ["null", "float"], "doc": "Percentage of body fat. (range 0.0 - 100.0).", "default": null},
{"name": "bodyMassIndex", "type": ["null", "float"], "doc": "Body mass index, or BMI.", "default": null},
{"name": "weight", "type": ["null", "int"], "doc": "Weight in grams.", "default": null}
]
}
Loading

0 comments on commit 134b0f2

Please sign in to comment.