String Customization

Customize all the strings in Helpshift SDK's user interface

Before you begin

  1. Integrate Helpshift Unity Android SDK as documented here: Integration Guide
  2. Though optional, we recommend you to download and set up the Android Studio. Android Studio Setup Guide

The Helpshift Unity SDK zip folder includes the HelpshiftUnityAndroidResources, an open source android studio project, to customize theme and string resources according to your application.

The Helpshift Unity SDK includes a default build of HelpshiftUnityAndroidResources project i.e helpshift-plugin-resources.aar. The default aar contains the string resources for all the supported languages.

You can customize almost all the strings in the Helpshift SDK with additional internationalization options. For string customization please follow steps below :

  1. Open the Android Studio and import the HelpshiftUnityAndroidResources project
    1. If Android Studio is launched for the first time, select Open an existing Android Studio project and navigate to the directory where you downloaded the Helpshift Unity SDK and select HelpshiftUnityAndroidResources directory.
    2. If Android Studio already has an open project, select from the menu File > New > Import Project and navigate to the directory where you downloaded the Helpshift Unity SDK and select HelpshiftUnityAndroidResources directory.
  2. Find the resource-id of the string that you want to change. See String resources in SDK for the full list of strings.
  3. Navigate and open the HelpshiftUnityAndroidResources/helpshift-plugin/src/main/res/values-<language-code>/values.xml file and modify the selected string resource value in step-2
  4. Open the terminal window and run the following command: ./gradlew clean build
    1. Once build is executed successfully, the helpshift-plugin-resources.aar file is generated in HelpshiftUnityAndroidResources directory.
    2. Output path: /HelpshiftUnityAndroidResources/helpshift-plugin-resources.aar
  5. Copy the helpshift-plugin-resources.aar file and replace it with /Assets/Plugins/Android/helpshift-plugin-resources.aar file.
    1. Build and run the Unity project to verify your string changes.

Read Going International if you want to change the strings for a particular language or want to add a language translation of your own.

String Resources

String name Description Default value
hs__help_header Action Bar title of main support screen Help
hs__question_header Action Bar title for single faq screen
hs__new_conversation_header Action Bar title for new conversation screen New Conversation
hs__conversation_header Action Bar title of the on-going conversation screen Conversation
hs__submit_conversation_btn Helper text for the icon on the conversation screen to submit the conversation show me Submit
hs__send_msg_btn Text for Send button in screenshot preview show me Send
hs__new_conversation_btn Text for new conversation button when conversation is resolved by the user.show me New Conversation
hs__contact_us_btn Text for 'Contact Us' button at end of search results. This doesn't show up if enableContactUs option is set to false show me CONTACT US
hs__change_btn Text for Change button in screenshot preview screenshow me Change
hs__done_btn Helper text for the icon on single faq screen to exit the session without submitting the ticket. This button shows up when showSearchOnNewConversation is set to true and user click on a search result faq. show me Done
hs__ca_msg Text shown as a message when customer accepts the issue resolution
hs__cr_msg Auto-response message when the solution is rejected by the user in a conversation show me What else can we help you with?
hs__conversation_started_message Text for auto-response message when user starts a new conversation show me Your message has been received. Thanks for contacting us!
hs__question_unhelpful_message Text that shows below a single faq if the user didn't mark it as helpful You didn't find this helpful.
hs__network_unavailable_msg Toast feedback for absence of network connection. Network not available.
hs__confirmation_footer_msg Footer text for messages indicating issue resolution show me Thanks for messaging us!
hs__confirmation_msg Text for confirmation of solution for the user show me Did we answer all your questions?
hs__conversation_end_msg Feedback text when user acknowledges the solution by tapping "YES" This conversation has ended.
hs__search_hint Search hint for FAQ search Describe your problem
hs__search_title Helper text that show for action bar search icon show me Search
hs__new_conversation_hint Hint text for problem description in new conversation screen How can we help?
hs__username_hint Hint text for user's name in new conversation screen Your Name
hs__email_hint Hint text for user's email in new conversation screen Email (optional)
hs__email_required_hint Hint text for user's email in new conversation screen when email is required. Email
hs__chat_hint Hint text for chat reply in conversation screen. Type your message
hs__search_footer Text that shows up above contact us button at the end of search results. This doesn't show up if enableContactUs option is set to false show me Can't find what you were looking for?
hs__conversation_detail_error Message for AlertDialog if the user leaves the problem description empty. This is a slight attempt to prevent the user from entering gibberish show me Please describe your problem
hs__username_blank_error Message for AlertDialog that shows when the user leaves the name field empty in new conversation screen. Please enter a valid name
hs__invalid_email_error Message for AlertDialog that shows when the user leaves the email field empty in new conversation screen. Please enter a valid email
hs__invalid_description_error Title for AlertDialog that shows up if the user enters non-alphanumeric characters only. This is a slight attempt to prevent the user from entering gibberish show me Invalid description
hs__screenshot_limit_error Text for feedback toast that shows when the screenshot is too large Screenshot size should not exceed %.2f MB
hs__sending_msg Status text below customer's chat bubble when network is not available show me Sending
hs__screenshot_upload_error_msg Text for feedback toast when screenshot upload fails show me Error uploading screenshot
hs__data_not_found_msg Text for feedback toast when a showFAQSection API call can not access FAQs for the section's publishId or has been passed an invalid publishId Data not found
hs__network_error_msg Text for generic feedback toast shown for SDK failures Oops! Something went wrong
hs__default_notification_content_title Title shown in the notification for messages from support Support
hs__notification_content_title Message text for push notification with single or multiple replies in for the conversation show me Click here
hs__faqs_search_footer Text that shows below search when no FAQs are found. This show up if enableContactUs option is set to false show me No FAQs found.
hs__review_title Title for review reminder AlertDialog Rate Our App
hs__review_message Message for review reminder AlertDialog. If you love our app, please take a moment to rate it
hs__rate_button Text for rate button ("Rate") in review reminder AlertDialog to rate your app. Rate
hs__feedback_button Text for feedback button ( "Send Feedback" ) in review reminder AlertDialog. This shows only when there's no on-going conversation with the end user. Send Feedback
hs__review_close_button Text for close button ("Close") in review reminder AlertDialog. Close
hs__sending_fail_msg Status text below customer's chat bubble when their reply is not delivered Failed to send
hs__mark_yes_no_question Text that shows below every single faq to mark the faq as helpful or unhelpful. show me Was this helpful?
hs__mark_yes Text for mark helpful button in single faq screen. YES
hs__mark_no Text for mark unhelpful button in single faq screen. NO
hs__question_helpful_message Feedback text that shows below a single faq after the user marks it as helpful show me You found this helpful.
hs__review_request_message Response message shown in the conversation screen when agent sends a review request from agent dashboard Would you like to review the App on Play Store?
hs__csat_message Text shown in the customer satisfaction survey view show me What's your feedback about our customer support?
hs__csat_dislike_message Text shown to hint the lowest rating show me Hated it!
hs__csat_like_message Text shown to hint the highest rating show me Loved it!
hs__csat_option_message Separator text, shown between the customer satisfaction view, andstart a new conversation view show me or
hs__csat_additonal_feedback_message Hint text for EditText, for user feedback on customer service show me Any other feedback (optional)
hs__csat_submit_toast Text for feedback toast, when the user submits a feedback on customer service Thanks for rating us.
hs__search_result_title Action Bar title of faq suggestions screen Suggestions
hs__search_result_message Text shown in header of suggestion results shown when showSearchOnNewConversation is set to true show me Questions that may already have your answer
hs__send_anyway Text for 'Send Anyway' button at the end of suggestion results shown when showSearchOnNewConversation is set to true SEND ANYWAY
hs__could_not_open_attachment_msg Text for feedback toast when no app can open the attachment file No apps can perform this action.
hs__file_not_found_msg Text for feedback toast when user tries to open an attachment file which is not available File not found
hs__description_invalid_length_error Text for alertdialog displayed when the user tries to submit the ticket with issue text length less than the minimum required length. show me Please describe further so that we can help better
hs__attach_screenshot_btn Content Description for attach button shown when agent requests for an attachment file show me ATTACH
hs__could_not_reach_support_msg Text shown on Snackbar when user is filing new issue and support is unreachable show me Unable to reach support
hs__faq_fetching_fail_message Text shown in the activity when app fails to fetch FAQs from server show me Unable to load FAQs at this moment. Please retry in a while…
hs__fetching_faqs_message Text displayed at start of session, when FAQs are being loaded show me Getting your answers…
hs__issue_archival_message Text shown at the botton of a conversation if it is archived Sorry! This conversation was closed due to inactivity. Please start a new conversation with our agents.
hs__no_search_results_message Text shown when search for a query returns no results show me Whoops! We couldn't find anything for query
hs__permission_denied_message Text in Snackbar when app doesn't have permission to access storage Storage permission is required to access screenshots and download attachments
hs__permission_denied_snackbar_action Text for button on the permission denied Snackbar, shows settings page Settings
hs__retry_faq_fetching_button Text for button shown on failure to fetch FAQs, to retry fetching FAQs from server RETRY
hs__screenshot_add Text for button in screenshot preview to add the screenshot show me Add
hs__screenshot_remove Text for button in screenshot preview to remove the screenshot show me Remove
hs__select_a_question_message Hint text shown to user to select a question in dual pane UI on tablets Please select a question from left
hs__starting_download Text shown on an attachment message in conversation when it's being downloaded Starting download…
hs__csat_rating_value Text for ratingbar where user can rate app with 1 or more stars Click here
hs__app_review_button Text for "REVIEW" button when agent sends an app review request message to user in conversation show me REVIEW
hs__copy Text for "COPY" button shown in context menu Copy
hs__message_not_sent Status text below customer's chat bubble when their reply is not delivered, but sending can be retried Message not sent.
hs__permission_rationale_snackbar_action_label "OK" button text in Snackbar when developer hasn't requested for storage permissions OK
hs__remove_screenshot_btn Content Descriptor for button in new conversation form to remove the screenshotshow me Remove screenshot
hs__screenshot_cloud_attach_error Text in Toast shown when the image attachment is not available Error attaching screenshot. Please choose an image available locally on the device.
hs__csat_ratingbar Content Description for ratingbar shown for customer satisfaction survey Please rate our service.
hs__default_notification_channel_name Name for the SDK's default notification channel (Android Oreo and above). In-app Support
hs__default_notification_channel_desc Description for the SDK's default notification channel (Android Oreo and above).
string name="hs__ssl_handshake_error Text shown on error Snackbar due to SSL handshake error Your connection is not secure. There was a problem in establishing a trusted connection
string name="hs__ssl_peer_unverified_error Text shown on error Snackbar due to unverified SSL peer Your connection is not secure. There was a problem in verifying its authenticity
hs__agent_message_with_name_voice_over Voiceover text for Agent or bot message if the name is also shown Message from support by %1$s on %2$s
hs__agent_message_voice_over Voiceover text for Agent or bot message if the name is not shown Message from support on %1$s
hs__user_sent_message_voice_over Voiceover text for message sent by user Your Reply on %1$s
hs__user_sending_message_voice_over Voiceover text for message sent by user which is still being sent Your Reply, Sending
hs__user_failed_message_voice_over Voiceover text for message sent by user which failed to send Your Reply, Failed to send
hs__retry_button_voice_over Voiceover text for retry button to trigger sending a message Retry Sending
hs__image_not_downloaded_voice_over Voiceover text for image sent by Agent which is waiting for download Image %1$s, Double Tap to Download
hs__image_downloading_voice_over Voiceover text for image sent by Agent which is downloading Image, Downloading, %1$s of %2$s
hs__image_downloaded_voice_over Voiceover text for image sent by Agent which is downloaded Image, Double Tap to View
hs__attachment_not_downloaded_voice_over Voiceover text for attachment sent by Agent which is waiting for download File, %1$s, %2$s, Double Tap to Download
hs__attachment_downloading_voice_over Voiceover text for attachment sent by Agent which is downloading File, %1$s, Downloading %2$s of %3$s
hs__attachment_downloaded__voice_over Voiceover text for attachment sent by Agent which is downloaded File, %1$s, Double Tap to Open
hs__email_input_validation_error Error text message visible when user enters an invalid email address in portrait mode Enter a valid email address
hs__number_input_validation_error Error text message visible when user enters an invalid number address in portrait mode Enter a valid number
hs__landscape_email_input_validation_error Error text message visible when user enters an invalid email address in landscape mode Please enter a valid email address
hs__landscape_number_input_validation_error Error text message visible when user enters an invalid number address in landscape mode Please enter a valid number
hs__landscape_input_validation_dialog_title Title for the error dialog visible when user enters an invalid email address/number in landscape mode Error
hs__network_error_pre_issue_creation Error message visible when there is a network error just before bots are received on the chat screen Network error.
hs__connecting Message visible when the SDK tries to connect to the server just before bots are received on the chat screen in case of a network error Connecting...
hs__no_internet_error Error message visible in case the device loses internet connectivity while identity bot or QuickSearch Bot is in progress No internet connection
hs__network_reconnecting_error Error message visible in case there is an error while identity bot or QuickSearch Bot is in progress Something went wrong. Reconnecting...
hs__authentication_failed Error message title visible in case user authentication failed Authentication Failed
hs__user_setup_retry_description Error message visible in case there is a network error while the user is on the setup screen just before the chat screen We are still trying to reach support.Please wait.
hs__no_internet_error_mgs Error message visible in case there is a network error while the user is on the setup screen just before the chat screen Please check your network connection.
hs__tap_to_retry Error message visible on the retry button when there is a network error just before bots are received on the chat screen Tap to retry
hs__try_again_msg Error message visible if the user authentication failed Please try again later
hs__new_conversation_footer_generic_reason Message that is shown when the conversation cannot be continued due to an error Sorry, something went wrong. This conversation cannot be continued.
hs__landscape_date_input_validation_error Error text message which will appear when a user enters an invalid date format in landscape mode Please enter a valid date.
hs__date_input_validation_error Error text message which will appear when a user enters an invalid date format in portrait mode Enter a valid date.
hs__conversation_issue_id_header Text to show the conversation id information. Conversation ID : #%1$s
hs__messages_loading_text Header text on chat that is shown when older messages are being fetched. Loading Messages..
hs__messages_loading_error_text Text message indicating that fetch for old messages failed. Couldn\'t Load Messages.
hs__conversation_rejected_status Footer text for messages indicating end of conversation. Conversation Closed
hs__conversation_redacted_status Text message indicating that this conversation was deleted by an agent. Conversation Deleted
hs__conversation_redacted_status_multiple Text message indicating that n number of consecutive conversations were deleted by an agent. %1$d Conversations Deleted
hs__conversation_publish_id_voice_over Voiceover label for the conversation id information text. Conversation ID %1$s
hs__conversations_divider_voice_over Voiceover label for the divider line separating two conversations. Conversation ended
hs__jump_button_voice_over Voiceover label for the jump button on chat screen when there are no unread messages. Jump to latest message
hs__jump_button_with_new_message_voice_over Voiceover label for the jump button on chat screen when there is a new unread message. Jump to New Message
hs__picker_search_hint Hint text for search in list picker Search
hs__picker_no_results Text for showing no search results for a query in list picker No results found
hs__picker_options_expand_header_voice_over Voiceover text to expand list picker from a collapsed state %1$s, Expand full list
hs__picker_options_list_collapse_btn_voice_over Voiceover text to collapse list picker from a collapsed state Collapse list
hs__picker_search_icon_voice_over Voiceover text to search for options in list picker Search list
hs__picker_option_list_item_voice_over Voiceover text when an option is tapped in list picker Send, %1$s
hs__picker_search_edit_back_btn_voice_over Voiceover text to go back from list picker window Back
hs__picker_clear_query_voice_over Voiceover text to clear query in the search input field in list picker Clear Query
  • The messages from Identity bot and QuickSearch Bot will be sent by the Helpshift servers, so they won't be customizable in the SDK.
  • First message visible to the end users is customisable from In-app SDK configurations page which located in Settings > App Settings section.

String resource declarations

hs__notification_content_title is defined as:

<plurals name="hs__notification_content_title">
    <item quantity="one">New message from Support</item>
    <item quantity="other">%d new messages from Support</item>
</plurals>

hs__csat_rating_value is defined as:

<plurals name="hs__csat_rating_value">
      <item quantity="one">You rated the service with 1 star.</item>
      <item quantity="other">You rated the service with %d stars.</item>
</plurals>