US 20050135596 A1
A system comprising an analysis engine that interacts with a user profile server and a content management system. The user profile server is used to collect and manage data. The content management system manages a plurality of content types for a plurality of service points in real-time. A service point supports a content type.
1. A method including:
receiving personal attributes for a first user and content to perform an analysis to generate a recommendation for the first user, the recommendation to include a plurality of content types, a first content type being personalized for the first user and being generated for a contact channel utilized to communicate with the first user and a second content type being personalized for a second user;
retrieving the first content type for the first user and for the contact channel utilized to communicate with the first user; and
retrieving the second content type for the second user.
2. The method of
3. The method of
4. The method of
5. The method of
6. The method of
7. The method of
8. The method of
9. The method of
10. A system including:
an analysis engine to receive personal attributes for a first user and content to perform an analysis to generate a recommendation for the first user, the recommendation to include a plurality of content types, a first content type personalized for the first user and generated for a contact channel that is utilized to communicate with the first user and a second content type personalized for a second user;
a first service point to retrieve the first content type for the first user and for the contact channel utilized to communicate with the first user; and
a second service point to retrieve the second content type for the second user.
11. The system of
12. The system of
13. The system of
14. The system of
15. The system of
16. The system of
17. The system of
18. The system of
19. A system including:
a first means for receiving personal attributes for a first user and content to perform an analysis to generate a recommendation for the first user, the recommendation to include a plurality of content types, a first content type personalized for the first user and generated for a contact channel that is utilized to communicate with the first user and a second content type personalized for a second user;
a second means for retrieving the first content type for the first user and for the contact channel utilized to communicate with the first user; and
a second means for retrieving the second content type for the second user.
20. A machine readable storage media containing executable program instructions which when executed cause a digital processing system to:
receive personal attributes for a first user and content to perform an analysis to generate a recommendation for the first user, the recommendation to include a plurality of content types, a first content type being personalized for the first user and being generated for a contact channel utilized to communicate with the first user and a second content type being personalized for a second user;
retrieve the first content type for the first user and for the contact channel utilized to communicate with the first user; and
retrieve the second content type for the second user.
This application is a continuation of U.S. application Ser. No. 09/752,896 filed Dec. 26, 2000, which is incorporated herein by reference.
The invention relates generally to a method and apparatus for providing personalized information and services to individuals from a customer contact center.
Businesses are able to offer goods and services to customers located world-wide through networks such as the Internet. As people become increasingly at ease with purchasing goods and services over the Internet, businesses have been able to expand and flourish. Customers are generally interested in quickly perusing the goods and services offered by a business operating on the Internet. Businesses that offer personalized service to customers have a competitive edge over other businesses because customers will generally be serviced more quickly and will be provided with higher quality of service.
Although there are a number of existing products that enable businesses to develop web sites that are able to provide personalized services to their customers, the levels of capability for a personalized service are different. Instead of creating a real integrated solution for personalized service, most existing personalization features are typically built around or tied together some original singularly designed solutions. For example, Net Perceptions offers a series of products that are built around its collaborative filtering technology. Net Perceptions applies this technology to a community behavior analysis based recommendation engine, a knowledge management system, and a campaign management system thereby providing one type of personalization service that may be used in an E-commerce system and a customer call center. However, the users of Net Perceptions system must integrate it with other content management systems to target Net Perceptions system must integrate it with other content management systems to target pre-determined content based upon the recommendations that are generated. One disadvantage to Net Perceptions system is that it is unable to provide different service levels for content targeting. Additionally, the content flexibility and the variation of the content really depend on the external content management system. The knowledge management system provided by Net Perception cannot perform the function of a content management system.
A DYNAMO™ personalization service server by the Art Technology Group (ATG) offers another type of personalized service. The DYNAMO™ personalization server is adapted to manage both static and dynamic user attributes. This provides service content personalization while the customer is being served by a business on the Internet. To generate dynamic user attributes, ATG's DYNAMO™ personalization server uses a statistics based analysis mechanism. The analysis mechanism uses information collected while a user navigates the Internet. One disadvantage to ATG's DYNAMO™ personalization server is that the services are not differentiated for different service points (e.g., for web, voice, Email, system internal usage, etc.) Although DYNAMO™ personalization server enables service rules (e.g., rules that indicate which groups of service content should be provided to which groups of customers), these service rules are unable to differentiate the content for one customer at different service points. One reason is that ATG's DYNAMO™ personalization server depends upon an external content management system to provide service content.
Interact from Responsys.com is an e-mail-based outbound campaign service system that may support multi-media content. However, Interact is limited to a single service channel, i.e., Email, which does not support different content types for different service channels.
E.Piphany is yet another company that offers a personalized service product. E.Piphany's product provides real-time personalization service for customer call centers. The product may be used to define and deliver real-time marketing campaigns (e.g., advertising) through multiple customer touch points such as the phone, the web, an e-mail system, and facsimile. E.Piphany's product uses real-time analysis mechanisms that include a specialized real-time data mining techniques, collaborative filtering, and likelihood analysis. However, the product's personalization process, e.g., for campaigns and for recommendations, relates solely to different customer direct contact points after a customer contact point has been established. It does not contribute to the contact point selection and other system processes. Additionally, the product is not integrated with customer intrinsic information-based personalization service. Moreover, the product is not integrated with a content management system to differentiate different content types to different service points. It is therefore desirable to have a system that addresses the shortcomings associated with conventional systems.
A system is disclosed that comprises a user profile server, an analysis engine, a content management system, and their interaction to provide personalized services or other like services. The user profile server is used to collect and manage user data. The content management system is used to manage a plurality of content types for a plurality of service points. The analysis and content services are performed in real-time. The system differentiates content types for different service points. Additional features, embodiments, and benefits will be evident in view of the figures and detailed description presented herein.
The accompanying drawings are included to provide a further understanding of the invention, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention. In the drawings,
One embodiment of the invention relates to an analysis engine coupled to a user profile server and a content management system. Data is transferred from multiple user data collection points to the analysis engine. Personalized services are driven by analysis results dynamically coupled with user information and service content. This allows businesses using this system to offer a customer an improved integrated solution.
Another embodiment of the invention relates to a content management system that is configured to manage a plurality of content types for the same logic item. Examples of content types include the suitable content types for a customer client, an agent client, an interactive voice response system client, and an e-mail client. The content management system provides a content item that is personalized to the receiving party. The receiving party may receive a first content type at the first service point and receive a second content type at the second service point, even though both content types are for the same logic item. One illustration of this embodiment relates to an agent trying to sell a good or service to a customer. While the customer may wish to view the good or service in great detail, an agent typically only requires brief information regarding the good or service since the agent is presumably familiar with the goods or services he is trying to sell. Therefore, the content type for agent assistance is different from the content type for customer self-service.
Specific embodiments are set forth to provide a thorough understanding of the present invention. However, it will be understood by one skilled in the art that the invention may be practiced without these details. Moreover, well known elements, devices, process steps and the like are not set forth in detail in order to avoid obscuring the present invention. Additionally, although the figures present the personalization subsystem, multiple user data collection points, and the multiple service points as separate units, it will be appreciated that the personalization subsystem and multiple service points may be a single unit having any configuration that achieves a similar or the same result.
Data repository 175 is also coupled to personalization subsystem 170. Data repository 175 may include different types of data repositories such as a database or any other storage device or memory.
It will be appreciated that system 100 may or may not include a network. A network includes local area networks (LANS), wide area networks (WANS), global networks such as the Internet, networking of telecommunications devices (e.g., cellular networks, PCS networks, wireline telephony networks, and the like.
It will be appreciated that techniques of the invention may be implemented using a network in a variety of configurations such as the network being used by customer-client 110 and agent client 120 to communicate to the servers in data collection and service points. Additionally, the network may be used among components in multiple user data collection and service points 180. In another embodiment, the network may be used to connect components in personalization subsystem 170 from data collection and service points in 180. The network may be connected to the components described herein in any other suitable configuration as well.
While some of these components are not new, it will be appreciated that the components in combination provide a novel way in which to achieve an improved integrated solution. Each of these components is described below: Since the discussion of the components such as data collection and service points 180 is relatively brief compared to personalization subsystem 170, these components are discussed first followed by a discussion of personalization subsystem 170.
Customer-client 110 is an application that runs on a computer or workstation. Customer-client 110 enables a customer to send and receive data from components such as self-service web site, Email Response Management System (“ERMS”), interactive voice response system (“IVRS”) included in multiple data collection and self service points 180.
Agent client 120 is an application that runs on a computer or workstation. Agent client 120 sends and receives data from an agent desktop service component 184. It will be appreciated that other clients may be added to system 200.
Data Collection and Service Points
Data collection and service points include agent desktop server 184, IVRS 130, ERMS 140, self-service web sites 150, routing manager 182, outbound campaign manager 186, and agent desktop server 184. Agent desktop server 184, as a data collection point, may input customer data to both the user profile server 172 and to analysis engine 174. Agent desktop server 184 may also contribute service content to the content management system 176. As a service point, agent desktop server 184 may use personalization subsystem 170 to retrieve content for agent assistance or for direct presentation to a customer.
IVRS 130 is a server or an application that runs on a computer or workstation. IVRS 130 collects customer's requests. IVRS 130 may automatically play an audio response to a customer.
ERMS 140 is a server or an application that runs on a computer or workstation. ERMS 140 enables a person to send and receive e-mail to or from a customer contact center (not shown).
Self-service web sites 150 are web sites provided by a customer contact center to its potential customers that may provide automatic service without involvement of an agent.
Outbound campaign manager 186 is connected to user profile server 172, analysis engine 174, and content management system 176. Outbound campaign manager 186 provides a multimedia and multi-channel outbound campaign service. Outbound campaign manager 186 also provides service based upon recommendations. It also targets a campaign service content to be sent to a user based upon a user profile information through the operational database (not shown) or the data repository. For example, outbound campaign manager 186 may provide content to a customer that contains visual and audio information through e-mail, and/or audio into a telephone channel. The multimedia campaign content is managed in content management system 176 and is retrievable by outbound campaign manager 186. Outbound campaign manager 186 may be automatically triggered by analysis engine 174 causing outbound campaign manager 186 to retrieve campaign content from the content management system 176. Outbound campaign manager 186 then sends campaign content to customer-client 110 through an appropriate customer contact channel. Customer contact channels for a customer include an e-mail address(es), a phone number(s), a mailing address(es), or other suitable channels. It will be appreciated that outbound campaign manager 186 is configured to retrieve the campaign content item in a different media type and different format from content management system 176 for different customer contact channels. User profile server 172 provides campaign target information (i.e., to whom the different campaign content should be sent).
Another component of data collection and service points 180 is agent desktop server 184. Agent desktop server 184 is a server connected to user profile server 172, analysis engine 174, and content management system 176. Agent desktop server 184 provides information and services to agent client 120, e.g., customer info as to the optimal product or service to be provided to a customer, multimedia applications for customer contact, etc. It also provides recommendation to agent based upon data generated from analysis engine 174 in association with content management system 176.
User profile server 172 collects, manages, and provides service of user profile data, user credential data, and other relevant data to various components such as to the routing manager 182, agent desktop server 184, outbound campaign manager 186, as well as to analysis engine 174. These components may then act upon this data.
User profile data includes both static and dynamic user attributes. Static attributes are attributes that have been stored in a data repository 175 persistently. Static attributes relate to relevant prolonged user information such as a user's name, address, phone number, e-mail, occupation, or other suitable information. In contrast, a dynamic attribute is an attribute that is inputted by an agent and generated by analysis engine 174 in real-time during service or other like method of generating dynamic attributes.
Profile data may be inputted from various sources such as through customer-client 110 or transferred from other servers. Additionally, an agent client 120 may input profile data for a particular customer. Data is stored in a data repository. User profile server 172 may have a data repository that is used solely by the user profile server 172 or, alternatively, user profile server 172 may use a common data repository shared with other systems.
User profile server 172 may also facilitate user authentication from clients such as web-based clients by associating a web server authentication mechanism with user credential data maintained in one data repository or a plurality of data repositories. Access is denied to clients in which a user fails user authentication.
In order to perform some of the tasks mentioned above, user profile server 172 may organize data in a variety of ways.
A user group may include the group ID, the name of the group, the classification of the group, and other relevant information. User profile, on the other hand, may include the user ID, the name of the user, e-mail, and other data. User credential information includes the user ID, password, and other credential information such as a credit card or other means of payment. Other applicable information may be included in the user credential information such as the card user's mother's maiden name. This information may be used to ensure that a third party is not illegally using the credit card of the user. User profile information is associated with the user credential information and the user preference information. The user credential and the user preference may be stored separately from the user profile data to maximize the storage efficiency, data update flexibility, as well as provide convenience for information protection and retrieval.
Analysis engine 174 may be a server that has program instructions or it may be program instructions (e.g., computer programs, software, etc.) on a shared server. Analysis engine 174 may use an application program interface in order to accept input for an analysis and to generate a result or a recommendation. The application program interface allows different analysis mechanisms to be plugged in for adapting to new technological advancements such as a new version of program instructions (e.g., computer programs, software, etc.).
Analysis engine 174 performs analysis based upon data provided to analysis engine 174. The generated result combined with service content data may be sent to the data collection and service points 180 such as routing manager 182, agent desktop server 184, and outbound campaign manager 186.
To illustrate the manner in which analysis engine 174 operates, an example of a customer seeking to purchase a sports car is presented below. A customer requests agent assistance by inputting request data from the customer self-service web site 150. The data, contained in a customer request information object, is transferred from customer self-service site 150 to routing manager 182 to find an appropriate agent. Routing manager 182 contacts personalization subsystem 170 for personal attributes and service recommendation retrieving. The personal attributes may be retrieved from the user profile server 172, which may be combined with user request data as an input to analysis engine 174. The user request data may include personal attributes, desire to spend money, the date of delivery of the sports car, the types of sports cars he would consider acceptable. Analysis engine 174 performs computations which may include both statistical and analytical computations based upon the data collected and newly inputted. Analysis engine 174 produces a result in the form of a recommendation metadata object that is associated with content in content management system 176 for retrieving a result. Routing manager 182 may access the result by requesting the result from content management system 176. Alternatively, analysis engine 174 may retrieve results from the content management system 176 and send the result directly to routing manager 182. The recommendation metadata object has information pertaining to the user, user group, content, content category, and content access control. For a recommendation to be made based upon a certain content category, the access control may be applied to the user group for different items in the category for different group of users. The result contained in the recommendation metadata object may include the content ID, the customer's user ID, and the service point ID, which are needed for content retrieval from content management system 176.
The appropriate item attributes may then be retrieved from the content management system 176 by using, for instance, the item ID. Routing manager 182 compares the recommended service data that was obtained from the content management system 176 to the data that pertains to agents that have relevant skills to the good or service that a customer desires. The information regarding the skills and experience of various agents is maintained in data repository 175 or a separate data repository. Routing manager 182 then determines the agent that best matches the customer's requirements. An agent that best matches a customer's request regarding a good or service may be based upon a variety of factors. For instance, an application system may be customized to consider the agent's area of specialization, the amount of time the agent has specialized in that particular area, the gender or age of the agent, or any other factors that the application customizer (e.g., system designer, user, etc.) may deem relevant. In this scenario, the best agent would be a person who specializes in selling recommended sports cars. By matching the most qualified agent to a customer, techniques described herein are able to provide personalized services by increasing the quality of service delivered and potentially reducing the amount of time to perform a transaction between an agent and a customer.
In another embodiment of the invention, the information presented on the graphic user interface (“GUI”) to the agent generally contains information relating to the same topic as that which is presented on the GUI to the customer. However, the information on the agent's GUI contains less details than that which is presented to a customer. Each service point such as routing manager 182, outbound campaign manager 186, or agent desktop server 184, may retrieve the recommendation contained in the recommendation metadata object from the content management system 176 by using a unique content ID and service point ID. The content ID is the same for all types of service points. However, depending upon the service point ID, different content may be retrieved. For example, agent desktop server 184 may retrieve a first content type for an agent, and a second content type for customer browser. For example, the type of content that is retrieved and provided to an agent through agent desktop server 184 should be in a format that the agent is able to comprehend but the content does not need to go into as much detail such as extensive marketing information as if the content was being sent to a new customer. This is due to the fact that agents are generally assumed to have knowledge about the services or products that are being provided by the company.
After an agent is selected, the agent receives a request from the customer. The agent may then search for information that is responsive to the customer's request. To provide information such as information regarding a good to a customer, different customer contact channels may be used. Different customer contact channels are configured for different service points such as e-mail addresses, phone numbers, mailing addresses, or other suitable channels to retrieve different content types. A first customer service point and a second customer service point are configured to retrieve different types of content from content management system 176.
The communication protocol is open among a customer, routing manager 182, components in personalization subsystems, and agent desktop server 184. In order to implement techniques described herein, interface objects may be used. In one embodiment, interface objects for analysis engine 174 include recommendation engine, and recommendation service. RecommendationEngine is an object that contains attributes and methods for recommendation engine definition and services. It may be a plug-in from existing products or technologies which is beyond the scope of this invention.
RecommendationService is an interface object that provides recommendation services with appropriate content being retrieved from content management system 176. The service methods may include:
Other suitable service methods may also be used.
Content Management System
While analysis engine 174 performs analysis on the data sent to analysis engine 174, content management system 176 manages various kinds of content or content data for personalized customer services including content for agents to assist customers, content for customer service recommendations, and content for customer self-service web sites 150, and content for outbound campaigns.
Content management system 176 may be operated under an independent web server, a shared web server, or a server with other communication protocol. Content management system 176 is capable of searching and retrieving items such as content metadata and content data for other components such as analysis engine 174. Content metadata and the multimedia content data may be stored in data repository 175 or multiple data repositories.
Content management system 176 may be configured to support web browser based clients with search and category navigation interfaces that may be used by a customer and/or agent client 120 for navigation via the Internet. Content management system 176 also provides request/response application program interfaces (“APIs”) for service requests from other service components, such as from analysis engine 174 and outbound campaign manager 186.
Content management system 176 may contribute to agent script on the agent desktop. Based upon agent identification and profile, an agent script may be automatically generated after an agent is logged in. The agent may update his/her script during customer service. Additionally, each agent may contribute to data repository 175 by submitting new content to content management system 176.
Content may be requested by customer-client 110, IVRS 130, ERMS 140, or other data collection and service points 180. To illustrate, agent client 120 may determine that a certain content may be useful to a customer. Agent client 120 may then input the agent ID and/or the customer ID. Agent client 120 may input a content ID, explicitly or implicitly by using a content retrieval GUI. Each content ID uniquely identifies a content item described by a metadata object.
For outbound campaign manager 186, content management system 176 provides multimedia campaign content. It is possible to share campaign content with the recommendation content as “the content for customers”. However, each content item should have multiple presentation formats for different customer contact channels and for different type of applications.
Service target control data, such as the one to specify which customer or customer group will get what content or services, may be stored in a data repository such as data repository 175. For ease of operation, the metadata for content management system 176 is also stored in data repository 175 although the content data may be distributed in different data repositories.
In order to implement techniques of the one embodiment of the invention,
At block 800, the user profile server sends a user ID and the persistent attribute (e.g., preferred contact media, contact address, etc.) that should be updated to the analysis engine. At operation 810, the analysis engine responds with an updated attribute value which is sent back to the user profile server. At block 820, the user profile server updates a persistent attribute in the data repository and in the run-time environment of the service engine.
In the preceding detailed description, the invention is described with reference to specific embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention as set forth in the claims. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.