Beispiel #1
0
        public Tier1Nodes(Sitecore.XConnect.Contact XConnectContact, WeKnowTreeOptions options)
        {
            var facets = XConnectContact.Facets;

            this.XConnectFacets = null;
            TreeOptions         = options;
        }
Beispiel #2
0
        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);
        }
Beispiel #4
0
        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);
        }
Beispiel #5
0
        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());
        }
Beispiel #7
0
        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);
        }
Beispiel #8
0
        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);
        }
Beispiel #9
0
 public static CompanyFacet Company(this Sitecore.XConnect.Contact c)
 {
     return(c.GetFacet <CompanyFacet>(CompanyFacet.DefaultFacetKey));
 }