Patent Publication Number: US-9898519-B2

Title: Systems and methods of enriching CRM data with social data

Description:
RELATED APPLICATION 
     This application claims the benefit of three U.S. provisional Patent Applications, including: No. 61/701,496, entitled, “De-Duplicating Social Network Profiles to Build a Consolidated Social Profile,” filed 14 Sep. 2012; No. 61/835,152, entitled, “Systems and Methods for Creating Unified Social Profiles of Users in a Multi-Tenant Environment,” filed 14 Jun. 2013; and No. 61/835,168, entitled, “Systems and Methods for Relating Internal CRM Data to External Social and Public Source Data,” filed 14 Jun. 2013. The provisional applications are hereby incorporated by reference for all purposes. 
     This application is related to U.S. patent application Ser. No. 14/028,311, entitled “Systems and Methods of Providing a Streamlined Referral Flow,” filed on Sep. 16, 2013. The related application is incorporated by reference for all purposes. 
    
    
     BACKGROUND 
     The subject matter discussed in the background section should not be assumed to be prior art merely as a result of its mention in the background section. Similarly, a problem mentioned in the background section or associated with the subject matter of the background section should not be assumed to have been previously recognized in the prior art. The subject matter in the background section merely represents different approaches, which in and of themselves may also correspond to implementations of the claimed technology. 
     Social network platforms have revolutionized the way users communicate and share information with each other. On these platforms, users share substantial amount of personal and professional information along with their likes, interests, and hobbies. However, this information has not found its way into customer relationship management (CRM) systems. 
     An opportunity arises to efficiently enrich CRM systems with reliable and diverse social data. An opportunity also arises to customize customer service based on their preferences and interests of the customers. Improved user experience and engagement and higher customer satisfaction and retention may result. 
     SUMMARY 
     The technology disclosed relates to incorporating social data in CRM systems by a single social syn action. In particular, it relates to appending social data to prospect or contact objects of CRM systems by finding multiple social handles for the prospect or contact objects. The multiple social handles identify social profiles of the corresponding prospects or contacts on various social network platforms. 
     The technology disclosed also relates to personalizing customer service experience of customers. In particular, it relates to identifying conversation preferences and interests of the customers based on information specified in their social profiles on different social network platforms. The conversation preferences and interests are used to customize interactions with the customer during the course of the customer service. 
     Other aspects and advantages of the present technology can be seen on review of the drawings, the detailed description and the claims, which follow. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The included drawings are for illustrative purposes and serve only to provide examples of possible structures and process operations for one or more implementations of this disclosure. These drawings in no way limit any changes in form and detail that may be made by one skilled in the art without departing from the spirit and scope of this disclosure. A more complete understanding of the subject matter may be derived by referring to the detailed description and claims when considered in conjunction with the following figures, wherein like reference numbers refer to similar elements throughout the figures. 
         FIG. 1  shows example servers, clients, and databases used for enriching CRM data with social data. 
         FIG. 2A  illustrates one implementation of incomplete CRM data within a CRM system. 
         FIG. 2B  is one implementation of socially enriched CRM data within a CRM system. 
         FIG. 3  shows one implementation of a rich user profile used for personalizing customer service experience of a customer. 
         FIG. 4  illustrates one implementation of a social data schema that can be used for enriching CRM data with social data. 
         FIG. 5  is a flowchart of one implementation of enriching CRM data with social data. 
         FIG. 6  shows a flowchart of one implementation of personalizing customer service experience of customers. 
         FIG. 7  is a block diagram of an example computer system for enriching CRM data with social data. 
     
    
    
     DETAILED DESCRIPTION 
     The following detailed description is made with reference to the figures. Sample implementations are described to illustrate the technology disclosed, not to limit its scope, which is defined by the claims. Those of ordinary skill in the art will recognize a variety of equivalent variations on the description that follows. 
     The technology disclosed relates to enriching CRM data with social data by using computer-implemented systems. The technology disclosed can be implemented in the context of any computer-implemented system including a database system, a multi-tenant environment, or the like. Moreover, this technology can be implemented using two or more separate and distinct computer-implemented systems that cooperate and communicate with one another. This technology may be implemented in numerous ways, including as a process, a method, an apparatus, a system, a device, a computer readable medium such as a computer readable storage medium that stores computer readable instructions or computer program code, or as a computer program product comprising a computer usable medium having a computer readable program code embodied therein. 
     As used herein, the “identification” of an item of information does not necessarily require the direct specification of that item of information. Information can be “identified” in a field by simply referring to the actual information through one or more layers of indirection, or by identifying one or more items of different information which are together sufficient to determine the actual item of information. In addition, the term “specify” is used herein to mean the same as “identify.” 
     The technology disclosed can be applied to solve the technical problem of incomplete social data in CRM systems. With the social media revolution, social network platforms can provide new channels for the CRM systems. The technology disclosed provides accurate and reliable social data of customers from a variety of social network platforms, which can be used by companies to deepen their relationships with customers through targeted campaigning, meaningful conversations, and compliance of engagement preferences. 
     In some implementations, the technology disclosed can be used to prevent duplication of social data of the customers. This is done by assigning unique social keys to the customers. The unique social keys serve as common links to different social profiles of the customers. In other implementations, the technology disclosed can enhance the transparency of traditional CRM systems by trust tagging the social data incorporated in them. The trust tagging includes tracking the assembling of social data from various social network platforms by recording the source, type, and jurisdictional origins of the social network platforms. In one implementation, engagement preferences of the customers with respect to the assembled social data are also identified. 
     Another feature of the technology disclosed relates to personalizing the customer service experience of customers by identifying their conversation preferences and interests based on information specified in their social profiles. In some implementations, the technology disclosed can generate personality insights for the customers based on purchase history and customer service history of the customers. The personality insights can be used to customize customer service according to the attributes and background of the customers. 
     Servers, Clients, and Databases 
       FIG. 1  shows example servers, clients, and databases  100  used for enriching CRM data with social data.  FIG. 1  includes CRM data  102 , social data  105 , preferences and interest data  108 , and trust data  112 .  FIG. 1  also includes network(s)  115 , identification engine  122 , social engine  125 , user computing device  118 , and application  128 . In other implementations, servers, clients, and databases  100  may not have the same elements as those listed above and/or may have other/different elements instead of, or in addition to, those listed above such as a synchronization engine or a personalization engine. The different elements can be combined into single software modules and multiple software modules can run on the same hardware. 
     In some implementations, network(s)  115  can be any one or any combination of Local Area Network (LAN), Wide Area Network (WAN), WiFi, telephone network, wireless network, point-to-point network, star network, token ring network, hub network, peer-to-peer connections like Bluetooth, Near Field Communication (NFC), Z-Wave, ZigBee, or other appropriate configuration of data networks, including the Internet. 
     In some implementations, the engines can be of varying types including workstations, servers, computing clusters, blade servers, server farms, or any other data processing systems or computing devices. The engines can be communicably coupled to the databases via a different network connection. For example, identification engine  122  can be coupled via the network(s)  115  (e.g., the Internet) and social engine  125  can be coupled via a direct network link or a different network connection. 
     In some implementations, databases can store information from one or more tenants into tables of a common database image to form a multi-tenant database system (MTS). A database image can include one or more database objects. In other implementations, the databases can be relation database management systems (RDBMSs), object oriented database management systems (OODBMSs), distributed file systems (DFS), no-schema database management systems, or any other data storing systems or computing devices. 
     User computing device  118  can be a personal computer, laptop computer, tablet computer, smartphone, personal digital assistant (PDA), digital image capture devices, and the like. Application  128  can take one of a number of forms, including user interfaces, dashboard interfaces, engagement consoles, and other interfaces, such as mobile interfaces, tablet interfaces, summary interfaces, or wearable interfaces. In some implementations, it can be hosted on a web-based or cloud-based application running on the user computing device  118 . It can also be hosted on a non-social local application running in an on-premise environment. In one implementation, it can be accessed from a browser running on a computing device. The browser can be Chrome, Internet Explorer, Firefox, Safari, and the like. In other implementations, application  128  can run as engagement consoles on a computer desktop application. 
     CRM data  102  includes various entities (persons and organizations) such as prospects, leads, and/or accounts and further provides business information related to the respective entities. Examples of business information can include: names, addresses, job titles, number of employees, industry types, territories, market segments, contact information, employer information, stock rate, etc. In one implementation, CRM data  102  can store web or database profiles of the users and organizations as a system of interlinked hypertext documents that can be accessed via the network(s)  115  (e.g., the Internet). In another implementation, CRM data  102  can also include standard profile information about persons and organizations. This standard profile information can be extracted from company websites, business registration sources such as Jigsaw, Hoovers, or Dun &amp; Bradstreet, business intelligence sources, and/or social networking websites like Yelp, Yellow Pages, etc. 
     A “prospect” refers to an entity (person or organization) that has expressed interest in a product or service of a seller or service provider. Conversely, a prospect can be an entity that may not have expressed interest but appears to have a profile similar to that of seller&#39;s or service provider&#39;s target customer. In one implementation, prospects can be stored based on industry type, market segment, number of employees, customer segment, employee size, product line, service type, stock rate, location, or territory. In another implementation, CRM data  102  can include business-to-business data of an individual belonging to or working for a prospect, referred to as “contact,” along with some supplemental information. This supplemental information can be names, addresses, job titles, usernames, contact information, employer name, etc. 
     Regarding different types of social network platforms, access controlled application programming interfaces (APIs) like Yahoo Boss, Facebook Open Graph, Twitter Firehose can provide real-time search data aggregated from numerous social media sources such as LinkedIn, Yahoo, Facebook, and Twitter. APIs can initialize sorting, processing, and normalization of data. Public Internet can provide data from public sources such as first hand websites, blogs, web search aggregators, and social media aggregators. Social networking sites can provide data from social media sources such as Twitter, Facebook, LinkedIn, and Klout. 
     Social engine  125  spiders various social network platforms to retrieve social data  105  related to CRM data  102 , including web data associated with the business-to-business contacts. In some implementations, social engine  125  can extract a list of contacts from a master database and search those contacts on the various social network platforms in order to determine if social or web content associated with the contacts exists within those platform. If the social network platforms provide positive matches to any of the contacts, the social engine  125  can store the retrieved social or web content as social data  105 . 
     Social data  105  stores social media content assembled from different types of social network platforms. Social media content can include information about social media sources, social accounts, social personas, social profiles, social handles, etc. of the business-to-business contacts stored in CRM data  102 . 
     In some implementations, social data  105  can include a feed that is a combination (e.g. a list) of feed items. A feed item or feed element can include information about a user of the database referred to as profile feed or about a record referred to as record feed. A user following the user or record can receive the associated feed items. The feed items from all of the followed users and records can be combined into a single feed for the user. The information presented in the feed items can include entries posted to a user&#39;s wall or any other type of information accessible within the social network platform. For example, a user&#39;s news feed can include text inputs such as comments (e.g., statements, questions, and emotional expressions), responses to comments (e.g., answers, reactionary emotional expressions), indications of personal preferences, status updates, and hyperlinks. As another example, a news feed can include file uploads, such as presentations, documents, multimedia files, and the like. 
     Identification engine  122  retrieves conversation preferences and interests of the users from social data  105  by applying semantic analysis and keyword extraction to at least one of: information specified in social profiles of the users, text of feed items posted by the users, service records related to the users, and purchase histories of the users. The retrieved conversation preferences and interests are stored as preferences and interest data  108 . The semantic analysis can include identifying preferences and interests keywords (also stored as preferences and interest data  108 ) associated with one or more user characteristics in the social profiles and further assigns each preferences and interests keyword a value. The value of each identified preferences and interests keyword is then used to calculate a score for the user characteristic to which the preferences and interests keyword is correlated. In some implementations, identification engine  122  counts: the number of occurrences of preferences and interests keywords within the text of feed items posted by the users and the number of postings of the feed items including the preferences and interests keywords. 
     Identification engine  122  enhances the trust of assembled social data  105  by appending trust tags (stored as trust data  112 ) to various data objects in social data  105 . The trust tags include names of the social network platforms, interface categories of the social network platforms, jurisdictional origins of the social network platforms, and engagement preferences of prospects or contacts. 
     Social Syn Action 
       FIG. 2A  illustrates one implementation of incomplete CRM data within a CRM system  200  such as Salesforce&#39;s Chatter. Conversely,  FIG. 2B  is one implementation of socially enriched CRM data within the CRM system  200 . As shown in  FIGS. 2A-2B , CRM system  200  includes a social syn button  202 , CRM data columns  102 , social data columns  105 , and trust data columns  112 . In other implementations, CRM system  200  may not have the same screen objects, interfaces, or widgets as those listed above and/or may have other/different screen objects, interfaces, or widgets instead of, or in addition to, those listed above such as a clean status column (that identifies if social data about a prospect or contact is found or not), unique social key column, phone column, interface categories column, jurisdictional origin column, engagement preferences column, etc. The different elements can be combined into single software modules and multiple software modules can run on the same hardware. 
       FIG. 2A  shows a list of prospect or contact objects (Ben, Marc and C, George) or references to the prospect or contact objects (Email and Company) with blank, incomplete, or inadequate fields for CRM data columns  102 , social data columns  105 , and trust data columns  112 . CRM data columns  102  identify business-to-business information (Name, Email, Company) associated with the prospects or contacts. Also, social data columns  105  specify social handles of the prospects or contacts on various social network platforms (Twitter, Facebook, LinkedIn, and/or Klout). Finally, trust data columns  112  identify one or more trust tags associated with the social data of the prospects or contacts, including names of the social network platforms, interface categories of the social network platforms, jurisdictional origins of the social network platforms, and engagement preferences of the prospects or contacts. 
       FIG. 2B  shows updates to the CRM system  200  in response to selection of the social syn button  202 . As shown in  FIG. 2B , CRM system  200  is enriched with social data corresponding to the prospect or contact objects. The social data specifies different social handles (@andyb, Andy-B, AndyB) for the prospects or contacts on various social network platforms. Any missing fields in the CRM data columns  102  are filled with the appropriate business information, such as names and email of the prospects or contacts.  FIG. 2B  further identifies particular sources (API, Blog, Jigsaw, etc.) from which the social data was assembled. 
     Rich User Profile 
       FIG. 3  shows one implementation of a rich user profile  300  used for personalizing customer service experience of a customer  301 . Rich user profile  300  includes customer biographic information  302 , customer social handle information  304 , customer employment history  312 , one or more industries customer  301  works in  322 , and/or topics  344  and entities  354  that customer  301  is interested in. It also includes customer purchase history  324  and customer service records  334 . In other implementations, rich user profile  300  may not have the same screen objects, interfaces, or widgets as those listed above and/or may have other/different screen objects, interfaces, or widgets instead of, or in addition to, those listed above such as skills and expertise of customer  301 , connections and colleagues of customer  301 , social influence of customer  301 , etc. The different elements can be combined into single software modules and multiple software modules can run on the same hardware. 
     Social handle information  304  can be used to identify the rich user profile  300  that includes information from social network platforms (social data  105 ) external to the CRM system  200  such as Facebook, Twitter, and/or LinkedIn. In some implementations, semantic analysis and keyword extraction can be applied to social data  105  to retrieve conversation preferences and interests of customer  301 . In some implementations, the conversation preferences and interests can be used to generate personality insights about customer  301 , including customer&#39;s: IQ level, literacy level, technical expertise, and the like. 
     In some implementations, the personality insights can enable customer service agents to customize their conversation with customer  301  in a way that maximizes the customer&#39;s user experience. In one example, customer purchase history  324  can be used to make an up sale offer of similar products or of upgrades to products previously purchased by customer  301 . In another example, customer service records  334  can be used to estimate customer&#39;s technical expertise, which can be further used to determine the level of complexity of solutions given to customer  301 . In yet another example, customer biographic information  302 , customer employment history  312 , one or more industries customer  301  works in  322 , and/or topics  344  and entities  354  that customer  301  is interested in, can be used to initiate customer-specific conversations during the customer service, which invoke customer&#39;s interest and engagement and thus, enhance the customer&#39;s user experience. 
     Social Data Schema 
       FIG. 4  illustrates one implementation of a social data schema  400  that can be used for enriching CRM data with social data. This and other data structure descriptions that are expressed in terms of objects can also be implemented as tables that store multiple records or object types. Reference to objects is for convenience of explanation and not as a limitation on the data structure implementation.  FIG. 4  shows a profile object  413  linked to service history object  402 , work history object  404 , purchase history object  412 , feed object  414 , handles object  422 , and industries object  424 . In other implementations, social data schema  400  may not have the same objects, tables, fields or entries as those listed above and/or may have other/different objects, tables, fields or entries instead of, or in addition to, those listed above such as a topic object, interest object, or contact information object. 
     Profile object  413  provides primary information that identifies a customer and includes various fields that store biographic information about the customer such as first name, last name, sex, birthday, department, interests, etc. In some implementations, the profile object  413  can be further linked to other objects that provide supplementary information about the customer. For instance, profile object  413  can be linked to a service history object  402  that stores a summary, date, and time of past customer service requests made the customer. In one implementation, profile object  413  can be linked to a purchase history object  412  that identifies the products previously purchased by the customer along with a data, time, and dollar amount of the purchase. 
     In one implementation, profile object  413  can be linked to at least one of: a work history object  404  that specifies customer&#39;s past employers, along with employment start and end dates, job titles, and job responsibilities; a handles object  422  that identifies social handles of the customer on various social network platforms like Facebook, Twitter, LinkedIn, and/or Klout; a feed object  414  that specifies various feeds items such as posts, comments, replies, mentions, etc. posted by the customer or on customer&#39;s social profile; and an industries objects  424  that includes the name, type, and reference number of industries the customer works in. 
     In yet another implementation, schema  400  can have one or more of the following variables with certain attributes: USER_ID being CHAR (14 BYTE), SERVICE_RECORDS_ID being CHAR (14 BYTE), PURCHASE_RECORDS_ID being CHAR (14 BYTE), INDUSTRY_ID being CHAR (14 BYTE), TAG_FORMAT_ID being CHAR (14 BYTE), FEED_ITEM_ID being CHAR (14 BYTE), CREATED_BY being CHAR (14 BYTE), CREATED_DATE being DATE, and DELETED being CHAR (1 BYTE). 
     Flowchart of Enriching CRM Data with Social Data 
       FIG. 5  is a flowchart  500  of one implementation of enriching CRM data with social data. Flowchart  500  can be implemented at least partially with a database system, e.g., by one or more processors configured to receive or retrieve information, process the information, store results, and transmit the results. Other implementations may perform the actions in different orders and/or with different, fewer or additional actions than the ones illustrated in  FIG. 5 . Multiple actions can be combined in some implementations. For convenience, this flowchart is described with reference to the system that carries out a method. The system is not necessarily part of the method. 
     At action  510 , responsive to a first social sync action, a set of prospect or contact objects or references to the prospect or contact objects are received along with a request to fill in a plurality of blank fields in the objects with social identification handles from a plurality of social network platforms that are independently operated. In some implementations, a specification is received that designates which blank fields in the prospect or contact objects to fill in with social data. The first social sync action refers to a user commit behavior that can be executed by a voice, visual, physical, or text command. Examples of the first social sync action can include: speaking in a microphone, blinking of eye across an eye tracking device, moving a body part across a motion sensor, pressing a button on a device, selecting a screen object on an interface, or entering data across an interface. 
     At action  520 , the prospect or contact objects are updated to include the social identification handles. Examples of social identification handles include Facebook usernames, Twitter handles, and/or LinkedIn links. In some implementations, Twitter handles can be identified by “@identifier” tag formats. Similarly, Facebook usernames can be identified by tag formats such as “www.facebook.com/identifier,” and LinkedIn links can include “www.linkedIn.com/identifier” tag formats. 
     At action  530 , data that includes at least some of the social identification handles or references to the social identification handles is transmitted for display along with an interface that shows that at least some of the blank fields have been filled in. 
     At action  540 , social data of the prospect or contact objects is assembled from the plurality of social network platforms, including social identification handles. Various entity resolution techniques can be applied to identify web mentions and reflections that include social data of the prospect or contacts objects. Examples of entity resolution techniques can include: disambiguation, clustering, iterative record linkage, adaptive duplicate detection, or training-set construction, etc. 
     At action  550 , unique social keys in pre-assembled social data are identified. The unique social keys correspond to the prospect or contact objects and updating the prospect or contact objects with the unique social keys. Furthermore, in response to a subsequent social sync action, the unique social keys or references to the unique social keys or references to the prospect or contact objects are received and the prospect or contact objects are updated to include further social data assembled subsequent to the first social sync action. 
     At action  560 , trust tags are appended to the social data of the prospect or contact objects. The trust tags include names of the social network platforms, interface categories of the social network platforms, jurisdictional origins of the social network platforms, and engagement preferences of prospects or contacts. The interface categories of the social network platforms include access controlled APIs, public Internet, and social networking sites. The jurisdictional origins of the social network platforms specify engagement rules applicable to geographic locations of the social network platforms. The engagement preferences of the prospects or contacts specify whether the prospects or contacts have opted-in or opted-out of any use of their social identification handles. 
     Flowchart of Personalizing Customer Service Experience 
       FIG. 6  shows a flowchart of one implementation of personalizing customer service experience of customers. Flowchart  600  can be implemented at least partially with a database system, e.g., by one or more processors configured to receive or retrieve information, process the information, store results, and transmit the results. Other implementations may perform the actions in different orders and/or with different, fewer or additional actions than the ones illustrated in  FIG. 6 . Multiple actions can be combined in some implementations. For convenience, this flowchart is described with reference to the system that carries out a method. The system is not necessarily part of the method. 
     At action  610 , social handle information about a customer that was not collected in customer interactions directly with a CRM system is received. Examples of social handle information include Facebook usernames, Twitter handles, and/or LinkedIn links. In some implementations, Twitter handles can be identified by “@identifier” tag formats. Similarly, Facebook usernames can be identified by tag formats such as “www.facebook.com/identifier,” and LinkedIn links can include “www.linkedIn.com/identifier” tag formats. 
     At action  620 , the social handle information is used to identify a rich user profile that includes information collected from social network platforms external to the CRM system. The rich user profile includes biographic information about the customer. It also includes at least employment history and skills and expertise of the customer. It also identifies one or more industries the customer works in along with topics and entities that interest the customer. It further includes purchase history and customer service history of the customer. 
     At action  630 , in response to the social handle information, conversation preferences and interests of the customer are automatically retrieved from the rich user profile. In some implementations, conversation preferences and interests are retrieved by applying semantic analysis and keyword extraction to at least one of: information specified in social profiles of the customer, text of feed items posted by the customer, service records related to the customer, and purchase histories of the customer. 
     At action  640 , an interface is generated that highlights conversation preferences and interests of the customer for use in interactions with the customer. The conversation preferences and interests of the customer can be used to generate personality insights that can enable customer service agents to customize their conversations with the customer in a way that maximizes the customer&#39;s user experience. 
     Computer System 
       FIG. 7  is a block diagram of an example computer system  700  for enriching CRM data with social data.  FIG. 7  is a block diagram of an example computer system, according to one implementation. Computer system  710  typically includes at least one processor  714  that communicates with a number of peripheral devices via bus subsystem  712 . These peripheral devices can include a storage subsystem  724  including, for example, memory devices and a file storage subsystem, user interface input devices  722 , user interface output devices  720 , and a network interface subsystem  716 . The input and output devices allow user interaction with computer system  710 . Network interface subsystem  716  provides an interface to outside networks, including an interface to corresponding interface devices in other computer systems. 
     User interface input devices  722  can include a keyboard; pointing devices such as a mouse, trackball, touchpad, or graphics tablet; a scanner; a touch screen incorporated into the display; audio input devices such as voice recognition systems and microphones; and other types of input devices. In general, use of the term “input device” is intended to include all possible types of devices and ways to input information into computer system  710 . 
     User interface output devices  720  can include a display subsystem, a printer, a fax machine, or non-visual displays such as audio output devices. The display subsystem can include a cathode ray tube (CRT), a flat-panel device such as a liquid crystal display (LCD), a projection device, or some other mechanism for creating a visible image. The display subsystem can also provide a non-visual display such as audio output devices. In general, use of the term “output device” is intended to include all possible types of devices and ways to output information from computer system  710  to the user or to another machine or computer system. 
     Storage subsystem  724  stores programming and data constructs that provide the functionality of some or all of the modules and methods described herein. These software modules are generally executed by processor  714  alone or in combination with other processors. 
     Memory  726  used in the storage subsystem can include a number of memories including a main random access memory (RAM)  730  for storage of instructions and data during program execution and a read only memory (ROM)  732  in which fixed instructions are stored. A file storage subsystem  728  can provide persistent storage for program and data files, and can include a hard disk drive, a floppy disk drive along with associated removable media, a CD-ROM drive, an optical drive, or removable media cartridges. The modules implementing the functionality of certain implementations can be stored by file storage subsystem  728  in the storage subsystem  724 , or in other machines accessible by the processor. 
     Bus subsystem  712  provides a mechanism for letting the various components and subsystems of computer system  710  communicate with each other as intended. Although bus subsystem  712  is shown schematically as a single bus, alternative implementations of the bus subsystem can use multiple busses. 
     Computer system  710  can be of varying types including a workstation, server, computing cluster, blade server, server farm, or any other data processing system or computing device. Due to the ever-changing nature of computers and networks, the description of computer system  710  depicted in  FIG. 7  is intended only as one example. Many other configurations of computer system  710  are possible having more or fewer components than the computer system depicted in  FIG. 7 . 
     Particular Implementations 
     In one implementation, a method is described from the perspective of a server receiving messages from user software. The method includes, in response to a first social sync action, receiving a set of prospect or contact objects or references to the prospect or contact objects and a request to fill in a plurality of blank fields in the objects with social identification handles from a plurality of social network platforms that are independently operated. It also includes updating the prospect or contact objects to include the social identification handles. It further includes transmitting for display data that includes at least some of the social identification handles or references to the social identification handles and an interface that shows that at least some of the blank fields have been filled in. 
     This and other method described can be presented from the perspective of a mobile device and user software interacting with a server. From the mobile device perspective, the method relates CRM data to social data, relying on the server for, in response to a first social sync action, receiving a set of prospect or contact objects or references to the prospect or contact objects and a request to fill in a plurality of blank fields in the objects with social identification handles from a plurality of social network platforms that are independently operated. The method also includes updating the prospect or contact objects to include the social identification handles. In some implementations, the server transmits data, through the mobile device that includes at least some of the social identification handles or references to the social identification handles and an interface that shows that at least some of the blank fields have been filled in. 
     This method and other implementations of the technology disclosed can include one or more of the following features and/or features described in connection with additional methods disclosed. In the interest of conciseness, the combinations of features disclosed in this application are not individually enumerated and are not repeated with each base set of features. The reader will understand how features identified in this section can readily be combined with sets of base features identified as implementations such as social syn action, rich user profile, or social data schema. 
     The method also includes assembling social data of the prospect or contact objects from the plurality of social network platforms, including social identification handles. It further includes identifying unique social keys in pre-assembled social data that corresponds to the prospect or contact objects and updating the prospect or contact objects with the unique social keys. 
     The method also includes, in response to a subsequent social sync action, receiving the unique social keys or references to the unique social keys or references to the prospect or contact objects, updating the prospect or contact objects to include further social data assembled subsequent to the first social sync action, and transmitting for display data that includes at least some of the further assembled social data or references to the further assembled social data. It further includes receiving a specification of which blank fields in the prospect or contact objects to fill in with social data. 
     The method also includes appending trust tags to the social data of the prospect or contact objects. The trust tags include names of the social network platforms, interface categories of the social network platforms, jurisdictional origins of the social network platforms, and engagement preferences of prospects or contacts. The interface categories of the social network platforms include access controlled APIs, public Internet, and social networking sites. The jurisdictional origins of the social network platforms specify engagement rules applicable to geographic locations of the social network platforms. The engagement preferences of the prospects or contacts specify whether the prospects or contacts have opted-in or opted-out of any use of their social identification handles. 
     Other implementations may include a non-transitory computer readable storage medium storing instructions executable by a processor to perform any of the methods described above. Yet another implementation may include a system including memory and one or more processors operable to execute instructions, stored in the memory, to perform any of the methods described above. 
     In another implementation, a method is described from the perspective of a server receiving messages from user software. The method receiving social handle information about a customer that was not collected in customer interactions directly with a CRM system. It also includes using the social handle information to identify a rich user profile that includes information collected from social network platforms external to the CRM system. It further includes, in response to the social handle information, automatically retrieving conversation preferences and interests of the customer from the rich user profile, and generating an interface that highlights conversation preferences and interests of the customer for use in interactions with the customer. 
     This method and other implementations of the technology disclosed can include one or more of the following features and/or features described in connection with additional methods disclosed. 
     The rich user profile includes biographic information about the customer. It also includes at least employment history and skills and expertise of the customer. It also identifies one or more industries the customer works in along with topics and entities that interest the customer. It further includes purchase history of the customer. It further specifies past service requests made by the customer. 
     Other implementations may include a non-transitory computer readable storage medium storing instructions executable by a processor to perform any of the methods described above. Yet another implementation may include a system including memory and one or more processors operable to execute instructions, stored in the memory, to perform any of the methods described above. 
     While the present technology is disclosed by reference to the preferred implementations and examples detailed above, it is to be understood that these examples are intended in an illustrative rather than in a limiting sense. It is contemplated that modifications and combinations will readily occur to those skilled in the art, which modifications and combinations will be within the spirit of the technology and the scope of the following claims.