Latest Release
-
Full release note history can be found in Release Notes
8.0.0
New
- 2 new
VirtualService.createVirtualVisit
methods have been added.- Both take in the new
VirtualVisitDetails
- One will use the existing
DexcarePatient
- One will use the new
EhrPatient
- Both take in the new
VirtualVisitDetails
replaces the deprecatedVirtualVisitInformation
. Please see documentation for more information on the properties.- Added
VirtualService.getWaitTimeAvailability
to fetch the newWaitTimeAvailability
array. See documentation for more ways to filter the results. - Added
VirtualService.getAssignmentQualifiers
to fetch the array ofVirtualVisitAssignmentQualifier
to use ingetWaitTimeAvailability
or create Visit - Added
VirtualService.getModalities
to fetch the array ofVirtualVisitModality
to use ingetWaitTimeAvailability
or create Visit -
Added
VirtualVisitFailedReason.visitTypeNotSupported
- returned when you try and callVirtualService.resumeVirtualVisit
with a non-virtual visit type. - Upon signing in to the SDK, some validation configs are pulled down from the server. This allows for the validation to be consistent across DexCare platforms, and also allows for the validation requirements to be configurable per-environment. This currently only affects the EmailValidator, but may be expanded to other areas in a future SDK version.
- A new
EmailValidator.EMAIL_REGEX_FROM_CONFIG
is available to get the latest email regex the SDK will use. This will default toEmailValidator.EMAIL_VALIDATION_REGEX
. - A new
DexcareSDK.getStatusPage
is available to asynchronously grab the current status of the DexCare Platform. You can use this method to check for any incidents or scheduled maintenances on our infrastructure. VisitStatus
has been switched from an enum to a struct that inherits fromRawRepresentable
.- An optional
VirtualVisitDetails.initialStatus
property has been added to support setting an initial Visit Status on a virtual visit.
Phone Visits
- 8.0 supports the ability to schedule a phone visit. Similar to virtual visits, except the provider will end up phoning instead of using the virtual video platform
- On
VirtualService.createVirtualVisit
simply set theVirtualVisitDetails.visitTypeName = "phone"
- IMPORTANT The SDK will return in the completion event with
VisitCompletionReason.phoneVisit
after a successful creation or a resume It is up to you to check for that result and handle appropriately.
Swift Concurrency
Included in 8.0 is support for Swift Concurrency on all public functions. Both concurrency and closure-based functions will be supported. Internally, the SDK has moved to Concurrency for all internal calls and therefore we have removed PromiseKit as a required Dependency.
For more examples of how you can call the new functions, please look at the v8 migration guide.
Fixes
VisitStatus.isActive
function is now a proper public function (DC-6006)PatientDemographics.birthDate
is now validated for future dates (DC-5904)- NavigationBar on Waiting Room sometimes would not show and be transparent on iOS15 (DC-8901)
Deprecations
ProviderService.getProviderTimeslots
passing invisitTypeId
is deprecated in favour ofProviderService.getProviderTimeslots
and passing in aVisitTypeShortName
instead
Removals
VirtualSerivce.startVirtualVisit
- use the newVirtualSerivce.createVirtualVisit
passing in the newVirtualVisitDetails
VirtualVisitInformation
- useVirtualVisitDetails
with the newVirtualSerivce.createVirtualVisit
PracticeService.getVirtualPracticeRegionAvailability
- use the newVirtualService.getWaitTimeAvailability
PracticeService.getEstimatedWaitTime
- use the newVirtualService.getWaitTimeAvailability
RegionAvailability
- use the newWaitTimeAvailability
returning fromVirtualService.getWaitTimeAvailability
PatientService.createPatientWithMyChart
has been removed and can no longer be called.- Removed
VirtualVisitFailedReason.deprecated
RetailService.getClinics
has been renamed toRetailService.getRetailDepartments
which in turn returnRetailDepartments
from the previousClinics
ClinicTimeslots
have been renamed toRetailAppointmentTimeslots
ScheduleVisit.clinic
has been renamed toScheduleVisit.retailDepartment
Other
- Updated internal endpoint for
VirtualService.getEstimatedWaitTime
- Updated internal endpoint for
VirtualService.getVirtualVisitStatus
- Updated internal endpoint for
VirtualService.cancelVirtualVisit
- Updated OpenTok dependency to 2.22.3
- Updated MessageKit dependency to 3.8.0
- 2 new
-
Full release notes history can be found in Release Notes
8.0.0
New
- Added a new
VirtualService.createVirtualVisit
method, which uses a new backend endpoint with more functionality. The new API allows for scheduling for a patient using an Epic identifier instead of a DexCare patientGuid, scheduling phone-call virtual visits, and is more flexible in terms of required information to schedule a virtual visit. See the DexCare developers site for more information. - Added a new
VirtualService.getWaitTimeAvailability
method to fetch the newWaitTimeAvailability
list for all Virtual Provider queues. This includes information about all available regions for all practices. The results can optionally be filtered by several parameters. See the code documentation for available filters. - Added a new
VirtualService.getAssignmentQualifiers
method to fetch the all supportedVirtualVisitAssignmentQualifier
to use to filterVirtualService.getWaitTimeAvailability
and inVirtualService.createVirtualVisit
. - Added new mandatory parameters
userEmail
andcontactPhoneNumber
inVirtualVisitDetails
model, these parameters are used to contact the user. -VirtualVisitDetails
replaces the deprecatedVirtualVisitInformation
. Please see documentation for more information on the properties. - Added a new
VirtualService.getModalities
method to fetch the all supportedVirtualVisitModality
to use to filterVirtualService.getWaitTimeAvailability
and inVirtualService.createVirtualVisit
. - Scheduling a phone-call virtual visits using
VirtualService.createVirtualVisit
andVirtualVisitTypeName
asphone
will return emptyIntent
, avisitId
, and aVirtualVisitTypeName
object. VisitStatus
enum converted to a String- New method
VisitStatus.isVisitStatusActive
is added which returns a Boolean depending on theVisitStatus
passed as an argument. - New enum
DefaultVisitStatus
is available to give access to the list of default visit status names. - Added a new
VirtualPracticeRegion.pedatricsAgeRange
property to indicate the age of patients that pediatric providers can see.
Breaking
- A
MissingInformationError
is now returned in theVirtualService.createVirtualVisit
methods whenVirtualVisitInformation.visitReason
is empty string. This now matches the behavior in the Retail and Provider services. VirtualSerivce.startVirtualVisit
- use the newVirtualSerivce.createVirtualVisit
passing in the newVirtualVisitDetails
.VirtualVisitInformation
- useVirtualVisitDetails
with the newVirtualSerivce.createVirtualVisit
.PracticeService.getVirtualPracticeRegionAvailability
- use the newVirtualService.getWaitTimeAvailability
.PracticeService.getEstimatedWaitTime
- use the newVirtualService.getEstimatedWaitTime
.RegionAvailability
- use the newWaitTimeAvailability
returning fromVirtualService.getWaitTimeAvailability
.- Removed
PatientService.createPatientWithMyChart()
method. This is no longer supported by the SDK. - Clinic references have been updated to RetailDepartment.
ClinicTimeSlot
is replaced byRetailAppointmentTimeSlot
.RetailService.getClinics
is replaced byRetailService.getRetailDepartments
ScheduledVisit.clinic
is replaced byScheduledVisit.retailDepartment
Deprecated
UnavailableAppointmentError
is now deprecated. It will be replaced by the standardNetworkError.ServiceUnavailableError
in a future release.ProviderService.getProviderTimeslots
passing invisitTypeId
is deprecated in favour ofProviderService.getProviderTimeslotsWithShortName
and passing in aVisitTypeShortName
instead.
Internal
-
VisitStatus
is now just a typealias that is a String. - Updated TokBox SDK version from
2.22.0
to2.22.3
- Updated androidMaterial version from
1.0.0
to1.4.0
- Updated Jackson parser versions from
2.12.4
to2.13.3
- Updated androidx test junit ext from
1.1.2
to1.1.3
- Updated androidx test rules from
1.3.0
to1.4.1-alpha06
- Updated androidx constraint layout from
1.1.3
to2.0.4
- Updated androidx databindingCompiler from
4.1.2
to7.2.1
- Updated androidx fragmentTesting from
1.3.0
to1.4.1
-
Updated mockitoAndroid from
3.0.0
to3.3.0
- Update
getEstimatedWaitTime
underVirtualVisitContract
from v6 to v9 api endpoint - Update
cancelVirtualVisit
underVisitServiceContract
from v8 to v9 api endpoint - Update
getVirtualPractice
underPracticeService
from v8 to v9 api endpoint
- Added a new