Skip to main content

trackingEvent

Description

Observable field that emits a detailed analytics event stream from the SDK.

Type

assocArray

Usage

m.lib.observeField("trackingEvent", "onTrackingEvent")

function onTrackingEvent(event as Object)
trackingData = event.getData()
print "Tracking event: " + formatJson(trackingData)
end function

Data Structure

The tracking event data structure includes:

FieldTypeDescription
analyticsDataObjectobjectObject of all the meta data fields associated with the event

Example

sub setupTrackingObserver()
m.lib.observeField("trackingEvent", "onTrackingEvent")
end sub

function onTrackingEvent(event as Object)
trackingData = event.getData()

if trackingData <> invalid then
' Log to your analytics service
logAnalyticsEvent(trackingData.eventName, trackingData.properties)

' Handle specific tracking events
if trackingData.eventType = "panel_opened" then
print "Panel opened: " + trackingData.properties.panelName
else if trackingData.eventType = "overlay_viewed" then
print "Overlay viewed: " + trackingData.properties.overlayType
end if
end if
end function

sub logAnalyticsEvent(eventName as String, properties as Object)
' Send to your analytics service
print "Analytics: " + eventName
print "Properties: " + formatJson(properties)
end sub

Best Practices

  • Forward tracking events to your analytics platform
  • Store events locally if needed for offline tracking
  • Use tracking data to understand user behavior
  • Implement proper error handling for tracking data