diff --git a/jest/setupMockFullstoryLib.ts b/jest/setupMockFullstoryLib.ts index 51a5f85b3af5..bed82a6a6be4 100644 --- a/jest/setupMockFullstoryLib.ts +++ b/jest/setupMockFullstoryLib.ts @@ -24,6 +24,7 @@ export default function mockFSLibrary() { consentAndIdentify: jest.fn(), anonymize: jest.fn(), getSessionId: jest.fn().mockResolvedValue(undefined), + getSessionURL: jest.fn().mockResolvedValue(undefined), }; }); } diff --git a/src/Expensify.tsx b/src/Expensify.tsx index da34c896c8a5..fca69f13842c 100644 --- a/src/Expensify.tsx +++ b/src/Expensify.tsx @@ -233,11 +233,11 @@ function Expensify() { useEffect(() => { // Initialize Fullstory lib FS.init(userMetadata); - FS.getSessionId().then((sessionId) => { - if (!sessionId) { + FS.getSessionURL().then((url) => { + if (!url) { return; } - Sentry.setContext(CONST.TELEMETRY.CONTEXT_FULLSTORY, {sessionId}); + Sentry.setContext(CONST.TELEMETRY.CONTEXT_FULLSTORY, {url}); }); }, [userMetadata]); diff --git a/src/libs/Fullstory/index.native.ts b/src/libs/Fullstory/index.native.ts index 04f99dedf1e3..e69058b65359 100644 --- a/src/libs/Fullstory/index.native.ts +++ b/src/libs/Fullstory/index.native.ts @@ -52,6 +52,10 @@ const FS: Fullstory = { getSessionId: () => { return FullStory.getCurrentSession(); }, + + getSessionURL: () => { + return FullStory.getCurrentSessionURL(); + }, }; export default FS; diff --git a/src/libs/Fullstory/index.ts b/src/libs/Fullstory/index.ts index 43273a942dbc..61328939c81a 100644 --- a/src/libs/Fullstory/index.ts +++ b/src/libs/Fullstory/index.ts @@ -94,6 +94,13 @@ const FS: Fullstory = { } return FullStory('getSessionAsync', {format: 'id'}); }, + + getSessionURL: async () => { + if (!isInitialized()) { + return; + } + return FullStory('getSessionAsync', {format: 'url'}); + }, }; export default FS; diff --git a/src/libs/Fullstory/types.ts b/src/libs/Fullstory/types.ts index 536d92588d00..798828629956 100644 --- a/src/libs/Fullstory/types.ts +++ b/src/libs/Fullstory/types.ts @@ -78,6 +78,11 @@ type Fullstory = { * Returns the current FullStory session ID. */ getSessionId: () => Promise; + + /** + * Returns the current FullStory session URL. + */ + getSessionURL: () => Promise; }; /**