react-native-zohosalesiq-mobilisten
Version:
A React Native module for the ZohoSalesIQ Mobilisten SDK
43 lines (41 loc) • 1.57 kB
text/typescript
import RNZohoSalesIQ, { RNZohoSalesIQEmitter } from '../../commons/utils';
import type { ChatTypes } from './types/Chat';
import {ChatListenerEvent} from './types/Listener';
export const ZSIQChats = {
Chat: {
setVisibility: function (chatComponent, visibility) {
RNZohoSalesIQ.setChatComponentVisibility(chatComponent, visibility);
},
shouldOpenUrl: function (value) {
RNZohoSalesIQ.shouldOpenUrl(value);
},
showFeedbackAfterSkip: function (enable) {
RNZohoSalesIQ.showFeedbackAfterSkip(enable);
},
showFeedback: function (durationInSec) {
RNZohoSalesIQ.showFeedbackUpToDuration(durationInSec);
},
hideQueueTime: function (value) {
RNZohoSalesIQ.hideQueueTime(value);
},
open: function (map = {}) {
RNZohoSalesIQ.showPayloadChat(map);
},
start: function (question, customChatId = null, departmentName = null, callback = () => { }) {
RNZohoSalesIQ.startNewChat(question, customChatId, departmentName, callback);
},
startWithTrigger: function (customChatId = null, departmentName = null, callback = () => { }) {
RNZohoSalesIQ.startNewChatWithTrigger(customChatId, departmentName, callback);
},
setWaitingTime: function (seconds) {
RNZohoSalesIQ.setChatWaitingTime(seconds);
},
get: function (chatId, callback) {
RNZohoSalesIQ.getChat(chatId, callback);
},
addListener: function (callback) {
RNZohoSalesIQEmitter.addListener("CHAT_EVENT_LISTENER", callback);
},
Event: ChatListenerEvent
},
} as ChatTypes;