NTP-26126 | adapter sanity

This commit is contained in:
varnit goyal
2025-01-16 19:42:48 +05:30
parent 4010a13060
commit c727a66eb1

View File

@@ -74,7 +74,7 @@ const initialState: StateType = {
callStartTime: Date.now(),
}
let adapter: IAdapter;
let adapter: IAdapter
function UseCallSdk({AdapterClass, adapterOptions, metricsConfig, clickStreamConfig}: {
AdapterClass: new (adapterOptions: IAdapter) => IAdapter,
@@ -90,71 +90,73 @@ function UseCallSdk({AdapterClass, adapterOptions, metricsConfig, clickStreamCon
}
}) {
useEffect(() => {
adapter = new AdapterClass(adapterOptions);
if(adapterOptions) {
adapter = new AdapterClass(adapterOptions);
}
}, [adapterOptions]);
// @ts-expect-error sdfsf
const [callState] = useReducer<any>(reducer, initialState,()=> initialState);
function registerOnCallIncoming(callback : (callState: GenericObject)=>void) {
//dispatch({type: actionTypes.CALL_INCOMING, payload: {}})
adapter.registerOnCallIncoming(callback);
adapter?.registerOnCallIncoming(callback);
}
function registerOnCallConnected(callback : (callState: GenericObject)=>void) {
adapter.registerOnCallConnected(callback);
adapter?.registerOnCallConnected(callback);
}
function registerOnCallDisconnected(callback : (callState: GenericObject)=>void) {
adapter.registerOnCallDisconnected(callback);
adapter?.registerOnCallDisconnected(callback);
}
function registerOnAdapterReady(callback : ()=> void) {
adapter.registerOnAdapterReady(callback);
adapter?.registerOnAdapterReady(callback);
}
function registerOnAgentAvailabilityChange(callback : (isAgentAvailable: boolean, reason: string) => void) {
adapter.registerOnAgentAvailabilityChange(callback);
adapter?.registerOnAgentAvailabilityChange(callback);
}
function registerOnForcedLogoutListener(callback:()=>void) {
adapter.registerOnForcedLogoutListener(callback);
adapter?.registerOnForcedLogoutListener(callback);
}
function registerOnAgentsForCallTransfer(callback: (data: GenericObject) => void) {
adapter.registerOnAgentsForCallTransfer(callback);
adapter?.registerOnAgentsForCallTransfer(callback);
}
function registerOnCallTransferStatus(callback: (data: GenericObject) => void) {
adapter.registerOnCallTransferStatus(callback);
adapter?.registerOnCallTransferStatus(callback);
}
function registerOnLoginFailedListener(callback:()=>void) {
adapter.registerOnLoginFailedListener(callback);
adapter?.registerOnLoginFailedListener(callback);
}
function acceptCall() {
adapter.acceptCall();
adapter?.acceptCall();
}
function rejectCall() {
adapter.rejectCall();
adapter?.rejectCall();
}
function disposeCall() {
adapter.disposeCall();
adapter?.disposeCall();
}
function muteCall() {
adapter.muteCall();
adapter?.muteCall();
}
function unmuteCall() {
adapter.unmuteCall();
adapter?.unmuteCall();
}
function logOut() {
adapter.logOut();
adapter?.logOut();
}
function initialize() {
@@ -167,15 +169,15 @@ function UseCallSdk({AdapterClass, adapterOptions, metricsConfig, clickStreamCon
if(clickStreamConfig?.clickStreamTransporter) {
clickStreamProcessor = new ClickStreamProcessor(clickStreamConfig?.clickStreamTransporter || noop);
}
adapter.init(metricProcessor, clickStreamProcessor);
adapter?.init(metricProcessor, clickStreamProcessor);
}
function setOnBreak() {
adapter.setOnBreak();
adapter?.setOnBreak();
}
function setAvailable() {
adapter.setAvailable();
adapter?.setAvailable();
}
function getAgentAvailability(): boolean {