public override void InteractionBody() { if (XConnectContact != null) { var interaction = new Interaction(IdentifiedContactReference, InteractionInitiator.Contact, CollectionConst.XConnect.Channels.ConcessionStand, string.Empty); var facetHelper = new FacetEditHelper(XConnectFacets); var cinemaInfoFacet = facetHelper.SafeGetFacet <CinemaInfo>(CollectionConst.FacetKeys.CinemaInfo); if (cinemaInfoFacet != null) { Client.SetFacet(IdentifiedContactReference, CinemaInfo.DefaultFacetKey, cinemaInfoFacet); } var visitorInfoFacet = facetHelper.SafeGetFacet <CinemaVisitorInfo>(CollectionConst.FacetKeys.CinemaVisitorInfo); if (visitorInfoFacet != null) { Client.SetFacet(IdentifiedContactReference, CollectionConst.FacetKeys.CinemaVisitorInfo, visitorInfoFacet); } var eventItem = new BuyConcessionOutcome(DateTime.UtcNow, CollectionConst.SitecoreCinema.CurrencyCode, CollectionConst.SitecoreCinema.ConcessionPrices.PopCorn); interaction.Events.Add(eventItem); Client.AddInteraction(interaction); } else { Sitecore.Diagnostics.Log.Error("Contact was null", this); } }
public override void InteractionBody() { var interaction = new Interaction(IdentifiedContactReference, InteractionInitiator.Contact, CollectionConst.XConnect.Channels.BoughtTicket, string.Empty); var facetHelper = new FacetEditHelper(XConnectFacets); var cinemaInfoFacet = facetHelper.SafeGetFacet <CinemaInfo>(CollectionConst.FacetKeys.CinemaInfo); if (cinemaInfoFacet != null) { //new CinemaInfo() { CinimaId = CollectionConst.XConnect.CinemaId.Theater22 }; Client.SetFacet(IdentifiedContactReference, CinemaInfo.DefaultFacetKey, cinemaInfoFacet); } var visitorInfoFacet = facetHelper.SafeGetFacet <CinemaVisitorInfo>(CollectionConst.FacetKeys.CinemaVisitorInfo); if (visitorInfoFacet != null) { visitorInfoFacet.MovieTickets.Add(MovieTicket); Client.SetFacet(IdentifiedContactReference, CollectionConst.FacetKeys.CinemaVisitorInfo, visitorInfoFacet); } interaction.Events.Add(new UseSelfServiceEvent(DateTime.UtcNow)); Client.AddInteraction(interaction); }
private void SetAddressListFacet() { AddressList addressList = FacetEditHelper.SafeGetFacet <AddressList>(AddressList.DefaultFacetKey); if (addressList == null) { var address = new Address(); addressList = new AddressList(address, "default"); } if (addressList != null) { var address = new Address { AddressLine1 = CandidateContactInfo.AddressStreet1, AddressLine2 = CandidateContactInfo.AddressStreet2, AddressLine3 = CandidateContactInfo.AddressStreet3, AddressLine4 = CandidateContactInfo.AddressStreet4, City = CandidateContactInfo.AddressCity, CountryCode = CandidateContactInfo.CountryCode, GeoCoordinate = new GeoCoordinate(CandidateContactInfo.GeoCoordinateLatitude, CandidateContactInfo.GeoCoordinateLongitude),//new GeoCoordinate(51.507351f, -0.127758f), PostalCode = CandidateContactInfo.PostalCode, StateOrProvince = CandidateContactInfo.AddressStateOrProvince, }; addressList.PreferredAddress = address; addressList.PreferredKey = CandidateContactInfo.AddressListPreferredKey; Client.SetAddresses(IdentifiedContactReference, addressList); } else { Sitecore.Diagnostics.Log.Debug("Address List Facet was null"); } }
private void SetCinemaInfoFacet() { CinemaInfo cinemaInfo = FacetEditHelper.SafeGetFacet <CinemaInfo>(CinemaInfo.DefaultFacetKey); if (cinemaInfo != null) { cinemaInfo.CinimaId = 33; } else { cinemaInfo = new CinemaInfo { CinimaId = 22 }; } Client.SetFacet <CinemaInfo>(IdentifiedContactReference, CinemaInfo.DefaultFacetKey, cinemaInfo); }
public override void InteractionBody() { FacetEditHelper = new FacetEditHelper(XConnectFacets); if (XConnectContact != null) { SetPersonalInformationFacet(); SetCinemaVisitorInfoFacet(); SetEmailFacet(); SetCinemaInfoFacet(); SetAddressListFacet(); } else { Sitecore.Diagnostics.Log.Error(CollectionConst.Logger.Prefix + "null xConnectContact", this); } Interaction interaction = new Interaction(IdentifiedContactReference, InteractionInitiator.Brand, CollectionConst.XConnect.Channels.RegisterInteractionCode, string.Empty); interaction.Events.Add(new Goal(CollectionConst.XConnect.Goals.RegistrationGoal, DateTime.UtcNow)); Client.AddInteraction(interaction); }