public override void Dump(RudderMessage message) { RudderLogger.LogDebug("Adjust integration dump event: " + message.eventName); if (message.eventName != null && this.eventTokenMap.ContainsKey(message.eventName)) { string eventToken = this.eventTokenMap[message.eventName]; RudderLogger.LogDebug("Adjust integration dump: eventToken: " + eventToken); if (eventToken != null && !eventToken.Equals("")) { this.AddSessionParameter(RudderCache.GetAnonymousId()); RudderLogger.LogDebug("Creating Adjust event"); AdjustEvent adjustEvent = new AdjustEvent(eventToken); RudderLogger.LogDebug("Adding Event Properties"); Dictionary <string, object> eventProperties = message.eventProperties; if (eventProperties != null) { foreach (string key in eventProperties.Keys) { adjustEvent.addCallbackParameter(key, eventProperties[key].ToString()); } } RudderLogger.LogDebug("Adding User Properties"); Dictionary <string, object> userProperties = message.userProperties; if (userProperties != null) { foreach (string key in userProperties.Keys) { adjustEvent.addCallbackParameter(key, userProperties[key].ToString()); } } RudderLogger.LogDebug("Tracking revenue through Adjust SDK"); if (message.eventProperties.ContainsKey("revenue")) { double amount = (double)message.eventProperties["revenue"]; string currency = ""; if (message.eventProperties.ContainsKey("currency")) { currency = message.eventProperties["currency"] as string; } adjustEvent.setRevenue(amount, currency); } RudderLogger.LogDebug("Tracking event"); Adjust.trackEvent(adjustEvent); } else { RudderLogger.LogDebug("Incorrect event token for Adjust"); } } else { RudderLogger.LogDebug("RudderAdjustIntegration: Event is not tracked through Adjust"); } }
private void AddSessionParameter(string userId) { Adjust.addSessionPartnerParameter("anonymousId", RudderCache.GetAnonymousId()); if (userId != null) { Adjust.addSessionPartnerParameter("userId", userId); } }
public void Identify(string userId, RudderTraits traits, RudderMessage message) { RudderLogger.LogDebug("Identify Event: " + message.eventName); RudderCache.SetUserId(userId); if (_integrationManager != null) { _integrationManager.MakeIntegrationIdentify(userId, traits); } // put supplied userId under traits as well if it is not set if (traits.getId() == null) { traits.PutId(userId); } string traitsJson = Json.Serialize(traits.traitsDict); #if UNITY_ANDROID if (Application.platform == RuntimePlatform.Android) { androidClientClass.CallStatic( "_identify", userId, traitsJson, message.getOptionsJson() ); } #endif #if UNITY_IPHONE if (Application.platform == RuntimePlatform.IPhonePlayer) { _identify( userId, traitsJson, message.getOptionsJson() ); } #endif }
public static RudderClient GetInstance( string writeKey, RudderConfig config ) { if (_instance == null) { // initialize the cache RudderCache.Init(); RudderLogger.LogDebug("Instantiating RudderClient SDK"); // initialize the instance _instance = new RudderClient( writeKey, config.dataPlaneUrl, config.controlPlaneUrl, config.flushQueueSize, config.dbCountThreshold, config.sleepTimeOut, config.configRefreshInterval, config.trackLifecycleEvents, config.recordScreenViews, config.logLevel ); RudderLogger.LogDebug("Instantiating RudderIntegrationManager"); _integrationManager = new RudderIntegrationManager( writeKey, config ); } else { RudderLogger.LogDebug("RudderClient SDK is already initiated"); } return(_instance); }
public void Reset() { RudderLogger.LogDebug("SDK reset"); if (_integrationManager != null) { _integrationManager.Reset(); } RudderCache.Reset(); #if UNITY_ANDROID if (Application.platform == RuntimePlatform.Android) { androidClientClass.CallStatic( "_reset" ); } #endif #if UNITY_IPHONE if (Application.platform == RuntimePlatform.IPhonePlayer) { _reset(); } #endif }
/* * private constructor to prevent instantiating */ private RudderClient( string _writeKey, string _dataPlaneUrl, string _controlPlaneUrl, int _flushQueueSize, int _dbCountThreshold, int _sleepTimeout, int _configRefreshInterval, bool _trackLifecycleEvents, bool _recordScreenViews, int _logLevel ) { // initialize android #if UNITY_ANDROID RudderLogger.LogDebug("Initializing Android Core SDK"); if (Application.platform == RuntimePlatform.Android) { AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); AndroidJavaObject activity = unityPlayer.GetStatic <AndroidJavaObject>("currentActivity"); AndroidJavaObject context = activity.Call <AndroidJavaObject>("getApplicationContext"); androidClientClass = new AndroidJavaClass(androidClientName); androidClientClass.CallStatic( "_initiateInstance", context, RudderCache.GetAnonymousId(), _writeKey, _dataPlaneUrl, _controlPlaneUrl, _flushQueueSize, _dbCountThreshold, _sleepTimeout, _configRefreshInterval, _trackLifecycleEvents, _recordScreenViews, _logLevel ); RudderLogger.LogDebug("Android Core SDK initiated"); } #endif // initialize iOS #if UNITY_IPHONE RudderLogger.LogDebug("Initializing iOS Core SDK"); if (Application.platform == RuntimePlatform.IPhonePlayer) { _initiateInstance( RudderCache.GetAnonymousId(), _writeKey, _dataPlaneUrl, _controlPlaneUrl, _flushQueueSize, _dbCountThreshold, _sleepTimeout, _configRefreshInterval, _trackLifecycleEvents, _recordScreenViews, _logLevel ); RudderLogger.LogDebug("iOS Core SDK initiated"); } #endif }
public override void Identify(string userId, RudderTraits traits) { this.AddSessionParameter(RudderCache.GetUserId()); }