Enterprise social networking software architecture
Abstract
An enterprise-based social networking application. Events for individuals may be collected from various enterprise-based information systems automatically using adaptors that are specially tailored for particular types of information systems. Such events may then be used to populate event feeds regarding individuals in that enterprise. A filtering model for formulating event feeds identifies events by individual, event type, and event time. The filter also identifies which individuals are in which group of a participant, and identifies which groups correspond to which event types. Incoming events may then be filtered into the event feeds depending on the group to which the individual belongs. Filtering an event from an events pool to formulate an event feed is also provided.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A computer program product comprising one or more hardware storage devices having stored thereon computer-executable instructions that, when executed by one of more processors of the computing system, cause the computing system to instantiate the following:
a collector module that is responsive to configuration information to instantiate and support a plurality of adaptor modules, wherein each adaptor module is configured to collect events regarding a plurality of individuals from an information system of a particular type, wherein not all of the plurality of adaptor modules are for collecting events from an information system of the same particular type; and an events pool into which the events detected by the plurality of adaptor modules are stored, and from which the events may be drawn to formulate event feeds regarding the plurality of individuals.
2 . The computer program product in accordance with claim 1 , further comprising an event feed construction mechanism configured to extract events from the events pool.
3 . The computer program product in accordance with claim 1 , wherein the events pool is a database.
4 . The computer program product in accordance with claim 1 , wherein each of the plurality of adaptors have common core functionality, and also have custom functionality used to interact with their corresponding information system.
5 . The computer program product in accordance with claim 4 , wherein one function of the core functionality is to identify a plurality of individuals in an enterprise served by an enterprise-based social networking program.
6 . The computer program product in accordance with claim 1 , wherein the collector module is configured to start each of the plurality of adaptors at periodic intervals in response to configuration information.
7 . The computer program product in accordance with claim 1 , wherein the collector module notifies each of the plurality of adaptor modules of the identity of the events pool.
8 . The computer program product in accordance with claim 1 , wherein a first of the plurality of adaptors is configured to extract events from an information system of a first type, and a second of the plurality of adaptors is configured to extract events from an information system of a second type.
9 . The computer program product in accordance with claim 1 , wherein the particular type of information systems is selected from the group consisting of:
administrative human resources system; enterprise directory system; instant messaging system; enterprise calendar system; document management system; financial management system; or one or more other enterprise information systems.
10 . A method, implemented at a computer system that includes one or more processors, for preparing to provide an event feed to a participant in a social networking application, the event feed prepared from events in an events pool, the events pool containing events regarding a plurality of individuals, the method comprising:
tracking events regarding an individual by identifying an individual, an event type, and a time for each event; recording a group membership for a plurality of groups for the participant, each of at least two of the plurality of groups including one or more individuals for which the participant is to receive event feeds; and deciding, for the plurality of groups, which event types are to be fed to the participant, wherein the event types for individuals in one group of the plurality of groups at least partially differ from event types for individuals in another group of the plurality of groups.
11 . The method in accordance with claim 10 , wherein the events include custom fields that may differ depending on the event type.
12 . The method in accordance with claim 10 , wherein the social networking application tracks events for individuals in an enterprise.
13 . The method in accordance with claim 10 , further comprising:
extracting an event from the events pool; determining which individual the event is about; determining which of one or more groups of the plurality of groups for the participant that the individual belongs to; and determining that the event is of an event type that corresponds to a group to which the individual belongs for the participant.
14 . The method in accordance with claim 13 , further comprising:
in response to determining that the event is of an event type that corresponds to the group to which the individual belongs for the participant, providing the event in an event feed provided to the participant.
15 . A method, implemented at a computer system that includes one or more processors, for filtering an event from an events pool to formulate an event feed, the method comprising:
accessing an event from an events pool; determining a topic individual that the event is about; for a particular participant, determining whether the topic individual is within a group for the particular participant; when the topic individual is within the group of the particular participant, determining whether an event type of the event is one that is to be reported in an event feed; and if the event is of a type to be reported, providing the event into the event feed.
16 . The method of claim 15 , wherein when the topic individual is not within the group of the particular participant, refraining from providing the event into the event feed.
17 . The method of claim 15 , wherein if the event is not of a type to be reported, refraining from providing the event into the event feed.
18 . The method of claim 15 , further comprising determining a particular format in which to present the event into the event feed.
19 . The method of claim 18 , further comprising extracting a copy of the event from an event pool, and providing the event into the event feed in the particular format.
20 . The method of claim 15 , further comprising determining whether the topic individual is within one or more groups corresponding to a plurality of participants.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.