From eaf47b13813021f183dd39e2b1f6d9a49e8edb35 Mon Sep 17 00:00:00 2001 From: vivek bhadola Date: Tue, 4 Feb 2025 19:17:21 +0530 Subject: [PATCH] NTP-27557 | Clickstream error handling --- packages/adapter-ameyo/lib/main.ts | 12 ++++-------- packages/adapter-ameyo/lib/types.ts | 13 ++++++------- 2 files changed, 10 insertions(+), 15 deletions(-) diff --git a/packages/adapter-ameyo/lib/main.ts b/packages/adapter-ameyo/lib/main.ts index b19d44a..f99bed2 100644 --- a/packages/adapter-ameyo/lib/main.ts +++ b/packages/adapter-ameyo/lib/main.ts @@ -4,6 +4,7 @@ import { AmeyoInitializationOptions, CALL_STATES, CallbackFunctions, CallTransferData, + ErrorType, SipAccountInfo, StateType } from "./types"; @@ -158,14 +159,13 @@ class AmeyoAdapter implements IAdapter { await this.handleCampaignSelection(); } catch (error) { console.error("Error during Ameyo initialization:", error); + this.handleError(ErrorType.INITIALIZATION_ERROR, error); } }; private handleMessage = async ({data}: MessageEvent): Promise => { try { - if (this.shouldTrackMetrics(data.type)) { - this.trackEventMetrics(data.type); - } + this.trackEventMetrics(data.type); switch (data.type) { case MessagingType.ON_AMEYO_CALL_INCOMING: @@ -194,11 +194,6 @@ class AmeyoAdapter implements IAdapter { } }; - private shouldTrackMetrics(messageType: string): boolean { - return messageType !== MessagingType.SET_RESPONSE_WITHOUT_CORS && - messageType !== MessagingType.GET_RESPONSE_WITHOUT_CORS; - } - private trackEventMetrics(messageType: string): void { this.metricProcessor?.pushCounterMetric({ metricName: `ameyo-events-count`, @@ -232,6 +227,7 @@ class AmeyoAdapter implements IAdapter { subFlow: payload?.data?.requestKey, value: payload?.data?.time / 1000 || 0 }); + this.handleError(payload?.data?.requestKey, payload?.data?.err); } else { this.metricProcessor?.pushCounterMetric({ metricName: 'ameyo-api-err-count', diff --git a/packages/adapter-ameyo/lib/types.ts b/packages/adapter-ameyo/lib/types.ts index e51cea1..4d0293d 100644 --- a/packages/adapter-ameyo/lib/types.ts +++ b/packages/adapter-ameyo/lib/types.ts @@ -51,13 +51,6 @@ declare global { } } - -export enum MessagingType { - - - -} - export type SipAccountInfo = { accountName: string, userName: string, @@ -120,3 +113,9 @@ export interface EventData { pushType: PushType; data: any; } + +export enum ErrorType { + SIP_INIT_ERROR = 'SIP_INIT_ERROR', + MESSAGE_HANDLING_ERROR = 'MESSAGE_HANDLING_ERROR', + INITIALIZATION_ERROR = 'INITIALIZATION_ERROR', +}