Connect with customers at every step of their journey. Give them the best in-app live chat experience with Mobilisten. Mobilisten enables customers to reach you from any screen on your app, get their questions answered, and make better purchase decisions.
Mobilisten is a support chat SDK that comes with a set of highly configurable APIs to suit your needs. Get started by generating an App and Access keys for your bundle ID from the SalesIQ console.
iOS: Minimum deployment target should be set to iOS 13.
Android: Ensure that your project meets the following requirements:
- Minimum Android Version: Android 5.0 (Lollipop) (API Level 21)
- Compile SDK Version: 35 (Android 14)
- Required Permissions:
- android.permission.INTERNET (Required for network operations)
Follow the below steps given below to complete installation of Mobilisten in your React-Native app.
- Install the react-native-zohosalesiq-mobilisten package using NPM.
npm install react-native-zohosalesiq-mobilisten --save- Link the module with the react native app
react-native link react-native-zohosalesiq-mobilisten-
Navigate to the
iosfolder in the project directory. -
Run the
pod repo update && pod installcommand from theiosdirectory.
For the RNZohoSalesIQ version below 10.0.0:
-
Open your podfile.
-
Add the "/ios" to the path for the RNZohoSalesIQ pod, as shown below.
- pod 'RNZohoSalesIQ', :path => '../node_modules/react-native-zohosalesiq-mobilisten'
+ pod 'RNZohoSalesIQ', :path => '../node_modules/react-native-zohosalesiq-mobilisten/ios'- Run
pod installafter saving the changes made to the Podfile.
Note: If you're updating from the SDK versions below
10.0.0to above, remove the above path in yourPodfileand run thepod installin the iOS folder.
- If you're using React Native v0.60 or above, the dependency will be linked automatically without any steps being taken.
$ react-native link react-native-zohosalesiq-mobilisten
- Add the below code to the
android/settings.gradle
include ':react-native-zohosalesiq-mobilisten'
project(':react-native-zohosalesiq-mobilisten').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-zohosalesiq-mobilisten/android')- Implement the dependency in the
android/app/build.gradlefile insidedependencies
implementation project(':react-native-zohosalesiq-mobilisten')- Add the below snippet to
android/app/src/main/java/com/module_name/MainApplication.javaif the packages were not auto-generated.
private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
// ...
@Override
protected List<ReactPackage> getPackages() {
// Add new RNZohoSalesIQPackage() into the React packages list like below
return new ArrayList<>(Arrays.<ReactPackage>asList(new RNZohoSalesIQPackage()));
}
// ...
};
@Override
public ReactNativeHost getReactNativeHost(){
return mReactNativeHost;
}- Navigate to the
androidfolder within the project directory using Android Studio or any other platform of choice for Android development. Add the following maven repository to thebuild.gradleorsettings.gradlefile.
For Gradle version 6.7 and below
// Add the following to your project's root build.gradle file.
allprojects {
repositories {
google()
mavenCentral()
// ...
maven { url 'https://maven.zohodl.com' }
}
}For Gradle version 6.8 and above
// Add the following to your settings.gradle file.
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
// Add the Zoho Maven URL here
maven { url 'https://maven.zohodl.com' }
}
}If you have enabled ProGuard(minifyEnabled) R8, then please add the following rules in your proguard-rules.pro file in your android folder.
-dontwarn kotlinx.parcelize.Parcelize
- Click
Sync Nowfrom the toolbar on the IDE.
To take advantage of the new architecture
- iOS
- Open the
ios/Podfilefile AddENV['RCT_NEW_ARCH_ENABLED'] = '1'in the main scope of yourPodfile
# Resolve react_native_pods.rb with node to allow for hoisting
+ ENV['RCT_NEW_ARCH_ENABLED'] = '1'
require Pod::Executable.execute_command('node', ['-p',
'require.resolve(
"react-native/scripts/react_native_pods.rb",
{paths: [process.argv[1]]},
)', __dir__]).strip- Navigate to the
iosfolder under the project directory and runpod install.
- Android
- Open the
android/gradle.propertiesfile. Toggle thenewArchEnabledflag fromfalsetotrue.
# Use this property to enable support to the new architecture.
# This will allow you to use TurboModules and the Fabric render in
# your application. You should enable this flag either if you want
# to write custom TurboModules/Fabric components OR use libraries that
# are providing them.
+ newArchEnabled=true
- newArchEnabled=falseNote: While switching between old architecture and new architecture remove the node_modules folder and then run your project.
- Generate
AppandAccesskeys for iOS and Android platforms by providing your bundle id. - Use the
ZohoSalesIQ.initWithCallbackAPI with keys for each platform as shown below.
import { ZohoSalesIQ } from 'react-native-zohosalesiq-mobilisten';
let appKey;
let accessKey;
if (Platform.OS === 'ios') {
appKey = "ios_app_key";
accessKey = "ios_access_key";
} else {
appKey = "android_app_key";
accessKey = "android_access_key";
}
ZohoSalesIQ.initWithCallback((appKey, accessKey, success) => {
// Your code
});- If you want to show the default chat launcher, use the ZohoSalesIQ.Launcher.show() API (Optional).
You can find the list of all APIs and their documentation here under the API Reference section.