// Start is called before the first frame update void Start() { Debug.Log("Info Here"); RudderClient.SerializeSqlite(); RudderConfig config = new RudderConfigBuilder() .WithDataPlaneUrl("https://8452ddb9ed62.ngrok.io") .WithLogLevel(RudderLogLevel.VERBOSE) .Build(); rudderClient = RudderClient.GetInstance("1glg5JWDIVF1c90oLs6CDePrFy9", config); // create event properties Dictionary <string, object> eventProperties = new Dictionary <string, object>(); eventProperties.Add("test_key_1", "test_value_1"); eventProperties.Add("test_key_2", "test_value_2"); // create user properties Dictionary <string, object> userProperties = new Dictionary <string, object>(); userProperties.Add("test_u_key_1", "test_u_value_1"); userProperties.Add("test_u_key_2", "test_u_value_2"); // create message to track RudderMessageBuilder builder = new RudderMessageBuilder(); builder.WithEventName("test_event_name"); builder.WithEventProperties(eventProperties); builder.WithUserProperties(userProperties); rudderClient.Track(builder.Build()); // create message to track builder = new RudderMessageBuilder(); builder.WithEventName("test_event_name"); builder.WithEventProperty("foo", "bar"); builder.WithUserProperty("foo1", "bar1"); rudderClient.Track(builder.Build()); RudderMessage identifyMessage = new RudderMessageBuilder().Build(); RudderTraits traits = new RudderTraits().PutEmail("*****@*****.**"); rudderClient.Identify("some_user_id", traits, identifyMessage); }
// Update is called once per frame void Update() { count += 1; if (count % 100 == 0) { // create message to track RudderMessageBuilder builder = new RudderMessageBuilder(); builder.WithEventName("update_event"); builder.WithEventProperty("foo", "bar"); rudderClient.Track(builder.Build()); } }
public void TrackSubmit() { _client.Track("UserId", "EventName"); _client.Track("UserId", "EventName", null, null); _client.Track("UserId", "EventName", options: null); _client.Track("UserId", "EventName", properties: null); Assert.AreEqual(4, _client.Statistics.Submitted); }
/// <inheritdoc /> void RecordPurchase(string id, double price, double amountPurchased, string currency = null, string store = null, string transactionId = null) { try { //Every event has an embedded properties structure //First we will build the Properties structure //Then we will build the encapsulating event structure TrackPropertyBuilder propertyBuilder = new TrackPropertyBuilder(); propertyBuilder.SetCategory("revenue"); Dictionary <string, object> recordPurchaseProperties = propertyBuilder.Build(); recordPurchaseProperties.Add("productId", id); recordPurchaseProperties.Add("price", price); recordPurchaseProperties.Add("quantity", 1); if (store != null) { recordPurchaseProperties.Add("revenueType", store); } if (transactionId != null) { recordPurchaseProperties.Add("transactionId", transactionId); } //Add the FoolProofParams Dictionary <string, object> eventData = AnalyticsUtils.FoolProofParams(GetCommonEventData()); foreach (var key in eventData.Keys) { var value = eventData[key]; if (value != null) { recordPurchaseProperties.Add(key, value); } } //Now build the event structure RudderElementBuilder elementBuilder = new RudderElementBuilder(); elementBuilder.WithEventName("revenue"); //Set user id if available if (WynnEngine.PlayerId.HasValue()) { elementBuilder.WithUserId(WynnEngine.PlayerId); } //Add the properties structure created to the event elementBuilder.WithEventProperties(recordPurchaseProperties); // Create the event object RudderElement element = elementBuilder.Build(); // Set the integrations element.integrations = new Dictionary <string, object>(); element.integrations.Add("All", true); //Invoke track method rudder.Track(element); // GameEngine.LogError("RudderAnalyticsManager: Track: revenue"); } catch (Exception e) { GameEngine.LogError("RudderAnalyticsManager: Track: Error: " + e.Message); } }
public static void Track(RudderClient client) { client.Track("user", "Ran .NET test", Properties(), Options()); }