Skip to content

Releases: LivePersonInc/iOSFrameworks

Release 6.23.0

31 Jan 19:21
Compare
Choose a tag to compare

Version 6.23.0

iOS Messaging SDK

Release Date: Jan 31, 2025

Environment requirements

The iOS Mobile Messaging SDK version 6.23.0 is supported on iOS versions 13 through 18.

This XCFramework was compiled with Swift version Apple Swift version 5.9 (swiftlang-5.9.0.128.108 clang-1500.0.40.1), which means it will work Swift version 5.7.1 and above.

{: .attn-alert}
XCFramework is supported on CocoaPad versions 1.13.0 and greater.

Bugs fixed

  • Fixed an issue where SDK might crash when multiple threads access or modify the user’s dictionary simultaneously (not thread-safe).

  • Fixed an issue where the unread message count icon was partially truncated when the font size was set to "Extra Large".

  • Fixed an issue where accessibility (a11y) focus would shift randomly when the PCS quick-reply option was clicked. Now, the focus is directed to the sent message for a consistent user experience. If additional messages arrive, the focus remains on the sent message, and a11y will only announce the new message.

  • Fixed an issue where the ‘percentage’ attribute was not applied to Structured Content horizontal containers, ensuring percentages now apply consistently to both parent containers and leaf-level elements such as text, images, maps, and buttons.

  • Fixed several date picker accessibility issues, including:

    1. Dim/unclickable buttons not being announced.
    2. Buttons not being identified as clickable.
    3. The close button reading an incorrect caption.
    4. Month fields not being associated with chevrons, leaving users unaware of their function.
  • Fixed an issue where "secureFormBubbleFillFormButtonBackgroundColor" overlapped the loading indicator. Changing this background color to a solid color no longer blocks the loading indicator.

  • Fixed SDK local image storage mechanism by adding a hashed value to file paths to ensure uniqueness.

  • Fixed an issue where SDK was retrying file upload in offline messaging mode.

  • Fixed an issue where SDK was rendering a broken image icon incorrectly.

  • Fixed an issue where file messages would disappear or hang on the conversation screen if the JWT/code token expired during file upload. The fix adds failure callbacks triggered when the socket closes with an unrecoverable error code.

  • Fixed an issue where the push notification tapped delegate was not invoked when tapping the system push notification banner in the notification center and calling the handlePush method. The delegate method is now invoked in this scenario.

  • Fixed an issue where loading older message history would not display correctly after the first load. The swipe-to-load feature now consistently loads older messages in subsequent relaunches of the messaging window.

  • Fixed an issue with masking where local system messages (e.g., "Your personal data has been masked...") were shuffled and displayed above consumer masked messages after sending consumer messages.

  • Fixed an issue where the unread message banner was rendered multiple times in the structured content message cell. The update prevents multiple renderings of the unread message banner.

  • Fixed an issue where the offline messaging loader was animating too quickly on rotating the device, or tapping on retry banner to reconnect etc.

  • Fixed an issue where the inputTextViewMaxHeight configuration was not being applied correctly.

  • Fixed an issue where the microphone button for voice recording (enableAudioSharing) reappeared after dismissing and relaunching the messaging screen with text in the input area.

  • Fixed focus shift issues for VoiceOver by enhancing the cell reload mechanism for structured content and quick replies.

  • Fixed an issue where the endConversation callback was incorrectly invoked for newly logged-in users.

  • Fixed an issue where the File Sharing menu label texts did not resize according to system accessibility font size settings.

  • Fixed an issue where the unread message banner displayed a count lower than the actual number of unread messages. It happens when the conversation screen gets closed and messages arrive before the socket gets closed. It was showing the count for only the messages that came after the socket closed.

  • Fixed an issue in the unauthenticated flow where the masked hint text, "Your personal data has been masked to protect your security. Only the agent can read it." disappears, and masking is removed when the consumer backgrounds or foregrounds the app.

  • Fixed an issue for a reported crash case related to the enableSpeechRecognition feature.

  • Fixed an issue where the message timestamp did not update promptly when the app transitioned from background to foreground. The SDK now updates the message timestamp correctly upon foregrounding the app.

  • Fixed an issue where the SDK would crash if Korean language were selected. Related to key "structuredContentCellWithItemsMessage".

  • Fixed an issue where the SDK sent a redundant request to the pusher service when unregisterType was set to .none in the old logout method. Please use the new logout method instead. (This fix was introduced in the 6.22.1 release and is available in 6.23.0.)

  • Fixed an issue where QuickReply options remained visible after being selected on another device, when both devices were displaying the messaging conversation screen.

  • Fixed an issue where the unread messages count sometimes did not reset when the pusherClearBadgeCount branding config was enabled.

Features

  • Added support for rendering and responding to iDavid form.
  • Introduced a branding configuration announceNewMessageContent to control VoiceOver behavior for new messages. When enabled (default behaviour), VoiceOver announces the content of new messages; otherwise, it announces only "New Message."

    If true: Accessibility VoiceOver now consistently announces "New message + message content".

  • Added support for rich-text features in the in-app SDK. This feature is currently available only for conversations initiated through the Web experience. The new parsing, formatting, and presentation of rich-text messages apply to bot agent messages, human agent messages, and automatic messages.

Enhancement

  • Moved the "# of unread messages" from the "accessibilityLabel" to the "accessibilityHint" of the "Scroll to Bottom" button for improved accessibility clarity.
    1. Updated the default value of "accessibilityScrollToBottomButton" from "Scroll to Bottom" to "Go to Recent Message".
    2. Updated the default value of "accessibilityHintScrollToBottomButton" from "Scrolls the user to newest messages." to "Scroll to Most Recent Message".
  • When launching the conversation screen with VoiceOver accessibility enabled, the initial focus will be set to "x unread messages". If no "x unread messages" are found, it will focus on the latest message of the conversation.
  • Hide the vertical scroll bar when VoiceOver accessibility is enabled to improve screen navigation for accessibility users.
  • SDK's accessibility (VoiceOver) will ignore structured content with a Text type if both text and tooltip are empty. These elements will not be included in the accessibilityElements.
    example:
    {
      "type": "text",
      "text": "",
      "tooltip": ""
    }
  • Improved socket error handling to ensure messages are sent to the latest dialog.
  • Enhanced the in-app SDK with custom actions to enable activation of individual links within messages containing multiple links.
  • Deprecated Datepicker LPConfig datePickerFooterButtonText. Use LPLanguagesKeys.confirm instead.
  • Introduced the notificationType: LPNotificationType property on the LPNotification object to detect the type of push notification, such as regular, proactive, or c2m. Additionally, the following variables of ProactiveNotificationData have been made public:
    lookBackPeriod,
    agentPid,
    backendService,
    externalConsumerId
  • Return the LPNotification object immediately from the handlePush(:) function to enable brands to consume it and make decisions more quickly, rather than receiving the object asynchronously through the delegate method. Mark the existing LPMessagingSDKNotification(didReceivePushNotification notification: LPNotification) delegate method as deprecated.

  • Added localizations key for date picker accessibility:

      "accessibilityFromDate" = "From Date";
      "accessibilityToDate" = "To Date";
      "accessibilityMonthYearPicker" = "Month year Picker";
      "accessibilityCalendarSelection" = "Calendar Selection";
      "accessibilityConfirmation" = "Confirmation";
    

Release 6.22.1

15 Jan 22:30
Compare
Choose a tag to compare
  • Provided a hot fix for an issue with unregistering the user from Pusher. SDK was unregistering the user from Pusher even if unregisterType is passed as .none in logout method. In this case SDK should not invoke the unregister from Pusher API so device can still receive push notifications. A new version of logout method is introduced with an additional parameter authType: LPAuthenticationType that will decide whether to unregister the authenticated user from Pusher or not.
func logout(authType: LPAuthenticationType,
                unregisterType: LPPusherUnregisterType = .all,
                completion: @escaping () -> Void,
                failure: @escaping (_ errors: [Error]) -> Void)

Release 6.22.0

15 Jan 22:28
Compare
Choose a tag to compare

Version 6.22.0

iOS Messaging SDK

Release Date: Sep 30, 2024

Environment requirements

The iOS Mobile Messaging SDK version 6.22.0 is supported on iOS versions 13 through 17.

This XCFramework was compiled with Swift version Apple Swift version 5.7.1 (swiftlang-5.7.1.135.3 clang-1400.0.29.51), which means it will work Swift version 5.7.1 and above.

This version will be the last version where the Swift version 5.7.1 is used for compiling. Future versions will use Swift version 5.9.

XCFramework is supported on CocoaPad versions 1.13.0 and greater.

Bugs fixed

  • Fixed Cobrowse session staying open if consumer resolves the conversation during a call on an account with PCS setup.
  • Fixed connection failure banner to be shown in some cases.
  • Removed general Optional extension implementation of CustomStringConvertible.
  • Fixed proactive messages not being rendered if not tapped by the user.
  • Fixed the SDK keeping only the latest proactive message for rendering.
  • Fixed navigation issues for accessibility users on the schedule slot list.
  • Fixed voice-over focusing on file and caption separately for file messages.
  • Fixed voice-over focus shift when new messages arrive.
  • Fixed voice-over focus moving to the entire Structured Content container when the timestamp is automatically updated.
  • Fixed voice-over focusing on random Structured Content elements automatically.
  • Fixed issue when the user marks the conversation as urgent, Cobrowse invitation is sometimes duplicated.
  • Fixed issue when conversation is resolved SDK not presenting next eligible proactive message.
  • Fixed issue when appointment list is presented current day is not selectable.

Features

  • Added a new API getPendingProactiveMessages to get pending proactive notifications
  • Added a configuration fetchPendingProactiveMessagesImplicitly to fetch pending proactive messages messages implicitly.
  • Added ability to block consumers from triggering publish text actions on historical Structured Content messages. This feature can be enabled on the site level to have a default behavior and/or on the JSON level to have individual behavior. Please contact your account manager to define a default behavior.
  • Added ability to block consumers from sending messages when action is required Structured Content is the latest message. This feature can be enabled on the site level to have a default behavior and/or on the JSON level to have individual behavior. Please contact your account manager to define a default behavior.
  • Added a configuration messageLinkAsCallback and callback LPMessagingSDKMessageLinkClicked. when tapping on a remote message link. * When both structuredContentLinkAsCallback and messageLinkAsCallback are enabled, only structuredContentLinkAsCallback is applied, and messageLinkAsCallback is ignored.
  • Added support for "doc" and "xls" file types.
  • A new method is added in SDK to check consumer’s open conversation status using UMS REST API. checkActiveConversationFromServer

Enhancement

  • Disabled deprecated bitcode process to support most recent and upcoming XCode Versions.

Release 6.21.0

31 Jul 20:51
Compare
Choose a tag to compare

Version 6.21.0

iOS Messaging SDK

Release Date: July 31, 2024

Environment requirements

The iOS Mobile Messaging SDK version 6.21.0 is supported on iOS versions 13 through 17.

This XCFramework was compiled with Swift version Apple Swift version 5.7.1 (swiftlang-5.7.1.135.3 clang-1400.0.29.51), which means it will work Swift version 5.7.1 and above.

XCFramework is supported on CocoaPad versions 1.13.0 and greater.

Bugs fixed

  • Fixed voice over announcing current assigned agent name instead of the actual agent who sent the message.
  • Fixed voice over announcements for stop recording and stop replaying buttons.
  • Fixed sometimes voice over announcing the "Agent is typing" twice for a single agent message.
  • Fixed the accessibility issue with structured content carousel navigation where VO always moves focus on and announces the first element of the card 1 before focusing on the selected card.
  • Voice over announcing unread message for every incoming message even though message is not unread one.
  • Fixed accessibility issue related to structured content image without tooltip and actions was not getting ignored for accessibility services and announced as just "image".
  • Fixed recorded audio message time being shown as "00:00" by backgrounding and foregrounding the app.
  • Fixed when conversation screen just opened but user scrolls up and agent sends a message, it will auto scroll the conversation transcript to bottom.
  • Fixed issue for conversation not getting scrolled to bottom when consumer sends multiline message.
  • Fixed issue related to typing indicator not shown when the agent is sending some quick messages.
  • Fixed issue related to PNG image rendering where SDK was rendering PNG image as black image.
  • Fixed a rare app crash due to accessing core data nil objects.
  • Fixed issue when user with only closed conversations logins but conversation screen loaded only one conversation instead of two.

Features

Enhancements

  • Some additional branding configurations are added for quick reply buttons. These configurations will be overriden by configurations provided in quick reply JSON.

    1. quickReplyTextColor: Default value is LPColor.lpGray.
    2. quickReplyBackgroundColor: Default value is LPColor.lpBackground.
    3. quickReplyBorderColor: Default value is LPColor.lpGray.
  • A new method is added "isRegisteredForPushNotifications” that takes a token as string to fully support the registerPushNotifications with String method.

Release 6.20.0

30 May 19:10
Compare
Choose a tag to compare

Version 6.20.0

iOS Messaging SDK

Release Date: May 30, 2024

Environment requirements

The iOS Mobile Messaging SDK version 6.20.0 is supported on iOS versions 13 through 17.

This XCFramework was compiled with Swift version Apple Swift version 5.7.1 (swiftlang-5.7.1.135.3 clang-1400.0.29.51), which means it will work Swift version 5.7.1 and above.

XCFramework is supported on CocoaPad versions 1.13.0 and greater.

Bugs fixed

  • The configuration remoteUserBubbleHyperLinkColor now properly reflects on hyperlinks sent by agents.
  • Conversation now should probably scroll up in most scenarios while the keyboard is shown.
  • Unread message divider now correctly appears when a consumer has the SDK in the background and returns to the SDK by tapping a push notification when there was only one message sent.
  • Scroll issues when returning from a cobrowse session while the keyboard is open have been resolved.
  • The remoteUserDefaultAvatarImage configuration now properly sets the agent icon background to transparent for cobrowse invitation messages.
  • The keyboard is now dismissed when entering the cobrowse call.
  • A crash that could occur when the speech recognizer functionality gets deallocated has been resolved.
  • If the SDK was placed in a small container it could create spacing issues. This has been resolved.
  • The text input bar would have unintended white space next to it if the device was placed in landscape mode and has been removed.
  • Link display fixes for sending both a link and an embedded link in the same welcome message.
  • An empty entry in the SDK privacy manifest has been removed.

Features

  • A new function to send messages without needing to use the LP-provided input area has been added. sendText
  • View Only Mode is now able to be enabled during an active conversation to disable the LP-provided input options.

Enhancements

Accessibility

  • Voiceover will now read the tooltip of quick replies if it exists.

Release 6.19.0

28 Mar 20:24
Compare
Choose a tag to compare

Version 6.19.0

iOS Messaging SDK

Release Date: Mar 29, 2024

Environment requirements

The iOS Mobile Messaging SDK version 6.19.0 is supported on iOS versions 13 through 17.

This XCFramework was compiled with Swift version Apple Swift version 5.7.1 (swiftlang-5.7.1.135.3 clang-1400.0.29.51), which means it will work Swift version 5.7.1 and above.

XCFramework is supported on CocoaPad versions 1.13.0 and greater.

Bugs fixed

  • Fix the conversation screen is not automatically scrolling to the bottom after a date from the date picker is selected.
  • Fix Unstable UI on Date Picker / Appointment List when the device is rotated to landscape on bigger screen devices. The date picker is no longer using the deprecated portrait forcing mechanism for small-screen devices.
  • Fix SDK is showing an empty navigation bar animating out of the screen after the date selection is confirmed.
  • Fix disabling enableLinkPreview disables enableRealTimeLinkPreview
  • Fix the appointment list does not highlight the focused date correctly in some cases
  • Fix Buttons fill available space when rendering the structured content.
  • Fix SDK ignores URLs when the message contains a hyperlink
  • Fix SDK shows an Unread message notification If successive long messages are received while the screen is still scrolling.
  • Fix the behavior of Voice Over to let users focus on individual cards instead of only the whole carousel.
  • Fix the background color is not transparent for the image of the agent avatar while the agent is typing.
  • Fix the margin for the text label inside Structured Content, It is no longer rendered closer to the bottom of the container.
  • Fix Cobrowse invitation having a default white background even on dark conversation background color.

Features

  • SDK can now render the Welcome Message that has been set on Window Configuration on Mobile Engagement. Reach out to your account representative to enable and adjust.
  • SDK now allows users to switch to picture-in-picture mode. This allows users to minimize the call view while the call is still active and see/interact with the chat view.

Picture in Picture is supported on iOS 14.3+. Previous versions will default to full screen call view.

Enhancements

  • New Configurations added to Structured Content
  1. structuredContentButtonBackgroundColor: Configures the background color of buttons that are used in Structured Content.
  2. structuredContentCardBackgroundColor: Configures the background color of cards that are used in Structured Content.

Release 6.18.1

22 Mar 20:03
Compare
Choose a tag to compare
  • Added hot fix for privacy manifest removing unneeded reason codes.
  • Fixed a potential issue to link to correct internal library correctly to allow Structured Content colors to be correct.

Release 6.18.0

31 Jan 20:48
Compare
Choose a tag to compare

Version 6.18.0

iOS Messaging SDK

Release Date: Jan 31, 2024

Environment requirements

The iOS Mobile Messaging SDK version 6.18.0 is supported on iOS versions 13 through 17.

This XCFramework was compiled with Swift version Apple Swift version 5.7.1 (swiftlang-5.7.1.135.3 clang-1400.0.29.51), which means it will work Swift version 5.7.1 and above.

XCFramework is supported on CocoaPad versions 1.13.0 and greater.

Bugs fixed

  • Fix callbacks Index "LPMessagingSDKConnectionStateChanged" to only return "true" once when the view is ready (after the queries to UMS and history API are completed).
  • Fix when the container view controller has a translucent navigation bar, the toast banner within the SDK on the conversation screen was not displaying properly.
  • Fix and apply all the following paddings for all consumer/remote messages:

    remoteUserAvatarLeadingPadding,
    remoteUserAvatarTrailingPadding,
    bubbleTimestampTopPadding,
    bubbleTimestampBottomPadding,
    bubbleTopPadding,
    bubbleBottomPadding,
    bubbleLeadingPadding,
    bubbleTrailingPadding

Features

  • "Offline Messaging": When enabled, lets consumers to interact with messaging screen immediately instead of having them waiting for loading process to be completed and prevents showing a blocking loading view.

    1. Attribute "offlineMessagingEnabled": true/ false
    2. Attribute "pcsBehaviorForOfflineMessages": 0 as default value. Possible values and functions:

    1 - remove offline messages from dialog and do not send them to UMS, continue with PCS dialog

    2 - resolve active PCS dialog and send offline messages to a new conversation

    0 / other values - do nothing, just send offline messages to the same dialog

    1. Other "UI attributes": offlineLoaderColor, offlineLoaderBackgroundColor, offlineLoaderCornerRadius, offlineLoaderWidthPercentage, offlineLoaderHeight, offlineLoaderAnimationSpeed.
  • Add a "speech recognition" feature to trigger the device's speech-to-text capability. Once enabled, a custom speech recognition button will appear in the input-text view area. Please ensure to include the required permissions to your application.

    1. Attribute "enableSpeechRecognition": true/ false to enable this feature.
    2. Attribute "speechRecognitionInputDurationInSeconds": default 10.0 (seconds). Max duration of input inactivity for speech recognition to be automatically disabled.
    3. New localized strings key:

    A11Y related: "accessibilityVoiceRecognitionButton", "accessibilityVoiceRecognitionButtonActivationHint", "accessibilityVoiceRecognitionButtonDeactivationHint", "accessibilityVoiceRecognitionButtonErrorHint", "accessibilityVoiceRecognitionInsertedText"

    UI related: "voiceRecognitionPlaceHolder"

Enhancements

  • Allow style changes on Welcome Message options for quick replies. Please check our guide for more information.

Enhancements / Features

  • Add privacy manifest files to describe the data LP iOS Messaging SDK collects and the reasons required APIs it uses.

Release 6.17.0

19 Dec 21:19
Compare
Choose a tag to compare
  • Added internal logging for performance metrics tracking which contains no visible change to SDK logs.
  • Added fix for token expiry while secure form is opened to allow the form to be submitted successfully.

iOS Messaging SDK - Version 6.16.0

26 Oct 19:06
Compare
Choose a tag to compare

Version 6.16.0

iOS Messaging SDK

Release Date: October 26th, 2023

Environment requirements

The iOS Mobile Messaging SDK version 6.16.0 is supported on iOS versions 13 through 17.

In the previous version, it was noted that the SDK would be updated to the minimum iOS target of iOS 13. The minimum target for this version is now 13 and it will no longer compile with less than 13. There is no support even at a compilation level for iOS 12 from this version on.

This XCFramework was compiled with Swift version Apple Swift version 5.7.1 (swiftlang-5.7.1.135.3 clang-1400.0.29.51), which means it will work Swift version 5.7.1 and above.

Apple silicon is supported on this version

XCFramework is supported on CocoaPad versions 1.13.0 and greater.

Accessibility Bugs fixed / Enhancement

  • The focus of the screen reader when structured content is being read is now moved to the item that it is reading instead of staying on the whole cell when a new message comes in.
  • When using accessibility options structured content borders could be incorrect and have been fixed.

Bugs fixed

  • Several changes to both appointment list and date picker content which will resolve issues of improperly set dark mode colors as well as setting colors when flipping between dark and light mode without relaunching the content.
  • Resolved an issue where in some scenarios call accept and rejoin buttons for cobrowse would be square instead of circles.
  • Resolved an issue where the agent typing indicator would not show after the user opened a link and then returned.
  • Resolved an issue where the unread message count could be incorrect after PCS questions were answered by the user and the user would log out and back in.
  • Resolved an issue where the message status (sent, delivered, read, etc.) was not updating correctly if the conversation had files sent from web messaging and then opened in the SDK.
  • Resolved an issue where the survey bot would still show in the header after the survey was closed.
  • Resolved an issue where older message timestamps would not always be updated and could go stale if the cells were not reloaded yet.
  • Resolved an issue where the unread message count in the scroll to bottom button could be cut off if the message was only one character.
  • Resolved an issue where there could be a crash while scrolling through an appointment list days list.
  • Resolved an issue where the agent name would not show in conversation history after logging out and logging in at the end of the conversation where it shows the close reason.
  • Resolved an issue where a link could not be tapped while the keyboard was open.
  • Resolved issues where unread message count would be cleared if pull down to fetch history was completed or the file attachment menu was opened.
  • Removed a duplicated navigation bar in the file preview screen.

Features

  • Added new PKCE Oauth Support which contains a new method getPKCEParams()and a new field in the LPAuthenticationParams object the codeVerifier. Further details will be contained in the LPAuthenticationParams and function documentation.

Enhancements

  • Updated table view headers to align with footers to prevent discrepancies.
  • Compilation support for iOS 12 has been fully dropped to allow the use of newer Apple API within the development of the iOS SDK.
  • In-app push notifications now dismiss on tap and not just on swipe up to dismiss.
  • The SDK now has added functionality to be used through SPM as well as the previously existing manual and Cocoapod options. There are further details on the quick start page.
  • Due to the change of the minimum iOS version target to 13 several availability flags have been removed internally as they are no longer necessary.
  • Added a digital signature to the iOS SDK to be identifiable by brands build processes.