/// <summary> /// Create Visitor instance /// </summary> /// <param name="conversionEvent">The ConversionEvent entity</param> /// <param name="logger">The ILogger entity</param> /// <returns>Visitor instance if ConversionEvent is valid, null otherwise</returns> private static Visitor CreateVisitor(ConversionEvent conversionEvent, ILogger logger) { if (conversionEvent == null) { return(null); } EventContext userContext = conversionEvent.Context; var revenue = EventTagUtils.GetRevenueValue(conversionEvent.EventTags, logger) as int?; var value = EventTagUtils.GetNumericValue(conversionEvent.EventTags, logger) as float?; SnapshotEvent snapshotEvent = new SnapshotEvent.Builder() .WithUUID(conversionEvent.UUID) .WithEntityId(conversionEvent.Event.Id) .WithKey(conversionEvent.Event?.Key) .WithTimeStamp(conversionEvent.Timestamp) .WithRevenue(revenue) .WithValue(value) .WithEventTags(conversionEvent.EventTags) .Build(); Snapshot snapshot = new Snapshot(new SnapshotEvent[] { snapshotEvent }); var visitor = new Visitor(new Snapshot[] { snapshot }, conversionEvent.VisitorAttributes, conversionEvent.UserId); return(visitor); }
public async Task SetProcessToStarted_Extracting(ConversionEvent conversionEvent) { _logger.LogInformation("Logging that I'm in SetProcessToStarted_Extracting"); // _telemetry.TrackEvent("SetProcessToStarted_Extracting"); var conversionProcess = new ConversionProcess(); conversionProcess.ConversionStates = new List <ConversionState>(); conversionProcess.ProcessStartTimeUtc = DateTime.UtcNow; conversionProcess.PolicyNumber = conversionEvent.PolicyNumber; conversionProcess.CorrelationId = conversionEvent.CorrelationId; var currentState = new ConversionState() { StateName = "ConversionStarted", DateTimeOfStateChangeUtc = DateTime.UtcNow, DurationInMillisecondsBetweenLastStateAndThisState = 0 }; conversionProcess.MostRecentState = currentState; conversionProcess.ConversionStates.Add(currentState); await cosmosDatabase.CreateConversionProcess(conversionProcess); //Sending this to policy so they can start. In the real world the mainframe starts the process // await _messageSender.SendAsync(conversionEvent, MessagingConfiguration.StartOverallProcessCommand); // _logger.LogWarning("Start sent for overallprocess {PolicyNumber}", conversionEvent.PolicyNumber); }
/// <summary>Snippet for GetConversionEvent</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public void GetConversionEventResourceNames() { // Create client AnalyticsAdminServiceClient analyticsAdminServiceClient = AnalyticsAdminServiceClient.Create(); // Initialize request argument(s) ConversionEventName name = ConversionEventName.FromPropertyConversionEvent("[PROPERTY]", "[CONVERSION_EVENT]"); // Make the request ConversionEvent response = analyticsAdminServiceClient.GetConversionEvent(name); }
/// <summary>Snippet for GetConversionEvent</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public void GetConversionEvent() { // Create client AnalyticsAdminServiceClient analyticsAdminServiceClient = AnalyticsAdminServiceClient.Create(); // Initialize request argument(s) string name = "properties/[PROPERTY]/conversionEvents/[CONVERSION_EVENT]"; // Make the request ConversionEvent response = analyticsAdminServiceClient.GetConversionEvent(name); }
/// <summary>Snippet for CreateConversionEvent</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public void CreateConversionEventResourceNames() { // Create client AnalyticsAdminServiceClient analyticsAdminServiceClient = AnalyticsAdminServiceClient.Create(); // Initialize request argument(s) PropertyName parent = PropertyName.FromProperty("[PROPERTY]"); ConversionEvent conversionEvent = new ConversionEvent(); // Make the request ConversionEvent response = analyticsAdminServiceClient.CreateConversionEvent(parent, conversionEvent); }
/// <summary>Snippet for CreateConversionEvent</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public void CreateConversionEvent() { // Create client AnalyticsAdminServiceClient analyticsAdminServiceClient = AnalyticsAdminServiceClient.Create(); // Initialize request argument(s) string parent = "properties/[PROPERTY]"; ConversionEvent conversionEvent = new ConversionEvent(); // Make the request ConversionEvent response = analyticsAdminServiceClient.CreateConversionEvent(parent, conversionEvent); }
/// <summary>Snippet for GetConversionEvent</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public void GetConversionEventRequestObject() { // Create client AnalyticsAdminServiceClient analyticsAdminServiceClient = AnalyticsAdminServiceClient.Create(); // Initialize request argument(s) GetConversionEventRequest request = new GetConversionEventRequest { ConversionEventName = ConversionEventName.FromPropertyConversionEvent("[PROPERTY]", "[CONVERSION_EVENT]"), }; // Make the request ConversionEvent response = analyticsAdminServiceClient.GetConversionEvent(request); }
/// <summary>Snippet for CreateConversionEvent</summary> /// <remarks> /// This snippet has been automatically generated for illustrative purposes only. /// It may require modifications to work in your environment. /// </remarks> public void CreateConversionEventRequestObject() { // Create client AnalyticsAdminServiceClient analyticsAdminServiceClient = AnalyticsAdminServiceClient.Create(); // Initialize request argument(s) CreateConversionEventRequest request = new CreateConversionEventRequest { ConversionEvent = new ConversionEvent(), ParentAsPropertyName = PropertyName.FromProperty("[PROPERTY]"), }; // Make the request ConversionEvent response = analyticsAdminServiceClient.CreateConversionEvent(request); }
void OnGUI() { if (!this.loggedin) { this.email = GUI.TextField(new Rect(10, 10, 800, 100), this.email); GUI.Label(new Rect(10, 220, 500, 1000), this.message); if (GUI.Button(new Rect(10, 115, 250, 100), "Create User")) { try { KiiUser user = KiiUser.BuilderWithEmail(this.email).WithName("U" + Environment.TickCount).Build(); user.Register("pa$$sword"); this.message = "SUCCESS"; this.loggedin = true; this.message = ""; } catch (KiiCorp.Cloud.Storage.NetworkException e) { this.message = "ERROR: " + e.GetType() + "\n" + "Status=" + e.Status + "\n" + "Data=" + e.Data.ToString() + "\n" + "InnerExcepton=" + e.InnerException.GetType() + "\n" + "InnerExcepton.Message=" + e.InnerException.Message + "\n" + "InnerExcepton.Stacktrace=" + e.InnerException.StackTrace + "\n" + "Source=" + e.Source + "\n" + e.Message + "\n" + e.StackTrace; } catch (Exception e) { this.message = "ERROR: " + e.GetType() + " " + e.Message + "\n" + e.StackTrace; } } } else { GUI.Label(new Rect(10, 220, 500, 1000), message); try { if (this.experiment == null) { this.experiment = KiiExperiment.GetByID("8a835c5b-3508-41a9-9a7e-a348c513a426"); this.appliedVariation = experiment.GetAppliedVariation(experiment.Variations[0]); ConversionEvent viewCnvEvent = this.experiment.GetConversionEventByName("viewed"); KiiEvent viewKiiEvent = this.appliedVariation.EventForConversion(viewCnvEvent); KiiAnalytics.Upload(viewKiiEvent); } if (this.buttonCaption == null) { JsonObject json = this.appliedVariation.VariableSet; this.buttonCaption = json.GetString("caption"); } if (GUI.Button(new Rect(10, 10, 250, 100), this.buttonCaption)) { ConversionEvent cnvEvent = experiment.GetConversionEventByName("clicked"); KiiEvent kiiEvent = this.appliedVariation.EventForConversion(cnvEvent); KiiAnalytics.Upload(kiiEvent); Application.Quit(); } if (GUI.Button(new Rect(265, 10, 250, 100), "Cancel")) { Application.Quit(); } } catch (Exception e) { this.message = "ERROR: " + e.GetType() + " " + e.Message + "\n" + e.StackTrace; } } }
void OnGUI() { if (!this.loggedin) { this.email = GUI.TextField(new Rect(10, 10, 800, 100), this.email); GUI.Label(new Rect(10, 220, 500, 1000), this.message); if (GUI.Button(new Rect(10, 115, 250, 100), "Create User")) { KiiUser user = KiiUser.BuilderWithEmail(this.email).WithName("U" + Environment.TickCount).Build(); user.Register("pa$$sword", (KiiUser registeredUser, Exception e) => { if (e != null) { this.message = "ERROR: failed to register user " + e.GetType() + " " + e.Message + "\n" + e.StackTrace; } else { this.message = "SUCCESS"; this.loggedin = true; this.message = ""; } }); } } else { GUI.Label(new Rect(10, 220, 500, 1000), message); if (!this.initializedExperiment) { this.initializedExperiment = true; Debug.Log("#####Call KiiExperiment.GetByID"); KiiExperiment.GetByID("f1b00500-eae2-11e3-a0e4-22000a84b8f5", (KiiExperiment experiment, Exception e) => { Debug.Log("#####End KiiExperiment.GetByID"); if (e != null) { Debug.Log("#####Error KiiExperiment.GetByID"); this.message = "ERROR: KiiExperiment.GetByID failed!! " + e.GetType() + " " + e.Message + "\n" + e.StackTrace; return; } Debug.Log("#####Success KiiExperiment.GetByID"); this.experiment = experiment; this.appliedVariation = this.experiment.GetAppliedVariation(this.experiment.Variations[0]); ConversionEvent viewCnvEvent = this.experiment.GetConversionEventByName("viewed"); KiiEvent viewKiiEvent = this.appliedVariation.EventForConversion(viewCnvEvent); KiiAnalytics.Upload((Exception e1) => { if (e1 != null) { this.message = "ERROR: KiiAnalytics.Upload('viewed') failed!! " + e1.GetType() + " " + e1.Message + "\n" + e1.StackTrace; } else { this.message = "Event 'viewed' is Uploaded!!"; } } , viewKiiEvent); if (this.buttonCaption == null) { JsonObject json = this.appliedVariation.VariableSet; this.buttonCaption = json.GetString("caption"); } }); } if (GUI.Button(new Rect(10, 10, 250, 100), this.buttonCaption)) { ConversionEvent cnvEvent = this.experiment.GetConversionEventByName("clicked"); KiiEvent kiiEvent = this.appliedVariation.EventForConversion(cnvEvent); KiiAnalytics.Upload((Exception e2) => { if (e2 != null) { this.message = "ERROR: KiiAnalytics.Upload(clicked) failed!! " + e2.GetType() + " " + e2.Message + "\n" + e2.StackTrace; } else { this.message = "Event 'clicked' is Uploaded!!"; } }, kiiEvent); } if (GUI.Button(new Rect(265, 10, 250, 100), "Cancel")) { Application.Quit(); } } }