Releases: DexCare/DexCareSDK-iOS
8.3
New
- Added
RetailService.getRetailDepartment
to load information on a single retail department. - Default Waiting Room video has been updated to load from Vimeo, supporting Spanish localization. Waiting Room video can still be overridden through the
VirtualConfig
property on intialization.
Other
- Fixed a scenario where the SDK version posted inside the userAgent header on api calls was incorrect
- Updated OpenTok to 2.24.0
- SDK is built with Xcode 14.1, supporting iOS 13+
8.2.0
New
PaymentMethod.insuranceManualSelf
andPaymentMethod.insuranceManualOther
now take in an optionalinsuranceGroupNumber
property.- Added new
ScheduleProviderAppointmentFailedReason.patientNotOnPhysicialPanel
. Will return if onProviderService.scheduleProviderVisit
provider requires that the patient be on their panel. - Added
VirtualVisitDetails.additionalDetails
property to allow saving of meta/extra information on a visit.
AvailabilityService
- Included is a new
AvailabilityService
which allows you to search for an available provider, by location, or department. Options include sorting by most available, giving the ability to give timeslots to lesser booked providers - Timeslots can also be searched with similar functionality.
Fixes
- Update internal endpoint for provider bookings with insurance to save the appointment notes properly (ENG-1040)
Other
- Updated OpenTok to 2.23.1
Deprecations
PaymentService.uploadInsuranceCard
has been deprecated as it's no longer supportedPaymentMethod.insuranceImageSelf
andPaymentMethod.insuranceImageOther
has been depecrated as it's no longer supported.
8.1.0
New
- Support for localization. To override the SDK keys, simply create a
Localizable.strings
file, match the keys used by the SDK, and the SDK will look there first for any overrides. - Added
VirtualVisitDetails.traveling
boolean property.
Fixes
- On Visit creation, when using DexCarePatient, check mobile and work phone, not just homePhone (DC-9929)
Deprecations
CustomStrings
has been deprecated. Any previous use of customStrings will be used first overLocalizable.strings
file, but will be removed in a future version.
Other
- Updated OpenTok to 2.23.0.
8.0.1
New
- New
VirtualVisitFailedReason.invalidRequest(message:)
added to better show the error returned by the server if 400 returned. See message returned for specific error.
Fixes
- Fixes MessageKit dependency version misalignment
- Removes hardcoded
VirtualVisitAssignmentQualifer.adult
andVirtualVisitAssignmentQualifer.pediatric
options. Regular virtual visits without special qualifications, should set theVirtualVisitDetails.assignmentQualifers
tonil
- Removes missed async version of
RetailService.getClinics
this was renamed toRetailService.getRetailDepartments
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. -
Added
VirtualPracticeRegion.pedatricsAgeRange
to indicate the age of patients that pediatric providers can see. -
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 internal endpoint for
PracticeService.getVirtualPractice
- Updated OpenTok dependency to 2.22.3
- Updated MessageKit dependency to 3.8.0
7.2.1
Dependency Updates
- Updated OpenTok dependency to 2.22.0
- Updated MessageKit dependency to 3.7.0
7.2.0
New
-
Adds a
PatientService.deletePatientAccount
to start the process of deleting a DexCare Patient Account. -
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
.
Fixed
- Adjusts the QR Code that is displayed for TytoCare setup when it sometimes gets cut off - DC-6766
Other
- Updated OpenTok dependency to 2.21.2
7.1.1
Fixed
- Fixes a crash that happens on iOS version < 14.0. Minimum iOS version is now iOS 13+
7.0.1
Fixed
- Fixes a crash that happens on iOS version < 14.0. Minimum iOS version is now iOS 13+
7.1.0
New
- Introduced a new
VideoCallStatistics
structure that can return network statistics about a video visit. Statistics are automatically gathered during a visit by the SDK, and can be queried by you after a visit is complete. VideoCallStatistics
includes information about packet loss, bandwidth speeds, and bytes send/received. This should be used for your debugging or logging purposes.- These statistics can be retrieve by calling
VirtualService.getVideoCallStatistics()
after a video visit has started. - Added a new
VirtualService.getVirtualVisitStatus(visitId:)
that will return aVisitStatus
enum. A helper functionisActive
is also added toVisitStatus
to indicate whether or not you can resume with that visitId or not. - Added a
[PatientQuestion]
array to theRetailVisitInformation
andProviderVisitInformation
object. This can be used during retail and provider visits to pass up information to be saved.
Important
- When booking for retail, virtual, or provider, the visitDetails.
contactPhoneNumber
will be the only valid phone number needed. In previous versions, on someone else visits, the demographic.homePhone was required to be valid. Going forward, the SDK will only usecontactPhoneNumber
. If the phone number is different between the demographic.homePhone and the contactPhoneNumber then in Virtual Visits, the PRR will see the difference and can adjust the EPIC record if needed.
It is recommended that on intake, you provide a Phone Number field that can be prepopulated with whichever phone you wish. That phone number should be saved to the visitDetails.contactPhoneNumber on booking.
Fixed
- When a network issue occurs during a video visit or in the waiting room, the SDK now extends it's retry time to 2 minutes. During this time a reconnecting spinner is shown to the user, which includes a cancel option. Tapping cancel can allow the user to leave the video visit, but does not mark the visit as cancelled and is still active. Users can rejoin the video visit.
Other
- Updated internal endpoint for
ProviderService.getProviderTimeslots
- When starting a virtual visit, internally the SDK will send a notification to the server to indicate that the device has enabled their video and microphone.