Skip to content

Releases: DexCare/DexCareSDK-iOS

9.3.0

25 Oct 16:30
dbd6828
Compare
Choose a tag to compare

9.3.0

New

  • This version introduces the ability to convert a virtual visit to a phone visit. This functionality can be triggered by the care giver when the virtual visit is experiencing any technical issues.
  • When the patient closes the "Convert to Phone" CTA, the start or resume methods will return a .phoneVisit completion reason.
  • The onVirtualVisitModalityChanged method was added to the VirtualEventDelegate. This method is called when a virtual visit is converted to a phone visit.
  • New localizable strings:
localizable.strings key Usage
dialog_convertToPhone_success_title CTA Title when the virtual visit was successfully converted to a phone visit.
dialog_convertToPhone_success_message CTA Message when the virtual visit was successfully converted to a phone visit.

Visit cancellation reason

  • Cancelling a virtual visit will now require a reason to cancel the visit. Please work with your DexCare implementation team to learn how you can enable this feature for your organization.
  • VirtualService has a new function cancelVideoVisit(visitId: String, reasonCode: String) to cancel the video visit. The SDK will also use this function internally if patients decide the cancel the visit from the waiting room. The reasonCode should come from the list of CancelReason returned in the getVisitCancellationReasons() function. Similarly, use cancelPhoneVisit(visitId: String, reasonCode: String, patientEmail: String) to cancel phone visit.
  • A new function getVisitCancellationReasons() is available in VirtualService. This function will return a list of CancelReason that can be presented to users to make a selection. A CancelReason will have a display text that's user friendly and a code that needs to be sent back to the VirtualService to cancel the visit. CancelReason is localized as per device locale. Currently supported languages are English and Spanish.

Post visit survey

  • This version introduces a post visit survey that is seamlessly configurable. The SDK itself will present the UI to the patient once the visit is completed. The UI for the survey is configurable from the backend. The survey is not enabled by default when you update to this version. So please reach out to your DexCare implementation contact person for more details. However, please be aware of the breaking changes mentioned below for this version.

Deprecated

  • getVirtualVisitStatus in VirtualService is now deprecated in favor of new function getVirtualVisit.
    They both share the same implementation but the new function provides more detail about the visit.

  • cancelVirtualVisit function in VirtualService has been deprecated in favor of the new
    cancelVideoVisit and cancelPhoneVisit functions.

Breaking

  • With the introduction of new web based post visit survey, this version removes the support for postFeedback from VirtualService. This function is no longer needed and your app doesn't have to implement the UI for survey. DexCare SDK will display the survey after the visit is concluded. Please reach out to your DexCare contact to understand more on configuring the web based survey.

Bug fixes

  • Fixes issue where sdkVersion was returning nil when integrated via SPM
  • Fixes issue where chat message creationDate epoch timestamp contained decimal places
  • Display number instead of words for wait time period in virtual visit waiting room

9.2.1

24 Jul 17:13
534b8e9
Compare
Choose a tag to compare

9.2.1

Bug Fixes

  • Fixed issue where app would crash when receiving chat messages while backgrounded

9.2.0

08 Jul 22:13
d9b1139
Compare
Choose a tag to compare

9.2.0

New

This version of the SDK adds support for wait offline. The patient is given the option to close the app and remain in the queue to be notified when their provider is ready for them. To accomplish this we've added a number of things:

  • New localizable strings:
    localizable.strings key Usage
    waitingRoom_link_waitOffline CTA to enter the wait offline state
    waitingRoom_message_waitOfflinePrompt Prompt to explain the wait offline CTA
    waitingRoom_waitOffline_title Title shown when the patient successfully enters the wait offline state
    waitingRoom_waitOffline_message Message shown when the patient successfully enters the wait offline state
    dialog_waitOffline_title Title for the wait offline confirmation dialog
    dialog_waitOffline_message Message for the wait offline confirmation dialog
    dialog_waitOffline_stay Dialog action to not enter wait offline and remain in the waiting room
    dialog_waitOffline_stay Dialog action to enter the wait offline state and come back later
    dialog_waitingRoom_button_confirm Replaces dialog_waitingRoomCancelConfirm_button_confirm as the generic confirm action in dialogs
  • VisitStatus.waitOffline The status of a visit when the patient is waiting offline for a notification to rejoin the visit
  • VisitStatus.caregiverAssigned The status of a visit that has a caregiver assigned but the patient hasn't yet rejoined the visit from waiting offline
  • VisitCompletionReason.waitOffline Used in the visit completion block to indicate the user chose to wait offline and close the visit for now

Changes

  • We've given the alerts shown by the SDK a face lift to provide better extensibility options in the future
  • Updated the dialog_waitingRoomCancelConfirm_button_confirm localizable strings key to Cancel visit and leave

9.1.1

08 Apr 18:12
fd33c47
Compare
Choose a tag to compare

9.1.1

Bug Fixes

  • Fixed virtual visit crash when integrating the SDK using Service Package Manager (SPM).
  • Fixed issue where canceling a virtual visit was taking multiple seconds before dismissing the waiting room screen.
  • Fixed issue where localization strings were not available when integrating the SDK using CocoaPods.
  • Added server logs to track the "Index out of range" error in ChatViewController.messageForItem(IndexPath, MessagesCollectionView).

9.1.0

07 Mar 14:22
Compare
Choose a tag to compare

9.1.0

New

This version of the SDK adds support for virtual visit transfers between providers. To accomplish this we've added a number of things:

  • Localizable strings:
    localizable.strings key Usage
    waitingRoom_link_leaveVisit CTA to leave a visit after being transferred back to the waiting room
    waitingRoom_message_patientTransfer Message shown only after being transferred back to the waiting room
    waitingRoom_message_dismiss CTA to dismiss the above message
    dialog_waitingRoomCancelConfirm_title_leaveCall Dialog title to confirm the user wants to leave the call
    dialog_waitingRoomCancelConfirm_message_leaveCallConfirmation Dialog message to confirm the user wants to leave the call
  • VirtualEventDelegate.onWaitingRoomTransferred Called when the user is transferred back to the waiting room after already being in a call
  • VisitCompletionReason.left Used in the visit completion block to indicate the user chose to leave the visit

9.0.0

29 Feb 23:25
Compare
Choose a tag to compare

9.0.0

New

  • Support for Swift Package Manager
  • Library is now released as source code instead of a binary package
  • Added PracticeRegionDepartment which is now returned as part of getVirtualPractice(practiceId:)

Removals

  • getCatchmentArea(visitState:, residenceState:, residenceZipCode:, brand:) and CatchmentArea have been removed, see v9 migration guide for more information
  • PaymentMethod enum cases have been simplified, see v9 migration guide for more information.
  • Creating a PaymentMethod via insurance card has been removed along side InsuranceCardFailedReason
  • Virtual visit customization via CustomStrings has been removed, see v9 migration guide for more information
  • All other previously deprecated symbols have been removed. They are:
    • AllowedVisitType.init
    • EmailValidator.EMAIL_REGEX_FROM_CONFIG
    • EmailValidator.EMAIL_VALIDATION_REGEX
    • OpenDay.init
    • OpenHours.init
    • PatientDemographics.init
    • PhoneValidator.PHONE_VALIDATION_REGEX
    • PracticeRegionAvailability.init
    • Provider.init
    • ProviderDepartment.init
    • ProviderService.getProviderTimeslots
    • ProviderTimeSlot.init
    • ProviderVisitType.init
    • RetailDepartment.init
    • RetailService.scheduleRetailAppointment
    • ScheduleDay.init
    • ScheduledProviderVisit.init
    • ScheduledProviderVisit.VirtualMeetingInfo.init
    • ScheduledVisit.init
    • ScheduledVisit.AppointmentDetails.init
    • ScheduledVisit.Timestamps.init
    • VirtualPractice.init
    • VirtualPractice.PracticePaymentAvailability.init
    • VirtualPracticeRegion.init
    • VirtualPracticeRegion.pedatricsAgeRange
    • WaitTime.init
    • WaitTimeLocalizationInfo.init
    • ZipCodeValidator.ZIP_CODE_VALIDATION_REGEX

8.5.0

11 Aug 17:44
Compare
Choose a tag to compare

8.5.0

Bug fixes

  • Fixed VirtualPracticeRegion.pedatricsAgeRange not being decoded from the network response
  • ScheduleRetailAppointmentRequest.init is no longer optional. All errors are surfaced via throwing

Other

  • Update TokBox to OTXCFramework version 2.25.1

Clean up

We've fixed a number of misspelled symbols in this release and marked many the incorrectly spelled symbols as deprecated. We've also renamed a few symbols to better align with standard Swift naming conventions. All these symbols provide 1 click fixes via Xcode and will be removed completely in the next release. There are also a few cases of misspellings that are impossible to deprecate while leaving the original intact, these will be removed with fixit's available in the next release as well. Further, we've deprecated a number of initializers for objects that should only be constructed via Codable. If you feel any of these should remain, please reach out to us.

For reference the deprecated symbols are:

  • AllowedVisitType.init
  • EmailValidator.EMAIL_REGEX_FROM_CONFIG
  • EmailValidator.EMAIL_VALIDATION_REGEX
  • OpenDay.init
  • OpenHours.init
  • PatientDemographics.init
  • PhoneValidator.PHONE_VALIDATION_REGEX
  • PracticeRegionAvailability.init
  • Provider.init
  • ProviderDepartment.init
  • ProviderService.getProviderTimeslots
  • ProviderTimeSlot.init
  • ProviderVisitType.init
  • RetailDepartment.init
  • RetailService.scheduleRetailAppointment
  • ScheduleDay.init
  • ScheduledProviderVisit.init
  • ScheduledProviderVisit.VirtualMeetingInfo.init
  • ScheduledVisit.init
  • ScheduledVisit.AppointmentDetails.init
  • ScheduledVisit.Timestamps.init
  • VirtualPractice.init
  • VirtualPractice.PracticePaymentAvailability.init
  • VirtualPracticeRegion.init
  • VirtualPracticeRegion.pedatricsAgeRange
  • WaitTime.init
  • WaitTimeLocalizationInfo.init
  • ZipCodeValidator.ZIP_CODE_VALIDATION_REGEX

8.4.0

02 Jun 16:49
Compare
Choose a tag to compare

8.4.0

New

  • PaymentMethod.insuranceManualSelfWithPayor now takes in more insurance information. payorId (replaces providerId), and payorName
  • PaymentMethod.insuranceManualOtherWithPayor now takes in more insurance information. payorId (replaces providerId), payorName and subcriberId
  • Added getEMRPatient to PatientService to allow loading a patient information using a MyChartSSO authentication token

Deprecations

  • PaymentMethod.insuranceManualSelf has been deprecated in favor of using PaymentMethod.insuranceManualSelfWithPayor. payorId is the new property to to pass in the insurance payor id.
  • PaymentMethod.insuranceManualOther has been deprecated in favor of using PaymentMethod.insuranceManualOtherWithPayor. payorId is the new property to to pass in the insurance payor id.

8.3.1

31 Mar 00:55
Compare
Choose a tag to compare

Other

  • Updated OpenTok to 2.24.2
  • SDK is built with Xcode 14.1, supporting iOS 13+

8.3

15 Dec 14:46
78c728e
Compare
Choose a tag to compare
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+