Reports
Create Reports
- Asleep.createReports :Generate Reports to get results for sleep tracking.
fun createReports(asleepConfig: AsleepConfig?): Reports?
Parameter Name | Type | Description |
---|---|---|
asleepConfig | AsleepConfig? | Enter the set value received by the callback in the initasleepconfig call |
Get Single Report
- Asleep.Reports.getReport :Bring sessionId Report.
fun getReport(sessionId: String, reportListener: ReportListener)
Parameter Name | Type | Description |
---|---|---|
sessionId | String | When Sleep Tracking stops, sessionId value |
reportListener | ReportListener | Report Callback listener |
- Asleep.Reports.ReportListener
interface ReportListener {
fun onSuccess(report: Report?)
fun onFail(errorCode: Int, detail: String)
}
- If success, onSuccess() is called.
data class Report(
val timezone: String,
val peculiarities: List<String>,
val missingDataRatio: Float,
val session: Session?,
val stat: Stat?
)
data class Session(
val id: String,
val state: String,
val startTime: String,
val endTime: String?,
val sleepStages: List<Int>?,
val createdTimezone: String,
val unexpectedEndTime: String?
)
data class Stat(
val sleepEfficiency: Float?,
val sleepLatency: Int?,
val sleepTime: String?,
val wakeupLatency: Int?,
val wakeTime: String?,
val timeInWake: Int?,
val timeInSleepPeriod: Int?,
val timeInSleep: Int?,
val timeInBed: Int?,
val timeInRem: Int?,
val timeInLight: Int?,
val timeInDeep: Int?,
val wakeRatio: Float?,
val sleepRatio: Float?,
val remRatio: Float?,
val lightRatio: Float?,
val deepRatio: Float?,
val sleepCycle: Int?,
val sleepCycleCount: Int?,
val wasoCount: Int?,
val longestWaso: Int?,
val lightLatency: Int?,
val remLatency: Int?,
val deepLatency: Int?
val sleepIndex: Int?,
val timeInSnoring: Int?,
val timeInNoSnoring: Int?,
val snoringRatio: Float?,
val noSnoringRatio: Float?,
val snoringCount: Int?,
val sleepCycleTime: List<String>?
)
Parameter Name | Type | Description |
---|---|---|
timezone | String | Requested timezone (e.g., UTC, Asia/Seoul) |
startDate | String | Requested start date |
endDate | String | Requested end date |
AverageStats
Parameter Name | Type | Description |
---|---|---|
startTime | String | Session start time |
endTime | String | Session end time |
sleepTime | String | Time to fall asleep after sleep staging start |
wakeTime | String | Wake time |
sleepLatency | Int | Time to fall asleep |
wakeupLatency | Int | Time to wake up and end sleep measurement |
timeInBed | Int | Total time from sleep measurement start to end |
timeInSleepPeriod | Int | Sleep measurement time excluding sleep onset and wake periods |
timeInSleep | Int | Actual sleep time (deep, light, rem stages) |
timeInWake | Int | Wake time during sleep |
timeInLight | Int? | Total light sleep time |
timeInDeep | Int? | Total deep sleep time |
timeInRem | Int? | Total REM sleep time |
sleepEfficiency | Float? | Percentage of time actually slept during measurement |
wakeRatio | Float? | Rate of waking time during sleep stage |
sleepRatio | Float? | Sleep ratio during sleep stage |
lightRatio | Float? | Light sleep ratio |
deepRatio | Float? | Deep sleep ratio |
remRatio | Float? | REM sleep ratio |
wasoCount | Int? | Number of 'wake' occurrences during sleep |
longestWaso | Int? | Duration of longest 'wake' period |
sleepCycleCount | Int? | Number of sleep cycles |
timeInSnoring | Int? | Total snoring time |
timeInNoSnoring | Int? | Total non-snoring time |
snoringRatio | Float? | Percentage of time spent snoring |
noSnoringRatio | Float? | Percentage of time not snoring |
snoringCount | Int? | Number of snoring episodes |
Get Multiple Reports
- Asleep.Reports.getReports :Gets a list of Report that are within the range of the date you entered.
fun getReports(
fromDate: String,
toDate: String,
orderBy: String = "DESC",
offset: Int = 0,
limit: Int = 20,
reportsListener: ReportsListener?)
Parameter Name | Type | Description |
---|---|---|
fromDate | String (YYYY-MM-DD ) | View start date |
toDate | String (YYYY-MM-DD ) | View last date |
orderBy = "DESC" | String | DESC: descending order, ASC: ascending order |
offset = 0 | Int | number of skipped Report |
limit = 20 | Int | max number of Report (0~100) |
reportsListener | ReportsListener? | Report list callback listener |
- Asleep.Reports.ReportsListener
interface ReportsListener {
fun onSuccess(reports: List<SleepSession>?)
fun onFail(errorCode: Int, detail: String)
}
- If success, onSuccess() is called.
data class SleepSession(
val sessionId: String?,
val lastReceivedSeqNum: Int?,
val sessionEndTime: String?,
val sessionStartTime: String?,
val state: String?,
val timeInBed: Int?,
val createdTimezone: String,
val unexpectedEndTime: String?
)
Parameter Name | Type | Description | Version |
---|---|---|---|
sessionId | String? | Sleep session ID | |
lastReceivedSeqNum | Int? | The sequence number of the last uploaded audio file | |
sessionEndTime | String? | Session end time | |
sessionStartTime | String? | Session start time | |
state | String? | Sleep session state (OPEN, CLOSED or COMPLETE) | |
timeInBed | Int? | The time from the start of the sleep measurement to the end of the sleep measurement | |
createdTimezone | String | Timezone of session creation (Timezone List) | |
unexpectedEndTime | String? | Abnormal session termination time. This assign the next initAsleepConfig time. |
- When getReport() is called with a sessionId, it acquires a comprehensive report.
- If failure, onFail() is called.
Parameter Name | Type | Description |
---|---|---|
errorCode | Int | Error Code Number |
domain | String | Error Domain |
detail | String | errorCode Message |
Average-stats
- Asleep.Reports.getAverageReport
- You can check the average sleep metrics for a specific period of time.
fun getAverageReport(fromDate: String, toDate: String, averageReportListener: AverageReportListener?)
Parameter Name | Type | Description |
---|---|---|
fromDate | String | The starting time for the period you want to check the average |
toDate | String | The ending time for the period you want to check the average |
averageReportListener | AverageReportListener | Average Report callback listener |
- Asleep.Reports.AverageReportListener
interface AverageReportListener {
fun onSuccess(averageReport: AverageReport?)
fun onFail(errorCode: Int, detail: String)
}
- If success, onSuccess() is called.
AverageReport
data class AverageReport (
val period: Period,
val peculiarities: List<String>,
val averageStats: AverageStats?,
val neverSleptSessions: List<NeverSleptSessions>,
val sleptSessions: List<SleptSessions>
)
Parameter Name | Type | Description |
---|---|---|
period | Period | Timezone |
peculiarities | List<String> | Special considerations when calculating the average of sleep sessions |
averageStats | AverageStats? | An object containing the averages of sleep metrics for "sleptSessions" |
neverSleptSessions | List<NeverSleptSession> | A list of sessions during which it is determined that no sleep occurred at all during the measurement time. |
sleptSessions | List<SleptSession> | A list of sessions during which it is determined that sleep occurred during the measurement time. |
Period
Parameter Name | Type | Description |
---|---|---|
timezone | String | Requested timezone (e.g., UTC, Asia/Seoul) |
startDate | String | Requested start date |
endDate | String | Requested end date |
NeverSleptSessions
Parameter Name | Type | Description |
---|---|---|
id | String | Session ID |
startTime | String | Session start time (e.g., 2022-08-01T01:31:17+09:00) |
endTime | String | Session end time (e.g., 2022-08-01T01:31:17+09:00) |
completedTime | String | Time of session analysis completion (e.g., 2022-08-01T01:31:17+09:00) |
SleptSessions
Parameter Name | Type | Description |
---|---|---|
id | String | Session ID |
createdTimezone | String | Timezone of session creation (Timezone List) |
startTime | String | Session start time (e.g., 2022-08-01T01:31:17+09:00) |
endTime | String | Session end time (e.g., 2022-08-01T01:31:17+09:00) |
completedTime | String | Time of session analysis completion (e.g., 2022-08-01T01:31:17+09:00) |
sleepEfficiency | Float | Percentage of time actually slept during sleep measurement |
sleepLatency | Int? | Time to fall asleep |
sleepTime | String? | Time to fall asleep after sleep staging start |
wakeupLatency | Int? | Time to wake up and end sleep measurement |
wakeTime | String? | Wake time |
lightLatency | Int? | Time to first light sleep stage |
deepLatency | Int? | Time to first deep sleep stage |
remLatency | Int? | Time to first REM sleep stage |
timeInWake | Int | Wake time during sleep |
timeInSleepPeriod | Int | Sleep measurement time excluding sleep onset and wake periods |
timeInSleep | Int | Actual sleep time (deep, light, rem stages) |
timeInBed | Int | Total time from sleep measurement start to end |
timeInRem | Int? | Total REM sleep time |
timeInLight | Int? | Total light sleep time |
timeInDeep | Int? | Total deep sleep time |
wakeRatio | Float | Rate of waking time during sleep stage |
sleepRatio | Float | Sleep ratio during sleep stage |
remRatio | Float? | REM sleep ratio |
lightRatio | Float? | Light sleep ratio |
deepRatio | Float? | Deep sleep ratio |
sleepCycle | Int? | Average duration of one sleep cycle |
sleepCycleCount | Int? | Number of sleep cycles |
wasoCount | Int? | Number of 'wake' occurrences during sleep |
longestWaso | Int? | Duration of longest 'wake' period |
timeInSnoring | Int? | Total snoring time |
timeInNoSnoring | Int? | Total non-snoring time |
snoringRatio | Float? | Percentage of time spent snoring |
noSnoringRatio | Float? | Percentage of time not snoring |
snoringCount | Int? | Number of snoring episodes |
Delete Report
When session data is deleted from the Asleep server upon a request, it becomes difficult to provide specific evidence for the deleted sessions during subsequent billing usage analysis.
- Asleep.deleteReport :Delete sessionId Report.
fun deleteReport(sessionId: String, deleteReportListener: DeleteReportListener)
Parameter Name | Type | Description |
---|---|---|
sessionId | String | Delete sessionId value |
deleteReportListener | DeleteReportListener | Report delete callback listener |
- Asleep.Reports.DeleteReportListener
interface DeleteReportListener {
fun onSuccess(sessionId: String?)
fun onFail(errorCode: Int, detail: String)
}
- If success, onSuccess() is called.
Parameter Name | Type | Description |
---|---|---|
sessionId | String? | delete sessionId value |
- If failure, onFail() is called.
Parameter Name | Type | Description |
---|---|---|
errorCode | Int | Error Code Number |
domain | String | Error Domain |
detail | String | errorCode Message |
Updated about 17 hours ago