private void TrackEvent(iEventInterface snowPlowEvent)
        {
            SelfDescribingJson eventData    = new SelfDescribingJson(GetSchemaForEvent(snowPlowEvent), snowPlowEvent.snowplowProperties());
            Unstructured       unstructured = new Unstructured();

            unstructured.SetCustomContext(new List <IContext> {
                UserContext(),
                MobileContext()
            });
            unstructured.SetEventData(eventData);
            unstructured.Build();
            tracker.Track(unstructured);
            DebugLog($"[ANALYTICS] Track event: {snowPlowEvent.name()} -> {snowPlowEvent.debugDescription()}");
            DebugLog($"[ANALYTICS] Payload: {unstructured.GetPayload().ToString()}");

            Crashlytics.Log($"Snowplow event: {snowPlowEvent.debugDescription()}");
        }
 private string GetSchemaForEvent(iEventInterface snowPlowEvent)
 {
     return(string.Format("iglu:net.peak/{0}/jsonschema/{1}", snowPlowEvent.snowplowName(), snowPlowEvent.version()));
 }