From c3bca358489c4851dbc4cc07d91b2ecd5f8a8226 Mon Sep 17 00:00:00 2001 From: Colin Prepscius Date: Wed, 14 Aug 2024 11:20:48 -0400 Subject: [PATCH 1/4] added getSessionId --- PostHog/PostHogSDK.swift | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/PostHog/PostHogSDK.swift b/PostHog/PostHogSDK.swift index 47c4f04c8..02689485e 100644 --- a/PostHog/PostHogSDK.swift +++ b/PostHog/PostHogSDK.swift @@ -176,6 +176,16 @@ private let sessionChangeThreshold: TimeInterval = 60 * 30 return sessionManager?.getAnonymousId() ?? "" } + @objc public func getSessionId() -> String { + if !isEnabled() { + return "" + } + + return sessionLock.withLock { + return sessionId ?? "" + } + } + // EVENT CAPTURE private func dynamicContext() -> [String: Any] { From d0d6dcd74245c63f931e47e75d0d67062c80a8f7 Mon Sep 17 00:00:00 2001 From: Manoel Aranda Neto Date: Tue, 27 Aug 2024 14:11:19 +0200 Subject: [PATCH 2/4] recording: expose session id --- CHANGELOG.md | 2 ++ PostHog/PostHogSDK.swift | 8 ++++---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ccd136015..47ba97423 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,7 @@ ## Next +- recording: expose session id ([#165](https://github.com/PostHog/posthog-ios/pull/165)) and ([#166](https://github.com/PostHog/posthog-ios/pull/166)) + ## 3.7.1 - 2024-08-13 - recording: improve ios session recording performance by doing some work off of the main thread ([#158](https://github.com/PostHog/posthog-ios/pull/158)) diff --git a/PostHog/PostHogSDK.swift b/PostHog/PostHogSDK.swift index 02689485e..f8860ee07 100644 --- a/PostHog/PostHogSDK.swift +++ b/PostHog/PostHogSDK.swift @@ -176,13 +176,13 @@ private let sessionChangeThreshold: TimeInterval = 60 * 30 return sessionManager?.getAnonymousId() ?? "" } - @objc public func getSessionId() -> String { + @objc public func getSessionId() -> String? { if !isEnabled() { - return "" + return nil } - + return sessionLock.withLock { - return sessionId ?? "" + sessionId ?? "" } } From 9c9551c0d8cf57b307fe6a15bc7f804b9a0644ee Mon Sep 17 00:00:00 2001 From: Manoel Aranda Neto Date: Tue, 27 Aug 2024 14:38:00 +0200 Subject: [PATCH 3/4] fix --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 47ba97423..a90a7da44 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,6 @@ ## Next -- recording: expose session id ([#165](https://github.com/PostHog/posthog-ios/pull/165)) and ([#166](https://github.com/PostHog/posthog-ios/pull/166)) +- chore: expose session id ([#165](https://github.com/PostHog/posthog-ios/pull/165)) and ([#170](https://github.com/PostHog/posthog-ios/pull/170)) ## 3.7.1 - 2024-08-13 From de045a6d9fedb2bdfae35717939ce78b0466c8c9 Mon Sep 17 00:00:00 2001 From: Manoel Aranda Neto Date: Tue, 27 Aug 2024 14:41:12 +0200 Subject: [PATCH 4/4] fix --- PostHog/PostHogSDK.swift | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/PostHog/PostHogSDK.swift b/PostHog/PostHogSDK.swift index f8860ee07..9d2691b90 100644 --- a/PostHog/PostHogSDK.swift +++ b/PostHog/PostHogSDK.swift @@ -181,9 +181,11 @@ private let sessionChangeThreshold: TimeInterval = 60 * 30 return nil } - return sessionLock.withLock { - sessionId ?? "" + var tempSessionId: String? + sessionLock.withLock { + tempSessionId = sessionId } + return tempSessionId } // EVENT CAPTURE