SlideShare a Scribd company logo
1 of 16
Custom Contact Facets
Contacts – Quick Overview
 A contact represents an individual who interacts with or may potentially interact with your
organization, it contains information about an individual from their interactions across
channels, devices and websites.
 xDB stores information about the contact such as
 An individual's name, E-mail addresses, Phone numbers, Profile picture, Behavior profile,
Interaction history, Outcomes, Engagement automation states
 Customized data
 Unidentified and identified contacts.
Ecommerce - use case example
 Amazon
Device -> Website
Contact -> Website
Another Device -> Website
Another Device + Identified contact -> Website
Identifying Contacts
 Why Identify Contact ?
Identifying contacts is important in order to get a consolidated and detailed view of a contact's
entire journey and experiences on your website and to recognize returning contacts regardless of the
device they use.
 How to identify contacts in Sitecore ?
Contact identification is the process of connecting the current session, device and contact session
to an identifier. This is implemented using the Identify() method which is part of the Sitecore Analytics
tracker namespace.
Sitecore.Analytics.Tracker.Current.Session.Identify (identifier)
 Identified contacts are never overwritten or deleted. However, it is possible to remove personal and
history information by updating the contact record.
 Merging Contacts :
- DyingContact -> SurvivingContact.
Today’s Agenda
 Understand Contact Facets.
 Demo - Create custom contact facets
Contact Facets ?
 Contact facets are hierarchical data structures that group related attributes together into a
single unit stored on the contact. The contact entity consists of a unique identifier, internal
system data structures, and a set of facets
 System - used by the system. These cannot be removed or disabled.
 Standard - commonly used facets that come as standard with Sitecore.
 Custom - created specifically for your organization.
 The data stored in facets can be organized in:
 Attributes
 Elements
 Dictionaries
Creating a custom contact facet.
 Why?
 Some use cases:
 Premium content should be visible to only premium users.
 User Preferences.
- e.g. - Show a message on page until user click’s “Don’t show this message”.
Steps to create a custom facet.
 Create a contract
 Implement the contract
 Configure the system to use the new facet
 Update the model configuration
1. Creating a contract
2. Implement the contract
 Register the attributes, collections, and dictionaries with the base class in the
constructor using the following helper methods, it ensures that the member is
registered with the model
 Make sure the class is marked with the [Serializable] attribute. This attribute is
required to ensure that instances of this class can be stored in shared session and in
the submit queue.
3. Configure the system to use the new
facet
4. Update the model configuration
Code in Action !
Queries?
 REFERENCES:
 https://doc.sitecore.net/sitecore_experience_platform/setting_up_and_maintaini
ng/xdb/contacts/contacts
THANK YOU !

More Related Content

Similar to Custom contact facet

Intranet-Connections-Corporate-Intranet-Whitepaper
Intranet-Connections-Corporate-Intranet-WhitepaperIntranet-Connections-Corporate-Intranet-Whitepaper
Intranet-Connections-Corporate-Intranet-WhitepaperElizabeth George
 
Interview Questions For Microsoft Dynamics CRM
Interview Questions For Microsoft Dynamics CRMInterview Questions For Microsoft Dynamics CRM
Interview Questions For Microsoft Dynamics CRMKumari Warsha Goel
 
Spstc2011 Getting the Most from SharePoint's User Profiles
Spstc2011   Getting the Most from SharePoint's User ProfilesSpstc2011   Getting the Most from SharePoint's User Profiles
Spstc2011 Getting the Most from SharePoint's User ProfilesMichael Oryszak
 
Enterprise Edition: When should you choose this?
Enterprise Edition: When should you choose this?Enterprise Edition: When should you choose this?
Enterprise Edition: When should you choose this?Jeraldine Phneah
 
SPIntersection 2016 - MICROSOFT CLOUD IDENTITIES IN AZURE AND OFFICE 365
SPIntersection 2016 - MICROSOFT CLOUD IDENTITIES IN AZURE AND OFFICE 365SPIntersection 2016 - MICROSOFT CLOUD IDENTITIES IN AZURE AND OFFICE 365
SPIntersection 2016 - MICROSOFT CLOUD IDENTITIES IN AZURE AND OFFICE 365Scott Hoag
 
Easy Learning Presentation Moss 2007 Usman
Easy Learning Presentation Moss 2007 UsmanEasy Learning Presentation Moss 2007 Usman
Easy Learning Presentation Moss 2007 UsmanUsman Zafar Malik
 
Easy Learning Presentation Moss 2007 Usman
Easy Learning Presentation Moss 2007 UsmanEasy Learning Presentation Moss 2007 Usman
Easy Learning Presentation Moss 2007 UsmanUsman Zafar Malik
 
Salesforce Winter ’23 Release Highlights
Salesforce Winter ’23 Release HighlightsSalesforce Winter ’23 Release Highlights
Salesforce Winter ’23 Release HighlightsSkyPlanner
 
IT Asset management presentation
IT Asset management presentationIT Asset management presentation
IT Asset management presentationAshita Mehra
 
Contacts management system
Contacts management systemContacts management system
Contacts management systemshraddhaMaral
 
Job Portal
Job PortalJob Portal
Job PortalNA
 
Break Loose Acting To Forestall Emulation Blast
Break Loose Acting To Forestall Emulation BlastBreak Loose Acting To Forestall Emulation Blast
Break Loose Acting To Forestall Emulation BlastIRJET Journal
 
Leveraging Microsoft Teams for a SharePoint-Centric Organization
Leveraging Microsoft Teams for a SharePoint-Centric OrganizationLeveraging Microsoft Teams for a SharePoint-Centric Organization
Leveraging Microsoft Teams for a SharePoint-Centric OrganizationChristian Buckley
 
The unified user profile fin. (1)
The unified user profile fin. (1)The unified user profile fin. (1)
The unified user profile fin. (1)abdullah-059
 
Business Strategies for Content Management - Part 4: Integrating Your Member ...
Business Strategies for Content Management - Part 4: Integrating Your Member ...Business Strategies for Content Management - Part 4: Integrating Your Member ...
Business Strategies for Content Management - Part 4: Integrating Your Member ...TJ O'Connor
 
Intro to AppExchange - Building Composite Apps
Intro to AppExchange - Building Composite AppsIntro to AppExchange - Building Composite Apps
Intro to AppExchange - Building Composite Appsdreamforce2006
 
Campus Consortium EdTalks Featuring Clemson University
Campus Consortium EdTalks Featuring Clemson UniversityCampus Consortium EdTalks Featuring Clemson University
Campus Consortium EdTalks Featuring Clemson UniversityCampus Consortium
 

Similar to Custom contact facet (20)

Intranet-Connections-Corporate-Intranet-Whitepaper
Intranet-Connections-Corporate-Intranet-WhitepaperIntranet-Connections-Corporate-Intranet-Whitepaper
Intranet-Connections-Corporate-Intranet-Whitepaper
 
Interview Questions For Microsoft Dynamics CRM
Interview Questions For Microsoft Dynamics CRMInterview Questions For Microsoft Dynamics CRM
Interview Questions For Microsoft Dynamics CRM
 
Spstc2011 Getting the Most from SharePoint's User Profiles
Spstc2011   Getting the Most from SharePoint's User ProfilesSpstc2011   Getting the Most from SharePoint's User Profiles
Spstc2011 Getting the Most from SharePoint's User Profiles
 
Sitecore experience platform part 2
Sitecore experience platform   part 2Sitecore experience platform   part 2
Sitecore experience platform part 2
 
Enterprise Edition: When should you choose this?
Enterprise Edition: When should you choose this?Enterprise Edition: When should you choose this?
Enterprise Edition: When should you choose this?
 
SPIntersection 2016 - MICROSOFT CLOUD IDENTITIES IN AZURE AND OFFICE 365
SPIntersection 2016 - MICROSOFT CLOUD IDENTITIES IN AZURE AND OFFICE 365SPIntersection 2016 - MICROSOFT CLOUD IDENTITIES IN AZURE AND OFFICE 365
SPIntersection 2016 - MICROSOFT CLOUD IDENTITIES IN AZURE AND OFFICE 365
 
Easy Learning Presentation Moss 2007 Usman
Easy Learning Presentation Moss 2007 UsmanEasy Learning Presentation Moss 2007 Usman
Easy Learning Presentation Moss 2007 Usman
 
Easy Learning Presentation Moss 2007 Usman
Easy Learning Presentation Moss 2007 UsmanEasy Learning Presentation Moss 2007 Usman
Easy Learning Presentation Moss 2007 Usman
 
Salesforce Winter ’23 Release Highlights
Salesforce Winter ’23 Release HighlightsSalesforce Winter ’23 Release Highlights
Salesforce Winter ’23 Release Highlights
 
Sightlier
SightlierSightlier
Sightlier
 
IT Asset management presentation
IT Asset management presentationIT Asset management presentation
IT Asset management presentation
 
Contacts management system
Contacts management systemContacts management system
Contacts management system
 
Job Portal
Job PortalJob Portal
Job Portal
 
Break Loose Acting To Forestall Emulation Blast
Break Loose Acting To Forestall Emulation BlastBreak Loose Acting To Forestall Emulation Blast
Break Loose Acting To Forestall Emulation Blast
 
Leveraging Microsoft Teams for a SharePoint-Centric Organization
Leveraging Microsoft Teams for a SharePoint-Centric OrganizationLeveraging Microsoft Teams for a SharePoint-Centric Organization
Leveraging Microsoft Teams for a SharePoint-Centric Organization
 
The unified user profile fin. (1)
The unified user profile fin. (1)The unified user profile fin. (1)
The unified user profile fin. (1)
 
Sap basis and_security_administration
Sap basis and_security_administrationSap basis and_security_administration
Sap basis and_security_administration
 
Business Strategies for Content Management - Part 4: Integrating Your Member ...
Business Strategies for Content Management - Part 4: Integrating Your Member ...Business Strategies for Content Management - Part 4: Integrating Your Member ...
Business Strategies for Content Management - Part 4: Integrating Your Member ...
 
Intro to AppExchange - Building Composite Apps
Intro to AppExchange - Building Composite AppsIntro to AppExchange - Building Composite Apps
Intro to AppExchange - Building Composite Apps
 
Campus Consortium EdTalks Featuring Clemson University
Campus Consortium EdTalks Featuring Clemson UniversityCampus Consortium EdTalks Featuring Clemson University
Campus Consortium EdTalks Featuring Clemson University
 

Recently uploaded

WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2
 
tonesoftg
tonesoftgtonesoftg
tonesoftglanshi9
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnAmarnathKambale
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024VictoriaMetrics
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyviewmasabamasaba
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplatePresentation.STUDIO
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...masabamasaba
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationJuha-Pekka Tolvanen
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benonimasabamasaba
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburgmasabamasaba
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...Jittipong Loespradit
 

Recently uploaded (20)

WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
tonesoftg
tonesoftgtonesoftg
tonesoftg
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
WSO2CON 2024 - API Management Usage at La Poste and Its Impact on Business an...
 
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
Abortion Pills In Pretoria ](+27832195400*)[ 🏥 Women's Abortion Clinic In Pre...
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
Large-scale Logging Made Easy: Meetup at Deutsche Bank 2024
 
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open SourceWSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
WSO2CON 2024 - Freedom First—Unleashing Developer Potential with Open Source
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation TemplateAI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
 
WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
%+27788225528 love spells in Boston Psychic Readings, Attraction spells,Bring...
 
What Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the SituationWhat Goes Wrong with Language Definitions and How to Improve the Situation
What Goes Wrong with Language Definitions and How to Improve the Situation
 
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni%in Benoni+277-882-255-28 abortion pills for sale in Benoni
%in Benoni+277-882-255-28 abortion pills for sale in Benoni
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
WSO2CON 2024 - Building the API First Enterprise – Running an API Program, fr...
 
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
%in Rustenburg+277-882-255-28 abortion pills for sale in Rustenburg
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 

Custom contact facet

  • 2. Contacts – Quick Overview  A contact represents an individual who interacts with or may potentially interact with your organization, it contains information about an individual from their interactions across channels, devices and websites.  xDB stores information about the contact such as  An individual's name, E-mail addresses, Phone numbers, Profile picture, Behavior profile, Interaction history, Outcomes, Engagement automation states  Customized data  Unidentified and identified contacts.
  • 3.
  • 4. Ecommerce - use case example  Amazon Device -> Website Contact -> Website Another Device -> Website Another Device + Identified contact -> Website
  • 5. Identifying Contacts  Why Identify Contact ? Identifying contacts is important in order to get a consolidated and detailed view of a contact's entire journey and experiences on your website and to recognize returning contacts regardless of the device they use.  How to identify contacts in Sitecore ? Contact identification is the process of connecting the current session, device and contact session to an identifier. This is implemented using the Identify() method which is part of the Sitecore Analytics tracker namespace. Sitecore.Analytics.Tracker.Current.Session.Identify (identifier)  Identified contacts are never overwritten or deleted. However, it is possible to remove personal and history information by updating the contact record.  Merging Contacts : - DyingContact -> SurvivingContact.
  • 6. Today’s Agenda  Understand Contact Facets.  Demo - Create custom contact facets
  • 7. Contact Facets ?  Contact facets are hierarchical data structures that group related attributes together into a single unit stored on the contact. The contact entity consists of a unique identifier, internal system data structures, and a set of facets  System - used by the system. These cannot be removed or disabled.  Standard - commonly used facets that come as standard with Sitecore.  Custom - created specifically for your organization.  The data stored in facets can be organized in:  Attributes  Elements  Dictionaries
  • 8. Creating a custom contact facet.  Why?  Some use cases:  Premium content should be visible to only premium users.  User Preferences. - e.g. - Show a message on page until user click’s “Don’t show this message”.
  • 9. Steps to create a custom facet.  Create a contract  Implement the contract  Configure the system to use the new facet  Update the model configuration
  • 10. 1. Creating a contract
  • 11. 2. Implement the contract  Register the attributes, collections, and dictionaries with the base class in the constructor using the following helper methods, it ensures that the member is registered with the model  Make sure the class is marked with the [Serializable] attribute. This attribute is required to ensure that instances of this class can be stored in shared session and in the submit queue.
  • 12. 3. Configure the system to use the new facet
  • 13. 4. Update the model configuration

Editor's Notes

  1. Before starting custom contact facets, we will quickly go through Contacts, Identifying contacts and then will start with Custom Contact Facets.
  2. Unidentified and identified contacts : When a contact first interacts with your website they start out as an unidentified contact in the system until they provide enough information to be identified. Once a contact has been identified, the unidentified contact is replaced with the identified contact record. Contacts are identified by their unique identifier. This is a GUID-based Sitecore identifier, and optionally, by their string-based custom identifier, such as an e-mail address. Both are guaranteed to be unique within the xDB. Contacts that have a string-based custom identifier set are referred to as known contacts. Contact Data Model : The contact entity contains multiple data entries, which are grouped into facets and stored in the xDB.
  3. Screen shot of robomongo - identified and unidentified contacts.
  4. Target is to clarify : Contacts concept.
  5. Custom contact facets needs a custom processor using the MergeContact pipeline to merge custom contact facets.
  6. Question: Extending standards OOTB facets is possible?
  7. Creating a contract, defines the structure of elements or facets To define a contract for an element, implement an interface that extends the IElement interface. For facets, extend the IFacet interface. Simple attribute such as an integer, a date-time, a GUID, a string, or a floating-point number, add a property with both a getter and a setter that returns the type you need.  To add a child element, define a property with a getter only that returns the contract of the element in question. To add a dictionary or collection of child elements, define a property with a getter only
  8. We need to create concrete classes implementing interfaces. Question I asked before!
  9. Once we have defined and implemented the facet structure, you must configure Sitecore to use the new facet. Facet is also an Element. It’s just a special Element.
  10. In this example, the node <entity> is replaced with the entity type that you are extending, for example, <contact>. The name attribute is the name under which the facet is accessible on the contact model. This is the string value passed to the GetFacet<TFacet>( string name ) method.