Releases: LP-Messaging/iOS-Messaging-SDK
iOS Messaging SDK - Version 6.7.0.820
Version 6.7.0
iOS Messaging SDK
Release Date: Jan 31, 2022
Environmental Requirements
The iOS Mobile Messaging SDK version 6.7.0.820 is supported on iOS versions 13 through 15.
This XCFramework was compiled with Swift version Apple Swift version 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53) which means it will work Swift version 5.2.4 and above.
XCFramework is supported on CocoaPad versions 1.9.0 and greater.
Bugs fixed
- Fixed the issue with unread message divider not clearing after consumer responds.
- Fixed the issue with Send Button failed to appear when selecting an image via Photo Sharing feature.
- Fixed the issue with cases when a duplicate header will be display when starting a Conversation.
- Fixed cases when Conversation Screen will have issues scrolling to the right position.
Enhancements
Clear History Enhancement
Description:
SDK will have the capability of clearing the welcome message as well including the history when clicking on clear history. This config will not be in charge of clearing the welcome message when closing the conversation and reopening it.
Control History API
When using the Control History API, conversations are filtered in real time based on the parameters provided, once each conversation dialog is closed the Conversation Screen will reflect the changes accordingly.
⚠️
To enable displaying the Welcome Message when using this feature, enable the following configurationenableWelcomeMessageForHistoryControlAPI
, this is only supported when settingLPConversationsHistoryStateToDisplay.Open
. To see more about how to achieve this visit link
New Configurations:
enableHideWelcomeMessageOnClearHistory
- Description: Show or hide the welcome message when calling the Clear History functionality.
- Type: Bool
- Default Value: false
- Available since: 6.7.0
- See also: Clear History Function
- Limitations: The history is still available both on the Server and Local Database, and will be loaded next time the Conversation Screen is presented.
enableWelcomeMessageForHistoryControlAPI
- Description: This configuration will only enable showing the Welcome Message when
LPConversationsHistoryStateToDisplay.Open
- Type: Bool
- Default Value: false
- Available since: 6.7.0
- See also: Control History API
Deprecations
maxPreviousConversationsToPresent
- Description: Set the max conversations to present on initial load.
- Type: Int
- Default Value: 2
- Available until: 6.6.0
- Note: This property is now part of the Control History API via the historyConversationsMaxDays parameter.
iOS Messaging SDK - Version 6.6.1.810
Version 6.6.1 - Limited Release
iOS Messaging SDK
Release Date: Nov 19, 2021
Environmental Requirements
The iOS Mobile Messaging SDK version 6.6.1.810 is supported on iOS versions 13 through 15.
This XCFramework was compiled with Swift version Apple Swift version 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53) which means it will work Swift version 5.2.4 and above.
XCFramework is supported on CocoaPad versions 1.9.0 and greater.
iOS Messaging SDK - Version 6.6.0.809
Version 6.6.0
iOS Messaging SDK
Release Date: Oct 29, 2021
Environmental Requirements
The iOS Mobile Messaging SDK version 6.6.0.809 is supported on iOS versions 13 through 14.
This XCFramework was compiled with Swift version Apple Swift version 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53) which means it will work Swift version 5.2.4 and above.
XCFramework is supported on CocoaPad versions 1.9.0 and greater.
New functionality
Appointment List
Description:
Enabling Brands to leverage new JSON schema containing appointmentList Action, presenting new UI components on the Conversation Screen allowing to self-serve appointment selections.
⚠️
Appointment List JSON schema is only supported on accounts using UMS version 4.2, please contact your LivePerson representative to validate your account qualifies for this feature.
Bugs fixed
- Fixed the issue when reusing cached Auth Code and created a new method to request new auth code that brands need to call on auth failures.
- Fixed the issue with hyperlink not working on remote message.
- Fixed the issue with screen freezing after resolving conversation.
- Fixed the issue with Unread Message texts not being read by voice over.
- Fixed the issue with the "Loading" message not being read by voice over.
- Fixed the issue with the photo caption name having incorrect role of button.
New Configurations:
controllerBubbleHyperlinkColor
- Description: Controls text color for hyperlink item on the system messages bubble
- Type: UIColor
- Default Value: LPColor.lpGray2
- Available since: 6.6.0
appointmentCustomOutputDateFormat
- Description: Default format to present date in output message
- Type: String
- Default Value: "EEEE, MMMM d"
- Available since: 6.6.0
appointmentCellSelectedColor
- Description: Default color for when user presses and selects a cell from the calendar view
- Type: UIColor
- Default Value: UIColor.appointmentListCalendarBlueColor
- Available since: 6.6.0
appointmentSlotImage
- Description: Default image for appointment slot image
- Type: UIImage
- Default Value: image named LP_APPOINTMENT_IMAGE
- Available since: 6.6.0
For the complete list of configurations related to the AppointmentList, click here
iOS Messaging SDK - Version 6.5.1.804
Version 6.5.1.804
iOS Messaging SDK
Release Date: September 9th, 2021
Environmental Requirements
The iOS Mobile Messaging SDK version 6.5.1.804 is supported on iOS versions 12 through 14.
This XCFramework was compiled with Swift version Apple Swift version 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53) which means it will work Swift version 5.2.4 and above.
XCFramework is supported on CocoaPad versions 1.9.0 and greater.
Enhancements
Support for Rich Proactive InApp Push Notifications
Description:
A brand will be able to attach an image URL to a proactive push notification and that image will be rendered as appropriate for the device.
Reporting for Rich Proactive InApp Push Notifications
Description:
- when proactive payload is delivered to SDK
- when proactive payload is processed and displayed on SDK conversation window
- when consumer clicks on the image
- when consumer initiates the conversation with SC proactive payload
- when the image URL fails to render.
Bugs fixed
- iOS SDK sending empty JSON array to Loggos creating 500 errors
- remote user's bubble text color is not conforming to remote text color when in Dark Mode.
- Link's underline is short when adding emoji's.
iOS Messaging SDK - Version 6.5.0.802
Version 6.5.0
iOS Messaging SDK
Release Date: Jul 16, 2021
Environmental Requirements
The iOS Mobile Messaging SDK version 6.5.0.802 is supported on iOS versions 12 through 14.
This XCFramework was compiled with Swift version Apple Swift version 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53) which means it will work Swift version 5.2.4 and above.
XCFramework is supported on CocoaPad versions 1.9.0 and greater.
New functionality
Support for Structured Content containing DatePicker schema
Description:
Enabling Brands to leverage new JSON schema containing Single or Range DatePicker, presenting new UI components on the Conversation Screen allowing to self-serve Date selections.
⚠️
DatePicker JSON schema is only supported on accounts using UMS version 4.2, please contact your LivePerson representative to validate your account qualifies for this feature.
Improved performance for First Time Load
Description:
Description: Improved loading times for First Load or for Consumers connecting after a Logout.
Adding support for additional languages
Description:
Adding language parity with other conversational Cloud Services:
- Malaysian
- Arabic
- French-Canadian
- Indonesian
- Latin American Spanish
Adding new configuration to control presentation style for Image/File/Video Picker ViewController
Description:
Adding new configuration to enable Brands to control UIModalPresentationStyle when presenting the following Pickers:
- File Sharing
- Image Sharing
Bugs fixed
- Fixed the issue when Unread Message Divider won’t be dismissed
- Fixed the issue when loading view won't dismiss when closing and reopening Conversation Screen during PCS
- Fixed the issue when Conversation Source will be reported as SHARK
New Configurations:
enableLoadingView
- Description: Will enable/disable presentation of loading view when presenting Conversation Screen.
- Type: Bool
- Default Value: false
- Available since: 6.5.0
modalPresentationStyle
- Description: The configuration to control our modal presentation styles within the SDK.
- Type: UIModalPresentationStyle
- Default Value: fullScreen
- Available since: 6.5.0
imagePickerPresentationStyle
- Description: The configuration to control our modal presentation style for image picker controller within the SDK.
- Type: UIModalPresentationStyle
- Default Value: fullScreen
- Available since: 6.5.0
datePickerPresentationStyle
- Description: The configuration to control our modal presentation stylen for LPDatePicker controller within the SDK.
- Type: UIModalPresentationStyle
- Default Value: fullScreen
- Available since: 6.5.0
For the complete list of configurations related to the DatePicker, click here
iOS Messaging SDK - Version 6.4.1.791
Version 6.4.1
iOS Messaging SDK
Release Date: June 9, 2021
Environmental Requirements
The iOS Mobile Messaging SDK version 6.4.1.791 is supported on iOS versions 12 through 14.
This XCFramework was compiled with Swift version 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53) which means it will work Swift version 5.2.4 and above.
XCFramework is supported on CocoaPad versions 1.9.0 and greater.
Enhancements
Enhancing processing of Proactive and IVR Deflection to cover In App Notifications
Enabling processing of Proactive and IVR Deflection Notifications can be done using a new configuration, for cases when Host App is in an active state and consumer taps on the InApp Notification:
enableInAppProcessingForActiveState = true
Exposing a new method to handle tapping of InApp Notifications:
public func handleTapForInAppNotification(notification: LPNotification)
When brands have their own implementation of the LPMessagingSDK InApp notification via
LPMessagingSDKNotification(customLocalPushNotificationView notification: LPNotification)
protocol, a new method has been exposed to notify SDK that notification was tapped and it can process the Proactive and IVR Deflection Data accordingly.
Bugs fixed
- Fixed the issue when Socket won’t disconnect when interrupting the connection process.
- Fixed the issue when loading view won't dismiss when closing and reopening Conversation Screen during PCS
New Configurations:
enableInAppProcessingForActiveState
Enable or disable the ability to display Proactive and IVR Deflection messages on Conversation Screen
- Type: Bool
- Default Value: false
- Preconditions:
- Consumer to be registered for Push Notifications
- Consumer tapped InApp Notification
- Available since: 6.4.1
⚠️
This flags enables SDK to process InApp Notifications for Proactive and IVR Deflection messages, is not related to Push Notifications received when the Application is not active.
iOS Messaging SDK - Version 6.4.0.787
Version 6.4.0
iOS Messaging SDK
Release Date: May 7th, 2021
Environmental Requirements
The iOS Mobile Messaging SDK version 6.4.0 is supported on iOS versions 12 through 14. It is compiled with Swift version 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53), and supports swift versions 5.2.4 and above
XCFramework is supported on CocoaPad versions 1.9.0 and greater.
Enhancements
Adding a self awareness process to help SDK recover after discovering a corrupted keychain preventing empty bubbles from being shown on the Conversation Screen.
Adding reporting capabilities for Proactive and IVR Deflection to App Messaging feature
Bugs fixed
- Fixed the issue when changing value for
maxPreviousConversationToPresent
fails to reflect new value - Fixed the issue with Video and Voice call invite UI shows square buttons instead of round ones.
- Fixed the issue with VoiceOver focus interaction will read out:
- error messages from Structured Content.
- Structured Content buttons as links.
- Fixed the issue with background task on
LPSocket
not ending properly will cause the OS to kill the Host App. - Fixed the issue with inconsistent scrolling when showing the Conversation Screen.
- Fixed the issue with unread message count banners not shown while in the Conversation Screen.
- Fixed the issue with
LPMessagingSDKAgentDetails
was being called only once per Conversation. - Fixed the issue where SDK will increase memory footprint when repeatedly opening and closing the Conversation Screen.
- Fixed the issue when failing to access resources from device storage will cause images not to load.
New Configurations:
inAppReportingEnabled
Enable or disable sending reporting events for Proactive and IVR Deflection to App Messaging.
- Type: Bool
- Default Value: true
structuredContentLoadingImage
Structured content loading image when images are being fetched/loaded
- Type: UIImage?
- Default Value: image named LP_LINK_PREVIEW_LOADER_ICON
structuredContentBrokenImage
Structured content loading image when images failed to fetched/loaded
- Type: UIImage?
- Default Value: image named LP_BROKEN_IMAGE
iOS Messaging SDK - Version 6.3.0.769
Version 6.3.0.769
iOS Messaging SDK
Release Date: March 15, 2021
Environmental Requirements
The iOS Mobile Messaging SDK version 6.3.0.769 is supported on iOS versions 12 through 14.
This XCFramework was compiled with Swift version 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53) which means it will work with Swift version 5.2.4 and above.
XCFramework is supported on CocoaPad versions 1.9.0 and greater.
New Features
Voice & Video support:
Voice and Video integration allows brand agents to communicate with consumers via voice or video calls.
KB article: Voice & Video Overview
How to enable feature:
To enable this feature, please contact your LivePerson representative
New Attributes:
enableVoiceVideoCall
Enables or disables the ability for an Agent to start a voice or video call.
- Type: bool
- Default value: false
voiceCallImageIcon
Defines default Image icon for Voice Invite.
- Type: UIImage
- Default value: nil
videoCallImageIcon
Defines default Image icon for Video Invite.
- Type: UIImage
- Default value: nil
voiceVideoAcceptCallButtonImage
Defines default background image for Decline button on Voice & Video Invite
- Type: UIImage
- Default value: nil
voiceVideoDeclineCallButtonImage
Defines default background image for Decline button on Voice & Video Invite
- Type: UIImage
- Default value: nil
voiceVideoEndCallButtonImage
Defines default background image for End button on Voice & Video Invite
- Type: UIImage
- Default value: nil
- Preconditions: This image is only shown on the Voice & Video Invite when Consumer has an active Call
- Notes: To enable this image voiceVideoEndCallButtonType should be set to hangup`
voiceVideoJoinCallButtonImage
Defines default background image for Join button on Voice & Video Invite
- Type: UIImage
- Default value: nil
- Preconditions: This image is only shown on the Voice & Video Invite when Consumer has an active Call
voiceVideoInviteIconTint
Defines default icon tint color on Voice & Video Invite
- Type: UIColor
- Default value: gray
voiceVideoAcceptButtonTint
Defines default tint color for Accept/Join Button on Voice & Video Invite
- Type: UIColor
- Default value: white
- Note: This property controls both the Accept and Join call Button
voiceVideoDeclineButtonTint
Defines default tint color for Decline/End Button on Voice & Video Invite
- Type: UIColor
- Default value: red
- Note: This property controls both the Decline and End call Button
voiceVideoAcceptButtonBackgroundColor
Defines default background color for Accept/Join Button on Voice & Video Invite
- Type: UIColor
- Default value: green
- Note: This property controls both the Accept and Join call Button
voiceVideoDeclineButtonBackgroundColor
Defines default background color for Decline/End Button on Voice & Video Invite
- Type: UIColor
- Default value: clear
- Note: This property controls both the Decline and End call Button
voiceVideoInvitationIconRenderingMode
Defines default rendering mode for Voice or Video Invitation Icon
- Type: UIImage.RenderingMode
- Default value: alwaysTemplate
voiceVideoAcceptButtonRenderingMode
Defines default rendering mode for Accept Button on Voice & Video Invitation
- Type: UIImage.RenderingMode
- Default value: alwaysTemplate
voiceVideoDeclineButtonRenderingMode
Defines default rendering mode for Decline Button on Voice & Video Invitation
- Type: UIImage.RenderingMode
- Default value: alwaysTemplate
voiceVideoEndCallButtonType
Defines which icon to display on Join Button for Voice & Video Invitation
- Type: VoiceVideoEndCallButtonType
- Default value: close
- Preconditions: This type is only shown on the Voice & Video Invite when Consumer has an active Call
voiceVideoButtonsInnerPadding
Defines inner padding between Accept & Decline Buttons on Voice & Video Invitation
- Type: Double
- Default value: 8.0
voiceVideoButtonsOuterPadding
Defines outer padding between Accept & Decline Buttons on Voice & Video Invitation
- Type: Double
- Default value: 24.0
voiceVideoInvitationBubbleBackgroundColor
Defines background color for Voice & Video Bubble
- Type: UIColor
- Default value: light gray
voiceVideoInvitationBubbleBorderColor
Defines border color for Voice & Video Invitation Bubble
- Type: UIColor
- Default value: clear
voiceVideoInvitationBubbleBorderWidth
Defines border width for Voice & Video Invitation Bubble
- Type: Double
- Default value: 0.0
voiceVideoNavigationBackgroundColor
Defines background color of Navigation & Tab Bar for Voice & Video SFSafariViewController
- Type: UIColor
- Default value: gray
voiceVideoNavigationTintColor
Defines tint color for icons on Navigation & Tab Bar Icons for Voice & Video SFSafariViewController
- Type: UIColor
- Default value: black
Enhancements:
Adding Structured Content outer padding configuration:
structuredButtonWidthConstant
Defines padding constraint for Structured Constant elements of button type
Type: CGFloat
Default value: -20.0
Adding Conversation Separator configurations:
conversationSeparatorContentViewTopPadding
Defines the top padding for the conversation separator content view
- Type: CGFloat
- Default value: 0.0
conversationSeparatorContentViewBottomPadding
- Defines the bottom padding for the conversation separator content view
- Type: CGFloat
- Default value: 0.0
Adding Link Preview configuration:
linkPreviewLoadingImage
- Defines image for link preview loader
- Type: UIImage
- Default value: nil
Bug fixes:
- Fixed issue when Conversation Separator padding interfered when setting conversationBackgroundColor
- Fixed issue when Quick Replies will be dismissed when opening menu when in Window Mode
- Fixed issue when inputTextViewTopBorderColor is not properly aligned when there Empty State View is presented (“There are currently no conversations at this time”)
- Fixed issue when VoiceOver won’t read correct label when reading Structured Content cards
- Fixed issue when unread bubble background will not change color when setting conversationBackgroundColor
- Fixed issue when Structured Content timestamp will not resize when setting Large Text on Accessibility Settings
- Fixed issue when Conversation Screen will not take focus and Voice Over will read ViewController behind it.
Crashes fixed
- Fixed crash on LPSDKManager.getBundle() due LPLogger
- Fixed issue when SDK will crash when checking Message Types
iOS Messaging SDK - Version 6.2.0.760
Version 6.2.0
iOS Messaging SDK
Release Date: Jan 29, 2021
Environmental Requirements
The iOS Mobile Messaging SDK version 6.2.0.760 is supported on iOS versions 12 through 14.
This XCFramework was compiled with Swift version 5.2.4 (swiftlang-1103.0.32.9 clang-1103.0.32.53) which means it will work with Swift version 5.2.4 and above.
XCFramework is supported on CocoaPad versions 1.9.0 and greater.
New Features
In App proactive support
Send Push notification in logout state (New Logout API)
Consumers can now receive push notifications even in logged out state. SDK has introduced new enum configurations to let brands decide If they want consumers to receive notifications when logged out.
Brands can choose either of the following configurations to unregister user from pusher:
func logout(unregisterType: LPPusherUnregisterType, completion: @escaping ()->(), failure: @escaping (_ errors: [Error])->())
Welcome Message
Adding link recognition to WelcomeMessage text and localization of "hiMessage" string:
When setting a URL(https:
), sms:
, tel:
, facetime:
or facetime-audio:
as part of the Welcome Message text or "hiMessage" string, this elements will by highlighted as links:
⚠️ this change only adds support to url, sms, tel, facetime, facetime-audio, and doesn't cover hyperlinks format.
LPPusherUnregisterType
- All: unregister for all types of push notification messages
- None: do not unregister from the pusher at all
- Agent: Unregister only for agent push notification messages. Consumers can still receive outbound push notifications sent from the Proactive or Connect to Messaging (IVR) services.
Enhancements
- Error Codes
- New configurations for conversation separator line
- enableConversationSeparatorLine
- Toggle conversation separator line when conversation resolved from agent or consumer.
- enableConversationSeparatorLineOnAutoClose
- Toggle conversation separator line when conversation is auto close
- enableConversationSeparatorLine
Bug fixes:
- LPConfig property inputTextViewContainerBackgroundColor not respecting color
- LPConfig property conversationBackgroundPortraitImage not changing image
- Fixed a gap of space surrounding the conversation separator
- Loading screen is not showing after resuming conversation after logout
- Unread message divider is not showing for one unread message
- File/Phone preview not updated when network unreachable
- Brand Avatar not display while using Window Mode
- Scroll to bottom issue when conversation screen is loaded and has content but screen does not scroll all the way down
- Messaging history is retained after launching the messaging as an unauthenticated user
- Close conversation dividers is displayed in auto close conversation
- Encryption Recovery after discovering a corrupted keychain so that empty bubbles will not show.
- Fixing input text view cut off on the right side in file preview view.
Crashes fixed
- QuickReply crashes when migrating from older SDK versions
- Unread message crash for unauthenticated users when returning from background.
iOS Messaging SDK - Version 6.1.0.747
Version 6.1.0
iOS Messaging SDK
Release Date: November 3, 2020
Environmental Requirements
The iOS Mobile Messaging SDK version 6.1.0.747 is supported on iOS versions 12 through 14.
XCFramework is supported on CocoaPad versions 1.9.0 and greater.
Enhancements
- Change LPLogger default level to
.DEBUG
from.TRACE
Bugs fixed
- Fixed issue where In-App Notification is shown behind ConversationViewController if presented modally,
- Fixed issue when Welcome Message is not presented after PCS expires,
- Fixed issue when Welcome Message is not presented when force closing CSAT,
- Fixed issue where connection banner is not presented on correct scenario:
- “Failed to connect to the server” banner is presented before “Offline… Please check your connection” banner after losing internet connection.
- Fixed issue where Quick Reply messages are out of order when scrolling,
- Fixed issue where Messages are displayed out of order when using continuity between Web and In-App,
- Fixed issue when Unread message count notification will be shown above Welcome Message.
- Fixed issue where SDK will crash while:
- Updating dialog participants for a new conversation,
- Downloading images from remote URL,
- Scrolling the conversation screen,
- Trying to clear Conversation from DB,
- calling
LPLoggingHistory.removeFromHistory()
, - calling
LPMessagingSDK.clearLocalDatabase()
, - calling
ConversationViewController.scrollTableViewTo()
, - calling
lpFetchedControllerDidChangeContent()
,
- Fixed issue where SDK will crash with error
_Invalid_Number_Of_Rows_In_Section
, - Fixed issue where a Welcome Message with Quick Replies will cause a crash while presenting the Conversation Screen.
Known Issues
- Issue with user link message can’t be double tap to open link when VoiceOver is enable,
- Message timestamp for Images/Files/Audio gets be cutoff when using Large Fonts on Accessibility Settings,
- VoiceOver not reading agent name while focusing on structure content container,
- Unread message count divider not showing on conversation screen when Agent sends only one message.