b.well SDK v1.2.2 Change Log
The following changes are included in this release.
New Additions
SDK API Error Standardization
- Error codes will now be returned in a standard format.
- See SDK API Error Handling for more details.
Health Data SyncErrors
getMemberConnectionswill now providesyncErrorsso that the client application can better communicate situations when there was an error pulling in a user's health data.- See Understanding syncErrors for more details.
- Note: These errors will not yet populate
Important Changes
- SDK users need to update
minSdklevel to26if not already using this version or higher.
b.well SDK v1.1.1 Change Log
SDK Patch Release
- An error was thrown when
handleNotificationswas called in SDK version 1.1.0. This has been corrected in version 1.1.1. - An error was thrown when
createConsentwas called in SDK version 1.1.0. This has been corrected in version 1.1.1.- Resolves SD-722
b.well SDK v1.1.0 Change Log
b.well SDK version 1.1.0 includes new features, a breaking change, and operational improvements that enhance the SDK's functionality in non-Production environments.
New Additions
- Notification Handling
A new endpoint,handleNotification, has been introduced. This allows SDK clients to inform us when a silent push notification is opened. This feature aims to improve user engagement tracking and the effectiveness of push notification campaigns.
suspend fun handleNotification(data: String) : OperationOutcome- Delete Connection
A new endpoint,deleteConnection, has been introduced. This endpoint will allow a user to delete a connection, deleting the associated token and the user's data specific to the connection. This endpoint is not fully functional with this release. Currently it will set the connection status to DELETED, but will not delete the data. Full end to end functionality will be introduced in a following release.
suspend fun deleteConnection(connectionId: String): OperationOutcomeA new enum, DELETED has been added to ConnectionStatus
enum ConnectionStatus {
CONNECTED,
DISCONNECTED,
ERROR,
EXPIRED,
DELETED
}Configuration Management Updates
-
- Configuration parameters passed during the initialization (
initialize) of the SDK will now only be respected in non-Production environments. This allows for more flexible development and testing configurations without affecting live production setups. - In Production environments, configurations are now dynamically pulled at runtime, ensuring that the most current settings are always in use.
- Configuration parameters passed during the initialization (
Updates
- A paging issue with
getTaskswas corrected, which will allow the full list of a user's tasks to be retrieved using paging. Here is an example builder function:
private fun getTasks() {
val taskRequest = TasksRequest.Builder()
.enrichContent(true)
.status(TaskStatus.READY)
.smartSort(true)
.page(0)
.pageSize(50)
.build()Breaking Changes
-
Enhanced Retry Policy Configuration
- The
BwellConfig.Builder()includes an update to the retry policy configuration. - This change requires updates to the initialization code where the SDK configuration is set. Please adjust your implementations accordingly.
- The
New implementation example
.retryPolicy(
RetryPolicy.Builder()
.maxRetries(5)
.retryInterval(500) // in milliseconds
.build()
)Previous implementation example, for reference
.retryPolicy(RetryPolicy(maxRetries = 5, retryInterval = 500))b.well SDK v1.0.0 Change Log
The following changes are included in this release.
New Additions
- Added support for logging and performance metrics
Bug Fixes
- Fixed timeout issue that was causing createConnection requests for Basic connections to appear to fail (they would succeed in the background, but the SDK would return an error after 10 seconds)
Important Changes
- Import changes from:
- import com.bwell.core.config.BWellConfig
- import com.bwell.core.config.KeyStoreConfig
- import com.bwell.core.config.LogLevel
- import com.bwell.core.config.RetryPolicy
- to:
- import com.bwell.core.config.types.BWellConfig
- import com.bwell.core.config.types.KeyStoreConfig
- import com.bwell.core.config.types.LogLevel
- import com.bwell.core.config.types.RetryPolicy
b.well SDK v0.20.0 Change Log
The following changes are included in this release.
New Additions
- Base resources (non-groups) can now be filtered by
lastUpdateddate.- This will enable SDK users to retrieve only new and updated data.
- Detailed documentation on use of
lastUpdatedcan be found here.
getMemberConnectionsnow returns a connectionstatusofEXPIRED- This allows the SDK user to differentiate a connection that has been disconnected through the use of
disconnectConnectionand one that has been disconnected due to an expired token.
- This allows the SDK user to differentiate a connection that has been disconnected through the use of
- CarePlan data now includes additional fields for Activity details.
activity.detail.statusactivity.detail.scheduled[x]scheduledTimingscheduledPeriodscheduledString
Bug Fixes
getEncountersproperly filters bygroupCode.
Important Changes
Import Statement Changes
import com.bwell.common.models.domain.healthdata.observation.Observation
is now
import com.bwell.common.models.domain.healthdata.common.observation.Observationimport com.bwell.healthdata.lab.requests.LabGroupsRequest
is now
import com.bwell.healthdata.healthsummary.requests.procedure.LabGroupsRequest
Schema Changes
Schema changes have been made that have resulted in type name changes. These were included in a previous post for review prior to release.
| Description |
|---|
| Field 'AllergyIntoleranceResource.reaction' changed type from '[AllergyIntoleranceReaction]' to '[Reaction]' |
| Field 'CarePlanResource.activity' changed type from '[CarePlanActivity]' to '[Activity]' |
| Field 'ConditionResource.recorder' changed type from 'ConditionRecorder' to 'Recorder' |
| Field 'EncounterResource.participant' changed type from '[EncounterParticipant]' to '[Participant]' |
| Field 'ImmunizationResource.encounter' changed type from 'ImmunizationEncounter' to 'EncounterResource' |
| Field 'ImmunizationResource.reaction' changed type from '[ImmunizationReaction]' to '[Reaction]' |
| Field 'ImmunizationResource.protocolApplied' changed type from '[ImmunizationProtocolApplied]' to '[ProtocolApplied]' |
| Field 'ImmunizationResource.performer' changed type from '[ImmunizationPerformer]' to '[Performer]' |
| Field 'MedicationStatementResource.requester' changed type from 'PerformerActor' to 'Actor' |
| Field 'ObservationResource.value' changed type from 'ObservationValue' to 'Value' |
| Field 'ObservationResource.referenceRange' changed type from '[ObservationReferenceRange]' to '[ReferenceRange]' |
| Field 'ObservationResource.component' changed type from '[ObservationComponent]' to '[Component]' |
| Field 'ObservationResource.encounter' changed type from 'Encounter' to 'EncounterResource' |
| Field 'ObservationResource.performer' changed type from '[ObservationPerformer]' to '[Performer]' |
| Field 'ProcedureResource.performer' changed type from '[ProcedurePerformer]' to '[Performer]' |
| Field 'ProcedureResource.encounter' changed type from 'ProcedureEncounter' to 'EncounterResource' |
| Field 'LabGroup.value' changed type from 'ObservationValue' to 'Value' |
| Field 'LabGroup.referenceRange' changed type from '[ObservationReferenceRange]' to '[ReferenceRange]' |
| Field 'LabGroup.component' changed type from '[ObservationComponent]' to '[Component]' |
| Field 'VitalSignGroup.value' changed type from 'ObservationValue' to 'Value' |
| Field 'VitalSignGroup.referenceRange' changed type from '[ObservationReferenceRange]' to '[ReferenceRange]' |
| Field 'VitalSignGroup.component' changed type from '[ObservationComponent]' to '[Component]' |
b.well SDK v0.19.0 Change Log
The following items and changes are included in this release.
Resolved Service Desk Tickets
- SD-627:
meta.lastUpdatedno longer returns asnull - SD-620:
recordedDateis now returned bygetAllergyIntoleranceGroupsto support the client applications "Sort by Date View".
Other Changes
lastSyncedandstatusUpdatedare now nullable fields ongetMemberConnections- Please note: until v0.19.0 is integrated, the client application could experience errors in a scenario where
lastSyncedorstatusUpdatedreturns asnull
- Please note: until v0.19.0 is integrated, the client application could experience errors in a scenario where
b.well SDK v0.17.1 Change Log
The following items and changes are included in this release.
Resolved Service Desk Tickets
- SD-601:
meta.tag(activityClass) no longer returnsnullongetTasks. - SD-589: Authentication token refresh is now handled properly.
- Currently, tokens are valid for up to 30 days.
Important Changes
We're continually improving the SDK to align with FHIR standards. Here's a summary of the recent changes:
- Removed Non-Compliant Fields: Fields not adhering to FHIR standards have been removed. This includes
idonIdentifier.systemshould now be used to identify Activities/Tasks.
- Updated Sample App: Reflects changes, particularly the shift from
idtosystem.- Please update and reference the sample app for implementation examples.
- Model Adjustments:
- Location Model: Removed
distanceInMilesandparking. - Task and Consent Models: Removed
resourceType. - Annotation Model: Removed
id. - Identifier Model: Removed
id. - CodeableConcept Model: Removed
idandextension. - Subject Model: Added
resourceType. - General: Removed
__typenamefrom models.
- Location Model: Removed
- New Additions: Introduced the
PatientConditionRecorderclass. - Renaming:
- Fields like
organizationName,practitionerName, andpatientNamehave been renamed toname. - Renamed
PhototoAttachment.
- Fields like
Note The fields above were removed to adhere to FHIR standards. However, if the removal of any fields listed above cause issues with SDK integration, please let us know.
b.well Sample App Updates
The b.well Sample App has been updated to include implementation for push notifications!
- For implementation example code, please update your project to pull the latest Sample App changes and reference the following:
HomeFragment.kt: Implementation ofregisterDeviceBWellFirebaseMessagingService.kt: Implementation of token management and notification handling.
