1. Introduction

AsleepTrack SDK는 AsleepTrack API에서 제공하는 수면 트래킹 기능을 모바일 애플리케이션에 쉽게 통합할 수 있도록 설계된 소프트웨어 개발 키트입니다. 비즈니스 파트너들이 수면 애플리케이션을 개발할 때, AsleepTrack SDK를 활용하면 수면 트래킹과 관련된 모든 핵심 기능을 처리할 수 있어, 애플리케이션의 핵심 가치와 UI/UX에 집중할 수 있습니다.

2. Interfaces

2.1 Asleep.AsleepConfig

AsleepConfig 는 API key, user ID, API 통신을 위한 base URL을 포함한 모든 필요한 설정 정보들을 포함합니다. AsleepConfig 의 설정 정보는 SDK의 수면 트래킹 기능들에 전반적으로 사용됩니다.

2.2 Asleep.SleepTrackingManager

SleepTrackingManager AsleepConfig 를 통해서 전달받은 특정한 user ID의 수면 세션들을 관리하는데 사용됩니다. 이 매니저는 트래킹을 시작하고 멈출 수 있고 사용자의 최신 수면 리포트를 불러올 수 있습니다.

2.3 Asleep.Reports

ReportsAsleep.Config를 통해서 전달받은 특정한 user ID의 수면 리포트를 관리하는데 사용됩니다. 이를 통해 특정 기간동안 발생한 모든 sleep session의 ID를 조회할 수 있고 각 sleep session ID의 세부적인 슬립 리포트를 조회할 수 있습니다.

2.4 Asleep.AsleepErrorCode

이 문서는 개발자가 SDK 내부에서 어떤 일이 일어나고 있는지 이해하는 데 도움이 되는 사용 가능한 모든 오류 코드가 기술되어 있습니다.

3. Version History

v2.0.01. Change Reports Structure
2. User-Agent has been added to HTTP.
v2.1.01. The noise reduction processing has been modified.
v2.1.11. Modified Error handling. Audio process stop during session Open / Close error case
2. Modified Debug SDK Log
v2.1.21. Add related to TrackingStatus
2. Add defensive logic to close the session when initAsleepConfig is called during SleepTracking
v2.2.01. Add Developer Mode Function
2. Add Error Codes related to audio processing

- audioInitializationFailed, responseResult3. Add Session Object parameter in Reports.- Session: unexpectedEndTime, createdTimezone
- Stat: lightLatency, deepLatency, remLatency, unstableBreathCount, sleepCycle, sleepCycleCount, sleepCycleTime, wasoCount, longestWaso
v2.3.0Average-stats, sleep_index are added.
v2.4.0Add snoring data in Report and Average Stats
Audio Interrupt Bug fix (Timing changes between audio-related interrupts and processing audio settings )
v.2.4.1Remove Personally Identifiable APIs (Does not need to be applied "PrivacyInfo.xcprivacy")
v.2.4.2Fix sdk version debug message.
v.2.4.3Fixed Mic Recording abnormal behavior after sleeping calls
v.2.4.4Added retry logic for when the app resumes after being interrupted by the system
v.2.4.51. Added function ‘resumeTracking’ in SleepTrackingManager
2. Added Error code ‘cannotActivateInBackground’
3. Fixed issue in AVAudioEngineConfigurationChange when the app is in resumed state
4. Removed retry logic for when the app resumes after being interrupted by the system
v.2.4.6Added signing in Asleep SDK
v.2.4.7Fixed an issue where 'cannotActivateInBackground' error was being delegated when the microphone could not be reactivated after an interrupt.

What’s Next