Posthog: report SessionSecurityState (#2795)

* Posthog: report SessionSecurityState

* Review quick change

---------

Co-authored-by: Mauro <34335419+Velin92@users.noreply.github.com>
This commit is contained in:
Valere
2024-05-07 16:31:12 +02:00
committed by GitHub
parent e829a3ded6
commit bd4fae6086
10 changed files with 157 additions and 9 deletions
@@ -223,4 +223,39 @@ extension AnalyticsService {
let role = role.map(AnalyticsEvent.RoomModeration.Role.init)
capture(event: AnalyticsEvent.RoomModeration(action: action, role: role))
}
func trackSessionSecurityState(_ state: SessionSecurityState) {
let analyticsVerificationState: AnalyticsEvent.CryptoSessionStateChange.VerificationState
switch state.verificationState {
case .unknown:
return
case .verified:
analyticsVerificationState = .Verified
case .unverified:
analyticsVerificationState = .NotVerified
}
let analyticsRecoveryState: AnalyticsEvent.CryptoSessionStateChange.RecoveryState
switch state.recoveryState {
case .enabled:
analyticsRecoveryState = .Enabled
case .disabled:
analyticsRecoveryState = .Disabled
case .incomplete:
analyticsRecoveryState = .Incomplete
case .unknown:
return
case .settingUp:
return
}
let event = AnalyticsEvent.CryptoSessionStateChange(recoveryState: analyticsRecoveryState, verificationState: analyticsVerificationState)
client.capture(event)
}
func updateUserProperties(_ userProperties: AnalyticsEvent.UserProperties) {
client.updateUserProperties(userProperties)
}
}