Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Connected Devices Module #30

Open
1 task done
PSchmiedmayer opened this issue Sep 20, 2023 · 0 comments
Open
1 task done

Connected Devices Module #30

PSchmiedmayer opened this issue Sep 20, 2023 · 0 comments
Labels
module Larger issues that will be manifested in separate new modules

Comments

@PSchmiedmayer
Copy link
Member

PSchmiedmayer commented Sep 20, 2023

Use Case

Digital health applications require access to a wide variety of connected devices that can sometimes be connected and paired to a mobile application or can provide their data using a web service-based API. Systems might want to access that data in the user context or by retrieving the data on a web service with the scope of the system to aggregate it independently of a mobile application.

Problem

The Spezi ecosystem currently mainly focuses on access to connected devices using HealthKit. While some connected devices store data within HealthKit, prominent devices do not. These devices include but are not limited to:

Solution

The Connected Devices Module should be a cross-platform Swift Package that supports iOS, macOS, and Linux to ensure usability across client applications and server-side web services.

Given the cross-platform nature, the SDK should ideally use AsyncHTTPClient as the basis for the work and allow the configuration of the NIO event loop and other injections to ensure a smooth integration into the server-side Swift ecosystem.

The module should contain different sub-targets for the different device types and should ideally provide additional modules that can map each of the gathered observations to HL7 FHIR representations using the Apple FHIR Models SDK.

Alternatives considered

Before implementing all the API connections ourselves, we should do a thorough investigation of existing Swift-based packages that might already integrate with the connected device SDKs or might be able to be reused as dependencies.

Additional context

Please use this issue as a discussion point for more concrete ideas about the structure of the Swift package, its focus and aim, and some first ideas around its API design.

Code of Conduct

  • I agree to follow this project's Code of Conduct and Contributing Guidelines
@PSchmiedmayer PSchmiedmayer added enhancement New feature or request module Larger issues that will be manifested in separate new modules and removed enhancement New feature or request labels Sep 20, 2023
@PSchmiedmayer PSchmiedmayer changed the title Spezi Connected Devices Module Connected Devices Module Sep 20, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
module Larger issues that will be manifested in separate new modules
Projects
Status: Focus Areas
Development

No branches or pull requests

1 participant