Beispiel #1
0
        /// <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);
 }
Beispiel #4
0
 /// <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);
 }
Beispiel #9
0
    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;
            }
        }
    }
Beispiel #10
0
 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();
         }
     }
 }