Release Notes

v5.1.0 Download SDK

Aug 26, 2019

Release Notes:

  • Updated to iOS SDK version 7.6.1 View
  • Added support for iOS 13 Beta 4 and Xcode 11. Apps using Older SDKs (version <= 5.0) will see the following degraded behavior for in-app support when run on iOS 13 beta:
    • End-users will not be able to send attachment
    • Inconsistent dark/light color elements in SDK, when you turn ON the OS level dark mode
    • Difficulty in navigating or reading through FAQs because of the UX changes introduced in iOS 13
    • Gestures to open and close the bot options in list picker UI will not work properly
  • Removed CoreLocation framework dependency
  • Added support for messages and attachment redaction for SDKs. If you redact messages and attachments from Agent desktop, they will be redacted from the device too.
  • Fixed a bug, where the user did not receive the agent response. It occurred when the user was on chat screen and device got locked, and after unlocking the device, intermittently the user did not receive the Agent messages. However, when you close and reopen the chat screen, user was able to receive all the Agent messages.
  • Fixed a bug, where sometimes, SDK configuration set on dashboard would not show on app launch.
  • Fixed a bug where map and filter named methods of NSArray category were conflicting with the host app's categories.
  • Fixed a bug where, in some network edge cases, the user was able to retry an older message which is not part of the running bot.
  • Fixed a bug where the user couldn't send the CSAT rating for a resolved conversation if conversation history was ON and if there was a login change between users.
  • Fixed a bug where the previously sent images were not shown on chat screen immediately after a login change. However if the user closed and revisited the chat screen, the images would load correctly.
  • Fixed a bug where, in some network edge cases, the user fails to send or receive messages if a bot was interrupted by another bot.
  • Fixed a bug, where conversationEnded delegate was not called for the agent rejected conversation unless user exits the chat screen.
  • Fixed a bug where the user message was sent twice in an edge case when Send button was tapped multiple times
  • Improved the loading of large FAQs.

v5.0.0

May 17, 2019

Release Notes:

  • Updated to iOS SDK version 7.5.3. View
  • Introduced a new rich element for automation bots to let users choose from a list of selectable options if the number of options is more than 5.
  • From this release, Helpshift SDK will work for users on iOS 10,11 and 12. Here's how you could continue using Helpshift for your iOS 9 users.
  • Replaced 'registerAuthenticationFailureDelegates' with 'registerAuthenticationFailureDelegate' for auth failure delegation.View
  • Users can modify their CSAT rating during the Feedback phase before submitting them. For more details, see here.
  • Added a configuration option, IssueMinimumDescriptionLength for setting the minimum number of characters required, before you can send a message in conversational experience. For more details, see the documentation.
  • Added configuration option, conversationPrefillText, for pre-filling new conversation's description in the conversational issue filing experience. For more details, see here.
  • Updated behavior of opening Links from the FAQ view inside of Helpshift. The Helpshift session will not close when opening external links.
  • Added a new API for closing the active Helpshift session which now accepts a completion handler. For more details, see here.
  • Added new API "enableTestingMode".View
  • When testing mode is enabled, public APIs in HelpshiftSupport, HelpshiftCampaigns and HelpshiftCore will now throw ExceptionInInitializerError exception if the API is called before HelpshiftCore:installForApiKey:domainName:appID:withConfig API.
  • Fixed a bug, where a user could attach a screenshot twice by quickly tapping the Send button in the Preview screen multiple times.
  • If there are no FAQs present in the SDK, FAQ search bar is disabled.
  • Fixed a bug where agent nickname showed up as (null) on the SDK chat screen if it wasn't set on the admin dashboard.
  • Fixed a bug where loading older messages would fail under an edge case.
  • Fixed a UI issue where calling UIAppearance proxy API to invoke setContentInsetAdjustmentBehavior from host app was affecting some of SDK's scroll views.
  • Fixed a bug where, under rare circumstances, retrying failed bot message could lead to user getting stuck on the chat screen with infinitely loading Typing Awareness Indicator.
  • Fixed a rare crash that occurred when the app was brought to foreground.
  • Deprecated the HsAddFaqsToDeviceSearchOnInstall enum value from the addFaqsToDeviceSearch option.
  • Fixed a bug where the conversation wasn't closed if the user clicked on NO in the resolution question and exited the chat screen in some cases.
  • Fixed a rare crash occurring due to resource deadlock during SDK initialization.
  • Fixed a bug where deep links which opened FAQ screens in Agent replies failed to open in the app.
  • Fixed a bug in the checkIfConversationActive API. If the conversation resolution question is off, this API would incorrectly return true until the chat screen is opened.
  • Fixed a bug where blank screen was sometimes shown if conversation creation failed.
  • Fixed a rare bug in the Form based issue filing experience in which the user was able to create multiple open conversations.
  • Fixed a crash that occurred due to nil device ID returned by iOS APIs. Stack trace of the crash :
    • Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: [__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[0] [HsCampaignsInboxSyncController getRequestData]
  • Fixed duplicate symbol linker errors when -ObjC linker flag is on.
  • Fixed a bug where failed analytics events requests were never retried.
  • Fixed a bug where close button was missing from nested dynamic form screens.
  • Fixed a bug where user's name was visible as author for "What else can we help you with?" agent message.

v4.1.0

October 22, 2018

Release Notes:

  • Added iOS 12 support.
  • Updated to iOS SDK version v7.3.0 View
  • Added Campaigns delegate callbacks for tracking when a Helpshift session begins and when a session ends.
  • Added new customization keys: Details are available here
    • Selectable Option Text Color: The color of the text in option pills of the Answer Bot or skip button.
    • Selectable Option Background Color: The background color of the option pills of the Answer Bot or skip button.
    • Selectable Option Border Color: The border color of the option pills of the Answer Bot or skip button.
    • Field Background color: The background color of the reply field.
    • Field border color: The border color of the reply field.
  • Removed the selectable option color customization key. Please use the latest plist with the updated keys if you plan to customize the Helpshift UI.
  • Introduced the ability for users to open user-sent attachments.
  • Fixed a bug where Custom Bot options were only partially rendered in the chat screen.
  • Fixed a bug where the new conversation button was shown along with the reply box.
  • Fixed a bug where the conversation screen was not scrolling to the bottom when the option pills were rendered.
  • Fixed a bug where the conversation would be closed when the chat screen was partially slid from the left.
  • Fixed a bug where the greeting message text was appended whenever the chat screen was partially slid from the left.
  • Fixed a bug where the app would crash when the chat screen was partially slid from the left after the user had tapped on the new conversation button.
  • Fixed a bug where some Custom Bots pills were not rendered on migration.
  • Fixed a bug where the reply box was not shown when a New Issue Automation was enabled with Custom Bots and an action set to resolve the Issue.
  • Fixed a bug where the new conversation button was not shown after the user had selected one of the options offered by Answer Bot.
  • Fixed a bug where the app would crash after the chat screen was scrolled while the user was in the process of selecting a Custom Bot option pill.
  • Fixed a bug where Admin attachments were not displayed in the chat screen when a screenshot request was sent with an attachment.
  • Fixed a bug where the app would crash after the user had tapped on the new conversation button when conversations history and a greeting message were both disabled.
  • Improved the alignment of the pill options and the skip button.
  • Fixed a bug where the Answer Bot option pills were still visible when they weren't supposed to be in some edge cases.
  • Fixed a bug where the user attachment button was not showing in the chat screen after a user had rejected the resolution question.
  • Fixed bug where the new conversation button would jump up when the orientation was changed from landscape to portrait.
  • Introduced functionality for end users to view their past conversations. This can be managed via an Admin toggle available in the Dashboard on the App settings > In-app SDK configuration page. Review Review this FAQ to get started. to get started.
  • Introduced functionality for Admins to prevent users from being able to attach files in conversations. This can be managed via an Admin toggle available in the Dashboard on the app settings > In-app SDK configuration page.
  • Fixed an edge case bug where, if the end user sent an image attachment at the same time that the Agent rejected the Issue, the Issue would* remain open on the end user side.
  • Fixed a crash that would occur on 32 bit devices when the user selected a date in response to a Custom Bot.
  • Fixed a crash that would occur when accessing a dictionary in a multithreaded environment:
    • Stack trace: [__NSDictionaryM setObject:forKey:] [HsIOSNetworkRequestDAO storeEtag:forRoute:]
  • Introduced support for Custom Bots.
  • Fixed a bug where the system kept the form-based Issue filing experience as the default if the Conversational Filing configuration from the Dashboard was not known to the SDK yet.
  • Fixed a bug where the SDK was incorrectly reporting the build number as the application version while filing the Issue.
  • Fixed a bug where image attachments sent by an end user were not re-fetched after they had logged out and logged back in.
  • Fixed a bug where image drafts were lost in the form-based Issue filing experience when the user visited suggested FAQs.
  • Fixed a bug where image attachments sent by the end user were uploaded twice when network timeout errors occurred.
  • Fixed a bug where the SDK was not throwing the InstallException in cases where wrong install credentials were provided.
  • Fixed a bug where the name field was not being updated when the same user logged in with a different name.
  • Fixed a bug where the dark theme was incorrectly displayed on iPhoneX devices in the FAQ detail screen bottom view.
  • Fixed a bug where the status bar color property was not reflected correctly the first time that the screen was launched.
  • Fixed a bug where the send button image theme could not be edited.
  • Fixed a bug where the SDK was not considering the current push permission status with regards to starting and stopping the poller.
  • Fixed a bug where FAQ search results were not being highlighted for CJK languages.
  • Fixed a bug where pending notifications for a closed Issue were taking the user to the chat screen of the closed Issue even after the user had already created a new Issue.
  • Fixed a crash that would occur occasionally while retrying the failed network requests: Stacktrace: objc_class::demangledName(bool) NSStringFromClass +[HSConstants queueNameForClass:]
  • Fixed a crash in database operations: Stacktrace: __hs_db_worker_queue +[HsDbUtil pathForDatabaseName:] +[HsDbUtil openDb:] + 4342041624
  • Fixed a bug where not all of the options in an options list submitted by Custom Bot would appear the first time if the app was in landscape mode. Selecting an option in this partially rendered list would crash the application.

v4.0.0

May 24, 2018

Release Notes:

  • Introduced new updates to the in-app messaging experience. Here's our guide on how to onboard to the new experience.
  • Introduced a new and enhanced Login API for name, email, user identifier for your end users.
  • Introduced the ability to use the 'Email' field as a means of identifying users, so that email addresses don't have to be passed to the 'UserID' field.
  • Introduced 'userauthtoken', which is an HMAC digest used to ensure that the requests are coming from an authentic source (and not a malicious 3rd party). Refer here.
  • Introduced Answer Bot and Identity Bot for in-app messaging SDKs.
  • Deprecated the setNameAndEmail(), setUserIdentifier() and the existing login() APIs. Please use the new Login API. Link
  • Deprecated the configurations conversationPrefillText, requireEmail, hideNameAndEmail, goToConversationAfterContactUs, showSearchOnNewConversation, enableTypingIndicator along with the Form-based Issue filing experience. All the details are mentioned here.
  • Changed the default value of showConversationResolutionQuestion to false and made it customizable from the app settings Dashboard.
  • Fixed cases where multiple Issues can be created or duplicate messages can be sent from the SDK in case of client network errors.

  • Updated to iOS SDK version: v7.0.1

  • Fixed a bug where automatic retry of network requests was not working in case of failures.
  • Fixed a bug where FAQs did not load for some users upgrading to 7.0.0.
  • Fixed a crash in case a user replies to a Rejected conversation.
  • Fixed a rare bug where user might get stuck in pre-issue state.
  • Fixed a bug where 'didReceiveInAppNotification' delegate was not called in some cases.
  • Fixed a bug where user would see a blank screen when calling showConversation API.
  • Fixed CFBundleExecutable key issue in bundles.
  • Fixed a bug where pre-issue might be reset in case of app reinstall.
  • Fixed a bug where in some cases badge count did not update on FAQ screens.
  • Fixed cases where multiple Issues can be created or duplicate messages can be sent from the SDK in case of client network errors.
  • Fixed a bug where FAQ search keywords specified on the Dashboard were not picked up by the SDK if they contained capital letters.
  • Fixed a bug where users wouldn't receive push notifications if the push token syncing failed.
  • Fixed a bug where sometimes the SDK would keep making network requests if the host app is executing a background operation.
  • Fixed a bug where, on the Issue filing screen, a deleted description draft would reappear after attaching the screenshot.
  • Fixed a bug where the 'Contact Us' button was not visible if the FAQ or Section title was too large.
  • Fixed a bug where the bottom half of the in-app notification banner was not tappable on an iPhone X.
  • Fixed a bug where the background of the table view when presenting FAQ search results was not styled properly in Dark theme.
  • Fixed a bug where sometimes a chat screen will launch automatically when multiple in-app notifications were received at the same time.
  • Fixed a bug where sometime users were able to give a CSAT rating after they had reject the resolution request.
  • Fixed a bug where the users' device was shown as an iPhone 7 instead of an iPhone 7 plus.
  • Fixed a bug where user engagement analytics were not properly captured for Campaigns push notifications.
  • Fixed a bug where rich push notification actions were not working in Campaigns push notifications if the UNNotification framework was used.
  • Fixed a bug where the badge count for unread messages on the FAQ screen was incorrect if the Issue was resolved and the app was killed and re-opened.
  • Fixed an issue where the SDK was throwing and catching exceptions while the device is offline, making the offline debugging harder for developers.
  • Fixed a crash in database operations.
  • Stacktrace: thread #4, queue = 'com.helpshift.HSIssuesPersistentStorage', stop reason = EXC_BAD_ACCESS (code=1, address=0x74786574)
  • Fixed a crash which would sometime occur when sanitizing the user name string.
  • Stacktrace: NSInvalidArgumentException
    • [HSProfile initWithServerIdentifier:identifier:name:email:userId:deviceId:andLastSeenAt:isSynced:]
  • Fixed a crash which would occur when syncing device data for Campaigns:
    • Stacktrace: NSInvalidArgumentException [HsDeviceController makeHSRequestForProperties:]

December 11, 2017

  • Updated to iOS SDK version: v6.4.0 View
  • Added support for iPhone X.
  • Applications are now required to build with Xcode 9 so that layouts work correctly across all supported iOS versions. If you have a project with Xcode version prior to Xcode 9, you could use the build mentioned here.
  • Added support for UNNotifications framework for push notifications. View
  • Improved the accessibility behavior for the following UI elements:
    • Resolution Request view
    • "Start a new conversation" button
    • Customer Satisfaction Survey flow
    • Failed message indicator view
    • "Screenshot Request" message
    • "Review Request" message
    • Automation reply message
    • Attachment message
  • Improved Italian translation for "Email (optional)" string.
  • Fixed a crash in the Campaigns login API .
    • Stack trace: [HsSwitchUserController getRequestData] setObjectForKey - object cannot be nil (key: uid)
  • Fixed a crash in the SDK migration flow.
    • Stack trace: setObjectForKey: object cannot be nil (key: profile-id)
  • Fixed a crash in the Campaigns property syncing.
    • Stack trace: Exception: NSInvalidArgumentException in -[HsUserModel setSyncStatus:forProperties:]
  • Fixed a crash which would occur when the showDynamicFormOnViewController:withTitle:andFlows:withConfig: API was called.
  • Fixed a bug where the chat screen would automatically open if the control center or notification tray was open at the time of push notification arrival.
  • Fixed an edge case bug where users would see a blank chat screen if they filed a new conversation while the SDK was migrating to a new SDK version.
  • Fixed a bug where the image attachment would flicker after being sent successfully.
  • Fixed a bug where the typing indicator animation was not smooth on iOS 11 devices.
  • Fixed a bug where the "Contact Us" button in the search footer was not localized for VO users.
  • Fixed a bug where focusing on the tableview in VO mode would shift the tableview down and show some empty space on top.
  • Fixed a bug where Bar button font name was not getting applied from the HelpshiftConfigDark.plist.
  • Fixed a bug where font size in Table Section Header was not getting applied.

v1.8.0

November 28, 2017

  • Updated to iOS API version: 6.3.1. View
  • Helpshift now supports iOS 11.
  • Deprecated showAlertToRateApp API. An explanation of why we made this change can be found here.
  • Automatic review reminder requests sent from the backend will now be ignored.
  • Updated the review action in Campaigns to have it redirect to the app store page of the app.
  • Added support for sending "Custom Issue Fields" when filing a new conversation. View
  • Added support for passing 64 bit integers in campaigns user properties. View
  • Added an API to asynchronously request unread campaigns message count. View
  • Made improvements to the Campaign images downloading mechanism.
  • Fixed a bug where the color set using "Rating star color" was not being applied to stars on feedback screen.
  • Fixed Hindi translation for "You found this helpful" string.
  • Fixed a rare crash in signature generation while making a network request.
  • Fixed a bug where the retry button for text messages would not work even after reconnecting back to the network.
  • Fixed an intermittent crash on conversation filing screen when network is unavailable.
  • Fixed a bug where links were not working in Screenshot Request messages.
  • Fixed a UI issue where calling UIAppearance proxy API to invoke setContentInsetAdjustmentBehavior from host app was affecting SDK's scroll views.
  • Fixed a bug where Application state was being read from background thread instead of main thread.
  • Fixed an accessibility bug where VO would navigate to "Describe your problem" text view and its placeholder in the text input area.
  • Fixed a rare case where failing to read metadata of a message from disk could cause the app to crash.
  • Fixed a bug where CSAT view was overlapping with navigation bar when status bar is hidden.
  • Improve accessibility VO label for "Send" button on Conversation Filing Screen.
  • Improved handling of the rare case where Conversation DB could go in undesirable state.
  • Deprecated the following APIs. View
    • static int getCountOfUnreadMessages()in HelpshiftCocos2dx class

v1.7.0

September 6, 2017

  • Updated to iOS API version: 6.1.0. View
  • Added flag for showing a typing indicator on Conversation screen. View
  • Added an API to asynchronously check if an active Conversation exists. View
  • Added an API to check the unread message count asynchronously. View
  • Added an API to set language of the SDK. View
  • Deprecated the following APIs within the HelpshiftCocos2dx class:
    • isConversationActive
    • setSDKLanguage
    • getNotificationCountFromRemote
  • Added support for iOS-11 beta-5
  • Setting enableFullPrivacy API configuration to true will now hide name and email address fields. View
  • Added a new High Contrast theme. View
  • Added two new keys for customizing text color of the user chat bubble and Agent chat bubble. View
  • Added new key for customizing Typing indicator color. View
  • Added new keys for customizing Secondary text color, Placeholder text color and Timestamp text color. View
  • Fixed a bug on iOS 11-beta where the text view to enter CSAT review text was not visible in review rating screen.
  • Fixed a bug where compilation would fail if Socket Rocket library was integrated with the app through source code.
  • Fixed a bug where tags were not added to the new issue if added without metadata.
  • Fixed a bug where "Bold font name" config was not applied to FAQ title.
  • Fixed a bug where the applications that use Google Cast SDK would crash while filing a new Conversation.
  • Fixed the warnings reported by Xcode 9 where some of the UIKit APIs were called from secondary thread.
  • Fixed a bug where database connections were not closed before removing the database during migration.
  • Fixed a bug on iOS 11 where back button title would not appear in single FAQ and Conversation screens.
  • Fixed a bug where the SDK would crash upon pressing the back button after attaching a second screenshot while the first screenshot upload was still in-progress.
  • Fixed a bug where the SDK would crash if the Issue was filed with a corrupt image.
  • Fixed a bug where the SDK would crash upon calling setMetadataObjectBlock API.
  • Fixed a bug where the search title text was not highlighted in search results.
  • Fixed a bug where the FAQ footer text got clipped if the font size was increased in the device's accessibility settings.
  • Fixed a bug where follow-up was successful if sent while the user was typing.
  • Fixed a UI glitch where extra padding was added to the table view search controller if the translucency of the navigation bar was disabled.
  • Fixed bug where a crash would occur when multi-character UTF-16 encoded characters were found in the FAQ body of search results.
  • Fixed a bug where the Contact Us button in FAQ search results list was not accessible via the accessibility identifier.
  • Fixed a bug where the badge count was not updated when the Issue was resolved.
  • Fixed a bug where notification count APIs were returning incorrect values.
  • Fixed a bug where the app was not suspended immediately after being backgrounded.
  • Fixed a bug where a crash would occur on iOS 11 beta 3 while attaching a screenshot in new Conversation.
  • Fixed crash on some devices in rare cases while creating a new issue.
  • Fixed a rare bug where a crash would occur on syncing sessions on iOS 10.
  • Fixed a rare crash on app launch.
  • Improved syncing server configurations.
  • Improved handling for failed network requests.

v1.6.0

April 24, 2017

  • Updated iOS native SDK from 5.9.3 to 5.10.1. (Details)

v1.5.0

February 7, 2017

  • Updated iOS native SDK from 5.8.0 to 5.9.3. (Details)

v1.4.0

October 07, 2016

  • Updated iOS native SDK from 5.7.1 to 5.8.0. (Details)

v1.3.0

September 16, 2016

  • iOS 10 compatibility.
  • Updated iOS native SDK from 5.5.1 to 5.7.1. (Details)
  • Fix chat screen going blank in some cases.
  • Fix Helpshift Logo being visible on conversation screen in some cases.
  • Fix presenting view controller not deallocated when helpshift session is closed.

v1.2.0

April 18, 2016

  • Add support for Inbox functionality and rich in-app campaign messages.
  • Add config option for supporting Guided Issue Filing when user clicks on Contact Us from inside the SDK screens.

v1.1.0-support

January 15, 2015

  • Add support for Nested dynamic forms.
  • Fix the missing appcompat lib in dependencies.

v1.0.0-support

December 23, 2015

Release Notes:

  • Update iOS native SDK to v5.3.0
  • Update Android native SDK to v4.2.0

v4.10.2

April 16, 2015

  • Allow admins and agents to attach files with replies
  • Allow admins and agents to reopen conversations
  • Added multi-user feature for support conversations
  • Added new delegate methods for conversation updates
  • Bug fixes
  • UI fixes