You can configure the ASAP help widget to send notifications to end-users when an agent responds via chat.
Ensure that Push Notifications settings are configured in the ASAP help widget setup page in Zoho Desk.
Ensure that push notifications are implemented in the help widget.
For Android Apps
This step involves two actions:
1 Enabling push notifications for the mobile help widget you created in the first doc.(to inlcude the help artcile link)
2 You can access this setting on the ASAP setup page in Zoho Desk.
3 Retrieving the FCM key of your app and passing it to the add-on. You can retrieve the token by accessing the following path in Firebase Console: Project Settings → Cloud Messaging → Server Key.
As part of the second action, you must pass the FCM token in your add-on's Android project. To do this, include the following code snippet in the oncreate() method in the MainApplication.java class.
RNZohodeskPortalSDK.setFirebaseId(FirebaseInstanceId.getInstance().getToken());
For iOS Apps
First, create and upload a valid Apple Push Notification Service (APNs) certificate. Then, upload the p12 file of the APNs certificate and its password.
Confirm that the AppDelegate class uses the UNUserNotificationCenterDelegate protocol to enable push notifications. Then, import the following headers into the AppDelegate.h file.
- #import <UserNotifications/UserNotifications.h>
#import <RNZohodeskPortalSdk/RNZohoDeskPortalSDK.h>
Next, fetch the DeviceID value using the application:didRegisterForRemoteNotificationsWithDeviceToken method in the AppDelegate.m file and pass it on to RNZohodeskPortalSdk using the following code snippet:
- const unsigned *tokenBytes = [deviceToken bytes];
NSString *hexToken = [NSString stringWithFormat:@"%08x%08x%08x%08x%08x%08x%08x%08x",
ntohl(tokenBytes[0]), ntohl(tokenBytes[1]), ntohl(tokenBytes[2]),
ntohl(tokenBytes[3]), ntohl(tokenBytes[4]), ntohl(tokenBytes[5]),
ntohl(tokenBytes[6]), ntohl(tokenBytes[7])];
[RNZohoDeskPortalSDK setDeviceIDForZDPortal:hexToken];
To enable push notifications
To enable push notifications, include the following code snippet in the JavaScript code:
- import {
ZohoDeskPortalSDK
} from 'react-native-zohodesk-portal-sdk';
ZohoDeskPortalSDK.enablePush();
To disable push notifications
To enable push notifications, include the following code snippet in the JavaScript code:
- import {
ZohoDeskPortalSDK
} from 'react-native-zohodesk-portal-sdk';
ZohoDeskPortalSDK.disablePush();
How to handle push notifications?
For Android Apps
To handle the UI and navigation for push notifications, include the following code snippet in the onMessageReceived()method of the FirebaseMessagingService class.
RNZohodeskPortalSDK.handleNotification(getApplicationContext(), remoteMessage.getData(), icon);
For iOS Apps
To handle the UI and navigation for push notifications, include the following code snippet in the application:didReceiveRemoteNotification method in the AppDelegate.m file.
- [RNZohoDeskPortalSDK processRemoteNotification:userInfo];