public Tier1Nodes(Sitecore.XConnect.Contact XConnectContact, WeKnowTreeOptions options) { var facets = XConnectContact.Facets; this.XConnectFacets = null; TreeOptions = options; }
public IWeKnowTreeNode InteractionsNode(Sitecore.XConnect.Contact xConnectContact, XConnectClient xConnectClient) { WeKnowTreeNode toReturn = null; if (TreeOptions.Interactions.IncludeInteractions) { toReturn = new WeKnowTreeNode("Interactions", TreeOptions); var interactionHelper = new InteractionsNodeBuilder(TreeOptions); toReturn.AddNode(interactionHelper.Something(xConnectContact, xConnectClient)); //var knownInteractions = interactionHelper.GetKnownInteractions(xConnectContact, xConnectClient); //if (knownInteractions != null && knownInteractions.Any()) //{ // foreach (var knownInteraction in knownInteractions) // { // var treeNode = new WeKnowTreeNode(knownInteraction.ChannelName, TreeOptions); // treeNode.AddNode(EventsNode(knownInteraction.EventsB)); // toReturn.AddNode(treeNode); // } //} } return(toReturn); }
public override object GetModel(Guid contactId) { EpExpressCinemaVisitorInfoModel toReturn = new EpExpressCinemaVisitorInfoModel(); Sitecore.XConnect.Contact xConnectContact = EPRepository.GetContact(contactId, CinemaVisitorInfo.DefaultFacetKey); string favoriteMovie = "{unknown}"; if (xConnectContact?.Facets != null) { if (xConnectContact.Facets.ContainsKey(CinemaVisitorInfo.DefaultFacetKey)) { var cinemaVisitorInfo = xConnectContact.Facets[CinemaVisitorInfo.DefaultFacetKey] as CinemaVisitorInfo; favoriteMovie = cinemaVisitorInfo.FavoriteMovie; } else { } } var weKnowTreeOptions = new WeKnowTreeOptionsFactory().GetWeKnowTreeOptions(ProjConstants.Items.WeKnowTreeOptionsEPTab); var weKnowTreeBuilder = new WeKnowTreeBuilder(weKnowTreeOptions); toReturn.ContactId = xConnectContact.Id.ToString(); toReturn.FavoriteMovie = favoriteMovie; toReturn.WeKnowTree = weKnowTreeBuilder.GetWhatWeKnowTreeFromXConnectContact(xConnectContact); //VisitCount = (int)((dynamic)contact).VisitCount return(toReturn); }
public void EnsureExmKeyBehaviorCache(Sitecore.XConnect.Contact contact) { var facet = contact.ExmKeyBehaviorCache(); if (facet == null) { facet = new ExmKeyBehaviorCache { MarketingPreferences = new List <MarketingPreference>() }; } else { facet.MarketingPreferences = facet.MarketingPreferences ?? new List <MarketingPreference>(); } _xConnectRetry.RequestWithRetry( client => { client.SetExmKeyBehaviorCache(contact, facet); client.SubmitAsync(); }, Delay, RetryCount); }
public override object GetModel(Guid contactId) { Sitecore.XConnect.Contact contact = EPRepository.GetContact(contactId, new string[] {}); return(new EpTabGdprModel { ContactId = contact.Id.ToString(), LastModified = contact.LastModified }); }
public override object GetModel(Guid contactId) { Sitecore.XConnect.Contact contact = EPRepository.GetContact(contactId, SF.Foundation.Facets.FacetNames.UserSettings); var settings = contact.GetFacet <SF.Foundation.Facets.UserSettings>(); if (settings != null) { return(new UserSettingsTabModel { UserSettings = settings.Settings }); } return(new UserSettingsTabModel()); }
public void ResetExmKeyBehaviorCache(Sitecore.XConnect.Contact contact) { var facet = new ExmKeyBehaviorCache { MarketingPreferences = new List <MarketingPreference>() }; _xConnectRetry.RequestWithRetry( client => { client.SetExmKeyBehaviorCache(contact, facet); client.Submit(); }, Delay, RetryCount); }
public List <IWeKnowTreeNode> Tier1NodeBuilder(Sitecore.Analytics.Tracking.Contact trackingContact, XConnectClient xConnectClient, Sitecore.XConnect.Contact xConnectContact) { Sitecore.Diagnostics.Log.Debug(ProjConstants.Logger.Prefix + "s) Tier1NodeBuilder"); var identifies = trackingContact?.Identifiers != null?trackingContact.Identifiers.ToList() : null; var toReturn = new List <IWeKnowTreeNode> { TrackingContactNode(trackingContact, xConnectClient), IdentifiersNode(identifies), FacetsNode(xConnectClient), InteractionsNode(xConnectContact, xConnectClient) }; Sitecore.Diagnostics.Log.Debug(ProjConstants.Logger.Prefix + "s) Tier1NodeBuilder"); return(toReturn); }
public static CompanyFacet Company(this Sitecore.XConnect.Contact c) { return(c.GetFacet <CompanyFacet>(CompanyFacet.DefaultFacetKey)); }