@webex/internal-plugin-metrics 3.3.0 → 3.3.1-next.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/behavioral/behavioral-metrics.js +199 -0
  2. package/dist/behavioral/behavioral-metrics.js.map +1 -0
  3. package/dist/behavioral/config.js +11 -0
  4. package/dist/behavioral/config.js.map +1 -0
  5. package/dist/call-diagnostic/call-diagnostic-metrics.util.js +14 -11
  6. package/dist/call-diagnostic/call-diagnostic-metrics.util.js.map +1 -1
  7. package/dist/call-diagnostic/config.js +19 -13
  8. package/dist/call-diagnostic/config.js.map +1 -1
  9. package/dist/index.js +7 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/metrics.js +1 -1
  12. package/dist/metrics.types.js.map +1 -1
  13. package/dist/new-metrics.js +31 -6
  14. package/dist/new-metrics.js.map +1 -1
  15. package/dist/types/behavioral/behavioral-metrics.d.ts +63 -0
  16. package/dist/types/behavioral/config.d.ts +1 -0
  17. package/dist/types/call-diagnostic/call-diagnostic-metrics.util.d.ts +3 -2
  18. package/dist/types/call-diagnostic/config.d.ts +2 -0
  19. package/dist/types/index.d.ts +2 -1
  20. package/dist/types/metrics.types.d.ts +28 -7
  21. package/dist/types/new-metrics.d.ts +14 -6
  22. package/package.json +11 -11
  23. package/src/behavioral/behavioral-metrics.ts +179 -0
  24. package/src/behavioral/config.ts +3 -0
  25. package/src/call-diagnostic/call-diagnostic-metrics.util.ts +16 -17
  26. package/src/call-diagnostic/config.ts +9 -2
  27. package/src/index.ts +2 -0
  28. package/src/metrics.types.ts +56 -8
  29. package/src/new-metrics.ts +34 -8
  30. package/test/unit/spec/behavioral/behavioral-metrics.ts +164 -0
  31. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics-batcher.ts +48 -52
  32. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics-latencies.ts +1 -1
  33. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics.util.ts +41 -22
  34. package/test/unit/spec/prelogin-metrics-batcher.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"names":["CALL_DIAGNOSTIC_LOG_IDENTIFIER","exports","AUTHENTICATION_FAILED_CODE","NETWORK_ERROR","NEW_LOCUS_ERROR_CLIENT_CODE","MEETING_INFO_LOOKUP_ERROR_CLIENT_CODE","UNKNOWN_ERROR","ICE_FAILURE_CLIENT_CODE","MISSING_ROAP_ANSWER_CLIENT_CODE","DTLS_HANDSHAKE_FAILED_CLIENT_CODE","ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE","ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE","WBX_APP_API_URL","WEBEX_SUB_SERVICE_TYPES","PMR","SCHEDULED_MEETING","WEBINAR","BROWSER_MEDIA_ERROR_NAMES","PERMISSION_DENIED_ERROR","NOT_ALLOWED_ERROR","NOT_READABLE_ERROR","ABORT_ERROR","NOT_FOUND_ERROR","OVERCONSTRAINED_ERROR","SECURITY_ERROR","TYPE_ERROR","BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP","_defineProperty2","default","SDP_OFFER_CREATION_ERROR_MAP","GENERAL","SDP_MUNGE_MISSING_CODECS","ERROR_DESCRIPTIONS","UNKNOWN_CALL_FAILURE","LOCUS_RATE_LIMITED_INCOMING","LOCUS_RATE_LIMITED_OUTGOING","LOCUS_UNAVAILABLE","LOCUS_CONFLICT","TIMEOUT","LOCUS_INVALID_SEQUENCE_HASH","AUTHENTICATION_FAILED","UPDATE_MEDIA_FAILED","FAILED_TO_CONNECT_MEDIA","MEDIA_ENGINE_LOST","MEDIA_CONNECTION_LOST","ICE_FAILURE","MEDIA_ENGINE_HANG","ICE_SERVER_REJECTED","CALL_FULL","ROOM_TOO_LARGE","GUEST_ALREADY_ADDED","LOCUS_USER_NOT_AUTHORISED","CLOUDBERRY_UNAVAILABLE","ROOM_TOO_LARGE_FREE_ACCOUNT","MEETING_INACTIVE","MEETING_LOCKED","MEETING_TERMINATING","MODERATOR_PIN_OR_GUEST_REQUIRED","MODERATOR_PIN_OR_GUEST_PIN_REQUIRED","MODERATOR_REQUIRED","USER_NOT_MEMBER_OF_ROOM","NEW_LOCUS_ERROR","NETWORK_UNAVAILABLE","MEETING_UNAVAILABLE","MEETING_ID_INVALID","MEETING_SITE_INVALID","LOCUS_INVALID_JOINTIME","LOBBY_EXPIRED","MEDIA_CONNECTION_LOST_PAIRED","PHONE_NUMBER_NOT_A_NUMBER","PHONE_NUMBER_TOO_LONG","INVALID_DIALABLE_KEY","ONE_ON_ONE_TO_SELF_NOT_ALLOWED","REMOVED_PARTICIPANT","MEETING_LINK_NOT_FOUND","PHONE_NUMBER_TOO_SHORT_AFTER_IDD","INVALID_INVITEE_ADDRESS","PMR_USER_ACCOUNT_LOCKED_OUT","GUEST_FORBIDDEN","PMR_ACCOUNT_SUSPENDED","EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE","CONVERSATION_NOT_FOUND","SIP_CALLEE_BUSY","SIP_CALLEE_NOT_FOUND","START_RECORDING_FAILED","RECORDING_IN_PROGRESS_FAILED","MEETING_INFO_LOOKUP_ERROR","CALL_FULL_ADD_GUEST","REQUIRE_WEBEX_LOGIN","USER_NOT_ALLOWED_ACCESS_MEETING","USER_NEEDS_ACTIVATION","SIGN_UP_INVALID_EMAIL","NO_MEDIA_FOUND","STREAM_ERROR_NO_MEDIA","CAMERA_PERMISSION_DENIED","FRAUD_DETECTION","E2EE_NOT_SUPPORTED","LOCUS_LOBBY_FULL_CMR","USER_NOT_INVITED_TO_JOIN","MISSING_ROAP_ANSWER","DTLS_HANDSHAKE_FAILED","ICE_FAILED_WITHOUT_TURN_TLS","ICE_FAILED_WITH_TURN_TLS","SDP_OFFER_CREATION_ERROR","SDP_OFFER_CREATION_ERROR_MISSING_CODEC","SERVICE_ERROR_CODES_TO_CLIENT_ERROR_CODES_MAP","CLIENT_ERROR_CODE_TO_ERROR_PAYLOAD","_CLIENT_ERROR_CODE_TO","errorDescription","category","fatal","name","shownToUser","CALL_DIAGNOSTIC_EVENT_FAILED_TO_SEND"],"sources":["config.ts"],"sourcesContent":["/* eslint-disable import/prefer-default-export */\n// Most client error codes are mapped based on\n// https://sqbu-github.cisco.com/WebExSquared/event-dictionary/wiki/Error-codes-for-metric-events\n\nimport {ClientEventError, ClientSubServiceType} from '../metrics.types';\n\nexport const CALL_DIAGNOSTIC_LOG_IDENTIFIER = 'call-diagnostic-events -> ';\n\nexport const AUTHENTICATION_FAILED_CODE = 1010;\nexport const NETWORK_ERROR = 1026;\nexport const NEW_LOCUS_ERROR_CLIENT_CODE = 4008;\nexport const MEETING_INFO_LOOKUP_ERROR_CLIENT_CODE = 4100;\nexport const UNKNOWN_ERROR = 9999; // Unexpected error that is not a meetingInfo error, locus error or browser media error.\nexport const ICE_FAILURE_CLIENT_CODE = 2004;\nexport const MISSING_ROAP_ANSWER_CLIENT_CODE = 2007;\nexport const DTLS_HANDSHAKE_FAILED_CLIENT_CODE = 2008;\nexport const ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE = 2010;\nexport const ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE = 2009;\nexport const WBX_APP_API_URL = 'wbxappapi'; // MeetingInfo WebexAppApi response object normally contains a body.url that includes the string 'wbxappapi'\n\nexport const WEBEX_SUB_SERVICE_TYPES: Record<string, ClientSubServiceType> = {\n PMR: 'PMR',\n SCHEDULED_MEETING: 'ScheduledMeeting',\n WEBINAR: 'Webinar',\n};\n\n// Found in https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia\nconst BROWSER_MEDIA_ERROR_NAMES = {\n PERMISSION_DENIED_ERROR: 'PermissionDeniedError',\n NOT_ALLOWED_ERROR: 'NotAllowedError',\n NOT_READABLE_ERROR: 'NotReadableError',\n ABORT_ERROR: 'AbortError',\n NOT_FOUND_ERROR: 'NotFoundError',\n OVERCONSTRAINED_ERROR: 'OverconstrainedError',\n SECURITY_ERROR: 'SecurityError',\n TYPE_ERROR: 'TypeError',\n};\n\nexport const BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP = {\n [BROWSER_MEDIA_ERROR_NAMES.PERMISSION_DENIED_ERROR]: 4032, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.NOT_ALLOWED_ERROR]: 4032, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.NOT_READABLE_ERROR]: 2729, // Although the user granted permission to use the matching devices, a hardware error occurred at the operating system, browser, or Web page level which prevented access to the device.\n [BROWSER_MEDIA_ERROR_NAMES.ABORT_ERROR]: 2729, // Although the user and operating system both granted access to the hardware device, and no hardware issues occurred that would cause a NotReadableError DOMException, throw if some problem occurred which prevented the device from being used.\n [BROWSER_MEDIA_ERROR_NAMES.NOT_FOUND_ERROR]: 2729, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.OVERCONSTRAINED_ERROR]: 2729, // Thrown if the specified constraints resulted in no candidate devices which met the criteria requested.\n [BROWSER_MEDIA_ERROR_NAMES.SECURITY_ERROR]: 2729, // Thrown if user media support is disabled on the Document on which getUserMedia() was called. The mechanism by which user media support is enabled and disabled is left up to the individual user agent.\n [BROWSER_MEDIA_ERROR_NAMES.TYPE_ERROR]: 2729, // Thrown if the list of constraints specified is empty, or has all constraints set to false. This can also happen if you try to call getUserMedia() in an insecure context, since navigator.mediaDevices is undefined in an insecure context.\n};\n\nexport const SDP_OFFER_CREATION_ERROR_MAP = {\n GENERAL: 2050,\n SDP_MUNGE_MISSING_CODECS: 2051,\n};\n\nexport const ERROR_DESCRIPTIONS = {\n UNKNOWN_CALL_FAILURE: 'UnknownCallFailure',\n LOCUS_RATE_LIMITED_INCOMING: 'LocusRateLimitedIncoming',\n LOCUS_RATE_LIMITED_OUTGOING: 'LocusRateLimitedOutgoing',\n LOCUS_UNAVAILABLE: 'LocusUnavailable',\n LOCUS_CONFLICT: 'LocusConflict',\n TIMEOUT: 'Timeout',\n LOCUS_INVALID_SEQUENCE_HASH: 'LocusInvalidSequenceHash',\n AUTHENTICATION_FAILED: 'AuthenticationFailed',\n NETWORK_ERROR: 'NetworkError',\n UPDATE_MEDIA_FAILED: 'UpdateMediaFailed',\n FAILED_TO_CONNECT_MEDIA: 'FailedToConnectMedia',\n MEDIA_ENGINE_LOST: 'MediaEngineLost',\n MEDIA_CONNECTION_LOST: 'MediaConnectionLost',\n ICE_FAILURE: 'IceFailure',\n MEDIA_ENGINE_HANG: 'MediaEngineHang',\n ICE_SERVER_REJECTED: 'IceServerRejected',\n CALL_FULL: 'CallFull',\n ROOM_TOO_LARGE: 'RoomTooLarge',\n GUEST_ALREADY_ADDED: 'GuestAlreadyAdded',\n LOCUS_USER_NOT_AUTHORISED: 'LocusUserNotAuthorised',\n CLOUDBERRY_UNAVAILABLE: 'CloudberryUnavailable',\n ROOM_TOO_LARGE_FREE_ACCOUNT: 'RoomTooLarge_FreeAccount',\n MEETING_INACTIVE: 'MeetingInactive',\n MEETING_LOCKED: 'MeetingLocked',\n MEETING_TERMINATING: 'MeetingTerminating',\n MODERATOR_PIN_OR_GUEST_REQUIRED: 'Moderator_Pin_Or_Guest_Required',\n MODERATOR_PIN_OR_GUEST_PIN_REQUIRED: 'Moderator_Pin_Or_Guest_PIN_Required',\n MODERATOR_REQUIRED: 'Moderator_Required',\n USER_NOT_MEMBER_OF_ROOM: 'UserNotMemberOfRoom',\n NEW_LOCUS_ERROR: 'NewLocusError',\n NETWORK_UNAVAILABLE: 'NetworkUnavailable',\n MEETING_UNAVAILABLE: 'MeetingUnavailable',\n MEETING_ID_INVALID: 'MeetingIDInvalid',\n MEETING_SITE_INVALID: 'MeetingSiteInvalid',\n LOCUS_INVALID_JOINTIME: 'LocusInvalidJoinTime',\n LOBBY_EXPIRED: 'LobbyExpired',\n MEDIA_CONNECTION_LOST_PAIRED: 'MediaConnectionLostPaired',\n PHONE_NUMBER_NOT_A_NUMBER: 'PhoneNumberNotANumber',\n PHONE_NUMBER_TOO_LONG: 'PhoneNumberTooLong',\n INVALID_DIALABLE_KEY: 'InvalidDialableKey',\n ONE_ON_ONE_TO_SELF_NOT_ALLOWED: 'OneOnOneToSelfNotAllowed',\n REMOVED_PARTICIPANT: 'RemovedParticipant',\n MEETING_LINK_NOT_FOUND: 'MeetingLinkNotFound',\n PHONE_NUMBER_TOO_SHORT_AFTER_IDD: 'PhoneNumberTooShortAfterIdd',\n INVALID_INVITEE_ADDRESS: 'InvalidInviteeAddress',\n PMR_USER_ACCOUNT_LOCKED_OUT: 'PMRUserAccountLockedOut',\n GUEST_FORBIDDEN: 'GuestForbidden',\n PMR_ACCOUNT_SUSPENDED: 'PMRAccountSuspended',\n EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE: 'EmptyPhoneNumberOrCountryCode',\n CONVERSATION_NOT_FOUND: 'ConversationNotFound',\n SIP_CALLEE_BUSY: 'SIPCalleeBusy',\n SIP_CALLEE_NOT_FOUND: 'SIPCalleeNotFound',\n START_RECORDING_FAILED: 'StartRecordingFailed',\n RECORDING_IN_PROGRESS_FAILED: 'RecordingInProgressFailed',\n MEETING_INFO_LOOKUP_ERROR: 'MeetingInfoLookupError',\n CALL_FULL_ADD_GUEST: 'CallFullAddGuest',\n REQUIRE_WEBEX_LOGIN: 'RequireWebexLogin',\n USER_NOT_ALLOWED_ACCESS_MEETING: 'UserNotAllowedAccessMeeting',\n USER_NEEDS_ACTIVATION: 'UserNeedsActivation',\n SIGN_UP_INVALID_EMAIL: 'SignUpInvalidEmail',\n UNKNOWN_ERROR: 'UnknownError',\n NO_MEDIA_FOUND: 'NoMediaFound',\n STREAM_ERROR_NO_MEDIA: 'StreamErrorNoMedia',\n CAMERA_PERMISSION_DENIED: 'CameraPermissionDenied',\n FRAUD_DETECTION: 'FraudDetection',\n E2EE_NOT_SUPPORTED: 'E2EENotSupported',\n LOCUS_LOBBY_FULL_CMR: 'LocusLobbyFullCMR',\n USER_NOT_INVITED_TO_JOIN: 'UserNotInvitedToJoin',\n MISSING_ROAP_ANSWER: 'MissingRoapAnswer',\n DTLS_HANDSHAKE_FAILED: 'DTLSHandshakeFailed',\n ICE_FAILED_WITHOUT_TURN_TLS: 'ICEFailedWithoutTURN_TLS',\n ICE_FAILED_WITH_TURN_TLS: 'ICEFailedWithTURN_TLS',\n SDP_OFFER_CREATION_ERROR: 'SdpOfferCreationError',\n SDP_OFFER_CREATION_ERROR_MISSING_CODEC: 'SdpOfferCreationErrorMissingCodec',\n};\n\nexport const SERVICE_ERROR_CODES_TO_CLIENT_ERROR_CODES_MAP = {\n // ---- Webex API ----\n // Taken from https://wiki.cisco.com/display/HFWEB/MeetingInfo+API and https://sqbu-github.cisco.com/WebExSquared/spark-client-framework/blob/master/spark-client-framework/Services/WebexMeetingService/WebexMeetingModel.h\n // Site not support the URL's domain\n 58400: 4100,\n 99002: 4100,\n // Cannot find the data. Unkown meeting.\n 99009: 4100,\n // Meeting is not allow to cross env\n 58500: 4100,\n // Input parameters contain invalit item\n 400001: 4100,\n // Empty password or token. Meeting is not allow to access since require password\n 403004: 4005,\n // Wrong password. Meeting is not allow to access since password error\n 403028: 4005,\n // Wrong or expired permission. Meeting is not allow to access since permissionToken error or expire\n 403032: 4005,\n // Meeting is required login for current user\n 403034: 4036,\n // Meeting is not allow to access since require password or hostKey\n // Empty password or host key\n 403036: 4005,\n // Meeting is not allow to access since password or hostKey error\n // Wrong password or host key\n 403038: 4005,\n // CMR Meeting Not Supported (meeting exists, but not CMR meeting)\n 403040: 4100,\n // Requires Moderator Pin or Guest Pin\n 403041: 4005,\n // Email blocked\n 403047: 4101,\n // Device not authenticated for your organization\n 403408: 4101,\n // Invalid panelist Pin\n 403043: 4005,\n // Device not registered in org. Device not authenticated.\n 403048: 4101,\n // Not allowed to join external meetings. Violate meeting join policy. Your organization settings don't allow you to join this meeting.\n 403049: 4101,\n // Invalid email. Requires sign in meeting's current site.\n 403100: 4101,\n // Enforce sign in: need login before access when policy enforce sign in. GuestForceUserSignInPolicy\n 403101: 4036,\n // Enforce sign in: sign in with your email address that is approved by your organization\n 403102: 4036,\n // Join internal Meeting: need login before access when policy enforce sign in. Guest force user sign in internal meeting policy.\n 403103: 4036,\n // Join internal Meeting: The host's organization policy doesn't allow your account to join this meeting. Try switching to another account\n 403104: 4101,\n 404001: 4101,\n // Site data not found. Unkonwn meeting. Site data not found(or null).\n 404006: 4100,\n // Invalid input with too many requests. Too many requests access, please input captcha code\n 423001: 4005,\n // Wrong password with too many requests. PasswordError too many time, please input captcha code\n 423005: 4005,\n // Wrong password or host key with too many requests\n 423006: 4005,\n // PasswordError with right captcha, please input captcha code\n 423010: 4005,\n // PasswordOrHostKeyError with right captcha, please input captcha code\n 423012: 4005,\n // Unverified or invalid input. Force show captcha. Please input captcha code\"\n 423013: 4005,\n // Too many requests access\n 429005: 4100,\n\n // ---- Locus ------\n // FREE_USER_MAX_PARTICIPANTS_EXCEEDED\n 2403001: 3007,\n // PAID_USER_MAX_PARTICIPANTS_EXCEEDED\n 2403002: 3002,\n // SERVICE_MAX_PARTICIPANTS_EXCEEDED\n 2403003: 3002,\n // LOCUS_INACTIVE\n 2403004: 4001,\n // LOCUS_FREE_USER_MAX_PARTICIPANTS_JOINED_EXCEEDED\n 2403018: 3001,\n // LOCUS_PAID_USER_MAX_PARTICIPANTS_JOINED_EXCEEDED\n 2403019: 3001,\n // LOCUS_LOCKED\n 2423003: 4002,\n // LOCUS_TERMINATING\n 2423004: 4003,\n // LOCUS_REQUIRES_MODERATOR_PIN_OR_GUEST\n 2423005: 4005,\n 2423006: 4005,\n 2423016: 4005,\n 2423017: 4005,\n 2423018: 4005,\n // LOCUS_OWNER_CONCURRENT_ACTIVE_MEETING_LIMIT_EXCEEDED\n 2423012: 12000,\n // LOCUS_LOBBY_FULL_CMR\n 2423021: 12001,\n // LOCUS_REQUIRES_MODERATOR_ROLE\n 2423007: 4006,\n // LOCUS_JOIN_RESTRICTED_USER_NOT_IN_ROOM\n 2403010: 4007,\n // LOCUS_MEETING_NOT_FOUND\n 2403014: 4011,\n // LOCUS_NOT_WEBEX_SITE\n 2403015: 4012,\n // LOCUS_INVALID_JOIN_TIME\n 2423010: 4013,\n // LOCUS_PHONE_NUMBER_NOT_A_NUMBER\n 2400008: 4016,\n // LOCUS_PHONE_NUMBER_TOO_LONG\n 2400011: 4017,\n // LOCUS_INVALID_DIALABLE_KEY\n 2400012: 4018,\n // LOCUS_ONE_ON_ONE_TO_SELF_NOT_ALLOWED\n 2403007: 4019,\n // LOCUS_REMOVED_PARTICIPANT\n 2401002: 4020,\n // LOCUS_MEETING_LINK_NOT_FOUND\n 2404002: 4021,\n // LOCUS_PHONE_NUMBER_TOO_SHORT_AFTER_IDD\n 2400009: 4022,\n // LOCUS_INVALID_INVITEE_ADDRESS\n 2400025: 4023,\n // LOCUS_PMR_USER_ACCOUNT_LOCKEDOUT\n 2423009: 4024,\n // LOCUS_RESOURCE_GUEST_FORBIDDEN\n 2403022: 4025,\n // LOCUS_PMR_SUSPENDED\n 2423008: 4026,\n // LOCUS_EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE\n 2400006: 4027,\n // LOCUS_INVALID_SINCE_OR_SEQUENCE_HASH_IN_REQUEST\n 2400014: 1006,\n // LOCUS_CONVERSATION_NOT_FOUND\n 2404001: 4028,\n // LOCUS_RECORDING_CONTROL_NOT_SUPPORTED\n 2403025: 4029,\n // LOCUS_RECORDING_NOT_STARTED\n 2405001: 4029,\n // LOCUS_RECORDING_NOT_ENABLED\n 2409005: 4029,\n // E2EE_NOT_SUPPORTED\n 2409062: 12002,\n // LOCUS: ONLY_INVITED_USERS_CAN_ATTEND_THIS_MEETING\n 2423025: 12003,\n\n // ---- U2C Sign in catalog ------\n // The user exists, but hasn't completed activation. Needs to visit Atlas for more processing.\n 100002: 4102,\n // The user exists, had completed activation earlier, but requires re-activation because of change in login strategy.\n // Common example is: user signed up using an OAuth provider, but that OAuth provider was removed by org's admin. Now the user needs to re-activate using alternate login strategies: password-pin, new OAuth provider, SSO, etc.\n 100007: 4102,\n // The user does not exist\n 100001: 4103,\n // The user wasn't found, and the organization used for search is a domain-claimed organization.\n 100006: 4103,\n 100005: 4103, // Depracated because of an issue in the UCF Clients\n // If both email-hash and domain-hash are null or undefined.\n 100004: 4103,\n};\n\nexport const CLIENT_ERROR_CODE_TO_ERROR_PAYLOAD: Record<number, Partial<ClientEventError>> = {\n 1000: {\n errorDescription: ERROR_DESCRIPTIONS.UNKNOWN_CALL_FAILURE,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1001: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_RATE_LIMITED_INCOMING,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1002: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_RATE_LIMITED_OUTGOING,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1003: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_UNAVAILABLE,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1004: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_CONFLICT,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1005: {\n errorDescription: ERROR_DESCRIPTIONS.TIMEOUT,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1006: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_INVALID_SEQUENCE_HASH,\n category: 'signaling',\n fatal: true,\n },\n 1007: {\n errorDescription: ERROR_DESCRIPTIONS.UPDATE_MEDIA_FAILED,\n category: 'signaling',\n fatal: true,\n },\n [AUTHENTICATION_FAILED_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.AUTHENTICATION_FAILED,\n category: 'network',\n fatal: true,\n },\n 1026: {\n errorDescription: ERROR_DESCRIPTIONS.NETWORK_ERROR,\n category: 'network',\n fatal: true,\n },\n 2001: {\n errorDescription: ERROR_DESCRIPTIONS.FAILED_TO_CONNECT_MEDIA,\n category: 'signaling',\n fatal: true,\n },\n 2002: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_ENGINE_LOST,\n category: 'signaling',\n fatal: true,\n },\n 2003: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_CONNECTION_LOST,\n category: 'signaling',\n fatal: true,\n },\n [ICE_FAILURE_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILURE,\n category: 'media',\n fatal: true,\n },\n 2005: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_ENGINE_HANG,\n category: 'signaling',\n fatal: true,\n },\n 2006: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_SERVER_REJECTED,\n category: 'signaling',\n fatal: true,\n },\n [MISSING_ROAP_ANSWER_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.MISSING_ROAP_ANSWER,\n category: 'signaling',\n fatal: true,\n },\n [DTLS_HANDSHAKE_FAILED_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.DTLS_HANDSHAKE_FAILED,\n category: 'media',\n fatal: true,\n },\n [ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILED_WITHOUT_TURN_TLS,\n category: 'media',\n fatal: true,\n },\n [ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILED_WITH_TURN_TLS,\n category: 'network',\n fatal: true,\n },\n 2050: {\n errorDescription: ERROR_DESCRIPTIONS.SDP_OFFER_CREATION_ERROR,\n category: 'media',\n fatal: true,\n shownToUser: true,\n },\n 2051: {\n errorDescription: ERROR_DESCRIPTIONS.SDP_OFFER_CREATION_ERROR_MISSING_CODEC,\n category: 'expected',\n fatal: true,\n shownToUser: true,\n },\n 3001: {\n errorDescription: ERROR_DESCRIPTIONS.CALL_FULL,\n category: 'expected',\n fatal: true,\n },\n 3002: {\n errorDescription: ERROR_DESCRIPTIONS.ROOM_TOO_LARGE,\n category: 'expected',\n fatal: true,\n },\n 3004: {\n errorDescription: ERROR_DESCRIPTIONS.GUEST_ALREADY_ADDED,\n category: 'expected',\n fatal: false,\n },\n 3005: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_USER_NOT_AUTHORISED,\n category: 'expected',\n fatal: true,\n },\n 3006: {\n errorDescription: ERROR_DESCRIPTIONS.CLOUDBERRY_UNAVAILABLE,\n category: 'expected',\n fatal: true,\n },\n 3007: {\n errorDescription: ERROR_DESCRIPTIONS.STREAM_ERROR_NO_MEDIA,\n category: 'expected',\n fatal: true,\n },\n 3013: {\n errorDescription: ERROR_DESCRIPTIONS.ROOM_TOO_LARGE_FREE_ACCOUNT,\n category: 'expected',\n fatal: false,\n },\n 4001: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_INACTIVE,\n category: 'expected',\n fatal: true,\n },\n 4002: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_LOCKED,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4003: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_TERMINATING,\n category: 'expected',\n fatal: true,\n name: 'locus.leave',\n },\n 4004: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_PIN_OR_GUEST_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4005: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_PIN_OR_GUEST_PIN_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4006: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4007: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_MEMBER_OF_ROOM,\n category: 'expected',\n fatal: true,\n },\n 4008: {\n errorDescription: ERROR_DESCRIPTIONS.NEW_LOCUS_ERROR,\n category: 'signaling',\n fatal: true,\n },\n 4009: {\n errorDescription: ERROR_DESCRIPTIONS.NETWORK_UNAVAILABLE,\n category: 'network',\n fatal: true,\n },\n 4010: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_UNAVAILABLE,\n category: 'expected',\n fatal: true,\n },\n 4011: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_ID_INVALID,\n category: 'expected',\n fatal: true,\n },\n 4012: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_SITE_INVALID,\n category: 'expected',\n fatal: true,\n },\n 4013: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_INVALID_JOINTIME,\n category: 'expected',\n fatal: true,\n },\n 4014: {\n errorDescription: ERROR_DESCRIPTIONS.LOBBY_EXPIRED,\n category: 'expected',\n fatal: true,\n },\n 4015: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_CONNECTION_LOST_PAIRED,\n category: 'expected',\n fatal: false,\n },\n 4016: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_NOT_A_NUMBER,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4017: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_TOO_LONG,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4018: {\n errorDescription: ERROR_DESCRIPTIONS.INVALID_DIALABLE_KEY,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4019: {\n errorDescription: ERROR_DESCRIPTIONS.ONE_ON_ONE_TO_SELF_NOT_ALLOWED,\n category: 'expected',\n fatal: true,\n },\n 4020: {\n errorDescription: ERROR_DESCRIPTIONS.REMOVED_PARTICIPANT,\n category: 'expected',\n fatal: true,\n },\n 4021: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_LINK_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n 4022: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_TOO_SHORT_AFTER_IDD,\n category: 'expected',\n fatal: true,\n },\n 4023: {\n errorDescription: ERROR_DESCRIPTIONS.INVALID_INVITEE_ADDRESS,\n category: 'expected',\n fatal: true,\n },\n 4024: {\n errorDescription: ERROR_DESCRIPTIONS.PMR_USER_ACCOUNT_LOCKED_OUT,\n category: 'expected',\n fatal: true,\n },\n 4025: {\n errorDescription: ERROR_DESCRIPTIONS.GUEST_FORBIDDEN,\n category: 'expected',\n fatal: true,\n },\n 4026: {\n errorDescription: ERROR_DESCRIPTIONS.PMR_ACCOUNT_SUSPENDED,\n category: 'expected',\n fatal: true,\n },\n 4027: {\n errorDescription: ERROR_DESCRIPTIONS.EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE,\n category: 'expected',\n fatal: true,\n },\n 4028: {\n errorDescription: ERROR_DESCRIPTIONS.CONVERSATION_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n 4029: {\n errorDescription: ERROR_DESCRIPTIONS.START_RECORDING_FAILED,\n category: 'expected',\n fatal: true,\n },\n 4030: {\n errorDescription: ERROR_DESCRIPTIONS.RECORDING_IN_PROGRESS_FAILED,\n category: 'expected',\n fatal: true,\n },\n 4032: {\n errorDescription: ERROR_DESCRIPTIONS.CAMERA_PERMISSION_DENIED,\n category: 'expected',\n fatal: true,\n },\n 4036: {\n errorDescription: ERROR_DESCRIPTIONS.REQUIRE_WEBEX_LOGIN,\n category: 'expected',\n fatal: true,\n },\n 5000: {\n errorDescription: ERROR_DESCRIPTIONS.SIP_CALLEE_BUSY,\n category: 'expected',\n fatal: true,\n },\n 5001: {\n errorDescription: ERROR_DESCRIPTIONS.SIP_CALLEE_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n\n // Webex App API Error Codes\n 4100: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_INFO_LOOKUP_ERROR,\n category: 'signaling',\n fatal: true,\n },\n 3003: {\n errorDescription: ERROR_DESCRIPTIONS.CALL_FULL_ADD_GUEST,\n category: 'expected',\n fatal: false,\n },\n 4101: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_ALLOWED_ACCESS_MEETING,\n category: 'expected',\n fatal: true,\n },\n 4102: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NEEDS_ACTIVATION,\n category: 'expected',\n fatal: true,\n },\n 4103: {\n errorDescription: ERROR_DESCRIPTIONS.SIGN_UP_INVALID_EMAIL,\n category: 'expected',\n fatal: true,\n },\n 2729: {\n errorDescription: ERROR_DESCRIPTIONS.NO_MEDIA_FOUND,\n category: 'expected',\n fatal: false,\n },\n 9999: {\n errorDescription: ERROR_DESCRIPTIONS.UNKNOWN_ERROR,\n category: 'other',\n fatal: true,\n },\n 12000: {\n errorDescription: ERROR_DESCRIPTIONS.FRAUD_DETECTION,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12001: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_LOBBY_FULL_CMR,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12002: {\n errorDescription: ERROR_DESCRIPTIONS.E2EE_NOT_SUPPORTED,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12003: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_INVITED_TO_JOIN,\n category: 'expected',\n fatal: true,\n },\n};\n\nexport const CALL_DIAGNOSTIC_EVENT_FAILED_TO_SEND = 'js_sdk_call_diagnostic_event_failed_to_send';\n"],"mappings":";;;;;;;;;;AAAA;AACA;AACA;;AAIO,IAAMA,8BAA8B,GAAAC,OAAA,CAAAD,8BAAA,GAAG,4BAA4B;AAEnE,IAAME,0BAA0B,GAAAD,OAAA,CAAAC,0BAAA,GAAG,IAAI;AACvC,IAAMC,aAAa,GAAAF,OAAA,CAAAE,aAAA,GAAG,IAAI;AAC1B,IAAMC,2BAA2B,GAAAH,OAAA,CAAAG,2BAAA,GAAG,IAAI;AACxC,IAAMC,qCAAqC,GAAAJ,OAAA,CAAAI,qCAAA,GAAG,IAAI;AAClD,IAAMC,aAAa,GAAAL,OAAA,CAAAK,aAAA,GAAG,IAAI,CAAC,CAAC;AAC5B,IAAMC,uBAAuB,GAAAN,OAAA,CAAAM,uBAAA,GAAG,IAAI;AACpC,IAAMC,+BAA+B,GAAAP,OAAA,CAAAO,+BAAA,GAAG,IAAI;AAC5C,IAAMC,iCAAiC,GAAAR,OAAA,CAAAQ,iCAAA,GAAG,IAAI;AAC9C,IAAMC,oCAAoC,GAAAT,OAAA,CAAAS,oCAAA,GAAG,IAAI;AACjD,IAAMC,uCAAuC,GAAAV,OAAA,CAAAU,uCAAA,GAAG,IAAI;AACpD,IAAMC,eAAe,GAAAX,OAAA,CAAAW,eAAA,GAAG,WAAW,CAAC,CAAC;;AAErC,IAAMC,uBAA6D,GAAAZ,OAAA,CAAAY,uBAAA,GAAG;EAC3EC,GAAG,EAAE,KAAK;EACVC,iBAAiB,EAAE,kBAAkB;EACrCC,OAAO,EAAE;AACX,CAAC;;AAED;AACA,IAAMC,yBAAyB,GAAG;EAChCC,uBAAuB,EAAE,uBAAuB;EAChDC,iBAAiB,EAAE,iBAAiB;EACpCC,kBAAkB,EAAE,kBAAkB;EACtCC,WAAW,EAAE,YAAY;EACzBC,eAAe,EAAE,eAAe;EAChCC,qBAAqB,EAAE,sBAAsB;EAC7CC,cAAc,EAAE,eAAe;EAC/BC,UAAU,EAAE;AACd,CAAC;AAEM,IAAMC,kDAAkD,GAAAzB,OAAA,CAAAyB,kDAAA,OAAAC,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAC5DX,yBAAyB,CAACC,uBAAuB,EAAG,IAAI,GACxDD,yBAAyB,CAACE,iBAAiB,EAAG,IAAI,GAClDF,yBAAyB,CAACG,kBAAkB,EAAG,IAAI,GACnDH,yBAAyB,CAACI,WAAW,EAAG,IAAI,GAC5CJ,yBAAyB,CAACK,eAAe,EAAG,IAAI,GAChDL,yBAAyB,CAACM,qBAAqB,EAAG,IAAI,GACtDN,yBAAyB,CAACO,cAAc,EAAG,IAAI,GAC/CP,yBAAyB,CAACQ,UAAU,EAAG,IAAI,CAC7C;AAEM,IAAMI,4BAA4B,GAAA5B,OAAA,CAAA4B,4BAAA,GAAG;EAC1CC,OAAO,EAAE,IAAI;EACbC,wBAAwB,EAAE;AAC5B,CAAC;AAEM,IAAMC,kBAAkB,GAAA/B,OAAA,CAAA+B,kBAAA,GAAG;EAChCC,oBAAoB,EAAE,oBAAoB;EAC1CC,2BAA2B,EAAE,0BAA0B;EACvDC,2BAA2B,EAAE,0BAA0B;EACvDC,iBAAiB,EAAE,kBAAkB;EACrCC,cAAc,EAAE,eAAe;EAC/BC,OAAO,EAAE,SAAS;EAClBC,2BAA2B,EAAE,0BAA0B;EACvDC,qBAAqB,EAAE,sBAAsB;EAC7CrC,aAAa,EAAE,cAAc;EAC7BsC,mBAAmB,EAAE,mBAAmB;EACxCC,uBAAuB,EAAE,sBAAsB;EAC/CC,iBAAiB,EAAE,iBAAiB;EACpCC,qBAAqB,EAAE,qBAAqB;EAC5CC,WAAW,EAAE,YAAY;EACzBC,iBAAiB,EAAE,iBAAiB;EACpCC,mBAAmB,EAAE,mBAAmB;EACxCC,SAAS,EAAE,UAAU;EACrBC,cAAc,EAAE,cAAc;EAC9BC,mBAAmB,EAAE,mBAAmB;EACxCC,yBAAyB,EAAE,wBAAwB;EACnDC,sBAAsB,EAAE,uBAAuB;EAC/CC,2BAA2B,EAAE,0BAA0B;EACvDC,gBAAgB,EAAE,iBAAiB;EACnCC,cAAc,EAAE,eAAe;EAC/BC,mBAAmB,EAAE,oBAAoB;EACzCC,+BAA+B,EAAE,iCAAiC;EAClEC,mCAAmC,EAAE,qCAAqC;EAC1EC,kBAAkB,EAAE,oBAAoB;EACxCC,uBAAuB,EAAE,qBAAqB;EAC9CC,eAAe,EAAE,eAAe;EAChCC,mBAAmB,EAAE,oBAAoB;EACzCC,mBAAmB,EAAE,oBAAoB;EACzCC,kBAAkB,EAAE,kBAAkB;EACtCC,oBAAoB,EAAE,oBAAoB;EAC1CC,sBAAsB,EAAE,sBAAsB;EAC9CC,aAAa,EAAE,cAAc;EAC7BC,4BAA4B,EAAE,2BAA2B;EACzDC,yBAAyB,EAAE,uBAAuB;EAClDC,qBAAqB,EAAE,oBAAoB;EAC3CC,oBAAoB,EAAE,oBAAoB;EAC1CC,8BAA8B,EAAE,0BAA0B;EAC1DC,mBAAmB,EAAE,oBAAoB;EACzCC,sBAAsB,EAAE,qBAAqB;EAC7CC,gCAAgC,EAAE,6BAA6B;EAC/DC,uBAAuB,EAAE,uBAAuB;EAChDC,2BAA2B,EAAE,yBAAyB;EACtDC,eAAe,EAAE,gBAAgB;EACjCC,qBAAqB,EAAE,qBAAqB;EAC5CC,kCAAkC,EAAE,+BAA+B;EACnEC,sBAAsB,EAAE,sBAAsB;EAC9CC,eAAe,EAAE,eAAe;EAChCC,oBAAoB,EAAE,mBAAmB;EACzCC,sBAAsB,EAAE,sBAAsB;EAC9CC,4BAA4B,EAAE,2BAA2B;EACzDC,yBAAyB,EAAE,wBAAwB;EACnDC,mBAAmB,EAAE,kBAAkB;EACvCC,mBAAmB,EAAE,mBAAmB;EACxCC,+BAA+B,EAAE,6BAA6B;EAC9DC,qBAAqB,EAAE,qBAAqB;EAC5CC,qBAAqB,EAAE,oBAAoB;EAC3CrF,aAAa,EAAE,cAAc;EAC7BsF,cAAc,EAAE,cAAc;EAC9BC,qBAAqB,EAAE,oBAAoB;EAC3CC,wBAAwB,EAAE,wBAAwB;EAClDC,eAAe,EAAE,gBAAgB;EACjCC,kBAAkB,EAAE,kBAAkB;EACtCC,oBAAoB,EAAE,mBAAmB;EACzCC,wBAAwB,EAAE,sBAAsB;EAChDC,mBAAmB,EAAE,mBAAmB;EACxCC,qBAAqB,EAAE,qBAAqB;EAC5CC,2BAA2B,EAAE,0BAA0B;EACvDC,wBAAwB,EAAE,uBAAuB;EACjDC,wBAAwB,EAAE,uBAAuB;EACjDC,sCAAsC,EAAE;AAC1C,CAAC;AAEM,IAAMC,6CAA6C,GAAAxG,OAAA,CAAAwG,6CAAA,GAAG;EAC3D;EACA;EACA;EACA,KAAK,EAAE,IAAI;EACX,KAAK,EAAE,IAAI;EACX;EACA,KAAK,EAAE,IAAI;EACX;EACA,KAAK,EAAE,IAAI;EACX;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA;EACA,MAAM,EAAE,IAAI;EACZ;EACA;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EAEZ;EACA;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,IAAI;EACb,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,KAAK;EACd;EACA,OAAO,EAAE,KAAK;EACd;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,IAAI;EACb;EACA,OAAO,EAAE,KAAK;EACd;EACA,OAAO,EAAE,KAAK;EAEd;EACA;EACA,MAAM,EAAE,IAAI;EACZ;EACA;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ;EACA,MAAM,EAAE,IAAI;EACZ,MAAM,EAAE,IAAI;EAAE;EACd;EACA,MAAM,EAAE;AACV,CAAC;AAEM,IAAMC,kCAA6E,GAAAzG,OAAA,CAAAyG,kCAAA,IAAAC,qBAAA;EACxF,IAAI,EAAE;IACJC,gBAAgB,EAAE5E,kBAAkB,CAACC,oBAAoB;IACzD4E,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAE5E,kBAAkB,CAACE,2BAA2B;IAChE2E,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAE5E,kBAAkB,CAACG,2BAA2B;IAChE0E,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAE5E,kBAAkB,CAACI,iBAAiB;IACtDyE,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAE5E,kBAAkB,CAACK,cAAc;IACnDwE,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAE5E,kBAAkB,CAACM,OAAO;IAC5CuE,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE,IAAI;IACXC,IAAI,EAAE;EACR,CAAC;EACD,IAAI,EAAE;IACJH,gBAAgB,EAAE5E,kBAAkB,CAACO,2BAA2B;IAChEsE,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE;EACT,CAAC;EACD,IAAI,EAAE;IACJF,gBAAgB,EAAE5E,kBAAkB,CAACS,mBAAmB;IACxDoE,QAAQ,EAAE,WAAW;IACrBC,KAAK,EAAE;EACT;AAAC,OAAAnF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAA+E,qBAAA,EACAzG,0BAA0B,EAAG;EAC5B0G,gBAAgB,EAAE5E,kBAAkB,CAACQ,qBAAqB;EAC1DqE,QAAQ,EAAE,SAAS;EACnBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC7B,aAAa;EAClD0G,QAAQ,EAAE,SAAS;EACnBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACU,uBAAuB;EAC5DmE,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACW,iBAAiB;EACtDkE,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACY,qBAAqB;EAC1DiE,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACAvG,uBAAuB,EAAG;EACzBqG,gBAAgB,EAAE5E,kBAAkB,CAACa,WAAW;EAChDgE,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACc,iBAAiB;EACtD+D,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACe,mBAAmB;EACxD8D,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACAtG,+BAA+B,EAAG;EACjCoG,gBAAgB,EAAE5E,kBAAkB,CAACmE,mBAAmB;EACxDU,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACArG,iCAAiC,EAAG;EACnCmG,gBAAgB,EAAE5E,kBAAkB,CAACoE,qBAAqB;EAC1DS,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE;AACT,CAAC,OAAAnF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAA+E,qBAAA,EACAhG,uCAAuC,EAAG;EACzCiG,gBAAgB,EAAE5E,kBAAkB,CAACqE,2BAA2B;EAChEQ,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE;AACT,CAAC,GACApG,oCAAoC,EAAG;EACtCkG,gBAAgB,EAAE5E,kBAAkB,CAACsE,wBAAwB;EAC7DO,QAAQ,EAAE,SAAS;EACnBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACuE,wBAAwB;EAC7DM,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE,IAAI;EACXE,WAAW,EAAE;AACf,CAAC,GACD,IAAI,EAAE;EACJJ,gBAAgB,EAAE5E,kBAAkB,CAACwE,sCAAsC;EAC3EK,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXE,WAAW,EAAE;AACf,CAAC,GACD,IAAI,EAAE;EACJJ,gBAAgB,EAAE5E,kBAAkB,CAACgB,SAAS;EAC9C6D,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACiB,cAAc;EACnD4D,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACkB,mBAAmB;EACxD2D,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACmB,yBAAyB;EAC9D0D,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACoB,sBAAsB;EAC3DyD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC6D,qBAAqB;EAC1DgB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,OAAAnF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAA+E,qBAAA,EACD,IAAI,EAAE;EACJC,gBAAgB,EAAE5E,kBAAkB,CAACqB,2BAA2B;EAChEwD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACsB,gBAAgB;EACrDuD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACuB,cAAc;EACnDsD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE;AACR,CAAC,GACD,IAAI,EAAE;EACJH,gBAAgB,EAAE5E,kBAAkB,CAACwB,mBAAmB;EACxDqD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE;AACR,CAAC,GACD,IAAI,EAAE;EACJH,gBAAgB,EAAE5E,kBAAkB,CAACyB,+BAA+B;EACpEoD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC0B,mCAAmC;EACxEmD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC2B,kBAAkB;EACvDkD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC4B,uBAAuB;EAC5DiD,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC6B,eAAe;EACpDgD,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC8B,mBAAmB;EACxD+C,QAAQ,EAAE,SAAS;EACnBC,KAAK,EAAE;AACT,CAAC,OAAAnF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAA+E,qBAAA,EACD,IAAI,EAAE;EACJC,gBAAgB,EAAE5E,kBAAkB,CAAC+B,mBAAmB;EACxD8C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACgC,kBAAkB;EACvD6C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACiC,oBAAoB;EACzD4C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACkC,sBAAsB;EAC3D2C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACmC,aAAa;EAClD0C,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACoC,4BAA4B;EACjEyC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACqC,yBAAyB;EAC9DwC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE;AACR,CAAC,GACD,IAAI,EAAE;EACJH,gBAAgB,EAAE5E,kBAAkB,CAACsC,qBAAqB;EAC1DuC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE;AACR,CAAC,GACD,IAAI,EAAE;EACJH,gBAAgB,EAAE5E,kBAAkB,CAACuC,oBAAoB;EACzDsC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE;AACR,CAAC,GACD,IAAI,EAAE;EACJH,gBAAgB,EAAE5E,kBAAkB,CAACwC,8BAA8B;EACnEqC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,OAAAnF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAA+E,qBAAA,EACD,IAAI,EAAE;EACJC,gBAAgB,EAAE5E,kBAAkB,CAACyC,mBAAmB;EACxDoC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC0C,sBAAsB;EAC3DmC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC2C,gCAAgC;EACrEkC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC4C,uBAAuB;EAC5DiC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC6C,2BAA2B;EAChEgC,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC8C,eAAe;EACpD+B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC+C,qBAAqB;EAC1D8B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACgD,kCAAkC;EACvE6B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACiD,sBAAsB;EAC3D4B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACoD,sBAAsB;EAC3DyB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,OAAAnF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAA+E,qBAAA,EACD,IAAI,EAAE;EACJC,gBAAgB,EAAE5E,kBAAkB,CAACqD,4BAA4B;EACjEwB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC8D,wBAAwB;EAC7De,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACwD,mBAAmB;EACxDqB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACkD,eAAe;EACpD2B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACmD,oBAAoB;EACzD0B,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GAGD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACsD,yBAAyB;EAC9DuB,QAAQ,EAAE,WAAW;EACrBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACuD,mBAAmB;EACxDsB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAACyD,+BAA+B;EACpEoB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC0D,qBAAqB;EAC1DmB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC2D,qBAAqB;EAC1DkB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,OAAAnF,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,MAAAD,gBAAA,CAAAC,OAAA,EAAA+E,qBAAA,EACD,IAAI,EAAE;EACJC,gBAAgB,EAAE5E,kBAAkB,CAAC4D,cAAc;EACnDiB,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,GACD,IAAI,EAAE;EACJF,gBAAgB,EAAE5E,kBAAkB,CAAC1B,aAAa;EAClDuG,QAAQ,EAAE,OAAO;EACjBC,KAAK,EAAE;AACT,CAAC,GACD,KAAK,EAAE;EACLF,gBAAgB,EAAE5E,kBAAkB,CAAC+D,eAAe;EACpDc,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE,gBAAgB;EACtBC,WAAW,EAAE;AACf,CAAC,GACD,KAAK,EAAE;EACLJ,gBAAgB,EAAE5E,kBAAkB,CAACiE,oBAAoB;EACzDY,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE,gBAAgB;EACtBC,WAAW,EAAE;AACf,CAAC,GACD,KAAK,EAAE;EACLJ,gBAAgB,EAAE5E,kBAAkB,CAACgE,kBAAkB;EACvDa,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE,IAAI;EACXC,IAAI,EAAE,gBAAgB;EACtBC,WAAW,EAAE;AACf,CAAC,GACD,KAAK,EAAE;EACLJ,gBAAgB,EAAE5E,kBAAkB,CAACkE,wBAAwB;EAC7DW,QAAQ,EAAE,UAAU;EACpBC,KAAK,EAAE;AACT,CAAC,EACF;AAEM,IAAMG,oCAAoC,GAAAhH,OAAA,CAAAgH,oCAAA,GAAG,6CAA6C"}
1
+ {"version":3,"names":["CALL_DIAGNOSTIC_LOG_IDENTIFIER","exports","AUTHENTICATION_FAILED_CODE","NETWORK_ERROR","NEW_LOCUS_ERROR_CLIENT_CODE","MEETING_INFO_LOOKUP_ERROR_CLIENT_CODE","UNKNOWN_ERROR","ICE_FAILURE_CLIENT_CODE","MISSING_ROAP_ANSWER_CLIENT_CODE","DTLS_HANDSHAKE_FAILED_CLIENT_CODE","ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE","ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE","ICE_AND_REACHABILITY_FAILED_CLIENT_CODE","WBX_APP_API_URL","WEBEX_SUB_SERVICE_TYPES","PMR","SCHEDULED_MEETING","WEBINAR","BROWSER_MEDIA_ERROR_NAMES","PERMISSION_DENIED_ERROR","NOT_ALLOWED_ERROR","NOT_READABLE_ERROR","ABORT_ERROR","NOT_FOUND_ERROR","OVERCONSTRAINED_ERROR","SECURITY_ERROR","TYPE_ERROR","BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP","_defineProperty2","default","SDP_OFFER_CREATION_ERROR_MAP","GENERAL","SDP_MUNGE_MISSING_CODECS","ERROR_DESCRIPTIONS","UNKNOWN_CALL_FAILURE","LOCUS_RATE_LIMITED_INCOMING","LOCUS_RATE_LIMITED_OUTGOING","LOCUS_UNAVAILABLE","LOCUS_CONFLICT","TIMEOUT","LOCUS_INVALID_SEQUENCE_HASH","AUTHENTICATION_FAILED","UPDATE_MEDIA_FAILED","FAILED_TO_CONNECT_MEDIA","MEDIA_ENGINE_LOST","MEDIA_CONNECTION_LOST","ICE_FAILURE","MEDIA_ENGINE_HANG","ICE_SERVER_REJECTED","CALL_FULL","ROOM_TOO_LARGE","GUEST_ALREADY_ADDED","LOCUS_USER_NOT_AUTHORISED","CLOUDBERRY_UNAVAILABLE","ROOM_TOO_LARGE_FREE_ACCOUNT","MEETING_INACTIVE","MEETING_LOCKED","MEETING_TERMINATING","MODERATOR_PIN_OR_GUEST_REQUIRED","MODERATOR_PIN_OR_GUEST_PIN_REQUIRED","MODERATOR_REQUIRED","USER_NOT_MEMBER_OF_ROOM","NEW_LOCUS_ERROR","NETWORK_UNAVAILABLE","MEETING_UNAVAILABLE","MEETING_ID_INVALID","MEETING_SITE_INVALID","LOCUS_INVALID_JOINTIME","LOBBY_EXPIRED","MEDIA_CONNECTION_LOST_PAIRED","PHONE_NUMBER_NOT_A_NUMBER","PHONE_NUMBER_TOO_LONG","INVALID_DIALABLE_KEY","ONE_ON_ONE_TO_SELF_NOT_ALLOWED","REMOVED_PARTICIPANT","MEETING_LINK_NOT_FOUND","PHONE_NUMBER_TOO_SHORT_AFTER_IDD","INVALID_INVITEE_ADDRESS","PMR_USER_ACCOUNT_LOCKED_OUT","GUEST_FORBIDDEN","PMR_ACCOUNT_SUSPENDED","EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE","CONVERSATION_NOT_FOUND","SIP_CALLEE_BUSY","SIP_CALLEE_NOT_FOUND","START_RECORDING_FAILED","RECORDING_IN_PROGRESS_FAILED","MEETING_INFO_LOOKUP_ERROR","CALL_FULL_ADD_GUEST","REQUIRE_WEBEX_LOGIN","USER_NOT_ALLOWED_ACCESS_MEETING","USER_NEEDS_ACTIVATION","SIGN_UP_INVALID_EMAIL","NO_MEDIA_FOUND","STREAM_ERROR_NO_MEDIA","CAMERA_PERMISSION_DENIED","FRAUD_DETECTION","E2EE_NOT_SUPPORTED","LOCUS_LOBBY_FULL_CMR","USER_NOT_INVITED_TO_JOIN","MISSING_ROAP_ANSWER","DTLS_HANDSHAKE_FAILED","ICE_FAILED_WITHOUT_TURN_TLS","ICE_FAILED_WITH_TURN_TLS","ICE_AND_REACHABILITY_FAILED","SDP_OFFER_CREATION_ERROR","SDP_OFFER_CREATION_ERROR_MISSING_CODEC","SERVICE_ERROR_CODES_TO_CLIENT_ERROR_CODES_MAP","CLIENT_ERROR_CODE_TO_ERROR_PAYLOAD","_CLIENT_ERROR_CODE_TO","errorDescription","category","fatal","name","shownToUser","CALL_DIAGNOSTIC_EVENT_FAILED_TO_SEND"],"sources":["config.ts"],"sourcesContent":["/* eslint-disable import/prefer-default-export */\n// Most client error codes are mapped based on\n// https://sqbu-github.cisco.com/WebExSquared/event-dictionary/wiki/Error-codes-for-metric-events\n\nimport {ClientEventError, ClientSubServiceType} from '../metrics.types';\n\nexport const CALL_DIAGNOSTIC_LOG_IDENTIFIER = 'call-diagnostic-events -> ';\n\nexport const AUTHENTICATION_FAILED_CODE = 1010;\nexport const NETWORK_ERROR = 1026;\nexport const NEW_LOCUS_ERROR_CLIENT_CODE = 4008;\nexport const MEETING_INFO_LOOKUP_ERROR_CLIENT_CODE = 4100;\nexport const UNKNOWN_ERROR = 9999; // Unexpected error that is not a meetingInfo error, locus error or browser media error.\nexport const ICE_FAILURE_CLIENT_CODE = 2004;\nexport const MISSING_ROAP_ANSWER_CLIENT_CODE = 2007;\nexport const DTLS_HANDSHAKE_FAILED_CLIENT_CODE = 2008;\nexport const ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE = 2010;\nexport const ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE = 2009;\nexport const ICE_AND_REACHABILITY_FAILED_CLIENT_CODE = 2011;\nexport const WBX_APP_API_URL = 'wbxappapi'; // MeetingInfo WebexAppApi response object normally contains a body.url that includes the string 'wbxappapi'\n\nexport const WEBEX_SUB_SERVICE_TYPES: Record<string, ClientSubServiceType> = {\n PMR: 'PMR',\n SCHEDULED_MEETING: 'ScheduledMeeting',\n WEBINAR: 'Webinar',\n};\n\n// Found in https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia\nconst BROWSER_MEDIA_ERROR_NAMES = {\n PERMISSION_DENIED_ERROR: 'PermissionDeniedError',\n NOT_ALLOWED_ERROR: 'NotAllowedError',\n NOT_READABLE_ERROR: 'NotReadableError',\n ABORT_ERROR: 'AbortError',\n NOT_FOUND_ERROR: 'NotFoundError',\n OVERCONSTRAINED_ERROR: 'OverconstrainedError',\n SECURITY_ERROR: 'SecurityError',\n TYPE_ERROR: 'TypeError',\n};\n\nexport const BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP = {\n [BROWSER_MEDIA_ERROR_NAMES.PERMISSION_DENIED_ERROR]: 4032, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.NOT_ALLOWED_ERROR]: 4032, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.NOT_READABLE_ERROR]: 2729, // Although the user granted permission to use the matching devices, a hardware error occurred at the operating system, browser, or Web page level which prevented access to the device.\n [BROWSER_MEDIA_ERROR_NAMES.ABORT_ERROR]: 2729, // Although the user and operating system both granted access to the hardware device, and no hardware issues occurred that would cause a NotReadableError DOMException, throw if some problem occurred which prevented the device from being used.\n [BROWSER_MEDIA_ERROR_NAMES.NOT_FOUND_ERROR]: 2729, // User did not grant permission\n [BROWSER_MEDIA_ERROR_NAMES.OVERCONSTRAINED_ERROR]: 2729, // Thrown if the specified constraints resulted in no candidate devices which met the criteria requested.\n [BROWSER_MEDIA_ERROR_NAMES.SECURITY_ERROR]: 2729, // Thrown if user media support is disabled on the Document on which getUserMedia() was called. The mechanism by which user media support is enabled and disabled is left up to the individual user agent.\n [BROWSER_MEDIA_ERROR_NAMES.TYPE_ERROR]: 2729, // Thrown if the list of constraints specified is empty, or has all constraints set to false. This can also happen if you try to call getUserMedia() in an insecure context, since navigator.mediaDevices is undefined in an insecure context.\n};\n\nexport const SDP_OFFER_CREATION_ERROR_MAP = {\n GENERAL: 2050,\n SDP_MUNGE_MISSING_CODECS: 2051,\n};\n\nexport const ERROR_DESCRIPTIONS = {\n UNKNOWN_CALL_FAILURE: 'UnknownCallFailure',\n LOCUS_RATE_LIMITED_INCOMING: 'LocusRateLimitedIncoming',\n LOCUS_RATE_LIMITED_OUTGOING: 'LocusRateLimitedOutgoing',\n LOCUS_UNAVAILABLE: 'LocusUnavailable',\n LOCUS_CONFLICT: 'LocusConflict',\n TIMEOUT: 'Timeout',\n LOCUS_INVALID_SEQUENCE_HASH: 'LocusInvalidSequenceHash',\n AUTHENTICATION_FAILED: 'AuthenticationFailed',\n NETWORK_ERROR: 'NetworkError',\n UPDATE_MEDIA_FAILED: 'UpdateMediaFailed',\n FAILED_TO_CONNECT_MEDIA: 'FailedToConnectMedia',\n MEDIA_ENGINE_LOST: 'MediaEngineLost',\n MEDIA_CONNECTION_LOST: 'MediaConnectionLost',\n ICE_FAILURE: 'IceFailure',\n MEDIA_ENGINE_HANG: 'MediaEngineHang',\n ICE_SERVER_REJECTED: 'IceServerRejected',\n CALL_FULL: 'CallFull',\n ROOM_TOO_LARGE: 'RoomTooLarge',\n GUEST_ALREADY_ADDED: 'GuestAlreadyAdded',\n LOCUS_USER_NOT_AUTHORISED: 'LocusUserNotAuthorised',\n CLOUDBERRY_UNAVAILABLE: 'CloudberryUnavailable',\n ROOM_TOO_LARGE_FREE_ACCOUNT: 'RoomTooLarge_FreeAccount',\n MEETING_INACTIVE: 'MeetingInactive',\n MEETING_LOCKED: 'MeetingLocked',\n MEETING_TERMINATING: 'MeetingTerminating',\n MODERATOR_PIN_OR_GUEST_REQUIRED: 'Moderator_Pin_Or_Guest_Required',\n MODERATOR_PIN_OR_GUEST_PIN_REQUIRED: 'Moderator_Pin_Or_Guest_PIN_Required',\n MODERATOR_REQUIRED: 'Moderator_Required',\n USER_NOT_MEMBER_OF_ROOM: 'UserNotMemberOfRoom',\n NEW_LOCUS_ERROR: 'NewLocusError',\n NETWORK_UNAVAILABLE: 'NetworkUnavailable',\n MEETING_UNAVAILABLE: 'MeetingUnavailable',\n MEETING_ID_INVALID: 'MeetingIDInvalid',\n MEETING_SITE_INVALID: 'MeetingSiteInvalid',\n LOCUS_INVALID_JOINTIME: 'LocusInvalidJoinTime',\n LOBBY_EXPIRED: 'LobbyExpired',\n MEDIA_CONNECTION_LOST_PAIRED: 'MediaConnectionLostPaired',\n PHONE_NUMBER_NOT_A_NUMBER: 'PhoneNumberNotANumber',\n PHONE_NUMBER_TOO_LONG: 'PhoneNumberTooLong',\n INVALID_DIALABLE_KEY: 'InvalidDialableKey',\n ONE_ON_ONE_TO_SELF_NOT_ALLOWED: 'OneOnOneToSelfNotAllowed',\n REMOVED_PARTICIPANT: 'RemovedParticipant',\n MEETING_LINK_NOT_FOUND: 'MeetingLinkNotFound',\n PHONE_NUMBER_TOO_SHORT_AFTER_IDD: 'PhoneNumberTooShortAfterIdd',\n INVALID_INVITEE_ADDRESS: 'InvalidInviteeAddress',\n PMR_USER_ACCOUNT_LOCKED_OUT: 'PMRUserAccountLockedOut',\n GUEST_FORBIDDEN: 'GuestForbidden',\n PMR_ACCOUNT_SUSPENDED: 'PMRAccountSuspended',\n EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE: 'EmptyPhoneNumberOrCountryCode',\n CONVERSATION_NOT_FOUND: 'ConversationNotFound',\n SIP_CALLEE_BUSY: 'SIPCalleeBusy',\n SIP_CALLEE_NOT_FOUND: 'SIPCalleeNotFound',\n START_RECORDING_FAILED: 'StartRecordingFailed',\n RECORDING_IN_PROGRESS_FAILED: 'RecordingInProgressFailed',\n MEETING_INFO_LOOKUP_ERROR: 'MeetingInfoLookupError',\n CALL_FULL_ADD_GUEST: 'CallFullAddGuest',\n REQUIRE_WEBEX_LOGIN: 'RequireWebexLogin',\n USER_NOT_ALLOWED_ACCESS_MEETING: 'UserNotAllowedAccessMeeting',\n USER_NEEDS_ACTIVATION: 'UserNeedsActivation',\n SIGN_UP_INVALID_EMAIL: 'SignUpInvalidEmail',\n UNKNOWN_ERROR: 'UnknownError',\n NO_MEDIA_FOUND: 'NoMediaFound',\n STREAM_ERROR_NO_MEDIA: 'StreamErrorNoMedia',\n CAMERA_PERMISSION_DENIED: 'CameraPermissionDenied',\n FRAUD_DETECTION: 'FraudDetection',\n E2EE_NOT_SUPPORTED: 'E2EENotSupported',\n LOCUS_LOBBY_FULL_CMR: 'LocusLobbyFullCMR',\n USER_NOT_INVITED_TO_JOIN: 'UserNotInvitedToJoin',\n MISSING_ROAP_ANSWER: 'MissingRoapAnswer',\n DTLS_HANDSHAKE_FAILED: 'DTLSHandshakeFailed',\n ICE_FAILED_WITHOUT_TURN_TLS: 'ICEFailedWithoutTURN_TLS',\n ICE_FAILED_WITH_TURN_TLS: 'ICEFailedWithTURN_TLS',\n ICE_AND_REACHABILITY_FAILED: 'ICEAndReachabilityFailed',\n SDP_OFFER_CREATION_ERROR: 'SdpOfferCreationError',\n SDP_OFFER_CREATION_ERROR_MISSING_CODEC: 'SdpOfferCreationErrorMissingCodec',\n};\n\nexport const SERVICE_ERROR_CODES_TO_CLIENT_ERROR_CODES_MAP = {\n // ---- Webex API ----\n // Taken from https://wiki.cisco.com/display/HFWEB/MeetingInfo+API and https://sqbu-github.cisco.com/WebExSquared/spark-client-framework/blob/master/spark-client-framework/Services/WebexMeetingService/WebexMeetingModel.h\n // Site not support the URL's domain\n 58400: 4100,\n 99002: 4100,\n // Cannot find the data. Unkown meeting.\n 99009: 4100,\n // Meeting is not allow to cross env\n 58500: 4100,\n // Input parameters contain invalit item\n 400001: 4100,\n // Empty password or token. Meeting is not allow to access since require password\n 403004: 4005,\n // Wrong password. Meeting is not allow to access since password error\n 403028: 4005,\n // Wrong or expired permission. Meeting is not allow to access since permissionToken error or expire\n 403032: 4005,\n // Meeting is required login for current user\n 403034: 4036,\n // Meeting is not allow to access since require password or hostKey\n // Empty password or host key\n 403036: 4005,\n // Meeting is not allow to access since password or hostKey error\n // Wrong password or host key\n 403038: 4005,\n // CMR Meeting Not Supported (meeting exists, but not CMR meeting)\n 403040: 4100,\n // Requires Moderator Pin or Guest Pin\n 403041: 4005,\n // Email blocked\n 403047: 4101,\n // Device not authenticated for your organization\n 403408: 4101,\n // Invalid panelist Pin\n 403043: 4005,\n // Device not registered in org. Device not authenticated.\n 403048: 4101,\n // Not allowed to join external meetings. Violate meeting join policy. Your organization settings don't allow you to join this meeting.\n 403049: 4101,\n // Invalid email. Requires sign in meeting's current site.\n 403100: 4101,\n // Enforce sign in: need login before access when policy enforce sign in. GuestForceUserSignInPolicy\n 403101: 4036,\n // Enforce sign in: sign in with your email address that is approved by your organization\n 403102: 4036,\n // Join internal Meeting: need login before access when policy enforce sign in. Guest force user sign in internal meeting policy.\n 403103: 4036,\n // Join internal Meeting: The host's organization policy doesn't allow your account to join this meeting. Try switching to another account\n 403104: 4101,\n 404001: 4101,\n // Site data not found. Unkonwn meeting. Site data not found(or null).\n 404006: 4100,\n // Invalid input with too many requests. Too many requests access, please input captcha code\n 423001: 4005,\n // Wrong password with too many requests. PasswordError too many time, please input captcha code\n 423005: 4005,\n // Wrong password or host key with too many requests\n 423006: 4005,\n // PasswordError with right captcha, please input captcha code\n 423010: 4005,\n // PasswordOrHostKeyError with right captcha, please input captcha code\n 423012: 4005,\n // Unverified or invalid input. Force show captcha. Please input captcha code\"\n 423013: 4005,\n // Too many requests access\n 429005: 4100,\n\n // ---- Locus ------\n // FREE_USER_MAX_PARTICIPANTS_EXCEEDED\n 2403001: 3007,\n // PAID_USER_MAX_PARTICIPANTS_EXCEEDED\n 2403002: 3002,\n // SERVICE_MAX_PARTICIPANTS_EXCEEDED\n 2403003: 3002,\n // LOCUS_INACTIVE\n 2403004: 4001,\n // LOCUS_FREE_USER_MAX_PARTICIPANTS_JOINED_EXCEEDED\n 2403018: 3001,\n // LOCUS_PAID_USER_MAX_PARTICIPANTS_JOINED_EXCEEDED\n 2403019: 3001,\n // LOCUS_LOCKED\n 2423003: 4002,\n // LOCUS_TERMINATING\n 2423004: 4003,\n // LOCUS_REQUIRES_MODERATOR_PIN_OR_GUEST\n 2423005: 4005,\n 2423006: 4005,\n 2423016: 4005,\n 2423017: 4005,\n 2423018: 4005,\n // LOCUS_OWNER_CONCURRENT_ACTIVE_MEETING_LIMIT_EXCEEDED\n 2423012: 12000,\n // LOCUS_LOBBY_FULL_CMR\n 2423021: 12001,\n // LOCUS_REQUIRES_MODERATOR_ROLE\n 2423007: 4006,\n // LOCUS_JOIN_RESTRICTED_USER_NOT_IN_ROOM\n 2403010: 4007,\n // LOCUS_MEETING_NOT_FOUND\n 2403014: 4011,\n // LOCUS_NOT_WEBEX_SITE\n 2403015: 4012,\n // LOCUS_INVALID_JOIN_TIME\n 2423010: 4013,\n // LOCUS_PHONE_NUMBER_NOT_A_NUMBER\n 2400008: 4016,\n // LOCUS_PHONE_NUMBER_TOO_LONG\n 2400011: 4017,\n // LOCUS_INVALID_DIALABLE_KEY\n 2400012: 4018,\n // LOCUS_ONE_ON_ONE_TO_SELF_NOT_ALLOWED\n 2403007: 4019,\n // LOCUS_REMOVED_PARTICIPANT\n 2401002: 4020,\n // LOCUS_MEETING_LINK_NOT_FOUND\n 2404002: 4021,\n // LOCUS_PHONE_NUMBER_TOO_SHORT_AFTER_IDD\n 2400009: 4022,\n // LOCUS_INVALID_INVITEE_ADDRESS\n 2400025: 4023,\n // LOCUS_PMR_USER_ACCOUNT_LOCKEDOUT\n 2423009: 4024,\n // LOCUS_RESOURCE_GUEST_FORBIDDEN\n 2403022: 4025,\n // LOCUS_PMR_SUSPENDED\n 2423008: 4026,\n // LOCUS_EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE\n 2400006: 4027,\n // LOCUS_INVALID_SINCE_OR_SEQUENCE_HASH_IN_REQUEST\n 2400014: 1006,\n // LOCUS_CONVERSATION_NOT_FOUND\n 2404001: 4028,\n // LOCUS_RECORDING_CONTROL_NOT_SUPPORTED\n 2403025: 4029,\n // LOCUS_RECORDING_NOT_STARTED\n 2405001: 4029,\n // LOCUS_RECORDING_NOT_ENABLED\n 2409005: 4029,\n // E2EE_NOT_SUPPORTED\n 2409062: 12002,\n // LOCUS: ONLY_INVITED_USERS_CAN_ATTEND_THIS_MEETING\n 2423025: 12003,\n\n // ---- U2C Sign in catalog ------\n // The user exists, but hasn't completed activation. Needs to visit Atlas for more processing.\n 100002: 4102,\n // The user exists, had completed activation earlier, but requires re-activation because of change in login strategy.\n // Common example is: user signed up using an OAuth provider, but that OAuth provider was removed by org's admin. Now the user needs to re-activate using alternate login strategies: password-pin, new OAuth provider, SSO, etc.\n 100007: 4102,\n // The user does not exist\n 100001: 4103,\n // The user wasn't found, and the organization used for search is a domain-claimed organization.\n 100006: 4103,\n 100005: 4103, // Depracated because of an issue in the UCF Clients\n // If both email-hash and domain-hash are null or undefined.\n 100004: 4103,\n};\n\nexport const CLIENT_ERROR_CODE_TO_ERROR_PAYLOAD: Record<number, Partial<ClientEventError>> = {\n 1000: {\n errorDescription: ERROR_DESCRIPTIONS.UNKNOWN_CALL_FAILURE,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1001: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_RATE_LIMITED_INCOMING,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1002: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_RATE_LIMITED_OUTGOING,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1003: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_UNAVAILABLE,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1004: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_CONFLICT,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1005: {\n errorDescription: ERROR_DESCRIPTIONS.TIMEOUT,\n category: 'signaling',\n fatal: true,\n name: 'locus.response',\n },\n 1006: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_INVALID_SEQUENCE_HASH,\n category: 'signaling',\n fatal: true,\n },\n 1007: {\n errorDescription: ERROR_DESCRIPTIONS.UPDATE_MEDIA_FAILED,\n category: 'signaling',\n fatal: true,\n },\n [AUTHENTICATION_FAILED_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.AUTHENTICATION_FAILED,\n category: 'network',\n fatal: true,\n },\n 1026: {\n errorDescription: ERROR_DESCRIPTIONS.NETWORK_ERROR,\n category: 'network',\n fatal: true,\n },\n 2001: {\n errorDescription: ERROR_DESCRIPTIONS.FAILED_TO_CONNECT_MEDIA,\n category: 'signaling',\n fatal: true,\n },\n 2002: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_ENGINE_LOST,\n category: 'signaling',\n fatal: true,\n },\n 2003: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_CONNECTION_LOST,\n category: 'signaling',\n fatal: true,\n },\n [ICE_FAILURE_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILURE,\n category: 'media',\n fatal: true,\n },\n 2005: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_ENGINE_HANG,\n category: 'signaling',\n fatal: true,\n },\n 2006: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_SERVER_REJECTED,\n category: 'signaling',\n fatal: true,\n },\n [MISSING_ROAP_ANSWER_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.MISSING_ROAP_ANSWER,\n category: 'media',\n fatal: true,\n },\n [DTLS_HANDSHAKE_FAILED_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.DTLS_HANDSHAKE_FAILED,\n category: 'media',\n fatal: true,\n },\n [ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILED_WITHOUT_TURN_TLS,\n category: 'media',\n fatal: true,\n },\n [ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_FAILED_WITH_TURN_TLS,\n category: 'media',\n fatal: true,\n },\n [ICE_AND_REACHABILITY_FAILED_CLIENT_CODE]: {\n errorDescription: ERROR_DESCRIPTIONS.ICE_AND_REACHABILITY_FAILED,\n category: 'expected',\n fatal: true,\n },\n 2050: {\n errorDescription: ERROR_DESCRIPTIONS.SDP_OFFER_CREATION_ERROR,\n category: 'media',\n fatal: true,\n shownToUser: true,\n },\n 2051: {\n errorDescription: ERROR_DESCRIPTIONS.SDP_OFFER_CREATION_ERROR_MISSING_CODEC,\n category: 'expected',\n fatal: true,\n shownToUser: true,\n },\n 3001: {\n errorDescription: ERROR_DESCRIPTIONS.CALL_FULL,\n category: 'expected',\n fatal: true,\n },\n 3002: {\n errorDescription: ERROR_DESCRIPTIONS.ROOM_TOO_LARGE,\n category: 'expected',\n fatal: true,\n },\n 3004: {\n errorDescription: ERROR_DESCRIPTIONS.GUEST_ALREADY_ADDED,\n category: 'expected',\n fatal: false,\n },\n 3005: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_USER_NOT_AUTHORISED,\n category: 'expected',\n fatal: true,\n },\n 3006: {\n errorDescription: ERROR_DESCRIPTIONS.CLOUDBERRY_UNAVAILABLE,\n category: 'expected',\n fatal: true,\n },\n 3007: {\n errorDescription: ERROR_DESCRIPTIONS.STREAM_ERROR_NO_MEDIA,\n category: 'expected',\n fatal: true,\n },\n 3013: {\n errorDescription: ERROR_DESCRIPTIONS.ROOM_TOO_LARGE_FREE_ACCOUNT,\n category: 'expected',\n fatal: false,\n },\n 4001: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_INACTIVE,\n category: 'expected',\n fatal: true,\n },\n 4002: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_LOCKED,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4003: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_TERMINATING,\n category: 'expected',\n fatal: true,\n name: 'locus.leave',\n },\n 4004: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_PIN_OR_GUEST_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4005: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_PIN_OR_GUEST_PIN_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4006: {\n errorDescription: ERROR_DESCRIPTIONS.MODERATOR_REQUIRED,\n category: 'expected',\n fatal: false,\n },\n 4007: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_MEMBER_OF_ROOM,\n category: 'expected',\n fatal: true,\n },\n 4008: {\n errorDescription: ERROR_DESCRIPTIONS.NEW_LOCUS_ERROR,\n category: 'signaling',\n fatal: true,\n },\n 4009: {\n errorDescription: ERROR_DESCRIPTIONS.NETWORK_UNAVAILABLE,\n category: 'network',\n fatal: true,\n },\n 4010: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_UNAVAILABLE,\n category: 'expected',\n fatal: true,\n },\n 4011: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_ID_INVALID,\n category: 'expected',\n fatal: true,\n },\n 4012: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_SITE_INVALID,\n category: 'expected',\n fatal: true,\n },\n 4013: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_INVALID_JOINTIME,\n category: 'expected',\n fatal: true,\n },\n 4014: {\n errorDescription: ERROR_DESCRIPTIONS.LOBBY_EXPIRED,\n category: 'expected',\n fatal: true,\n },\n 4015: {\n errorDescription: ERROR_DESCRIPTIONS.MEDIA_CONNECTION_LOST_PAIRED,\n category: 'expected',\n fatal: false,\n },\n 4016: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_NOT_A_NUMBER,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4017: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_TOO_LONG,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4018: {\n errorDescription: ERROR_DESCRIPTIONS.INVALID_DIALABLE_KEY,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n },\n 4019: {\n errorDescription: ERROR_DESCRIPTIONS.ONE_ON_ONE_TO_SELF_NOT_ALLOWED,\n category: 'expected',\n fatal: true,\n },\n 4020: {\n errorDescription: ERROR_DESCRIPTIONS.REMOVED_PARTICIPANT,\n category: 'expected',\n fatal: true,\n },\n 4021: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_LINK_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n 4022: {\n errorDescription: ERROR_DESCRIPTIONS.PHONE_NUMBER_TOO_SHORT_AFTER_IDD,\n category: 'expected',\n fatal: true,\n },\n 4023: {\n errorDescription: ERROR_DESCRIPTIONS.INVALID_INVITEE_ADDRESS,\n category: 'expected',\n fatal: true,\n },\n 4024: {\n errorDescription: ERROR_DESCRIPTIONS.PMR_USER_ACCOUNT_LOCKED_OUT,\n category: 'expected',\n fatal: true,\n },\n 4025: {\n errorDescription: ERROR_DESCRIPTIONS.GUEST_FORBIDDEN,\n category: 'expected',\n fatal: true,\n },\n 4026: {\n errorDescription: ERROR_DESCRIPTIONS.PMR_ACCOUNT_SUSPENDED,\n category: 'expected',\n fatal: true,\n },\n 4027: {\n errorDescription: ERROR_DESCRIPTIONS.EMPTY_PHONE_NUMBER_OR_COUNTRY_CODE,\n category: 'expected',\n fatal: true,\n },\n 4028: {\n errorDescription: ERROR_DESCRIPTIONS.CONVERSATION_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n 4029: {\n errorDescription: ERROR_DESCRIPTIONS.START_RECORDING_FAILED,\n category: 'expected',\n fatal: true,\n },\n 4030: {\n errorDescription: ERROR_DESCRIPTIONS.RECORDING_IN_PROGRESS_FAILED,\n category: 'expected',\n fatal: true,\n },\n 4032: {\n errorDescription: ERROR_DESCRIPTIONS.CAMERA_PERMISSION_DENIED,\n category: 'expected',\n fatal: true,\n },\n 4036: {\n errorDescription: ERROR_DESCRIPTIONS.REQUIRE_WEBEX_LOGIN,\n category: 'expected',\n fatal: true,\n },\n 5000: {\n errorDescription: ERROR_DESCRIPTIONS.SIP_CALLEE_BUSY,\n category: 'expected',\n fatal: true,\n },\n 5001: {\n errorDescription: ERROR_DESCRIPTIONS.SIP_CALLEE_NOT_FOUND,\n category: 'expected',\n fatal: true,\n },\n\n // Webex App API Error Codes\n 4100: {\n errorDescription: ERROR_DESCRIPTIONS.MEETING_INFO_LOOKUP_ERROR,\n category: 'signaling',\n fatal: true,\n },\n 3003: {\n errorDescription: ERROR_DESCRIPTIONS.CALL_FULL_ADD_GUEST,\n category: 'expected',\n fatal: false,\n },\n 4101: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_ALLOWED_ACCESS_MEETING,\n category: 'expected',\n fatal: true,\n },\n 4102: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NEEDS_ACTIVATION,\n category: 'expected',\n fatal: true,\n },\n 4103: {\n errorDescription: ERROR_DESCRIPTIONS.SIGN_UP_INVALID_EMAIL,\n category: 'expected',\n fatal: true,\n },\n 2729: {\n errorDescription: ERROR_DESCRIPTIONS.NO_MEDIA_FOUND,\n category: 'expected',\n fatal: false,\n },\n 9999: {\n errorDescription: ERROR_DESCRIPTIONS.UNKNOWN_ERROR,\n category: 'other',\n fatal: true,\n },\n 12000: {\n errorDescription: ERROR_DESCRIPTIONS.FRAUD_DETECTION,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12001: {\n errorDescription: ERROR_DESCRIPTIONS.LOCUS_LOBBY_FULL_CMR,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12002: {\n errorDescription: ERROR_DESCRIPTIONS.E2EE_NOT_SUPPORTED,\n category: 'expected',\n fatal: true,\n name: 'locus.response',\n shownToUser: true,\n },\n 12003: {\n errorDescription: ERROR_DESCRIPTIONS.USER_NOT_INVITED_TO_JOIN,\n category: 'expected',\n fatal: true,\n },\n};\n\nexport const CALL_DIAGNOSTIC_EVENT_FAILED_TO_SEND = 'js_sdk_call_diagnostic_event_failed_to_send';\n"],"mappings":"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"}
package/dist/index.js CHANGED
@@ -8,6 +8,12 @@ var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequ
8
8
  _Object$defineProperty(exports, "__esModule", {
9
9
  value: true
10
10
  });
11
+ _Object$defineProperty(exports, "BehavioralMetrics", {
12
+ enumerable: true,
13
+ get: function get() {
14
+ return _behavioralMetrics.default;
15
+ }
16
+ });
11
17
  exports.CALL_DIAGNOSTIC_CONFIG = void 0;
12
18
  _Object$defineProperty(exports, "CallDiagnosticLatencies", {
13
19
  enumerable: true,
@@ -59,6 +65,7 @@ var CallDiagnosticUtils = _interopRequireWildcard(require("./call-diagnostic/cal
59
65
  exports.CallDiagnosticUtils = CallDiagnosticUtils;
60
66
  var _callDiagnosticMetrics2 = _interopRequireDefault(require("./call-diagnostic/call-diagnostic-metrics"));
61
67
  var _callDiagnosticMetricsLatencies = _interopRequireDefault(require("./call-diagnostic/call-diagnostic-metrics-latencies"));
68
+ var _behavioralMetrics = _interopRequireDefault(require("./behavioral/behavioral-metrics"));
62
69
  function _getRequireWildcardCache(e) { if ("function" != typeof _WeakMap) return null; var r = new _WeakMap(), t = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
63
70
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? _Object$getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? _Object$defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
64
71
  /*!
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["_webexCore","require","_metrics","_interopRequireWildcard","_config","_interopRequireDefault","_newMetrics","Utils","exports","CALL_DIAGNOSTIC_CONFIG","CallDiagnosticUtils","_callDiagnosticMetrics2","_callDiagnosticMetricsLatencies","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","registerInternalPlugin","Metrics","config","NewMetrics"],"sources":["index.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {registerInternalPlugin} from '@webex/webex-core';\n\nimport Metrics from './metrics';\nimport config from './config';\nimport NewMetrics from './new-metrics';\nimport * as Utils from './utils';\nimport {\n ClientEvent,\n ClientEventLeaveReason,\n SubmitBehavioralEvent,\n SubmitClientEvent,\n SubmitInternalEvent,\n SubmitOperationalEvent,\n SubmitMQE,\n PreComputedLatencies,\n} from './metrics.types';\nimport * as CALL_DIAGNOSTIC_CONFIG from './call-diagnostic/config';\nimport * as CallDiagnosticUtils from './call-diagnostic/call-diagnostic-metrics.util';\nimport CallDiagnosticMetrics from './call-diagnostic/call-diagnostic-metrics';\nimport CallDiagnosticLatencies from './call-diagnostic/call-diagnostic-metrics-latencies';\n\nregisterInternalPlugin('metrics', Metrics, {\n config,\n});\n\nregisterInternalPlugin('newMetrics', NewMetrics, {\n config,\n});\n\nexport {default, getOSNameInternal} from './metrics';\n\nexport {\n config,\n CALL_DIAGNOSTIC_CONFIG,\n NewMetrics,\n Utils,\n CallDiagnosticUtils,\n CallDiagnosticLatencies,\n CallDiagnosticMetrics,\n};\nexport type {\n ClientEvent,\n ClientEventLeaveReason,\n SubmitBehavioralEvent,\n SubmitClientEvent,\n SubmitInternalEvent,\n SubmitMQE,\n SubmitOperationalEvent,\n PreComputedLatencies,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAD,sBAAA,CAAAJ,OAAA;AACA,IAAAM,KAAA,GAAAJ,uBAAA,CAAAF,OAAA;AAAiCO,OAAA,CAAAD,KAAA,GAAAA,KAAA;AAWjC,IAAAE,sBAAA,GAAAN,uBAAA,CAAAF,OAAA;AAAmEO,OAAA,CAAAC,sBAAA,GAAAA,sBAAA;AACnE,IAAAC,mBAAA,GAAAP,uBAAA,CAAAF,OAAA;AAAsFO,OAAA,CAAAE,mBAAA,GAAAA,mBAAA;AACtF,IAAAC,uBAAA,GAAAN,sBAAA,CAAAJ,OAAA;AACA,IAAAW,+BAAA,GAAAP,sBAAA,CAAAJ,OAAA;AAA0F,SAAAY,yBAAAC,CAAA,6BAAAC,QAAA,mBAAAC,CAAA,OAAAD,QAAA,IAAAE,CAAA,OAAAF,QAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAX,wBAAAW,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,WAAAM,OAAA,EAAAN,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAI,GAAA,CAAAP,CAAA,UAAAG,CAAA,CAAAK,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,sBAAA,IAAAC,gCAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAC,MAAA,CAAAC,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAlB,CAAA,EAAAc,CAAA,SAAAK,CAAA,GAAAR,CAAA,GAAAE,gCAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAK,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,sBAAA,CAAAH,CAAA,EAAAK,CAAA,EAAAK,CAAA,IAAAV,CAAA,CAAAK,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAL,CAAA,CAAAH,OAAA,GAAAN,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAiB,GAAA,CAAApB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAvB1F;AACA;AACA;;AAuBA,IAAAY,iCAAsB,EAAC,SAAS,EAAEC,gBAAO,EAAE;EACzCC,MAAM,EAANA;AACF,CAAC,CAAC;AAEF,IAAAF,iCAAsB,EAAC,YAAY,EAAEG,mBAAU,EAAE;EAC/CD,MAAM,EAANA;AACF,CAAC,CAAC"}
1
+ {"version":3,"names":["_webexCore","require","_metrics","_interopRequireWildcard","_config","_interopRequireDefault","_newMetrics","Utils","exports","CALL_DIAGNOSTIC_CONFIG","CallDiagnosticUtils","_callDiagnosticMetrics2","_callDiagnosticMetricsLatencies","_behavioralMetrics","_getRequireWildcardCache","e","_WeakMap","r","t","__esModule","_typeof","default","has","get","n","__proto__","a","_Object$defineProperty","_Object$getOwnPropertyDescriptor","u","Object","prototype","hasOwnProperty","call","i","set","registerInternalPlugin","Metrics","config","NewMetrics"],"sources":["index.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {registerInternalPlugin} from '@webex/webex-core';\n\nimport Metrics from './metrics';\nimport config from './config';\nimport NewMetrics from './new-metrics';\nimport * as Utils from './utils';\nimport {\n ClientEvent,\n ClientEventLeaveReason,\n SubmitBehavioralEvent,\n SubmitClientEvent,\n SubmitInternalEvent,\n SubmitOperationalEvent,\n SubmitMQE,\n PreComputedLatencies,\n} from './metrics.types';\nimport * as CALL_DIAGNOSTIC_CONFIG from './call-diagnostic/config';\nimport * as CallDiagnosticUtils from './call-diagnostic/call-diagnostic-metrics.util';\nimport CallDiagnosticMetrics from './call-diagnostic/call-diagnostic-metrics';\nimport CallDiagnosticLatencies from './call-diagnostic/call-diagnostic-metrics-latencies';\nimport BehavioralMetrics from './behavioral/behavioral-metrics';\n\nregisterInternalPlugin('metrics', Metrics, {\n config,\n});\n\nregisterInternalPlugin('newMetrics', NewMetrics, {\n config,\n});\n\nexport {default, getOSNameInternal} from './metrics';\n\nexport {\n config,\n CALL_DIAGNOSTIC_CONFIG,\n NewMetrics,\n Utils,\n CallDiagnosticUtils,\n CallDiagnosticLatencies,\n CallDiagnosticMetrics,\n BehavioralMetrics,\n};\nexport type {\n ClientEvent,\n ClientEventLeaveReason,\n SubmitBehavioralEvent,\n SubmitClientEvent,\n SubmitInternalEvent,\n SubmitMQE,\n SubmitOperationalEvent,\n PreComputedLatencies,\n};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAAA,UAAA,GAAAC,OAAA;AAEA,IAAAC,QAAA,GAAAC,uBAAA,CAAAF,OAAA;AACA,IAAAG,OAAA,GAAAC,sBAAA,CAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAD,sBAAA,CAAAJ,OAAA;AACA,IAAAM,KAAA,GAAAJ,uBAAA,CAAAF,OAAA;AAAiCO,OAAA,CAAAD,KAAA,GAAAA,KAAA;AAWjC,IAAAE,sBAAA,GAAAN,uBAAA,CAAAF,OAAA;AAAmEO,OAAA,CAAAC,sBAAA,GAAAA,sBAAA;AACnE,IAAAC,mBAAA,GAAAP,uBAAA,CAAAF,OAAA;AAAsFO,OAAA,CAAAE,mBAAA,GAAAA,mBAAA;AACtF,IAAAC,uBAAA,GAAAN,sBAAA,CAAAJ,OAAA;AACA,IAAAW,+BAAA,GAAAP,sBAAA,CAAAJ,OAAA;AACA,IAAAY,kBAAA,GAAAR,sBAAA,CAAAJ,OAAA;AAAgE,SAAAa,yBAAAC,CAAA,6BAAAC,QAAA,mBAAAC,CAAA,OAAAD,QAAA,IAAAE,CAAA,OAAAF,QAAA,YAAAF,wBAAA,YAAAA,yBAAAC,CAAA,WAAAA,CAAA,GAAAG,CAAA,GAAAD,CAAA,KAAAF,CAAA;AAAA,SAAAZ,wBAAAY,CAAA,EAAAE,CAAA,SAAAA,CAAA,IAAAF,CAAA,IAAAA,CAAA,CAAAI,UAAA,SAAAJ,CAAA,eAAAA,CAAA,gBAAAK,OAAA,CAAAL,CAAA,0BAAAA,CAAA,WAAAM,OAAA,EAAAN,CAAA,QAAAG,CAAA,GAAAJ,wBAAA,CAAAG,CAAA,OAAAC,CAAA,IAAAA,CAAA,CAAAI,GAAA,CAAAP,CAAA,UAAAG,CAAA,CAAAK,GAAA,CAAAR,CAAA,OAAAS,CAAA,KAAAC,SAAA,UAAAC,CAAA,GAAAC,sBAAA,IAAAC,gCAAA,WAAAC,CAAA,IAAAd,CAAA,oBAAAc,CAAA,IAAAC,MAAA,CAAAC,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAlB,CAAA,EAAAc,CAAA,SAAAK,CAAA,GAAAR,CAAA,GAAAE,gCAAA,CAAAb,CAAA,EAAAc,CAAA,UAAAK,CAAA,KAAAA,CAAA,CAAAX,GAAA,IAAAW,CAAA,CAAAC,GAAA,IAAAR,sBAAA,CAAAH,CAAA,EAAAK,CAAA,EAAAK,CAAA,IAAAV,CAAA,CAAAK,CAAA,IAAAd,CAAA,CAAAc,CAAA,YAAAL,CAAA,CAAAH,OAAA,GAAAN,CAAA,EAAAG,CAAA,IAAAA,CAAA,CAAAiB,GAAA,CAAApB,CAAA,EAAAS,CAAA,GAAAA,CAAA;AAxBhE;AACA;AACA;;AAwBA,IAAAY,iCAAsB,EAAC,SAAS,EAAEC,gBAAO,EAAE;EACzCC,MAAM,EAANA;AACF,CAAC,CAAC;AAEF,IAAAF,iCAAsB,EAAC,YAAY,EAAEG,mBAAU,EAAE;EAC/CD,MAAM,EAANA;AACF,CAAC,CAAC"}
package/dist/metrics.js CHANGED
@@ -148,7 +148,7 @@ var Metrics = _webexCore.WebexPlugin.extend({
148
148
  }
149
149
  });
150
150
  },
151
- version: "3.3.0"
151
+ version: "3.3.1-next.10"
152
152
  });
153
153
  var _default = exports.default = Metrics;
154
154
  //# sourceMappingURL=metrics.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["metrics.types.ts"],"sourcesContent":["import {\n ClientEvent as RawClientEvent,\n Event as RawEvent,\n MediaQualityEvent as RawMediaQualityEvent,\n} from '@webex/event-dictionary-ts';\n\nexport type Event = Omit<RawEvent, 'event'> & {event: RawClientEvent | RawMediaQualityEvent};\n\nexport type ClientEventError = NonNullable<RawClientEvent['errors']>[0];\n\nexport type EnvironmentType = NonNullable<RawEvent['origin']['environment']>;\n\nexport type NewEnvironmentType = NonNullable<RawEvent['origin']['newEnvironment']>;\n\nexport type ClientLaunchMethodType = NonNullable<\n RawEvent['origin']['clientInfo']\n>['clientLaunchMethod'];\n\nexport type BrowserLaunchMethodType = NonNullable<\n RawEvent['origin']['clientInfo']\n>['browserLaunchMethod'];\n\nexport type SubmitClientEventOptions = {\n meetingId?: string;\n mediaConnections?: any[];\n rawError?: any;\n correlationId?: string;\n preLoginId?: string;\n environment?: EnvironmentType;\n newEnvironmentType?: NewEnvironmentType;\n clientLaunchMethod?: ClientLaunchMethodType;\n browserLaunchMethod?: BrowserLaunchMethodType;\n webexConferenceIdStr?: string;\n globalMeetingId?: string;\n};\n\nexport type SubmitMQEOptions = {\n meetingId: string;\n mediaConnections?: any[];\n networkType?: Event['origin']['networkType'];\n webexConferenceIdStr?: string;\n globalMeetingId?: string;\n};\n\nexport type InternalEvent = {\n name:\n | 'internal.client.meetinginfo.request'\n | 'internal.client.meetinginfo.response'\n | 'internal.register.device.request'\n | 'internal.register.device.response'\n | 'internal.reset.join.latencies'\n | 'internal.client.meeting.click.joinbutton'\n | 'internal.host.meeting.participant.admitted'\n | 'internal.client.meeting.interstitial-window.showed'\n | 'internal.client.interstitial-window.click.joinbutton'\n | 'internal.client.add-media.turn-discovery.start'\n | 'internal.client.add-media.turn-discovery.end';\n\n payload?: never;\n options?: never;\n};\n\nexport interface ClientEvent {\n name: RawClientEvent['name'];\n payload?: RawClientEvent;\n options?: SubmitClientEventOptions;\n}\n\nexport interface BehavioralEvent {\n // TODO: not implemented\n name: 'host.meeting.participant.admitted' | 'sdk.media-flow.started';\n payload?: never;\n options?: never;\n}\n\nexport interface OperationalEvent {\n // TODO: not implemented\n name: never;\n payload?: never;\n options?: never;\n}\n\nexport interface FeatureEvent {\n // TODO: not implemented\n name: never;\n payload?: never;\n options?: never;\n}\n\nexport interface MediaQualityEvent {\n name: RawMediaQualityEvent['name'];\n payload?: RawMediaQualityEvent;\n options: SubmitMQEOptions;\n}\n\nexport type RecursivePartial<T> = {\n [P in keyof T]?: T[P] extends (infer U)[]\n ? RecursivePartial<U>[]\n : T[P] extends object\n ? RecursivePartial<T[P]>\n : T[P];\n};\n\nexport type MetricEventNames =\n | InternalEvent['name']\n | ClientEvent['name']\n | BehavioralEvent['name']\n | OperationalEvent['name']\n | FeatureEvent['name']\n | MediaQualityEvent['name'];\n\nexport type ClientInfo = NonNullable<RawEvent['origin']['clientInfo']>;\nexport type ClientType = NonNullable<RawEvent['origin']['clientInfo']>['clientType'];\nexport type SubClientType = NonNullable<RawEvent['origin']['clientInfo']>['subClientType'];\nexport type NetworkType = NonNullable<RawEvent['origin']>['networkType'];\n\nexport type ClientSubServiceType = ClientEvent['payload']['webexSubServiceType'];\nexport type ClientEventPayload = RecursivePartial<ClientEvent['payload']>;\nexport type ClientEventLeaveReason = ClientEvent['payload']['leaveReason'];\nexport type ClientEventPayloadError = ClientEvent['payload']['errors'];\n\nexport type MediaQualityEventAudioSetupDelayPayload = NonNullable<\n MediaQualityEvent['payload']\n>['audioSetupDelay'];\nexport type MediaQualityEventVideoSetupDelayPayload = NonNullable<\n MediaQualityEvent['payload']\n>['videoSetupDelay'];\n\nexport type SubmitMQEPayload = RecursivePartial<MediaQualityEvent['payload']> & {\n intervals: NonNullable<MediaQualityEvent['payload']>['intervals'];\n};\n\nexport type SubmitInternalEvent = (args: {\n name: InternalEvent['name'];\n payload?: RecursivePartial<InternalEvent['payload']>;\n options?: any;\n}) => void;\n\nexport type SubmitBehavioralEvent = (args: {\n name: BehavioralEvent['name'];\n payload?: RecursivePartial<BehavioralEvent['payload']>;\n options?: any;\n}) => void;\n\nexport type SubmitClientEvent = (args: {\n name: ClientEvent['name'];\n payload?: RecursivePartial<ClientEvent['payload']>;\n options?: SubmitClientEventOptions;\n}) => Promise<any>;\n\nexport type SubmitOperationalEvent = (args: {\n name: OperationalEvent['name'];\n payload?: RecursivePartial<OperationalEvent['payload']>;\n options?: any;\n}) => void;\n\nexport type SubmitMQE = (args: {\n name: MediaQualityEvent['name'];\n payload: SubmitMQEPayload;\n options: any;\n}) => void;\n\nexport type BuildClientEventFetchRequestOptions = (args: {\n name: ClientEvent['name'];\n payload?: RecursivePartial<ClientEvent['payload']>;\n options?: SubmitClientEventOptions;\n}) => Promise<any>;\n\nexport type PreComputedLatencies =\n | 'internal.client.pageJMT'\n | 'internal.download.time'\n | 'internal.get.cluster.time'\n | 'internal.click.to.interstitial'\n | 'internal.refresh.captcha.time'\n | 'internal.exchange.ci.token.time'\n | 'internal.get.u2c.time'\n | 'internal.call.init.join.req'\n | 'internal.other.app.api.time'\n | 'internal.api.fetch.intelligence.models';\n"],"mappings":""}
1
+ {"version":3,"names":[],"sources":["metrics.types.ts"],"sourcesContent":["import {\n ClientEvent as RawClientEvent,\n Event as RawEvent,\n MediaQualityEvent as RawMediaQualityEvent,\n} from '@webex/event-dictionary-ts';\n\nexport type Event = Omit<RawEvent, 'event'> & {event: RawClientEvent | RawMediaQualityEvent};\n\nexport type ClientEventError = NonNullable<RawClientEvent['errors']>[0];\n\nexport type EnvironmentType = NonNullable<RawEvent['origin']['environment']>;\n\nexport type NewEnvironmentType = NonNullable<RawEvent['origin']['newEnvironment']>;\n\nexport type ClientLaunchMethodType = NonNullable<\n RawEvent['origin']['clientInfo']\n>['clientLaunchMethod'];\n\nexport type BrowserLaunchMethodType = NonNullable<\n RawEvent['origin']['clientInfo']\n>['browserLaunchMethod'];\n\nexport type MetricEventProduct = 'webex' | 'wxcc_desktop';\n\nexport type MetricEventAgent = 'user' | 'browser' | 'system' | 'sdk' | 'redux' | 'service';\n\nexport type MetricEventVerb =\n | 'create'\n | 'get'\n | 'fetch'\n | 'update'\n | 'list'\n | 'delete'\n | 'select'\n | 'view'\n | 'set'\n | 'toggle'\n | 'load'\n | 'reload'\n | 'click'\n | 'hover'\n | 'register'\n | 'unregister'\n | 'enable'\n | 'disable'\n | 'use'\n | 'complete'\n | 'submit'\n | 'apply'\n | 'cancel'\n | 'abort'\n | 'sync'\n | 'login'\n | 'logout';\n\nexport type SubmitClientEventOptions = {\n meetingId?: string;\n mediaConnections?: any[];\n rawError?: any;\n correlationId?: string;\n preLoginId?: string;\n environment?: EnvironmentType;\n newEnvironmentType?: NewEnvironmentType;\n clientLaunchMethod?: ClientLaunchMethodType;\n browserLaunchMethod?: BrowserLaunchMethodType;\n webexConferenceIdStr?: string;\n globalMeetingId?: string;\n};\n\nexport type SubmitMQEOptions = {\n meetingId: string;\n mediaConnections?: any[];\n networkType?: Event['origin']['networkType'];\n webexConferenceIdStr?: string;\n globalMeetingId?: string;\n};\n\nexport type InternalEvent = {\n name:\n | 'internal.client.meetinginfo.request'\n | 'internal.client.meetinginfo.response'\n | 'internal.register.device.request'\n | 'internal.register.device.response'\n | 'internal.reset.join.latencies'\n | 'internal.client.meeting.click.joinbutton'\n | 'internal.host.meeting.participant.admitted'\n | 'internal.client.meeting.interstitial-window.showed'\n | 'internal.client.interstitial-window.click.joinbutton'\n | 'internal.client.add-media.turn-discovery.start'\n | 'internal.client.add-media.turn-discovery.end';\n\n payload?: never;\n options?: never;\n};\n\nexport interface ClientEvent {\n name: RawClientEvent['name'];\n payload?: RawClientEvent;\n options?: SubmitClientEventOptions;\n}\n\nexport interface BehavioralEventContext {\n app: {version: string};\n device: {id: string};\n locale: string;\n os: {\n name: string;\n version: string;\n };\n}\n\nexport interface BehavioralEvent {\n context: BehavioralEventContext;\n metricName: string;\n tags: Record<string, string | number | boolean>;\n timestamp: number;\n type: string[];\n}\n\nexport type BehavioralEventPayload = BehavioralEvent['tags'];\n\nexport interface OperationalEvent {\n // TODO: not implemented\n name: never;\n payload?: never;\n options?: never;\n}\n\nexport interface FeatureEvent {\n // TODO: not implemented\n name: never;\n payload?: never;\n options?: never;\n}\n\nexport interface MediaQualityEvent {\n name: RawMediaQualityEvent['name'];\n payload?: RawMediaQualityEvent;\n options: SubmitMQEOptions;\n}\n\nexport type RecursivePartial<T> = {\n [P in keyof T]?: T[P] extends (infer U)[]\n ? RecursivePartial<U>[]\n : T[P] extends object\n ? RecursivePartial<T[P]>\n : T[P];\n};\n\nexport type MetricEventNames =\n | InternalEvent['name']\n | ClientEvent['name']\n | BehavioralEvent['metricName']\n | OperationalEvent['name']\n | FeatureEvent['name']\n | MediaQualityEvent['name'];\n\nexport type ClientInfo = NonNullable<RawEvent['origin']['clientInfo']>;\nexport type ClientType = NonNullable<RawEvent['origin']['clientInfo']>['clientType'];\nexport type SubClientType = NonNullable<RawEvent['origin']['clientInfo']>['subClientType'];\nexport type NetworkType = NonNullable<RawEvent['origin']>['networkType'];\n\nexport type ClientSubServiceType = ClientEvent['payload']['webexSubServiceType'];\nexport type ClientEventPayload = RecursivePartial<ClientEvent['payload']>;\nexport type ClientEventLeaveReason = ClientEvent['payload']['leaveReason'];\nexport type ClientEventPayloadError = ClientEvent['payload']['errors'];\n\nexport type MediaQualityEventAudioSetupDelayPayload = NonNullable<\n MediaQualityEvent['payload']\n>['audioSetupDelay'];\nexport type MediaQualityEventVideoSetupDelayPayload = NonNullable<\n MediaQualityEvent['payload']\n>['videoSetupDelay'];\n\nexport type SubmitMQEPayload = RecursivePartial<MediaQualityEvent['payload']> & {\n intervals: NonNullable<MediaQualityEvent['payload']>['intervals'];\n};\n\nexport type SubmitInternalEvent = (args: {\n name: InternalEvent['name'];\n payload?: RecursivePartial<InternalEvent['payload']>;\n options?: any;\n}) => void;\n\nexport type SubmitBehavioralEvent = (args: {\n product: MetricEventProduct;\n agent: MetricEventAgent;\n target: string;\n verb: MetricEventVerb;\n payload?: BehavioralEventPayload;\n}) => void;\n\nexport type SubmitClientEvent = (args: {\n name: ClientEvent['name'];\n payload?: RecursivePartial<ClientEvent['payload']>;\n options?: SubmitClientEventOptions;\n}) => Promise<any>;\n\nexport type SubmitOperationalEvent = (args: {\n name: OperationalEvent['name'];\n payload?: RecursivePartial<OperationalEvent['payload']>;\n options?: any;\n}) => void;\n\nexport type SubmitMQE = (args: {\n name: MediaQualityEvent['name'];\n payload: SubmitMQEPayload;\n options: any;\n}) => void;\n\nexport type BuildClientEventFetchRequestOptions = (args: {\n name: ClientEvent['name'];\n payload?: RecursivePartial<ClientEvent['payload']>;\n options?: SubmitClientEventOptions;\n}) => Promise<any>;\n\nexport type PreComputedLatencies =\n | 'internal.client.pageJMT'\n | 'internal.download.time'\n | 'internal.get.cluster.time'\n | 'internal.click.to.interstitial'\n | 'internal.refresh.captcha.time'\n | 'internal.exchange.ci.token.time'\n | 'internal.get.u2c.time'\n | 'internal.call.init.join.req'\n | 'internal.other.app.api.time'\n | 'internal.api.fetch.intelligence.models';\n"],"mappings":""}
@@ -19,6 +19,7 @@ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime-corejs2/he
19
19
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
20
20
  var _webexCore = require("@webex/webex-core");
21
21
  var _callDiagnosticMetrics = _interopRequireDefault(require("./call-diagnostic/call-diagnostic-metrics"));
22
+ var _behavioralMetrics = _interopRequireDefault(require("./behavioral/behavioral-metrics"));
22
23
  var _callDiagnosticMetricsLatencies = _interopRequireDefault(require("./call-diagnostic/call-diagnostic-metrics-latencies"));
23
24
  var _callDiagnosticMetrics2 = require("./call-diagnostic/call-diagnostic-metrics.util");
24
25
  var _utils = require("./utils");
@@ -56,6 +57,7 @@ var Metrics = /*#__PURE__*/function (_WebexPlugin) {
56
57
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "callDiagnosticLatencies", void 0);
57
58
  // Helper classes to handle the different types of metrics
58
59
  (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "callDiagnosticMetrics", void 0);
60
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "behavioralMetrics", void 0);
59
61
  _this.callDiagnosticLatencies = new _callDiagnosticMetricsLatencies.default({}, {
60
62
  parent: _this.webex
61
63
  });
@@ -76,6 +78,10 @@ var Metrics = /*#__PURE__*/function (_WebexPlugin) {
76
78
  _this2.callDiagnosticMetrics = new _callDiagnosticMetrics.default({}, {
77
79
  parent: _this2.webex
78
80
  });
81
+ // @ts-ignore
82
+ _this2.behavioralMetrics = new _behavioralMetrics.default({}, {
83
+ parent: _this2.webex
84
+ });
79
85
  });
80
86
  }
81
87
 
@@ -98,6 +104,15 @@ var Metrics = /*#__PURE__*/function (_WebexPlugin) {
98
104
  }
99
105
  }
100
106
 
107
+ /**
108
+ * @returns true once we have the deviceId we need to submit behavioral events to Amplitude
109
+ */
110
+ }, {
111
+ key: "isReadyToSubmitBehavioralEvents",
112
+ value: function isReadyToSubmitBehavioralEvents() {
113
+ return this.behavioralMetrics.isReadyToSubmitBehavioralEvents();
114
+ }
115
+
101
116
  /**
102
117
  * Behavioral event
103
118
  * @param args
@@ -105,13 +120,23 @@ var Metrics = /*#__PURE__*/function (_WebexPlugin) {
105
120
  }, {
106
121
  key: "submitBehavioralEvent",
107
122
  value: function submitBehavioralEvent(_ref2) {
108
- var name = _ref2.name,
109
- payload = _ref2.payload,
110
- options = _ref2.options;
111
- this.callDiagnosticLatencies.saveTimestamp({
112
- key: name
123
+ var product = _ref2.product,
124
+ agent = _ref2.agent,
125
+ target = _ref2.target,
126
+ verb = _ref2.verb,
127
+ payload = _ref2.payload;
128
+ if (!this.behavioralMetrics) {
129
+ // @ts-ignore
130
+ this.webex.logger.log("NewMetrics: @submitBehavioralEvent. Attempted to submit before webex.ready: ".concat(product, ".").concat(agent, ".").concat(target, ".").concat(verb));
131
+ return _promise.default.resolve();
132
+ }
133
+ return this.behavioralMetrics.submitBehavioralEvent({
134
+ product: product,
135
+ agent: agent,
136
+ target: target,
137
+ verb: verb,
138
+ payload: payload
113
139
  });
114
- throw new Error('Not implemented.');
115
140
  }
116
141
 
117
142
  /**
@@ -1 +1 @@
1
- {"version":3,"names":["_webexCore","require","_callDiagnosticMetrics","_interopRequireDefault","_callDiagnosticMetricsLatencies","_callDiagnosticMetrics2","_utils","_class","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","Metrics","_WebexPlugin","_inherits2","_super","_this","_classCallCheck2","_len","length","args","Array","_key","concat","_defineProperty2","_assertThisInitialized2","callDiagnosticLatencies","CallDiagnosticLatencies","parent","webex","onReady","_createClass2","key","value","_this2","once","callDiagnosticMetrics","CallDiagnosticMetrics","submitInternalEvent","_ref","name","payload","options","clearTimestamps","saveTimestamp","submitBehavioralEvent","_ref2","Error","submitOperationalEvent","_ref3","submitMQE","_ref4","submitFeatureEvent","_ref5","submitClientEvent","_ref6","logger","log","_promise","resolve","meetingId","clientMetricsAliasUser","preLoginId","_this3","request","method","api","resource","headers","body","qs","alias","then","res","catch","err","error","generateCommonErrorMetadata","reject","_buildClientEventFetchRequestOptions","_asyncToGenerator2","_regenerator","mark","_callee","_ref7","wrap","_callee$","_context","prev","next","abrupt","buildClientEventFetchRequestOptions","stop","_x","setMetricTimingsAndFetch","setTimingsAndFetch","setMetricTimings","isServiceErrorExpected","serviceErrorCode","WebexPlugin","_default","exports"],"sources":["new-metrics.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n/* eslint-disable class-methods-use-this */\n/* eslint-disable valid-jsdoc */\n\n// @ts-ignore\nimport {WebexPlugin} from '@webex/webex-core';\n\nimport CallDiagnosticMetrics from './call-diagnostic/call-diagnostic-metrics';\nimport {\n RecursivePartial,\n ClientEvent,\n FeatureEvent,\n BehavioralEvent,\n OperationalEvent,\n MediaQualityEvent,\n InternalEvent,\n SubmitClientEventOptions,\n} from './metrics.types';\nimport CallDiagnosticLatencies from './call-diagnostic/call-diagnostic-metrics-latencies';\nimport {setMetricTimings} from './call-diagnostic/call-diagnostic-metrics.util';\nimport {generateCommonErrorMetadata} from './utils';\n\n/**\n * Metrics plugin to centralize all types of metrics.\n * @class\n */\nclass Metrics extends WebexPlugin {\n // eslint-disable-next-line no-use-before-define\n static instance: Metrics;\n\n // Call Diagnostic latencies\n callDiagnosticLatencies: CallDiagnosticLatencies;\n // Helper classes to handle the different types of metrics\n callDiagnosticMetrics: CallDiagnosticMetrics;\n\n /**\n * Constructor\n * @param args\n * @constructor\n * @private\n * @returns\n */\n constructor(...args) {\n super(...args);\n\n // @ts-ignore\n this.callDiagnosticLatencies = new CallDiagnosticLatencies({}, {parent: this.webex});\n this.onReady();\n }\n\n /**\n * On Ready\n */\n private onReady() {\n // @ts-ignore\n this.webex.once('ready', () => {\n // @ts-ignore\n this.callDiagnosticMetrics = new CallDiagnosticMetrics({}, {parent: this.webex});\n });\n }\n\n /**\n * Used for internal purposes only\n * @param args\n */\n submitInternalEvent({\n name,\n payload,\n options,\n }: {\n name: InternalEvent['name'];\n payload?: RecursivePartial<InternalEvent['payload']>;\n options?: any;\n }) {\n if (name === 'internal.reset.join.latencies') {\n this.callDiagnosticLatencies.clearTimestamps();\n } else {\n this.callDiagnosticLatencies.saveTimestamp({key: name});\n }\n }\n\n /**\n * Behavioral event\n * @param args\n */\n submitBehavioralEvent({\n name,\n payload,\n options,\n }: {\n name: BehavioralEvent['name'];\n payload?: RecursivePartial<BehavioralEvent['payload']>;\n options?: any;\n }) {\n this.callDiagnosticLatencies.saveTimestamp({key: name});\n throw new Error('Not implemented.');\n }\n\n /**\n * Operational event\n * @param args\n */\n submitOperationalEvent({\n name,\n payload,\n options,\n }: {\n name: OperationalEvent['name'];\n payload?: RecursivePartial<OperationalEvent['payload']>;\n options?: any;\n }) {\n throw new Error('Not implemented.');\n }\n\n /**\n * Call Analyzer: Media Quality Event\n * @param args\n */\n submitMQE({\n name,\n payload,\n options,\n }: {\n name: MediaQualityEvent['name'];\n payload: RecursivePartial<MediaQualityEvent['payload']> & {\n intervals: MediaQualityEvent['payload']['intervals'];\n };\n options: any;\n }) {\n this.callDiagnosticLatencies.saveTimestamp({key: name});\n this.callDiagnosticMetrics.submitMQE({name, payload, options});\n }\n\n /**\n * Call Analyzer: Feature Usage Event\n * @param args\n */\n submitFeatureEvent({\n name,\n payload,\n options,\n }: {\n name: FeatureEvent['name'];\n payload?: RecursivePartial<FeatureEvent['payload']>;\n options: any;\n }) {\n throw new Error('Not implemented.');\n }\n\n /**\n * Call Analyzer: Client Event\n * @public\n * @param args\n */\n public submitClientEvent({\n name,\n payload,\n options,\n }: {\n name: ClientEvent['name'];\n payload?: RecursivePartial<ClientEvent['payload']>;\n options?: SubmitClientEventOptions;\n }): Promise<any> {\n if (!this.callDiagnosticLatencies || !this.callDiagnosticMetrics) {\n // @ts-ignore\n this.webex.logger.log(\n `NewMetrics: @submitClientEvent. Attempted to submit before webex.ready. Event name: ${name}`\n );\n\n return Promise.resolve();\n }\n this.callDiagnosticLatencies.saveTimestamp({\n key: name,\n options: {meetingId: options?.meetingId},\n });\n\n return this.callDiagnosticMetrics.submitClientEvent({name, payload, options});\n }\n\n /**\n * Issue request to alias a user's pre-login ID with their CI UUID\n * @param {string} preLoginId\n * @returns {Object} HttpResponse object\n */\n public clientMetricsAliasUser(preLoginId: string) {\n // @ts-ignore\n return this.webex\n .request({\n method: 'POST',\n api: 'metrics',\n resource: 'clientmetrics',\n headers: {\n 'x-prelogin-userid': preLoginId,\n },\n body: {},\n qs: {\n alias: true,\n },\n })\n .then((res) => {\n // @ts-ignore\n this.webex.logger.log(`NewMetrics: @clientMetricsAliasUser. Request successful.`);\n\n return res;\n })\n .catch((err) => {\n // @ts-ignore\n this.logger.error(\n `NewMetrics: @clientMetricsAliasUser. Request failed:`,\n `err: ${generateCommonErrorMetadata(err)}`\n );\n\n return Promise.reject(err);\n });\n }\n\n /**\n * Returns a promise that will resolve to fetch options for submitting a metric.\n *\n * This is to support quickly submitting metrics when the browser/tab is closing.\n * Calling submitClientEvent will not work because there some async steps that will\n * not complete before the browser is closed. Instead, we pre-gather all the\n * information/options needed for the request(s), and then simply and quickly\n * fire the fetch(es) when beforeUnload is triggered.\n *\n * We must use fetch instead of request because fetch has a keepalive option that\n * allows the request it to outlive the page.\n *\n * Note: the timings values will be wrong, but setMetricTimingsAndFetch() will\n * properly adjust them before submitting.\n *\n * @public\n * @param {Object} arg\n * @param {String} arg.name - event name\n * @param {Object} arg.payload - event payload\n * @param {Object} arg.options - other options\n * @returns {Promise} promise that resolves to options to be used with fetch\n */\n public async buildClientEventFetchRequestOptions({\n name,\n payload,\n options,\n }: {\n name: ClientEvent['name'];\n payload?: RecursivePartial<ClientEvent['payload']>;\n options?: SubmitClientEventOptions;\n }): Promise<any> {\n return this.callDiagnosticMetrics.buildClientEventFetchRequestOptions({\n name,\n payload,\n options,\n });\n }\n\n /**\n * Submits a metric from pre-built request options via the fetch API. Updates\n * the \"$timings\" and \"originTime\" values to Date.now() since the existing times\n * were set when the options were built (not submitted).\n\n * @param {any} options - the pre-built request options for submitting a metric\n * @returns {Promise} promise that resolves to the response object\n */\n public setMetricTimingsAndFetch(options: any): Promise<any> {\n // @ts-ignore\n return this.webex.setTimingsAndFetch(setMetricTimings(options));\n }\n\n /**\n * Returns true if the specified serviceErrorCode maps to an expected error.\n * @param {number} serviceErrorCode the service error code\n * @returns {boolean}\n */\n public isServiceErrorExpected(serviceErrorCode: number): boolean {\n return this.callDiagnosticMetrics.isServiceErrorExpected(serviceErrorCode);\n }\n}\n\nexport default Metrics;\n"],"mappings":"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"}
1
+ {"version":3,"names":["_webexCore","require","_callDiagnosticMetrics","_interopRequireDefault","_behavioralMetrics","_callDiagnosticMetricsLatencies","_callDiagnosticMetrics2","_utils","_class","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","_createSuperInternal","Super","_getPrototypeOf2","default","result","NewTarget","constructor","_Reflect$construct","arguments","apply","_possibleConstructorReturn2","Reflect","sham","Proxy","Boolean","prototype","valueOf","call","e","Metrics","_WebexPlugin","_inherits2","_super","_this","_classCallCheck2","_len","length","args","Array","_key","concat","_defineProperty2","_assertThisInitialized2","callDiagnosticLatencies","CallDiagnosticLatencies","parent","webex","onReady","_createClass2","key","value","_this2","once","callDiagnosticMetrics","CallDiagnosticMetrics","behavioralMetrics","BehavioralMetrics","submitInternalEvent","_ref","name","payload","options","clearTimestamps","saveTimestamp","isReadyToSubmitBehavioralEvents","submitBehavioralEvent","_ref2","product","agent","target","verb","logger","log","_promise","resolve","submitOperationalEvent","_ref3","Error","submitMQE","_ref4","submitFeatureEvent","_ref5","submitClientEvent","_ref6","meetingId","clientMetricsAliasUser","preLoginId","_this3","request","method","api","resource","headers","body","qs","alias","then","res","catch","err","error","generateCommonErrorMetadata","reject","_buildClientEventFetchRequestOptions","_asyncToGenerator2","_regenerator","mark","_callee","_ref7","wrap","_callee$","_context","prev","next","abrupt","buildClientEventFetchRequestOptions","stop","_x","setMetricTimingsAndFetch","setTimingsAndFetch","setMetricTimings","isServiceErrorExpected","serviceErrorCode","WebexPlugin","_default","exports"],"sources":["new-metrics.ts"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-unused-vars */\n/* eslint-disable class-methods-use-this */\n/* eslint-disable valid-jsdoc */\n\n// @ts-ignore\nimport {WebexPlugin} from '@webex/webex-core';\n\nimport CallDiagnosticMetrics from './call-diagnostic/call-diagnostic-metrics';\nimport BehavioralMetrics from './behavioral/behavioral-metrics';\nimport {\n RecursivePartial,\n MetricEventProduct,\n MetricEventAgent,\n MetricEventVerb,\n ClientEvent,\n FeatureEvent,\n BehavioralEventPayload,\n OperationalEvent,\n MediaQualityEvent,\n InternalEvent,\n SubmitClientEventOptions,\n} from './metrics.types';\nimport CallDiagnosticLatencies from './call-diagnostic/call-diagnostic-metrics-latencies';\nimport {setMetricTimings} from './call-diagnostic/call-diagnostic-metrics.util';\nimport {generateCommonErrorMetadata} from './utils';\n\n/**\n * Metrics plugin to centralize all types of metrics.\n * @class\n */\nclass Metrics extends WebexPlugin {\n // eslint-disable-next-line no-use-before-define\n static instance: Metrics;\n\n // Call Diagnostic latencies\n callDiagnosticLatencies: CallDiagnosticLatencies;\n // Helper classes to handle the different types of metrics\n callDiagnosticMetrics: CallDiagnosticMetrics;\n behavioralMetrics: BehavioralMetrics;\n\n /**\n * Constructor\n * @param args\n * @constructor\n * @private\n * @returns\n */\n constructor(...args) {\n super(...args);\n\n // @ts-ignore\n this.callDiagnosticLatencies = new CallDiagnosticLatencies({}, {parent: this.webex});\n this.onReady();\n }\n\n /**\n * On Ready\n */\n private onReady() {\n // @ts-ignore\n this.webex.once('ready', () => {\n // @ts-ignore\n this.callDiagnosticMetrics = new CallDiagnosticMetrics({}, {parent: this.webex});\n // @ts-ignore\n this.behavioralMetrics = new BehavioralMetrics({}, {parent: this.webex});\n });\n }\n\n /**\n * Used for internal purposes only\n * @param args\n */\n submitInternalEvent({\n name,\n payload,\n options,\n }: {\n name: InternalEvent['name'];\n payload?: RecursivePartial<InternalEvent['payload']>;\n options?: any;\n }) {\n if (name === 'internal.reset.join.latencies') {\n this.callDiagnosticLatencies.clearTimestamps();\n } else {\n this.callDiagnosticLatencies.saveTimestamp({key: name});\n }\n }\n\n /**\n * @returns true once we have the deviceId we need to submit behavioral events to Amplitude\n */\n isReadyToSubmitBehavioralEvents() {\n return this.behavioralMetrics.isReadyToSubmitBehavioralEvents();\n }\n\n /**\n * Behavioral event\n * @param args\n */\n submitBehavioralEvent({\n product,\n agent,\n target,\n verb,\n payload,\n }: {\n product: MetricEventProduct;\n agent: MetricEventAgent;\n target: string;\n verb: MetricEventVerb;\n payload?: BehavioralEventPayload;\n }) {\n if (!this.behavioralMetrics) {\n // @ts-ignore\n this.webex.logger.log(\n `NewMetrics: @submitBehavioralEvent. Attempted to submit before webex.ready: ${product}.${agent}.${target}.${verb}`\n );\n\n return Promise.resolve();\n }\n\n return this.behavioralMetrics.submitBehavioralEvent({product, agent, target, verb, payload});\n }\n\n /**\n * Operational event\n * @param args\n */\n submitOperationalEvent({\n name,\n payload,\n options,\n }: {\n name: OperationalEvent['name'];\n payload?: RecursivePartial<OperationalEvent['payload']>;\n options?: any;\n }) {\n throw new Error('Not implemented.');\n }\n\n /**\n * Call Analyzer: Media Quality Event\n * @param args\n */\n submitMQE({\n name,\n payload,\n options,\n }: {\n name: MediaQualityEvent['name'];\n payload: RecursivePartial<MediaQualityEvent['payload']> & {\n intervals: MediaQualityEvent['payload']['intervals'];\n };\n options: any;\n }) {\n this.callDiagnosticLatencies.saveTimestamp({key: name});\n this.callDiagnosticMetrics.submitMQE({name, payload, options});\n }\n\n /**\n * Call Analyzer: Feature Usage Event\n * @param args\n */\n submitFeatureEvent({\n name,\n payload,\n options,\n }: {\n name: FeatureEvent['name'];\n payload?: RecursivePartial<FeatureEvent['payload']>;\n options: any;\n }) {\n throw new Error('Not implemented.');\n }\n\n /**\n * Call Analyzer: Client Event\n * @public\n * @param args\n */\n public submitClientEvent({\n name,\n payload,\n options,\n }: {\n name: ClientEvent['name'];\n payload?: RecursivePartial<ClientEvent['payload']>;\n options?: SubmitClientEventOptions;\n }): Promise<any> {\n if (!this.callDiagnosticLatencies || !this.callDiagnosticMetrics) {\n // @ts-ignore\n this.webex.logger.log(\n `NewMetrics: @submitClientEvent. Attempted to submit before webex.ready. Event name: ${name}`\n );\n\n return Promise.resolve();\n }\n this.callDiagnosticLatencies.saveTimestamp({\n key: name,\n options: {meetingId: options?.meetingId},\n });\n\n return this.callDiagnosticMetrics.submitClientEvent({name, payload, options});\n }\n\n /**\n * Issue request to alias a user's pre-login ID with their CI UUID\n * @param {string} preLoginId\n * @returns {Object} HttpResponse object\n */\n public clientMetricsAliasUser(preLoginId: string) {\n // @ts-ignore\n return this.webex\n .request({\n method: 'POST',\n api: 'metrics',\n resource: 'clientmetrics',\n headers: {\n 'x-prelogin-userid': preLoginId,\n },\n body: {},\n qs: {\n alias: true,\n },\n })\n .then((res) => {\n // @ts-ignore\n this.webex.logger.log(`NewMetrics: @clientMetricsAliasUser. Request successful.`);\n\n return res;\n })\n .catch((err) => {\n // @ts-ignore\n this.logger.error(\n `NewMetrics: @clientMetricsAliasUser. Request failed:`,\n `err: ${generateCommonErrorMetadata(err)}`\n );\n\n return Promise.reject(err);\n });\n }\n\n /**\n * Returns a promise that will resolve to fetch options for submitting a metric.\n *\n * This is to support quickly submitting metrics when the browser/tab is closing.\n * Calling submitClientEvent will not work because there some async steps that will\n * not complete before the browser is closed. Instead, we pre-gather all the\n * information/options needed for the request(s), and then simply and quickly\n * fire the fetch(es) when beforeUnload is triggered.\n *\n * We must use fetch instead of request because fetch has a keepalive option that\n * allows the request it to outlive the page.\n *\n * Note: the timings values will be wrong, but setMetricTimingsAndFetch() will\n * properly adjust them before submitting.\n *\n * @public\n * @param {Object} arg\n * @param {String} arg.name - event name\n * @param {Object} arg.payload - event payload\n * @param {Object} arg.options - other options\n * @returns {Promise} promise that resolves to options to be used with fetch\n */\n public async buildClientEventFetchRequestOptions({\n name,\n payload,\n options,\n }: {\n name: ClientEvent['name'];\n payload?: RecursivePartial<ClientEvent['payload']>;\n options?: SubmitClientEventOptions;\n }): Promise<any> {\n return this.callDiagnosticMetrics.buildClientEventFetchRequestOptions({\n name,\n payload,\n options,\n });\n }\n\n /**\n * Submits a metric from pre-built request options via the fetch API. Updates\n * the \"$timings\" and \"originTime\" values to Date.now() since the existing times\n * were set when the options were built (not submitted).\n\n * @param {any} options - the pre-built request options for submitting a metric\n * @returns {Promise} promise that resolves to the response object\n */\n public setMetricTimingsAndFetch(options: any): Promise<any> {\n // @ts-ignore\n return this.webex.setTimingsAndFetch(setMetricTimings(options));\n }\n\n /**\n * Returns true if the specified serviceErrorCode maps to an expected error.\n * @param {number} serviceErrorCode the service error code\n * @returns {boolean}\n */\n public isServiceErrorExpected(serviceErrorCode: number): boolean {\n return this.callDiagnosticMetrics.isServiceErrorExpected(serviceErrorCode);\n }\n}\n\nexport default Metrics;\n"],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ import { StatelessWebexPlugin } from '@webex/webex-core';
2
+ import { MetricEventProduct, MetricEventAgent, MetricEventVerb, BehavioralEventPayload } from '../metrics.types';
3
+ /**
4
+ * @description Util class to handle Behavioral Metrics
5
+ * @export
6
+ * @class BehavioralMetrics
7
+ */
8
+ export default class BehavioralMetrics extends StatelessWebexPlugin {
9
+ private clientMetricsBatcher;
10
+ private logger;
11
+ private device;
12
+ private version;
13
+ /**
14
+ * Constructor
15
+ * @param {any[]} args
16
+ */
17
+ constructor(...args: any[]);
18
+ /**
19
+ * Returns the deviceId from our registration with WDM.
20
+ * @returns {string} deviceId or empty string
21
+ */
22
+ private getDeviceId;
23
+ /**
24
+ * Returns the context object to be submitted with all behavioral metrics.
25
+ * @returns {BehavioralEventContext}
26
+ */
27
+ private getContext;
28
+ /**
29
+ * Returns the default tags to be included with all behavioral metrics.
30
+ * @returns {BehavioralEventPayload}
31
+ */
32
+ private getDefaultTags;
33
+ /**
34
+ * Creates the object to send to our metrics endpoint for a behavioral event
35
+ * @param {MetricEventProduct} product
36
+ * @param {MetricEventAgent} agent
37
+ * @param {string} target
38
+ * @param {MetricEventVerb} verb
39
+ * @returns {BehavioralEventPayload}
40
+ */
41
+ private createEventObject;
42
+ /**
43
+ * Returns true once we're ready to submit behavioral metrics, after startup.
44
+ * @returns {boolean} true when deviceId is defined and non-empty
45
+ */
46
+ isReadyToSubmitBehavioralEvents(): boolean;
47
+ /**
48
+ * Submit a behavioral metric to our metrics endpoint.
49
+ * @param {MetricEventProduct} product the product from which the metric is being submitted, e.g. 'webex' web client, 'wxcc_desktop'
50
+ * @param {MetricEventAgent} agent the source of the action for this metric
51
+ * @param {string} target the 'thing' that this metric includes information about
52
+ * @param {MetricEventVerb} verb the action that this metric includes information about
53
+ * @param {BehavioralEventPayload} payload information specific to this event. This should be flat, i.e. it should not include nested objects.
54
+ * @returns {Promise<any>}
55
+ */
56
+ submitBehavioralEvent({ product, agent, target, verb, payload, }: {
57
+ product: MetricEventProduct;
58
+ agent: MetricEventAgent;
59
+ target: string;
60
+ verb: MetricEventVerb;
61
+ payload?: BehavioralEventPayload;
62
+ }): any;
63
+ }
@@ -0,0 +1 @@
1
+ export declare const BEHAVIORAL_LOG_IDENTIFIER = "behavioral-events -> ";
@@ -96,8 +96,9 @@ export declare const extractVersionMetadata: (version: string) => {
96
96
  * Generates client error codes for specific ice failures
97
97
  * that happen when trying to add media in a meeting.
98
98
  */
99
- export declare const generateClientErrorCodeForIceFailure: ({ signalingState, iceConnectionState, turnServerUsed, }: {
99
+ export declare const generateClientErrorCodeForIceFailure: ({ signalingState, iceConnected, turnServerUsed, unreachable, }: {
100
100
  signalingState: RTCPeerConnection['signalingState'];
101
- iceConnectionState: RTCPeerConnection['iceConnectionState'];
101
+ iceConnected: boolean;
102
102
  turnServerUsed: boolean;
103
+ unreachable: boolean;
103
104
  }) => number;
@@ -10,6 +10,7 @@ export declare const MISSING_ROAP_ANSWER_CLIENT_CODE = 2007;
10
10
  export declare const DTLS_HANDSHAKE_FAILED_CLIENT_CODE = 2008;
11
11
  export declare const ICE_FAILED_WITH_TURN_TLS_CLIENT_CODE = 2010;
12
12
  export declare const ICE_FAILED_WITHOUT_TURN_TLS_CLIENT_CODE = 2009;
13
+ export declare const ICE_AND_REACHABILITY_FAILED_CLIENT_CODE = 2011;
13
14
  export declare const WBX_APP_API_URL = "wbxappapi";
14
15
  export declare const WEBEX_SUB_SERVICE_TYPES: Record<string, ClientSubServiceType>;
15
16
  export declare const BROWSER_MEDIA_ERROR_NAME_TO_CLIENT_ERROR_CODES_MAP: {
@@ -92,6 +93,7 @@ export declare const ERROR_DESCRIPTIONS: {
92
93
  DTLS_HANDSHAKE_FAILED: string;
93
94
  ICE_FAILED_WITHOUT_TURN_TLS: string;
94
95
  ICE_FAILED_WITH_TURN_TLS: string;
96
+ ICE_AND_REACHABILITY_FAILED: string;
95
97
  SDP_OFFER_CREATION_ERROR: string;
96
98
  SDP_OFFER_CREATION_ERROR_MISSING_CODEC: string;
97
99
  };
@@ -9,6 +9,7 @@ import * as CALL_DIAGNOSTIC_CONFIG from './call-diagnostic/config';
9
9
  import * as CallDiagnosticUtils from './call-diagnostic/call-diagnostic-metrics.util';
10
10
  import CallDiagnosticMetrics from './call-diagnostic/call-diagnostic-metrics';
11
11
  import CallDiagnosticLatencies from './call-diagnostic/call-diagnostic-metrics-latencies';
12
+ import BehavioralMetrics from './behavioral/behavioral-metrics';
12
13
  export { default, getOSNameInternal } from './metrics';
13
- export { config, CALL_DIAGNOSTIC_CONFIG, NewMetrics, Utils, CallDiagnosticUtils, CallDiagnosticLatencies, CallDiagnosticMetrics, };
14
+ export { config, CALL_DIAGNOSTIC_CONFIG, NewMetrics, Utils, CallDiagnosticUtils, CallDiagnosticLatencies, CallDiagnosticMetrics, BehavioralMetrics, };
14
15
  export type { ClientEvent, ClientEventLeaveReason, SubmitBehavioralEvent, SubmitClientEvent, SubmitInternalEvent, SubmitMQE, SubmitOperationalEvent, PreComputedLatencies, };