Add live chat to your React Native app
Add Helpium's native support chat to your React Native or Expo app. The package is a thin bridge over the Helpium iOS and Android SDKs, so your customers get a fully native chat, not a web view.
Before you start
In Helpium, open Channels → Live Chat and copy your widget key.
1. Install the package
npm install @helpium/react-native
cd ios && pod install
With Expo, use a development build (npx expo run:ios, npx expo run:android or EAS Build). The SDK contains native code, so it does not run in Expo Go. No config plugin is needed.
On iOS, add a camera usage description so customers can attach photos (in Expo, under ios.infoPlist in app.json):
"NSCameraUsageDescription": "Take a photo to send to our support team."
2. Configure, identify and open
import { Helpium } from '@helpium/react-native';
// At startup
Helpium.configure({ widgetKey: 'YOUR_WIDGET_KEY' });
// After login, with a token your server signs
Helpium.identify({ userJwt: token });
// From your Help button
<Button title="Help" onPress={() => Helpium.present()} />
// On logout
Helpium.logout();
See Verify your customers' identity for how to sign the token.
3. Show unread replies
useEffect(() => {
const subscription = Helpium.addUnreadCountListener(setUnread);
return () => subscription.remove();
}, []);
Colors
Helpium.setAppearance({
light: { primary: '#0ea5e9', headerBackground: '#0ea5e9', headerText: '#ffffff' },
dark: { primary: '#38bdf8', background: '#0f172a', surface: '#1e293b' },
});
Push notifications with expo-notifications
Helpium needs the device's raw push token, not the Expo push token:
import * as Notifications from 'expo-notifications';
const { data } = await Notifications.getDevicePushTokenAsync();
Helpium.setPushToken(String(data));
Notifications.addNotificationResponseReceivedListener((response) => {
const data = response.notification.request.content.data;
if (Helpium.isHelpiumPush(data)) Helpium.handlePush(data);
});
Then connect your Apple and Firebase credentials as described in Send push notifications for agent replies.
Was this article helpful?