@webex/internal-plugin-metrics 3.0.0-beta.4 → 3.0.0-beta.400

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 (74) hide show
  1. package/README.md +1 -3
  2. package/dist/batcher.js +42 -22
  3. package/dist/batcher.js.map +1 -1
  4. package/dist/call-diagnostic/call-diagnostic-metrics-batcher.js +65 -0
  5. package/dist/call-diagnostic/call-diagnostic-metrics-batcher.js.map +1 -0
  6. package/dist/call-diagnostic/call-diagnostic-metrics-latencies.js +508 -0
  7. package/dist/call-diagnostic/call-diagnostic-metrics-latencies.js.map +1 -0
  8. package/dist/call-diagnostic/call-diagnostic-metrics.js +860 -0
  9. package/dist/call-diagnostic/call-diagnostic-metrics.js.map +1 -0
  10. package/dist/call-diagnostic/call-diagnostic-metrics.util.js +367 -0
  11. package/dist/call-diagnostic/call-diagnostic-metrics.util.js.map +1 -0
  12. package/dist/call-diagnostic/config.js +627 -0
  13. package/dist/call-diagnostic/config.js.map +1 -0
  14. package/dist/client-metrics-batcher.js +3 -8
  15. package/dist/client-metrics-batcher.js.map +1 -1
  16. package/dist/config.js +23 -6
  17. package/dist/config.js.map +1 -1
  18. package/dist/index.js +46 -10
  19. package/dist/index.js.map +1 -1
  20. package/dist/metrics.js +47 -80
  21. package/dist/metrics.js.map +1 -1
  22. package/dist/metrics.types.js +7 -0
  23. package/dist/metrics.types.js.map +1 -0
  24. package/dist/new-metrics.js +300 -0
  25. package/dist/new-metrics.js.map +1 -0
  26. package/dist/prelogin-metrics-batcher.js +82 -0
  27. package/dist/prelogin-metrics-batcher.js.map +1 -0
  28. package/dist/types/batcher.d.ts +7 -0
  29. package/dist/types/call-diagnostic/call-diagnostic-metrics-batcher.d.ts +2 -0
  30. package/dist/types/call-diagnostic/call-diagnostic-metrics-latencies.d.ts +218 -0
  31. package/dist/types/call-diagnostic/call-diagnostic-metrics.d.ts +421 -0
  32. package/dist/types/call-diagnostic/call-diagnostic-metrics.util.d.ts +103 -0
  33. package/dist/types/call-diagnostic/config.d.ts +178 -0
  34. package/dist/types/client-metrics-batcher.d.ts +2 -0
  35. package/dist/types/config.d.ts +36 -0
  36. package/dist/types/index.d.ts +15 -0
  37. package/dist/types/metrics.d.ts +3 -0
  38. package/dist/types/metrics.types.d.ts +105 -0
  39. package/dist/types/new-metrics.d.ts +131 -0
  40. package/dist/types/prelogin-metrics-batcher.d.ts +2 -0
  41. package/dist/types/utils.d.ts +6 -0
  42. package/dist/utils.js +27 -0
  43. package/dist/utils.js.map +1 -0
  44. package/package.json +16 -8
  45. package/src/batcher.js +71 -26
  46. package/src/call-diagnostic/call-diagnostic-metrics-batcher.ts +72 -0
  47. package/src/call-diagnostic/call-diagnostic-metrics-latencies.ts +467 -0
  48. package/src/call-diagnostic/call-diagnostic-metrics.ts +919 -0
  49. package/src/call-diagnostic/call-diagnostic-metrics.util.ts +395 -0
  50. package/src/call-diagnostic/config.ts +685 -0
  51. package/src/client-metrics-batcher.js +4 -4
  52. package/src/config.js +26 -5
  53. package/src/index.ts +56 -0
  54. package/src/metrics.js +47 -58
  55. package/src/metrics.types.ts +170 -0
  56. package/src/new-metrics.ts +278 -0
  57. package/src/prelogin-metrics-batcher.ts +95 -0
  58. package/src/utils.ts +17 -0
  59. package/test/unit/spec/batcher.js +28 -15
  60. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics-batcher.ts +457 -0
  61. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics-latencies.ts +657 -0
  62. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics.ts +2303 -0
  63. package/test/unit/spec/call-diagnostic/call-diagnostic-metrics.util.ts +634 -0
  64. package/test/unit/spec/client-metrics-batcher.js +28 -15
  65. package/test/unit/spec/metrics.js +94 -116
  66. package/test/unit/spec/new-metrics.ts +231 -0
  67. package/test/unit/spec/prelogin-metrics-batcher.ts +250 -0
  68. package/test/unit/spec/utils.ts +22 -0
  69. package/tsconfig.json +6 -0
  70. package/dist/call-diagnostic-events-batcher.js +0 -70
  71. package/dist/call-diagnostic-events-batcher.js.map +0 -1
  72. package/src/call-diagnostic-events-batcher.js +0 -62
  73. package/src/index.js +0 -17
  74. package/test/unit/spec/call-diagnostic-events-batcher.js +0 -180
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CALL_DIAGNOSTIC_LOG_IDENTIFIER","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","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","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":"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"}
@@ -1,22 +1,17 @@
1
1
  "use strict";
2
2
 
3
3
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
-
5
4
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
6
-
7
5
  _Object$defineProperty(exports, "__esModule", {
8
6
  value: true
9
7
  });
10
-
11
8
  exports.default = void 0;
12
-
13
9
  var _promise = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/promise"));
14
-
15
10
  var _batcher = _interopRequireDefault(require("./batcher"));
16
-
17
11
  /*!
18
12
  * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
19
13
  */
14
+
20
15
  var ClientMetricsBatcher = _batcher.default.extend({
21
16
  namespace: 'Metrics',
22
17
  prepareItem: function prepareItem(item) {
@@ -33,11 +28,11 @@ var ClientMetricsBatcher = _batcher.default.extend({
33
28
  resource: 'clientmetrics',
34
29
  body: {
35
30
  metrics: payload
36
- }
31
+ },
32
+ waitForServiceTimeout: this.webex.config.metrics.waitForServiceTimeout
37
33
  });
38
34
  }
39
35
  });
40
-
41
36
  var _default = ClientMetricsBatcher;
42
37
  exports.default = _default;
43
38
  //# sourceMappingURL=client-metrics-batcher.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ClientMetricsBatcher","Batcher","extend","namespace","prepareItem","item","resolve","prepareRequest","queue","submitHttpRequest","payload","webex","request","method","service","resource","body","metrics"],"sources":["client-metrics-batcher.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport Batcher from './batcher';\n\nconst ClientMetricsBatcher = Batcher.extend({\n namespace: 'Metrics',\n\n prepareItem(item) {\n // Add more defaults to payload when the clientmetrics endpoint evolves to support richer payloads\n return Promise.resolve(item);\n },\n\n prepareRequest(queue) {\n return Promise.resolve(queue);\n },\n\n submitHttpRequest(payload) {\n return this.webex.request({\n method: 'POST',\n service: 'metrics',\n resource: 'clientmetrics',\n body: {\n metrics: payload\n }\n });\n }\n\n});\n\nexport default ClientMetricsBatcher;\n"],"mappings":";;;;;;;;;;;;;;AAIA;;AAJA;AACA;AACA;AAIA,IAAMA,oBAAoB,GAAGC,gBAAA,CAAQC,MAAR,CAAe;EAC1CC,SAAS,EAAE,SAD+B;EAG1CC,WAH0C,uBAG9BC,IAH8B,EAGxB;IAChB;IACA,OAAO,iBAAQC,OAAR,CAAgBD,IAAhB,CAAP;EACD,CANyC;EAQ1CE,cAR0C,0BAQ3BC,KAR2B,EAQpB;IACpB,OAAO,iBAAQF,OAAR,CAAgBE,KAAhB,CAAP;EACD,CAVyC;EAY1CC,iBAZ0C,6BAYxBC,OAZwB,EAYf;IACzB,OAAO,KAAKC,KAAL,CAAWC,OAAX,CAAmB;MACxBC,MAAM,EAAE,MADgB;MAExBC,OAAO,EAAE,SAFe;MAGxBC,QAAQ,EAAE,eAHc;MAIxBC,IAAI,EAAE;QACJC,OAAO,EAAEP;MADL;IAJkB,CAAnB,CAAP;EAQD;AArByC,CAAf,CAA7B;;eAyBeV,oB"}
1
+ {"version":3,"names":["ClientMetricsBatcher","Batcher","extend","namespace","prepareItem","item","resolve","prepareRequest","queue","submitHttpRequest","payload","webex","request","method","service","resource","body","metrics","waitForServiceTimeout","config"],"sources":["client-metrics-batcher.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport Batcher from './batcher';\n\nconst ClientMetricsBatcher = Batcher.extend({\n namespace: 'Metrics',\n\n prepareItem(item) {\n // Add more defaults to payload when the clientmetrics endpoint evolves to support richer payloads\n return Promise.resolve(item);\n },\n\n prepareRequest(queue) {\n return Promise.resolve(queue);\n },\n\n submitHttpRequest(payload) {\n return this.webex.request({\n method: 'POST',\n service: 'metrics',\n resource: 'clientmetrics',\n body: {\n metrics: payload,\n },\n waitForServiceTimeout: this.webex.config.metrics.waitForServiceTimeout,\n });\n },\n});\n\nexport default ClientMetricsBatcher;\n"],"mappings":";;;;;;;;;AAIA;AAJA;AACA;AACA;;AAIA,IAAMA,oBAAoB,GAAGC,gBAAO,CAACC,MAAM,CAAC;EAC1CC,SAAS,EAAE,SAAS;EAEpBC,WAAW,uBAACC,IAAI,EAAE;IAChB;IACA,OAAO,iBAAQC,OAAO,CAACD,IAAI,CAAC;EAC9B,CAAC;EAEDE,cAAc,0BAACC,KAAK,EAAE;IACpB,OAAO,iBAAQF,OAAO,CAACE,KAAK,CAAC;EAC/B,CAAC;EAEDC,iBAAiB,6BAACC,OAAO,EAAE;IACzB,OAAO,IAAI,CAACC,KAAK,CAACC,OAAO,CAAC;MACxBC,MAAM,EAAE,MAAM;MACdC,OAAO,EAAE,SAAS;MAClBC,QAAQ,EAAE,eAAe;MACzBC,IAAI,EAAE;QACJC,OAAO,EAAEP;MACX,CAAC;MACDQ,qBAAqB,EAAE,IAAI,CAACP,KAAK,CAACQ,MAAM,CAACF,OAAO,CAACC;IACnD,CAAC,CAAC;EACJ;AACF,CAAC,CAAC;AAAC,eAEYlB,oBAAoB;AAAA"}
package/dist/config.js CHANGED
@@ -1,18 +1,15 @@
1
1
  "use strict";
2
2
 
3
3
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
-
5
4
  _Object$defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
-
9
- exports.default = exports.CLIENT_NAME = void 0;
10
-
7
+ exports.default = exports.OS_NAME = exports.OSMap = exports.CLIENT_NAME = void 0;
11
8
  var _common = require("@webex/common");
12
-
13
9
  /*!
14
10
  * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
15
11
  */
12
+
16
13
  var CLIENT_NAME = 'webex-js-sdk';
17
14
  exports.CLIENT_NAME = CLIENT_NAME;
18
15
  var _default = {
@@ -27,8 +24,28 @@ var _default = {
27
24
  batcherWait: 500,
28
25
  batcherMaxCalls: 50,
29
26
  batcherMaxWait: 1500,
30
- batcherRetryPlateau: 32000
27
+ batcherRetryPlateau: 32000,
28
+ waitForServiceTimeout: 30
31
29
  }
32
30
  };
33
31
  exports.default = _default;
32
+ var OS_NAME = {
33
+ WINDOWS: 'windows',
34
+ MAC: 'mac',
35
+ IOS: 'ios',
36
+ ANDROID: 'android',
37
+ CHROME: 'chrome',
38
+ LINUX: 'linux',
39
+ OTHERS: 'other'
40
+ };
41
+ exports.OS_NAME = OS_NAME;
42
+ var OSMap = {
43
+ 'Chrome OS': OS_NAME.CHROME,
44
+ macOS: OS_NAME.MAC,
45
+ Windows: OS_NAME.WINDOWS,
46
+ iOS: OS_NAME.IOS,
47
+ Android: OS_NAME.ANDROID,
48
+ Linux: OS_NAME.LINUX
49
+ };
50
+ exports.OSMap = OSMap;
34
51
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["CLIENT_NAME","device","preDiscoveryServices","metricsServiceUrl","process","env","METRICS_SERVICE_URL","metrics","appType","inBrowser","batcherWait","batcherMaxCalls","batcherMaxWait","batcherRetryPlateau"],"sources":["config.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {inBrowser} from '@webex/common';\n\nexport const CLIENT_NAME = 'webex-js-sdk';\nexport default {\n device: {\n preDiscoveryServices: {\n metricsServiceUrl: process.env.METRICS_SERVICE_URL || 'https://metrics-a.wbx2.com/metrics/api/v1',\n metrics: process.env.METRICS_SERVICE_URL || 'https://metrics-a.wbx2.com/metrics/api/v1'\n }\n },\n metrics: {\n appType: inBrowser ? 'browser' : 'nodejs',\n batcherWait: 500,\n batcherMaxCalls: 50,\n batcherMaxWait: 1500,\n batcherRetryPlateau: 32000\n }\n};\n"],"mappings":";;;;;;;;;;AAIA;;AAJA;AACA;AACA;AAIO,IAAMA,WAAW,GAAG,cAApB;;eACQ;EACbC,MAAM,EAAE;IACNC,oBAAoB,EAAE;MACpBC,iBAAiB,EAAEC,OAAO,CAACC,GAAR,CAAYC,mBAAZ,IAAmC,2CADlC;MAEpBC,OAAO,EAAEH,OAAO,CAACC,GAAR,CAAYC,mBAAZ,IAAmC;IAFxB;EADhB,CADK;EAObC,OAAO,EAAE;IACPC,OAAO,EAAEC,iBAAA,GAAY,SAAZ,GAAwB,QAD1B;IAEPC,WAAW,EAAE,GAFN;IAGPC,eAAe,EAAE,EAHV;IAIPC,cAAc,EAAE,IAJT;IAKPC,mBAAmB,EAAE;EALd;AAPI,C"}
1
+ {"version":3,"names":["CLIENT_NAME","device","preDiscoveryServices","metricsServiceUrl","process","env","METRICS_SERVICE_URL","metrics","appType","inBrowser","batcherWait","batcherMaxCalls","batcherMaxWait","batcherRetryPlateau","waitForServiceTimeout","OS_NAME","WINDOWS","MAC","IOS","ANDROID","CHROME","LINUX","OTHERS","OSMap","macOS","Windows","iOS","Android","Linux"],"sources":["config.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {inBrowser} from '@webex/common';\n\nexport const CLIENT_NAME = 'webex-js-sdk';\nexport default {\n device: {\n preDiscoveryServices: {\n metricsServiceUrl:\n process.env.METRICS_SERVICE_URL || 'https://metrics-a.wbx2.com/metrics/api/v1',\n metrics: process.env.METRICS_SERVICE_URL || 'https://metrics-a.wbx2.com/metrics/api/v1',\n },\n },\n metrics: {\n appType: inBrowser ? 'browser' : 'nodejs',\n batcherWait: 500,\n batcherMaxCalls: 50,\n batcherMaxWait: 1500,\n batcherRetryPlateau: 32000,\n waitForServiceTimeout: 30,\n },\n};\n\nexport const OS_NAME = {\n WINDOWS: 'windows',\n MAC: 'mac',\n IOS: 'ios',\n ANDROID: 'android',\n CHROME: 'chrome',\n LINUX: 'linux',\n OTHERS: 'other',\n};\n\nexport const OSMap = {\n 'Chrome OS': OS_NAME.CHROME,\n macOS: OS_NAME.MAC,\n Windows: OS_NAME.WINDOWS,\n iOS: OS_NAME.IOS,\n Android: OS_NAME.ANDROID,\n Linux: OS_NAME.LINUX,\n};\n"],"mappings":";;;;;;;AAIA;AAJA;AACA;AACA;;AAIO,IAAMA,WAAW,GAAG,cAAc;AAAC;AAAA,eAC3B;EACbC,MAAM,EAAE;IACNC,oBAAoB,EAAE;MACpBC,iBAAiB,EACfC,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAI,2CAA2C;MAChFC,OAAO,EAAEH,OAAO,CAACC,GAAG,CAACC,mBAAmB,IAAI;IAC9C;EACF,CAAC;EACDC,OAAO,EAAE;IACPC,OAAO,EAAEC,iBAAS,GAAG,SAAS,GAAG,QAAQ;IACzCC,WAAW,EAAE,GAAG;IAChBC,eAAe,EAAE,EAAE;IACnBC,cAAc,EAAE,IAAI;IACpBC,mBAAmB,EAAE,KAAK;IAC1BC,qBAAqB,EAAE;EACzB;AACF,CAAC;AAAA;AAEM,IAAMC,OAAO,GAAG;EACrBC,OAAO,EAAE,SAAS;EAClBC,GAAG,EAAE,KAAK;EACVC,GAAG,EAAE,KAAK;EACVC,OAAO,EAAE,SAAS;EAClBC,MAAM,EAAE,QAAQ;EAChBC,KAAK,EAAE,OAAO;EACdC,MAAM,EAAE;AACV,CAAC;AAAC;AAEK,IAAMC,KAAK,GAAG;EACnB,WAAW,EAAER,OAAO,CAACK,MAAM;EAC3BI,KAAK,EAAET,OAAO,CAACE,GAAG;EAClBQ,OAAO,EAAEV,OAAO,CAACC,OAAO;EACxBU,GAAG,EAAEX,OAAO,CAACG,GAAG;EAChBS,OAAO,EAAEZ,OAAO,CAACI,OAAO;EACxBS,KAAK,EAAEb,OAAO,CAACM;AACjB,CAAC;AAAC"}
package/dist/index.js CHANGED
@@ -1,39 +1,75 @@
1
1
  "use strict";
2
2
 
3
+ var _typeof = require("@babel/runtime-corejs2/helpers/typeof");
4
+ var _WeakMap = require("@babel/runtime-corejs2/core-js/weak-map");
3
5
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
-
6
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
5
7
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
6
-
7
8
  _Object$defineProperty(exports, "__esModule", {
8
9
  value: true
9
10
  });
10
-
11
+ exports.CALL_DIAGNOSTIC_CONFIG = void 0;
12
+ _Object$defineProperty(exports, "CallDiagnosticLatencies", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _callDiagnosticMetricsLatencies.default;
16
+ }
17
+ });
18
+ _Object$defineProperty(exports, "CallDiagnosticMetrics", {
19
+ enumerable: true,
20
+ get: function get() {
21
+ return _callDiagnosticMetrics2.default;
22
+ }
23
+ });
24
+ exports.CallDiagnosticUtils = void 0;
25
+ _Object$defineProperty(exports, "NewMetrics", {
26
+ enumerable: true,
27
+ get: function get() {
28
+ return _newMetrics.default;
29
+ }
30
+ });
31
+ exports.Utils = void 0;
11
32
  _Object$defineProperty(exports, "config", {
12
33
  enumerable: true,
13
34
  get: function get() {
14
35
  return _config.default;
15
36
  }
16
37
  });
17
-
18
38
  _Object$defineProperty(exports, "default", {
19
39
  enumerable: true,
20
40
  get: function get() {
21
41
  return _metrics.default;
22
42
  }
23
43
  });
24
-
44
+ _Object$defineProperty(exports, "getOSNameInternal", {
45
+ enumerable: true,
46
+ get: function get() {
47
+ return _metrics.getOSNameInternal;
48
+ }
49
+ });
25
50
  require("@webex/internal-plugin-device");
26
-
27
51
  var _webexCore = require("@webex/webex-core");
28
-
29
- var _metrics = _interopRequireDefault(require("./metrics"));
30
-
52
+ var _metrics = _interopRequireWildcard(require("./metrics"));
31
53
  var _config = _interopRequireDefault(require("./config"));
32
-
54
+ var _newMetrics = _interopRequireDefault(require("./new-metrics"));
55
+ var Utils = _interopRequireWildcard(require("./utils"));
56
+ exports.Utils = Utils;
57
+ var CALL_DIAGNOSTIC_CONFIG = _interopRequireWildcard(require("./call-diagnostic/config"));
58
+ exports.CALL_DIAGNOSTIC_CONFIG = CALL_DIAGNOSTIC_CONFIG;
59
+ var CallDiagnosticUtils = _interopRequireWildcard(require("./call-diagnostic/call-diagnostic-metrics.util"));
60
+ exports.CallDiagnosticUtils = CallDiagnosticUtils;
61
+ var _callDiagnosticMetrics2 = _interopRequireDefault(require("./call-diagnostic/call-diagnostic-metrics"));
62
+ var _callDiagnosticMetricsLatencies = _interopRequireDefault(require("./call-diagnostic/call-diagnostic-metrics-latencies"));
63
+ function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
64
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = _Object$defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { _Object$defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
33
65
  /*!
34
66
  * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.
35
67
  */
68
+
36
69
  (0, _webexCore.registerInternalPlugin)('metrics', _metrics.default, {
37
70
  config: _config.default
38
71
  });
72
+ (0, _webexCore.registerInternalPlugin)('newMetrics', _newMetrics.default, {
73
+ config: _config.default
74
+ });
39
75
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["registerInternalPlugin","Metrics","config"],"sources":["index.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport '@webex/internal-plugin-device';\n\nimport {registerInternalPlugin} from '@webex/webex-core';\n\nimport Metrics from './metrics';\nimport config from './config';\n\nregisterInternalPlugin('metrics', Metrics, {\n config\n});\n\nexport {default} from './metrics';\nexport {config};\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAIA;;AAEA;;AAEA;;AACA;;AATA;AACA;AACA;AASA,IAAAA,iCAAA,EAAuB,SAAvB,EAAkCC,gBAAlC,EAA2C;EACzCC,MAAM,EAANA;AADyC,CAA3C"}
1
+ {"version":3,"names":["registerInternalPlugin","Metrics","config","NewMetrics"],"sources":["index.ts"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport '@webex/internal-plugin-device';\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;AAEA;AAEA;AACA;AACA;AACA;AAAiC;AAWjC;AAAmE;AACnE;AAAsF;AACtF;AACA;AAA0F;AAAA;AAzB1F;AACA;AACA;;AAyBA,IAAAA,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
@@ -1,126 +1,92 @@
1
1
  "use strict";
2
2
 
3
3
  var _Object$keys = require("@babel/runtime-corejs2/core-js/object/keys");
4
-
5
4
  var _Object$getOwnPropertySymbols = require("@babel/runtime-corejs2/core-js/object/get-own-property-symbols");
6
-
7
5
  var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptor");
8
-
9
6
  var _Object$getOwnPropertyDescriptors = require("@babel/runtime-corejs2/core-js/object/get-own-property-descriptors");
10
-
11
7
  var _Object$defineProperties = require("@babel/runtime-corejs2/core-js/object/define-properties");
12
-
13
8
  var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
14
-
15
9
  var _interopRequireDefault = require("@babel/runtime-corejs2/helpers/interopRequireDefault");
16
-
17
10
  _Object$defineProperty(exports, "__esModule", {
18
11
  value: true
19
12
  });
20
-
21
13
  exports.default = void 0;
22
-
14
+ exports.getOSNameInternal = getOSNameInternal;
23
15
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs2/helpers/defineProperty"));
24
-
25
- var _assign = _interopRequireDefault(require("@babel/runtime-corejs2/core-js/object/assign"));
26
-
27
16
  var _webexCore = require("@webex/webex-core");
28
-
29
17
  var _common = require("@webex/common");
30
-
31
18
  var _config = require("./config");
32
-
33
19
  var _batcher = _interopRequireDefault(require("./batcher"));
34
-
35
20
  var _clientMetricsBatcher = _interopRequireDefault(require("./client-metrics-batcher"));
36
-
37
- var _callDiagnosticEventsBatcher = _interopRequireDefault(require("./call-diagnostic-events-batcher"));
38
-
39
21
  function ownKeys(object, enumerableOnly) { var keys = _Object$keys(object); if (_Object$getOwnPropertySymbols) { var symbols = _Object$getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return _Object$getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
40
-
41
22
  function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : _Object$getOwnPropertyDescriptors ? _Object$defineProperties(target, _Object$getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { _Object$defineProperty(target, key, _Object$getOwnPropertyDescriptor(source, key)); }); } return target; }
42
-
43
23
  var _BrowserDetection = (0, _common.BrowserDetection)(),
44
- getOSName = _BrowserDetection.getOSName,
45
- getOSVersion = _BrowserDetection.getOSVersion,
46
- getBrowserName = _BrowserDetection.getBrowserName,
47
- getBrowserVersion = _BrowserDetection.getBrowserVersion;
48
-
24
+ getOSName = _BrowserDetection.getOSName,
25
+ getOSVersion = _BrowserDetection.getOSVersion,
26
+ getBrowserName = _BrowserDetection.getBrowserName,
27
+ getBrowserVersion = _BrowserDetection.getBrowserVersion;
28
+ function getOSNameInternal() {
29
+ var _OSMap$getOSName;
30
+ return (_OSMap$getOSName = _config.OSMap[getOSName()]) !== null && _OSMap$getOSName !== void 0 ? _OSMap$getOSName : _config.OS_NAME.OTHERS;
31
+ }
49
32
  function getSparkUserAgent(webex) {
50
33
  var _webex$config;
51
-
52
34
  var _ref = (_webex$config = webex === null || webex === void 0 ? void 0 : webex.config) !== null && _webex$config !== void 0 ? _webex$config : {},
53
- appName = _ref.appName,
54
- appVersion = _ref.appVersion,
55
- appPlatform = _ref.appPlatform;
56
-
35
+ appName = _ref.appName,
36
+ appVersion = _ref.appVersion,
37
+ appPlatform = _ref.appPlatform;
57
38
  var sparkUserAgent = _config.CLIENT_NAME;
58
-
59
39
  if (appName) {
60
40
  sparkUserAgent += " ".concat(appName, "/").concat(appVersion !== null && appVersion !== void 0 ? appVersion : '0.0');
61
41
  }
62
-
63
42
  if (appPlatform) {
64
43
  sparkUserAgent += " ".concat(appPlatform);
65
44
  }
66
-
67
45
  return sparkUserAgent;
68
46
  }
69
-
70
47
  var Metrics = _webexCore.WebexPlugin.extend({
71
48
  children: {
72
49
  batcher: _batcher.default,
73
- clientMetricsBatcher: _clientMetricsBatcher.default,
74
- callDiagnosticEventsBatcher: _callDiagnosticEventsBatcher.default
50
+ clientMetricsBatcher: _clientMetricsBatcher.default
75
51
  },
76
52
  namespace: 'Metrics',
77
53
  submit: function submit(key, value) {
78
- return this.batcher.request((0, _assign.default)({
54
+ return this.batcher.request(_objectSpread({
79
55
  key: key
80
56
  }, value));
81
57
  },
82
-
83
58
  /**
84
- * This corresponds to #sendSemiStructured() in the deprecated metrics handler
59
+ * Returns the payload for submitting client metrics.
85
60
  * @param {string} eventName
86
- * @param {Object} props
87
- * @param {string} preLoginId
88
- * @returns {Object} HttpResponse object
61
+ * @param {any} props
62
+ * @returns {any} - the payload
89
63
  */
90
- submitClientMetrics: function submitClientMetrics(eventName) {
91
- var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
92
- var preLoginId = arguments.length > 2 ? arguments[2] : undefined;
93
-
64
+ getClientMetricsPayload: function getClientMetricsPayload(eventName, props) {
65
+ var _this$webex$meetings, _this$webex$meetings$, _this$webex$meetings$2;
94
66
  if (!eventName) {
95
67
  throw Error('Missing behavioral metric name. Please provide one');
96
68
  }
97
-
98
69
  var payload = {
99
70
  metricName: eventName
100
71
  };
72
+ // @ts-ignore
73
+ var providedClientVersion = (_this$webex$meetings = this.webex.meetings) === null || _this$webex$meetings === void 0 ? void 0 : (_this$webex$meetings$ = _this$webex$meetings.config) === null || _this$webex$meetings$ === void 0 ? void 0 : (_this$webex$meetings$2 = _this$webex$meetings$.metrics) === null || _this$webex$meetings$2 === void 0 ? void 0 : _this$webex$meetings$2.clientVersion;
101
74
  payload.tags = _objectSpread(_objectSpread({}, props.tags), {}, {
102
75
  browser: getBrowserName(),
103
- os: getOSName(),
76
+ os: getOSNameInternal(),
77
+ appVersion: providedClientVersion,
104
78
  // Node does not like this so we need to check if it exists or not
105
79
  // eslint-disable-next-line no-undef
106
- domain: typeof window !== 'undefined' ? window.location.hostname || 'non-browser' : 'non-browser',
107
- // Check what else we could measure
108
- client_id: this.webex.credentials.config.client_id,
109
- user_id: this.webex.internal.device.userId
80
+ domain: typeof window !== 'undefined' ? window.location.hostname || 'non-browser' : 'non-browser' // Check what else we could measure
110
81
  });
111
82
 
112
- try {
113
- payload.tags.org_id = this.webex.credentials.getOrgId();
114
- } catch (_unused) {
115
- this.logger.info('metrics: unable to get orgId');
116
- }
117
-
118
83
  payload.fields = _objectSpread(_objectSpread({}, props.fields), {}, {
119
84
  browser_version: getBrowserVersion(),
120
85
  os_version: getOSVersion(),
121
86
  sdk_version: this.webex.version,
122
87
  platform: 'Web',
123
- spark_user_agent: getSparkUserAgent(this.webex)
88
+ spark_user_agent: getSparkUserAgent(this.webex),
89
+ client_id: this.webex.credentials.config.client_id
124
90
  });
125
91
  payload.type = props.type || this.webex.config.metrics.type;
126
92
  payload.context = _objectSpread(_objectSpread({}, props.context), {}, {
@@ -129,32 +95,42 @@ var Metrics = _webexCore.WebexPlugin.extend({
129
95
  },
130
96
  locale: 'en-US',
131
97
  os: {
132
- name: getOSName(),
98
+ name: getOSNameInternal(),
133
99
  version: getOSVersion()
134
100
  }
135
101
  });
136
-
137
102
  if (props.eventPayload) {
138
103
  payload.eventPayload = props.eventPayload;
139
- } // Mocking the time in tests when running in node
140
- // is impossible so unable to use Date.now()
141
-
104
+ }
142
105
 
106
+ // Mocking the time in tests when running in node
107
+ // is impossible so unable to use Date.now()
143
108
  payload.timestamp = new Date().valueOf();
144
-
109
+ return payload;
110
+ },
111
+ /**
112
+ * This corresponds to #sendSemiStructured() in the deprecated metrics handler
113
+ * @param {string} eventName
114
+ * @param {Object} props
115
+ * @param {string} preLoginId
116
+ * @returns {Object} HttpResponse object
117
+ */
118
+ submitClientMetrics: function submitClientMetrics(eventName) {
119
+ var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
120
+ var preLoginId = arguments.length > 2 ? arguments[2] : undefined;
121
+ var payload = this.getClientMetricsPayload(eventName, props);
145
122
  if (preLoginId) {
146
123
  var _payload = {
147
124
  metrics: [payload]
148
- }; // Do not batch these because pre-login events occur during onboarding, so we will be partially blind
125
+ };
126
+
127
+ // Do not batch these because pre-login events occur during onboarding, so we will be partially blind
149
128
  // to users' progress through the reg flow if we wait to persist pre-login metrics for people who drop off because
150
129
  // their metrics will not post from a queue flush in time
151
-
152
130
  return this.postPreLoginMetric(_payload, preLoginId);
153
131
  }
154
-
155
132
  return this.clientMetricsBatcher.request(payload);
156
133
  },
157
-
158
134
  /**
159
135
  * Issue request to alias a user's pre-login ID with their CI UUID
160
136
  * @param {string} preLoginId
@@ -176,7 +152,6 @@ var Metrics = _webexCore.WebexPlugin.extend({
176
152
  },
177
153
  postPreLoginMetric: function postPreLoginMetric(payload, preLoginId) {
178
154
  var _this = this;
179
-
180
155
  return this.webex.credentials.getClientToken().then(function (token) {
181
156
  return _this.request({
182
157
  method: 'POST',
@@ -190,16 +165,8 @@ var Metrics = _webexCore.WebexPlugin.extend({
190
165
  });
191
166
  });
192
167
  },
193
- submitCallDiagnosticEvents: function submitCallDiagnosticEvents(payload) {
194
- var event = {
195
- type: 'diagnostic-event',
196
- eventPayload: payload
197
- };
198
- return this.callDiagnosticEventsBatcher.request(event);
199
- },
200
- version: "3.0.0-beta.4"
168
+ version: "3.0.0-beta.400"
201
169
  });
202
-
203
170
  var _default = Metrics;
204
171
  exports.default = _default;
205
172
  //# sourceMappingURL=metrics.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["BrowserDetection","getOSName","getOSVersion","getBrowserName","getBrowserVersion","getSparkUserAgent","webex","config","appName","appVersion","appPlatform","sparkUserAgent","CLIENT_NAME","Metrics","WebexPlugin","extend","children","batcher","Batcher","clientMetricsBatcher","ClientMetricsBatcher","callDiagnosticEventsBatcher","CallDiagnosticEventsBatcher","namespace","submit","key","value","request","submitClientMetrics","eventName","props","preLoginId","Error","payload","metricName","tags","browser","os","domain","window","location","hostname","client_id","credentials","user_id","internal","device","userId","org_id","getOrgId","logger","info","fields","browser_version","os_version","sdk_version","version","platform","spark_user_agent","type","metrics","context","app","locale","name","eventPayload","timestamp","Date","valueOf","_payload","postPreLoginMetric","aliasUser","method","api","resource","headers","body","qs","alias","getClientToken","then","token","authorization","toString","submitCallDiagnosticEvents","event"],"sources":["metrics.js"],"sourcesContent":["/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {WebexPlugin} from '@webex/webex-core';\nimport {BrowserDetection} from '@webex/common';\n\nimport {CLIENT_NAME} from './config';\nimport Batcher from './batcher';\nimport ClientMetricsBatcher from './client-metrics-batcher';\nimport CallDiagnosticEventsBatcher from './call-diagnostic-events-batcher';\n\nconst {\n getOSName,\n getOSVersion,\n getBrowserName,\n getBrowserVersion\n} = BrowserDetection();\n\nfunction getSparkUserAgent(webex) {\n const {\n appName,\n appVersion,\n appPlatform\n } = webex?.config ?? {};\n\n let sparkUserAgent = CLIENT_NAME;\n\n if (appName) {\n sparkUserAgent += ` ${appName}/${appVersion ?? '0.0'}`;\n }\n\n if (appPlatform) {\n sparkUserAgent += ` ${appPlatform}`;\n }\n\n return sparkUserAgent;\n}\n\n\nconst Metrics = WebexPlugin.extend({\n children: {\n batcher: Batcher,\n clientMetricsBatcher: ClientMetricsBatcher,\n callDiagnosticEventsBatcher: CallDiagnosticEventsBatcher\n },\n\n namespace: 'Metrics',\n\n submit(key, value) {\n return this.batcher.request(Object.assign({key}, value));\n },\n\n\n /**\n * This corresponds to #sendSemiStructured() in the deprecated metrics handler\n * @param {string} eventName\n * @param {Object} props\n * @param {string} preLoginId\n * @returns {Object} HttpResponse object\n */\n submitClientMetrics(eventName, props = {}, preLoginId) {\n if (!eventName) {\n throw Error('Missing behavioral metric name. Please provide one');\n }\n const payload = {metricName: eventName};\n\n payload.tags = {\n ...props.tags,\n browser: getBrowserName(),\n os: getOSName(),\n\n // Node does not like this so we need to check if it exists or not\n // eslint-disable-next-line no-undef\n domain: typeof window !== 'undefined' ? window.location.hostname || 'non-browser' : 'non-browser', // Check what else we could measure\n client_id: this.webex.credentials.config.client_id,\n user_id: this.webex.internal.device.userId\n };\n\n try {\n payload.tags.org_id = this.webex.credentials.getOrgId();\n }\n catch {\n this.logger.info('metrics: unable to get orgId');\n }\n\n\n payload.fields = {\n ...props.fields,\n browser_version: getBrowserVersion(),\n os_version: getOSVersion(),\n sdk_version: this.webex.version,\n platform: 'Web',\n spark_user_agent: getSparkUserAgent(this.webex)\n };\n\n\n payload.type = props.type || this.webex.config.metrics.type;\n\n\n payload.context = {\n ...props.context,\n app: {\n version: this.webex.version\n },\n locale: 'en-US',\n os: {\n name: getOSName(),\n version: getOSVersion()\n }\n };\n\n\n if (props.eventPayload) {\n payload.eventPayload = props.eventPayload;\n }\n\n // Mocking the time in tests when running in node\n // is impossible so unable to use Date.now()\n payload.timestamp = new Date().valueOf();\n\n if (preLoginId) {\n const _payload = {\n metrics: [payload]\n };\n\n // Do not batch these because pre-login events occur during onboarding, so we will be partially blind\n // to users' progress through the reg flow if we wait to persist pre-login metrics for people who drop off because\n // their metrics will not post from a queue flush in time\n return this.postPreLoginMetric(_payload, preLoginId);\n }\n\n return this.clientMetricsBatcher.request(payload);\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 aliasUser(preLoginId) {\n return this.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 },\n\n postPreLoginMetric(payload, preLoginId) {\n return this.webex.credentials.getClientToken().then((token) =>\n this.request({\n method: 'POST',\n api: 'metrics',\n resource: 'clientmetrics-prelogin',\n headers: {\n authorization: token.toString(),\n 'x-prelogin-userid': preLoginId\n },\n body: payload\n }));\n },\n\n submitCallDiagnosticEvents(payload) {\n const event = {\n type: 'diagnostic-event',\n eventPayload: payload\n };\n\n return this.callDiagnosticEventsBatcher.request(event);\n }\n});\n\nexport default Metrics;\n"],"mappings":"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"}
1
+ {"version":3,"names":["BrowserDetection","getOSName","getOSVersion","getBrowserName","getBrowserVersion","getOSNameInternal","OSMap","OS_NAME","OTHERS","getSparkUserAgent","webex","config","appName","appVersion","appPlatform","sparkUserAgent","CLIENT_NAME","Metrics","WebexPlugin","extend","children","batcher","Batcher","clientMetricsBatcher","ClientMetricsBatcher","namespace","submit","key","value","request","getClientMetricsPayload","eventName","props","Error","payload","metricName","providedClientVersion","meetings","metrics","clientVersion","tags","browser","os","domain","window","location","hostname","fields","browser_version","os_version","sdk_version","version","platform","spark_user_agent","client_id","credentials","type","context","app","locale","name","eventPayload","timestamp","Date","valueOf","submitClientMetrics","preLoginId","_payload","postPreLoginMetric","aliasUser","method","api","resource","headers","body","qs","alias","getClientToken","then","token","authorization","toString"],"sources":["metrics.js"],"sourcesContent":["/* eslint-disable default-param-last */\n\n/*!\n * Copyright (c) 2015-2020 Cisco Systems, Inc. See LICENSE file.\n */\n\nimport {WebexPlugin} from '@webex/webex-core';\nimport {BrowserDetection} from '@webex/common';\nimport {OS_NAME, OSMap, CLIENT_NAME} from './config';\n\nimport Batcher from './batcher';\nimport ClientMetricsBatcher from './client-metrics-batcher';\n\nconst {getOSName, getOSVersion, getBrowserName, getBrowserVersion} = BrowserDetection();\n\nexport function getOSNameInternal() {\n return OSMap[getOSName()] ?? OS_NAME.OTHERS;\n}\n\nfunction getSparkUserAgent(webex) {\n const {appName, appVersion, appPlatform} = webex?.config ?? {};\n\n let sparkUserAgent = CLIENT_NAME;\n\n if (appName) {\n sparkUserAgent += ` ${appName}/${appVersion ?? '0.0'}`;\n }\n\n if (appPlatform) {\n sparkUserAgent += ` ${appPlatform}`;\n }\n\n return sparkUserAgent;\n}\n\nconst Metrics = WebexPlugin.extend({\n children: {\n batcher: Batcher,\n clientMetricsBatcher: ClientMetricsBatcher,\n },\n\n namespace: 'Metrics',\n\n submit(key, value) {\n return this.batcher.request({key, ...value});\n },\n\n /**\n * Returns the payload for submitting client metrics.\n * @param {string} eventName\n * @param {any} props\n * @returns {any} - the payload\n */\n getClientMetricsPayload(eventName, props) {\n if (!eventName) {\n throw Error('Missing behavioral metric name. Please provide one');\n }\n const payload = {metricName: eventName};\n // @ts-ignore\n const providedClientVersion = this.webex.meetings?.config?.metrics?.clientVersion;\n\n payload.tags = {\n ...props.tags,\n browser: getBrowserName(),\n os: getOSNameInternal(),\n appVersion: providedClientVersion,\n\n // Node does not like this so we need to check if it exists or not\n // eslint-disable-next-line no-undef\n domain:\n typeof window !== 'undefined' ? window.location.hostname || 'non-browser' : 'non-browser', // Check what else we could measure\n };\n\n payload.fields = {\n ...props.fields,\n browser_version: getBrowserVersion(),\n os_version: getOSVersion(),\n sdk_version: this.webex.version,\n platform: 'Web',\n spark_user_agent: getSparkUserAgent(this.webex),\n client_id: this.webex.credentials.config.client_id,\n };\n\n payload.type = props.type || this.webex.config.metrics.type;\n\n payload.context = {\n ...props.context,\n app: {\n version: this.webex.version,\n },\n locale: 'en-US',\n os: {\n name: getOSNameInternal(),\n version: getOSVersion(),\n },\n };\n\n if (props.eventPayload) {\n payload.eventPayload = props.eventPayload;\n }\n\n // Mocking the time in tests when running in node\n // is impossible so unable to use Date.now()\n payload.timestamp = new Date().valueOf();\n\n return payload;\n },\n\n /**\n * This corresponds to #sendSemiStructured() in the deprecated metrics handler\n * @param {string} eventName\n * @param {Object} props\n * @param {string} preLoginId\n * @returns {Object} HttpResponse object\n */\n submitClientMetrics(eventName, props = {}, preLoginId) {\n const payload = this.getClientMetricsPayload(eventName, props);\n\n if (preLoginId) {\n const _payload = {\n metrics: [payload],\n };\n\n // Do not batch these because pre-login events occur during onboarding, so we will be partially blind\n // to users' progress through the reg flow if we wait to persist pre-login metrics for people who drop off because\n // their metrics will not post from a queue flush in time\n return this.postPreLoginMetric(_payload, preLoginId);\n }\n\n return this.clientMetricsBatcher.request(payload);\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 aliasUser(preLoginId) {\n return this.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 },\n\n postPreLoginMetric(payload, preLoginId) {\n return this.webex.credentials.getClientToken().then((token) =>\n this.request({\n method: 'POST',\n api: 'metrics',\n resource: 'clientmetrics-prelogin',\n headers: {\n authorization: token.toString(),\n 'x-prelogin-userid': preLoginId,\n },\n body: payload,\n })\n );\n },\n});\n\nexport default Metrics;\n"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ var _Object$defineProperty = require("@babel/runtime-corejs2/core-js/object/define-property");
4
+ _Object$defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ //# sourceMappingURL=metrics.types.js.map