public KnownData GetKnownDataViaTracker(Sitecore.Analytics.Tracking.Contact trackingContact)
        {
            KnownData toReturn = null;

            using (XConnectClient xConnectClient = Sitecore.XConnect.Client.Configuration.SitecoreXConnectClientConfiguration.GetClient())
            {
                try
                {
                    toReturn = new KnownData();

                    var xConnectHelper = new XConnectHelper(AllFacetKeys);

                    IdentifiedContactReference IdentifiedContactReference = xConnectHelper.GetIdentifierFromTrackingContact(trackingContact);

                    Contact XConnectContact = xConnectHelper.IdentifyKnownContact(IdentifiedContactReference);

                    XConnectFacets = Tracker.Current.Contact.GetFacet <IXConnectFacets>("XConnectFacets");

                    toReturn.FacetData = GatherFacetData(XConnectFacets);

                    toReturn.KnownInteractions = GetKnownInteractions(XConnectContact, xConnectClient);

                    toReturn.Identifiers = Tracker.Current.Contact.Identifiers.ToList();
                }
                catch (XdbExecutionException ex)
                {
                    Sitecore.Diagnostics.Log.Error(CollectionConst.Logger.Prefix + ex.Message, this);
                }
            }

            return(toReturn);
        }
 protected _interactionBase(Sitecore.Analytics.Tracking.Contact trackingContact)
 {
     IdentifiedContactReference = XConnectHelper.GetIdentifierFromTrackingContact(trackingContact);
     XConnectContact            = XConnectHelper.IdentifyKnownContact(IdentifiedContactReference);
     if (XConnectContact != null)
     {
         XConnectFacets = trackingContact.GetFacet <IXConnectFacets>("XConnectFacets");
     }
 }