Analytics tracker, support report custom properties not yet in schame
This commit is contained in:
parent
72d2199f1a
commit
1f430a4015
|
@ -23,8 +23,10 @@ import im.vector.app.features.analytics.plan.UserProperties
|
|||
interface AnalyticsTracker {
|
||||
/**
|
||||
* Capture an Event.
|
||||
*
|
||||
* @param customProperties Some custom properties to attach to the event.
|
||||
*/
|
||||
fun capture(event: VectorAnalyticsEvent)
|
||||
fun capture(event: VectorAnalyticsEvent, customProperties: Map<String, Any>? = null)
|
||||
|
||||
/**
|
||||
* Track a displayed screen.
|
||||
|
|
|
@ -171,11 +171,15 @@ class DefaultVectorAnalytics @Inject constructor(
|
|||
}
|
||||
}
|
||||
|
||||
override fun capture(event: VectorAnalyticsEvent) {
|
||||
override fun capture(event: VectorAnalyticsEvent, customProperties: Map<String, Any>?) {
|
||||
Timber.tag(analyticsTag.value).d("capture($event)")
|
||||
posthog
|
||||
?.takeIf { userConsent == true }
|
||||
?.capture(event.getName(), event.getProperties()?.toPostHogProperties())
|
||||
?.capture(
|
||||
event.getName(),
|
||||
(customProperties.orEmpty() +
|
||||
event.getProperties().orEmpty()).toPostHogProperties()
|
||||
)
|
||||
}
|
||||
|
||||
override fun screen(screen: VectorAnalyticsScreen) {
|
||||
|
|
Loading…
Reference in New Issue