iOS

v4.0.4

Release date: 04-17-2024 // Docs (latest)

Fixed

  • Avatars were being rendered for outgoing attachments when viewing the conversation in the Chat History screen.
  • Fixed a bug that caused ‘ChatViewController’ to crash when loading an existing conversation.
  • Fixed a bug that resulted in a crash when accessing Kustomer-defined colors before the application bundles were accessible

Improved

  • Improved the reliability of incoming message delivery when actively viewing a conversation.

v4.0.3

Release date: 04-02-2024 // Docs

Added

  • Public extension for notifications that allows the ability to check if notification.isFromKustomer(), and if notification.kustomerShouldDisplay(). This enables customers to wrap their own workflows around notifications.

v4.0.2

Release date: 03-22-2024

Fixed

  • Crash that would periodically occur due to the SDK attempting to update the chat history list while an update is already in progress.
  • In-app notifications would display for chat assistants with multiple initial messages whenever a new chat window was opened.

v4.0.1

Release date: 03-08-2024

Fixed

  • Reply types (like buttons in a chat assistant message) would sometimes disappear when messages were received out of order.
  • Avatars in customer satisfaction (CSAT) chat surveys were rendered without the image or initials.
  • Fixed a bug where if a list is dismissed without making a selection, a large blank space would appear in the Chat View where multi-level list options should be.
  • Bug that mistakenly marked delivered messages as undelivered, causing duplicate outbound messages.
  • App would periodically crash when a team logo was not assigned to chat.

Added

  • Logging around network reachability changes.
  • Additional logging to incoming message brand filtering.

Improved

  • Title, Text, and Avatars in the Chat View Header are now updated more often and with greater accuracy.

Deprecated

  • KustomerLogType.fatal has been deprecated in Kustomer.options.logLevels. Future versions of SDK Logging will log any error as KustomerLogType.error.

v4.0.0

Release date: 02-09-2024

🚧

Breaking changes to Pubnub installation

This change marks PubNub as an implementation detail.

As a result, PubNub is no longer included and exposed via the KustomerChat SDK when using import KustomerChat.

SDK users that are not directly using PubNub or its related data types no longer need the PubNub dependency.

SDK users with the need to directly use PubNub or its data types can now add any version of PubNub to their project and access it by using import PubNub.

Fixed

  • Crash in LoadingViewController when chat is disabled on the Kustomer App website.
  • Support for using Xcode 15.1 or higher.

Improved

  • No more duplicate symbol warnings in the Xcode console when building an app using SDK from SPM (Swift Package Manager).
  • SDK is now using the latest version of PubNub internally (v 6.3.0).
  • Improved chat message delivery on slow networks.

v3.1.1

Release date: 01-25-2024

Fixed

  • Issues where push notifications were not being re-subscribed to when Push Environment, Device Token, or Customer Id are changed. iOS devices now re-register with PubNub more frequently.
  • Crash when calling the Kustomer.showKbArticle() function with an empty or non-existent Id.
  • Avatar images displayed placeholders instead of actual images/initials on the Chat History screen. They now display correctly.

Improved

  • The chat input bar is now hidden by default and will only appear if the last outbound message does not have buttons for the customer to select. This improves the chat UI for users revisiting a conversation with Answer Button Feedback buttons.
  • The End Chat and Close Conversation buttons in the chat window header overlapped, making it difficult to tap the red x (End Chat button) without accidentally tapping the down arrow (Close Conversation button) instead.
  • Avatars will use only the name's first letter when falling back to displaying initials. This makes iOS, Android, and Web SDKs treat the fallback similarly.
  • The initials rendered in the avatar of an attachment cell were rendered using a system color, not a Kustomer-defined color. They now all render using the same set of Kustomer-defined colors.

v3.1.0

Release date: 12-01-2023

Fixed

  • Attachment Cells not displaying images on iOS 17.
  • Article Feedback buttons were cut at the bottom of the article when opening from a Deflection link.
  • Application now registers for PubNub push notifications every time the push environment changes.
  • Fixed a bug where some knowledge base categories did now show up due to missing attributes.

Added

  • Support for displaying AI chat assistant messages.
  • Support for AI assistant typing indicator.

Improved

  • Moved all quick reply actions into the message thread

v3.0.0

Release date: 09-18-2023

Update

  • Increased minimum deployment target to iOS 12.

📘

Support for new XCode Release Candidate

This update is to support the new Xcode 15 Release Candidate. You can find information about the Xcode 15 Release Candidate and minimum requirements here.

v2.9.0

Release date: 09-18-2023

Fixed

Fixed a crash when uploading Live Photos on devices running iOS 17. In iOS 14+, the NSPhotoLibraryUsageDescription in Info.plist file can be omitted if necessary.

v2.8.1

Release date: 08-07-2023

🚧

Known issue with lldb debugger

There is a known issue with the lldb debugger when using macOS Ventura 13.3.1. Please upgrade to versions greater than Ventura 13.3.1. As of this release the latest stable version is Ventura 13.5

Fixed

  • Fixed an issue where UI updates, while initializing Push, were running off the main thread causing a crash.
  • Fixed an issue where the SDK was preventing the usage of the article language when constructing the article URL to be viewed within the embed, which led to the inability to view articles in other languages.

Updated

  • Built using Xcode 14.3.1 and generated by Apple Swift version 5.8.1

v2.8.0

Release date: 07-17-2023

🚧

Changes to KUSChatListener events

When subscribing to KUSChatListener, events are no longer handled across all brands unless KustomerOptions.showAllBrandsConversationHistory is true. Only session events related to the provided brandId will be handled.

Fixed

  • Fixed an issue where conversations across an organization’s brands were appearing in chat history and in-app notifications

Added

Updated

  • ChatProvider.getConversationPage, ChatProvider.getOpenConversationCount and ChatProvider.getConversations now use a value of KustomerOptions.brandId as a query parameter when fetching sessions. By default, this is set to the default brand. If KustomerOptions.showAllBrandsConversationHistory is true then all sessions will be fetched across all brands.

v2.7.9

Release date: 04-18-2023

Fixed

  • Fixed an issue where the Start new conversation button is not available after a conversation has ended.
  • Fixed an issue where launching the chat app from a push notification caused the app to crash.
  • Fixed an issue with displaying branded knowledge base articles.

Improved

  • Improved support for the knowledge base language defaults when an article isn’t available in a user’s browser language.

Updated

  • Adding custom describe parameters to new conversations now supports any type.

v2.7.8

Release date: 03-14-2023

Fixed

  • Fixed a bug that caused line break issues when using emoji as bullet points in a list.
  • Fixed a bug where some conversations starting with a Data Attribute interaction were not saving the response as the conversation name.
  • Fixed a bug where UI and in-app notifications still appear despite setting both to false.
  • Fixed a bug where VoiceOver was highlighting a group of buttons instead of reading the selected one.
  • Fixed a bug where customers selecting a push notification when viewing the conversation’s history view were not being taken to the respective conversation thread.

Improved

  • Improved the reliability of message delivery when users are on a slower internet connection.
  • Improved initialMessages handling in non-assistant conversations.

Deprecated

v2.7.7

Release date: 02-01-2023

Fixed

  • Fixed a bug that allowed users to repeatedly press the Send button, resulting in resending the original message several times.
  • Fixed a bug where the End Chat button did not appear until a second message was drafted in chats without an assistant.
  • Fixed a bug where the text input field wasn’t visible when filling out a CSAT.
  • Fixed a bug where brand specific knowledge base searches were still showing default brand articles in the results. Now, only articles assigned to that brand will appear.
  • Fixed a bug where the New Conversation button was not working as expected. Now, the button initializes a new conversation.

Improved

  • Improved the Conversation listener logic.
  • Improved the chat UI. Now, the unread counter badge doesn’t overlap text.

v2.7.6

Release date: 12-13-2022

Summary: Hotfix release

🚧

Upcoming bitcode deprecation

In keeping with Apple's deprecation of bitcode support we will be building the framework with Xcode 14 and removing bitcode enablement in the following release. This may cause compatibility issues with Xcode 13 and apps that continue to use bitcode.

Fixed

  • Fixed a bug where the conversation was not being described with describe parameters when calling the startNewConversation method with initial message parameters.

v2.7.5

Release date: 12-08-2022

🚧

Upcoming bitcode deprecation

In keeping with Apple's deprecation of bitcode support we will be building the framework with Xcode 14 and removing bitcode enablement in the following release. This may cause compatibility issues with Xcode 13 and apps that continue to use bitcode.

Fixed

  • Fixed a bug where the conversation was not being described with describe parameters when calling the startNewConversation method.
  • Fixed a bug where articles that were not in a default brand category failed to open when viewing them in the chat UI for an alternative brand. Now, all articles in all brands are displayed properly.
  • Fixed a bug where agent messages sent while a customer was out of network didn’t load correctly once the customer was back online.
  • Fixed a bug that resulted in two conversations being created when a customer sends two attachments in an initial message.

Improved

  • Improved how the iOS SDK handles fetching messages after a disconnect with PubNub.
  • Improved error messaging when the user tries to preview an unsupported file type.
  • Deflection report now immediately shows all articles that are clicked in chat, even if the chat is abandoned after the article is clicked.

v2.7.4

Release date: 11-03-2022

Fixed

  • Fixed a bug where launching the chat app from a push notification caused the app to be blank.
  • Fixed a bug where the category name is shown twice in the Knowledge Base widget.
  • Fixed a bug where outbound chats messages were not appearing in the chat app.
  • Fixed a bug where inbound messages periodically displayed with a larger font size.
  • Fixed a bug that resulted in an additional space being entered for the first item in an ordered list.
  • Fixed a bug that was cutting off URLs shown in the chat UI.
  • Fixed a bug that resulted in elements to overlap and empty spaces when opening the chat UI from a push notification.

Improved

  • Improved the accuracy of Turkish translations.
  • Greater flexibility with push notifications in your mobile application by moving the Kustomer SDK to a secondary handler. For more information, see Implement Kustomer SDK as secondary handler.
  • Refactored the SDK to remove a third-party library.

Added

  • Added support for a new Request feedback interaction, a new conversational assistant feature.
  • Initial messages sent to a customer now appear on the agent timeline when creating a new session.
  • Added the Coveralls integration to the SDK which tracks code coverage and helps you identify parts of your code not covered by your test suite.

v2.7.3

Release date: 09-22-2022

Fixed

  • Fixed a bug where previously merged conversations were still appearing in the conversation list.
  • Fixed a bug where users had to quit and relaunch the app to receive push notifications.
  • Fixed a bug that caused describeConversation and getConversationPage to not run correctly.
  • Fixed a bug that caused users to receive a push notification with a repetitive message when a conversation is merged.
  • Fixed a bug where conversations that are reopened still appeared closed in the chat UI.

Added

  • Added filtering for insecure file types.
  • Added support to display knowledge base articles marked as “Featured Articles” on the Answers tab in the chat UI.

Improved

  • Improved the accuracy of Turkish translations.
  • Changes to Chat settings now reflect immediately within the SDK.

v2.7.2

Release date: 08-24-2022

Fixed

  • Fixed an issue where the pound (£) symbol was displaying incorrectly when viewing knowledge base articles in the chat widget.
  • Fixed an issue where Kustomer.logout() completion handler is not called after a successful log out.
  • Fixed a bug where the No knowledge base article results UI was not translated into other languages.
  • Fixed a bug where the openConversation completion handler was not being called when the conversation was successfully opened.

Added

  • Added a button that allows you to quickly scroll down to the bottom of the message thread.
  • Added support for setting a lock out period with satisfaction (CSAT) surveys. To edit the time period, go to Settings > Satisfaction > General tab on the Kustomer website.

Improved

  • Improved the performance of unread message counts.
  • Improved how articles render in the SDK.
  • Improved the consistency of language locale overrides set in the SDK.
  • Improved the user experience of the conversation history view UI.
  • Optimized code to improve the overall performance.

v2.7.1

Release date: 07-28-2022

Summary: Hotfix release

Fixed

  • Fixed a bug that periodically caused the assistant to send duplicate messages after backgrounding and reopening the app.
  • Fixed a bug where initial messages set in startNewConversation weren’t being sent.
  • Fixed a bug where the conversational assistant specified in openChatAssistant wasn’t respected.
  • Fixed a bug where logging in with an expired JWT token caused excessive retries.
  • Fixed a bug where responses sent to assistants triggered by a workflow failed on the first attempt.

Updated

  • Updated the BUILD_LIBRARY_FOR_DISTRIBUTION flag to Yes to support clients that want to build an updated version of their wrapper.

v2.7.0

Release date: 07-14-2022

Fixed

  • Fixed a bug where session data was still visible after logging out of chat.
  • Fixed a bug where KustomerUI.Color.messagesBackground was not correctly applying the set color to a message background.
  • Fixed a rare bug that caused chat to crash after the following error: NSInvalidArgumentException: _countWithNoChangesForRequest:error: A fetch request must have an entity

Added

Improved

  • Improved the local storage used by the SDK to get more reliable data and make it more dynamic.
  • Improved color customization for knowledge base articles in the SDK. Now, the article will display the colors that are set in your knowledge base theme by default. The following have been deprecated:
    • kbHeaderTint
    • kbArticleBackgroundLight
    • kbArticleBackgroundDark
    • kbSurveySubmitButtonText
    • kbSurveySubmitButton
  • Improved how customer deletion is handled. Now, end-users are logged out of chat when the delete event is received.
  • Improved how conversation deletion is handled. Now, deleting an open conversation ends the chat and the customer is prompted to start a new conversation.

Updated

  • Updated the Core SDK to improve performance and consistency in behavior across Android and iOS SDKs.

Removed

The following methods have been completely removed:

  • public func getConversations()
  • public func getConversation(conversationId:String)
  • public func chatMessages(conversationId:String)
  • public func getUnreadCount()
  • public func openConversationCount()
  • public func sendChatMessage(action:KUSMessageAction, completion _outerCompletion: @escaping (KUSChatMessage, KUSConversation)
  • public func sendChatMessage(text:String, assistant:KUSAssistant, completion _outerCompletion: @escaping (KUSChatMessage, KUSConversation)
  • public func sendChatMessage(mllNode:KUSMLLNode, completion _outerCompletion: @escaping (KUSChatMessage, KUSConversation)

v2.6.2

Release date: 05-18-2022

🚧

Deprecated

The following methods have been deprecated in this release and will be completely removed in iOS v2.7.0:

Please upgrade your implementation to iOS v2.6.2 to get the most up-to-date methods.

Fixed

  • Fixed a bug that caused the app to periodically crash when assistant buttons had very long text.
  • Fixed a bug that caused links in the conversational assistant to not work properly.
  • Fixed a bug that caused button labels to appear cut off if the device is set to use a larger text size.
  • Fixed a bug where the KBProvider.shared.getCategory method wasn’t successfully returning the Knowledge Base object properties. For more information, see Work with the Knowledge Base.
  • Fixed a rare edge case scenario of arithmetic overflow with Pubnub & threading issue with UI
  • Fixed a bug where conversations missed by an agent are closed even if a follow-up channel was selected.

Improved

  • Improved the performance and efficiency of the whole chat view UI. This includes improvements to read receipts, merged conversations, and sending attachments.
  • Improved button text alignment.
  • Improved the accuracy of Turkish translations.

Added

Added the following new methods:

v2.6.1

Release date: 04-07-2022

Fixed

  • Fixed a bug where KustomerColor.incomingMessageText was not correctly applying the set color to stylized text in the conversational assistant.
  • Fixed a bug that caused links in the conversational assistant to not work properly.
  • Fixed a bug that caused messages that started with a numeric value to appear as a numbered list.
  • Fixed a bug where the Enter key does not create a new line when a user is providing written feedback for a KB article.
  • Fixed a bug where images sent in an outgoing message via a URL didn’t display properly.

Added

  • Added a new ‘startNewConversation` method which introduces the functionality to start a new conversation with an end-user message by specifying the initial message direction.

Improved

  • Improved the accuracy of Turkish translations.
  • Improved the accuracy of the KustomerUI Colors enumerations reference.
  • Improved how CSAT followup questions display when the device is set to a right to left language, such as Arabic or Hebrew.

v2.6.0

Release date: 03-03-2022

🚧

Changes to PubNub installation

PubNub is now automatically downloaded as a dependency if using Swift Package Manager or Cocoapods.

Users manually installing the SDK must download PubNub separately instead of adding the KustomerPubSub framework. See Install the Kustomer Chat iOS SDK for more information.

This change exposes the pushEnvironment variable in KustomerOptions that was previously defined in KustomerPubSub. It is now an enum in KustomerChat.

Fixed

  • Fixed a bug causing the app to crash when presenting conversational assistant buttons on devices running iOS 15+.

Improved

  • Improved the UI when uploading an image to the chat. Now, an entire image can be uploaded without the need to crop it.
  • Improved our authentication to fix an issue where a chat conversation would occasionally not have an assistant.
  • Improved how we send CSAT responses to our backend to support CSAT reporting in various languages.

v2.5.4

Release date: 02-09-2022

Fixed

  • Fixed a bug where underscores were being removed from URLs, resulting in links that wouldn’t open in the chat UI.
  • Fixed a bug where the numeric part of an address automatically changed to 1. After a customer sends the message.
  • Fixed a rare bug where the chat widget was occasionally displayed by default on first launch even though only the Knowledge Base widget was turned on.
  • Fixed a bug where customer responses to a multiple choice CSAT question were being stored in the incorrect attribute.
  • Fixed a bug that prevented the keyboard from minimizing when answering a free text question.
  • Fixed a bug where the confirmation message when submitting a CSAT always displays in English, regardless of the device language or SDK settings. Now, the confirmation message will display in the correct language.

Added

  • Added support for article feedback. With this feature, customers can rate your articles as positive or negative and, if turned on, allow them to provide written feedback.
  • Added support for disabling attachments. To edit, go to Apps > Chat > Settings on the Kustomer website.
  • Added a new showKbCategory method that can be used to open a specific knowledge base category.

Improved

  • Improved the user experience and overall consistency for the chat UI.
  • Improved the voice-over controls experience for conversational assistant prompts.
  • Improved the performance of the chat widget.

Updated

  • Updated the conversation list to no longer display draft conversations.

v2.5.3

Release date: 12-16-2021

Fixed

  • Fixed a bug that caused the app to crash when using KustomerChat.KUISearchController.
  • Fixed a bug that was displaying an incorrect date/timestamp for messages marked seen.
  • Fixed a bug with background threading that caused a crash.

Added

  • Added support for storing visited data on chat deflection articles.
  • Added documentation for .knowledgeBaseHome.

Improved

  • Improved the user experience of the conversation history view UI.
  • Improved the performance of our networking library.

v2.5.2

Release date: 11-17-2021

Summary: Hotfix release

Fixed

  • Fixed a bug that prevented users from tapping a satisfaction survey's Submit button on some devices running iOS 12.
  • Fixed an issue where the clientVersion number was being overwritten by the app version number.

v2.5.1

Release date: 11-10-2021

Fixed

  • Fixed a bug where the team logo, name, and greeting message were not displayed after viewing an attachment.
  • Fixed a bug that was impacting navigating chat via the iOS VoiceOver feature. Now, you can select buttons with voiceover.
  • Fixed a bug where a public class SessionDelegate was creating a namespace conflict. This class is no longer exposed outside of the SDK.

Added

  • Added a new Kustomer.chatProvider.getUnreadCount() function that can be used to request the count of unread messages. This was formerly named Kustomer.chatProvider.unreadCount().
  • Added a new getChatMessages function that can be used to return chat messages.
  • Added the public func isLoggedIn(userEmail: String?, userId: String?) -> Bool method. This was formerly named public func isLoggedIn(userEmail:String?, userId:String?, completion: @escaping ((Result<Bool,KError>)->Void)).

Improved

  • Improved how chat settings are fetched by reducing extra calls made to the endpoint.
  • Improved the efficiency and performance of login and authentication.

v2.5.0

Release date: 10-22-2021

🚧

Deprecated methods

The following methods have been deprecated. Please upgrade your implementation to iOS v2.5.0:

Fixed

  • Fixed a bug where the most relevant article search results were appearing at the bottom of the list.
  • Fixed a bug that caused the greeting image to appear in existing conversations.
  • Fixed a bug where long names used on buttons in the Button Questions interaction stretched beyond the device’s view. Now, these names are truncated or wrapped.
  • Fixed a periodic crash by updating the Alamofire library to the newest version.
  • Fixed a bug that caused knowledge base articles not to load on devices running iOS 13.3 and lower.

Added

Improved

  • Improved the user experience and error handling of the knowledge base UI.

v2.4.11

Release date: 10-08-2021

Summary: Hotfix release (Intermittent crash on iOS 15+)

Fixed

  • Fixed issue where the SDK would crash for some customers on iOS 15+.

v2.4.10

Release date: 09-23-2021

Summary: Hotfix release (Supports Xcode 12)

Fixed

  • Fixed issue where KB articles were rendering blank.

v2.4.9

Release date: 09-23-2021

Summary: Hotfix release (Supports Xcode 13)

Fixed

  • Fixed issue where KB articles were rendering blank.

v2.4.8

Release date: 09-10-2021

Fixed

  • Fixed a bug that caused responses to the assistant prompts to appear empty and left-aligned.
  • Fixed a bug that periodically caused the assistant to send duplicate messages per interaction.
  • Fixed a bug that resulted in a 1. being inserted into a message if there was an extra space.
  • Fixed a bug that periodically caused the conversation list UI to not display properly.
  • Fixed a bug that caused outbound messages with more than one line to be aligned incorrectly.

Added

  • Added the ability to customize URL colors using messageUrlLinkOnAgentBubble and messageUrlLinkOnCustomerBubble. These were formerly named messageLinkInIncomingMessageBubble and messageLinkInOutgoingMessageBubble.

Improved

  • Improved the speed and reliability of message delivery.

v2.4.7

Release date: 08-13-2021

Fixed

  • Fixed a bug that periodically caused the SDK to not automatically fetch conversation updates when the SDK was backgrounded.
  • Fixed a bug that caused the Chat UI to not display correctly for languages that read right to left.
  • Fixed a bug that caused the agent avatar to not display when using a Gravatar URL.
  • Fixed a bug that periodically caused push notifications to not display if the user logged out and logged back in.

Improved

  • Improved French and Spanish translations for the word ‘Chat’.

v2.4.6

Release date: 8-3-2021

Added

  • Can now set a blank custom reply time message.

v2.4.5

Release date: 07-29-2021

Fixed

  • Fixed a bug that caused chat conversations that were marked Done in Kustomer still show as Open in the chat UI.
  • Fixed a bug where the font size of messages sent via the conversational assistant was appearing larger than usual in the chat UI.
  • Fixed a bug that caused read messages to appear as unread after pulling to refresh the chat UI.
  • Fixed a bug that causes conversations marked Done in Kustomer to be displayed in the conversation list despite Hide History being set to true.

Added

  • Added a new method Kustomer.isLoggedIn(userEmail: String?, userId: String?) that can be used to determine when to call login. For more information, see Log in and authentication.

v2.4.4

Release date: 07-16-2021

Fixed

  • Fixed a bug that caused the app to crash if a customer returns to a chat that they abandoned before completing all of the prompts. Now, if a customer returns to their chat, they will see that the conversation ended, as well as a button where they can leave a message.
  • Fixed a bug that caused the app to crash when using Describe Conversation.
  • Fixed a bug that caused the app to crash after upgrading to v2.4.2 on devices running iOS 11 and iOS 12.

Added

Improved

  • Improved the reliability of push notifications in the app.
  • Compressed image assets to reduce SDK package size.

v2.4.3

Release date: 07-02-2021

Fixed

  • Fix a bug that caused long chat bubbles to overlap over other messages.
  • Fixed a bug where the conversational assistant wasn’t providing a list of alternate follow up channels for agent missed chats.
  • Fixed a bug where opening an app via a notification that was previously forced closed causes the app to crash.
  • Fixed a bug where KustomerUI.Color.historyNewChatButtonText was not correctly applying the set color to the New Conversation button.

Added

  • Added the ability to customize the bottom tab icon colors for chat and knowledge base.

Improved

  • Improved push notification device registration for customers using login.

v2.4.2

Release date: 06-18-2021

Summary: We made several updates and bug fixes to the Chat iOS SDK with a focus on the following:

  • Improve user experience and overall consistency for the chat UI
  • Improve user experience and overall consistency for the conversational assistant
  • Improve efficiency and performance for login with customerExists(), a new method added to replace currentCustomer() (deprecated)

Fixed

  • Fixed a bug that caused article deflection reporting errors for articles provided to customers through the conversational assistant. Now, all article deflection titles appear as expected in the Article Performance table from the Deflection report in Kustomer.
  • Fixed a bug that caused errors for some customers when they reopened an abandoned chat with a conversational assistant. Now, when a customer abandons their chat with a conversational assistant, the assistant automatically ends the conversation as expected and provides the customer with the option to leave a message or start a new conversation.
  • Fixed a bug that caused conversations from previous versions of Kustomer Chat (Chat 1.0 and earlier) to appear in Kustomer Chat 2.0. Now, only conversations from Kustomer Chat 2.0 appear in Chat 2.0 conversations.
  • Fixed a bug that caused the SDK to create draft conversations in the customer timeline. To fix this issue, we updated the SDK to use the latest Chat session POST endpoint from /c/v2.0/chat/session to /c/v2.1/chat/session.
  • Fixed a bug to reduce NSLayoutConstraint logs emitted.
  • Fixed a bug that caused errors if logOut(...) was called while the SDK was connecting or reconnecting to the Kustomer Pub/Sub service.

Added

  • Added [customerExists()] to replace currentCustomer() and to support login efficiency and performance. To learn more, visit customerExists().
  • Added a new hideHistoryNavigation configuration option to hide the back button in the Conversations view. Use this configuration option to allow customers to have multiple chats open at the same time and bypass the Conversations (chat history) view when appropriate. To learn more, visit Configuration.

Improved

  • Improved support for longer article titles in article suggestions from the conversational assistant. Now, the conversational assistant displays the full article title for all article suggestions regardless of title length.
  • Improved consistency for logo display. Previously, logos appeared in grayscale for read conversations for some organizations. Now, logos appear in full color as expected regardless of the read or unread status of a conversation.

Deprecated

v2.4.1

Release date: 05-25-2021

Summary: Hotfix release

Fixed

  • Fixed a bug where the keyboard from the chat interface would persist when the chat window was closed.

v2.4.0

Release date: 05-24-2021

Summary: We made several updates and bug fixes to the Chat iOS SDK with a focus on the following:

  • Improve user experience and overall consistency for the chat UI
  • Improve keyboard display behavior for the chat UI
  • Fix bug crashes related to messages sent to the conversational assistant

Fixed

  • Fixed a bug that caused the SDK to send both a push notification and a duplicate in-app notification if the user opens the app without tapping the push notification.
  • Fixed a bug that caused crashes for when messages were sent to the conversational assistant.

Added

  • Added "⚡️ by Kustomer" to display on the bottom of the Answers tab and article list page in the Knowledge Base view.
  • Added a static library version of the SDK to provide developers with additional installation options.
  • Added customer messages to the onChatMessageReceived listener to make it easier to get all messages in one listener callback.

Improved

  • Improved the overall stability of the SDK.
  • Improved the consistency of language locale overrides.
  • Improved the consistency of the display order for attachments and related messages. Now, the SDK displays the relevant message body before displaying the attachment.
  • Improved the user experience and error messaging for sending attachments. Now, the SDK displays an “Error. Tap to retry” message when attachments do not send.
    Improved the message read behavior. Now, the SDK marks messages as read when the user swipes down to close the display.
  • Improved the user experience for keyboard display in the chat widget to match the Android SDK experience. Now, the keyboard remains open in the chat.
  • Improved the iOS Chat SDK dark mode assets for the “Powered by Kustomer” brand icon and the default away image to match the display behavior in the Android Chat SDK.

Removed

  • Removed the article count for Knowledge Base article categories in the Knowledge Base view to match the UI behavior of other Kustomer Chat SDKs.

v2.3.1

Release date: 04-30-2021

Summary: We made several updates and bug fixes to the Chat iOS SDK with a focus on the following:

  • Improve error handling, archive support, and UI behavior for the iOS SDK.
  • Add support for the Object Selector dialog interaction, a new feature for the conversational assistant.

Fixed

  • Fixed a bug that caused formatting errors for some hyperlinked text in the UI.

Added

Improved

  • Improved the UI behavior for consistency with other mobile and web Chat SDKs. Now, the chat UI navigation resets to display the Conversations list when a user closes and then reopens the chat widget.
  • Improved archive support.

v2.3.0

Release date: 04-23-2021

Fixed

  • Fixed a bug that caused the “Leave a message” and “New Conversation” buttons to appear cut off in the chat UI for some screens.
  • Fixed a bug that caused the conversational assistant to present more than one CSAT survey for some ended conversations.
  • Fixed a bug that prevented image thumbnails for attachments from loading properly in conversations after a customer logged out and logged in again.

Added

Improved

  • Improved the offline behavior so that customers can no longer start a new conversation until they regain network connectivity.
  • Improved the UI display for Knowledge Base article titles sent through a conversational assistant dialog. Previously, words in longer article titles would appear split between lines in the chat UI for some organizations.
  • Improved the user experience for how video or PDF attachments sent by the agent appear in the UI.
    Improved the usability of the Conversations list for organizations to match the Chat Web SDK behavior for closed conversations. Now, the iOS SDK displays in the Conversations list the name of the last agent, conversational assistant, or the team a customer received a message from before the conversation was closed.
  • Improved the display behavior for failed messages in closed conversations. Now, chat automatically hides failed messages for conversations after they are closed.

v2.2.1

Release date: 04-08-2021

Summary: We made several updates and bug fixes to the Chat iOS SDK with a focus on the following:

  • Improve behavior, usability, and functionality for conversation merge scenarios.
  • Improve support for conversational assistants for app installation and reinstallation scenarios.
  • Improve general chat performance and stability.
  • Add developer options for CSAT animations in chat.

Fixed

  • Fixed a bug that prevented customers from replying to chats after an agent merged customer profiles.
  • Fixed a bug that prevented the chat history from displaying consistently for customers on a slow or unstable connection.
  • Fixed a bug that prevented conversational assistant buttons from displaying if a customer reinstalled the app in the middle of a conversation with an assistant.
  • Fixed a bug that prevented conversational assistants, if set, from starting new conversations after a new app installation.
  • Fixed a bug that caused chat to crash after the following error: Illegal attempt to establish a relationship 'session' between objects in different contexts.
  • Fixed a rare bug that caused chat to crash after the following error: NSInvalidArgumentException: -[__NSCFSet addObject:]: attempt to insert nil

Added

  • Added the option for developers to turn on or turn off the default CSAT animation. Previously, the CSAT animation was turned on by default. Now, the animation is turned off by default. To learn more, see KustomerOptions.

Improved

  • Improved push notification support and update/routing behavior for customer chats after an agent merges customer profiles.
  • Improved the user experience and in-app messaging for article deflection and conversation merges.
  • Improved the conversational assistant behavior to re-ask article deflection questions if a customer submits an attachment in response. Previously, the assistant waited for the customer to submit a text response.

Removed

  • Removed a duplicate BCSymbolmap file that affected manual installations of the Chat iOS SDK.

v2.1.1

Release date: 04-02-2021

Summary: This update is for our developer audience. We made two changes to how we compile the framework. There are no code or product updates for this version.

  • Enabled bitcode
  • Enabled -no-serialize-debugging-options for improved xcframework compatibility

v2.1.0

Release date: 03-24-2021

Summary: We made several updated and bug fixes to the Chat iOS SDK with a focus on the following:

  • Improve chat UI usability for consistency in behavior across Android and iOS SDKs.
  • Improve support and handling for synchronous chat over unstable network connections and after logout/login events.
  • Improve behavior, usability, and functionality for conversation merge scenarios between open and ended conversations.
  • Improve conversational assistant support for agent interruption.

Fixed

  • Fixed a bug that caused chat bubbles to overlap when displayed with Chat iOS SDK v2.0.6.
  • Fixed a bug that caused customer merges to appear as a conversation merge in UI.
  • Fixed a bug that caused some conversational assistant messages to appear in an order different from the order expected from the assistant logic flow.
  • Fixed a bug that caused the activity indicator (or progress spinner) in the chat UI to freeze and persist even after re-establishing a network connection.
  • Fixed a bug that caused inaccuracies in the unread message count after logout/ login. The unread message count inaccuracies meant some customers could view their chat history even with the Hide Chat History synchronous chat setting turned on.
  • Fixed a bug that prevented some push notifications from opening the corresponding conversation when tapped.

Added

  • Added support for conversational assistant interruption. The assistant buttons disappear from the UI when the agent is responding (if typing indicators are turned on) or after the agent sends a message to the customer and interrupts the assistant flow.
  • Added support for the Date data type for custom attributes on describeCurrentCustomer.

Improved

  • Improved the usability of the conversation button when the “Restrict to Single Open Chat” synchronous chat setting is turned on. To better match the actual behavior, the conversation button now displays “Return to Open Conversation” instead of “New Conversation”.
  • Improved functionality for merge scenarios between open conversations and ended conversations. Now, when an agent merges either an open conversation into an ended conversation, or an ended conversation into an open conversation, the merged conversation will display as an open conversation with the messages threaded together. A CSAT survey won’t display because the conversation is open.
  • Improved intermittent network handling.

v2.0.7

Release date: 03-01-2021

Improved

  • Improved error messaging and user experience for connectivity issues. Now, a “No internet connection” screen is displayed when an internet connection is unavailable. The screen also displays a retry button for chat and persists until a stable internet connection becomes available again.
  • Improved consistency for isChatAvailable method. Now, `isChatAvailable returns a Boolean instead of a callback. To learn more, see the updated documentation for is Chat available?.

v2.0.6

Release date: 02-10-2021

Fixed

  • Fixed issues with login
    • Image loading
    • In-app notifications
    • Reconnect button

Improved

  • Updated German Translations
  • Improved UI for Conversation Move
  • Improved push notification registration

v2.0.5

Release date: 01-28-2021

Fixed

  • Bug fix for multi-line text input not resizing as user types
  • Minor fixes and improvements to conversation and customer merging and moving

Added

Deprecated

v2.0.4

Release date: 01-12-2021

Fixed

  • Inline images displayed incorrectly in chat
  • -,*,<,> display correctly in chats

Added

  • Multi-line KB article titles
  • Added a "Thank you for your rating" pop up when completing a satisfaction survey

Improved

  • Improved KB performance
  • General performance improvements

Deprecated

  • Deprecated KustomerClient.resetTrackingToken. Use logOut instead.
  • Deprecated ChatProvider.identifyCurrentCustomer. Use logIn() or logOut() followed by logIn() instead.

v2.0.3

Release date: 12-17-2021

Fixed

  • Crash when a typing indicator signal is received while logging out

Added

  • Kustomer.rootViewController (read-only)
  • Kustomer.options.hostViewController
  • Kustomer.options.hideNewConversationButton
  • PushProvider.shared.listLivePushChannelRegistrations(completion:)
  • Additional logging at the .info level for push registration

Improved

  • Chat assistant quick replies

v2.0.2

Release date: 12-03-2020

Fixed

  • Push notification registration failure
  • iOS 11 and 12: message bubble background color always black

Added

  • Callbacks for when the Kustomer UI view controller is shown/hidden
    Added onViewDidAppear, onViewWillAppear, onViewWillDisappear, and onViewDidDisappear to KustomerOptions. Events fire when the main Kustomer UI view controller is shown/hidden
let options = KustomerOptions()

options.onViewWillAppear = { animated in
  print("view will appear")
}

Kustomer.configure(apiKey:"foo", options:options, launchOptions:launchOptions)

Improved

  • Renamed ChatProvider.shared.createConversation(title: ...) to ChatProvider.shared.createConversation(firstCustomerMessage: ...)
  • Agent name can take up multiple lines on chat detail screen