You're 3 steps away from adding great in-app support to your Xamarin App.
Guide to integrating the Xamatin plugin for the Helpshift SDK.
With version 3.1.0, Helpshift SDK has dropped support for iOS 9. If you wish to keep supporting iOS 9 devices for your apps, please read the KB Article to support Helpshift on older OS versions.
The Helpshift SDK .zip file contains the following files:
Newtonsoft JSON.Net:
Xamarin.iOS.SwiftRuntimeSupport:
With version 3.4.0, Helpshift SDK has added support for Swift. In order to use plugin v3.4.x for your app, add the SwiftRuntimeSupport package to your project from the nuget package manager
To use Helpshift's APIs, please import the Helpshift's namespace as given below.
using HelpshiftApi;
Helpshift SDK uniquely identifies your App with the combination of:
To get the API Key
, Domain Name
and the App ID
, navigate to Settings
>SDK (for Developers)
in your agent dashboard and scroll down to "Initializing Helpshift" section. show me
Select your App from the dropdown and copy the three tokens to be passed when initializing Helpshift.
And, initialize Helpshift by calling the Install(apiKey, domain, appId). For example:
using HelpshiftApi; . . . HelpshiftCore.Initialize(HelpshiftApiProviderType.HelpshiftApiProviderTypeSupport); HelpshiftInstallConfig config = new HelpshiftInstallConfig.Builder().Build(); HelpshiftCore.Install ("<API_KEY>", "<DOMAIN_NAME>", "<APP_ID>", config);
using HelpshiftApi; . . . HelpshiftCore.Initialize(HelpshiftApiProviderType.HelpshiftApiProviderTypeSupport); Dictionary<string, object> config = new Dictionary<string, object>(); HelpshiftCore.Install ("<API_KEY>", "<DOMAIN_NAME>", "<APP_ID>", config);
Helpshift is now integrated in your app. You should now use the support APIs to present FAQ or conversation screens inside your app.
Run your app, and try starting a test conversation using the showConversation
API call.
Then goto your Helpshift agent dashboard and reply to experience the in-app messaging.
Sample usage for FAQs and conversation APIs:
HelpshiftAPIConfig faqApiConfig = new HelpshiftAPIConfig.Builder().Build(); helpBtn.Click += delegate { HelpshiftApi.HelpshiftSupport.ShowFAQs(activity, faqApiConfig); }; HelpshiftAPIConfig convApiConfig = new HelpshiftAPIConfig.Builder().Build(); contactBtn.Click += delegate { HelpshiftApi.HelpshiftSupport.ShowConversation(activity, convApiConfig); };
Dictionary<string, object> faqApiConfigDictionary = new Dictionary<string, object>(); helpBtn.Click += delegate { HelpshiftApi.HelpshiftSupport.ShowFAQs(activity, faqApiConfigDictionary); }; Dictionary<string, object> convApiConfigDictionary = new Dictionary<string, object>(); contactBtn.Click += delegate { HelpshiftApi.HelpshiftSupport.ShowConversation(activity, convApiConfigDictionary); };