IP Library Granted Patent US 9,424,541
Granted Patent B2
US 9,424,541 · App. 12/492,114 · Granted Aug 23, 2016

Policy based user contacts list management

Inventors: Rohit Koul (Bangalore, IN); Gurudutta Ramanathaiah (Bangalore, IN); Deepak Ramakrishnan (Bangalore, IN)
Assignee: ORACLE INTERNATIONAL CORPORATION
G06Q10/06G06Q10/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,424,541
App. No.
12/492,114
Granted
Aug 23, 2016
Kind
B2
Abstract

Embodiments of the present invention enable policy-based management of a user contacts list. Applications of the present invention are its use in embodiments of Instant Messaging (IM) systems. During an IM session, a session owner may temporarily add a contact to an active contacts list for a duration determined by evaluating constraints from one or more policies associated with the contact. At IM session initialization, a session owner's persistently stored contacts and their associated policies are retrieved, and the policies are evaluated. An active contacts list for use during the IM session is generated from a subset of stored contacts for which all associated policy constraints are satisfied. In embodiments, the active contacts list may be updated during a session by re-evaluating the stored contacts and associated policies. In embodiments, an active contacts list is updated after addition of a new contact determined to have an associated enabled policy satisfied.

Claims (40)

1. A system for managing an active user contacts list for a user of an electronic communication application, the system comprising:

a user contact data store that stores a plurality of user contacts;

a policy data store that stores one or more policies for each user contact stored in the user contact data store;

a data source that includes evaluation data for use in evaluating the policies in the policy data store, wherein the evaluation data is periodically updated;

a messaging server, operating on a computer including one or more microprocessors, that includes an active contacts list generator coupled to the user contact data store and the policy data store, for generating an active user contacts list in response to a session initialization request from a session owner using a messaging client, wherein each user contact on the active users contact list satisfies the one or more policies associated with that user contact based on the evaluation data;

wherein the active contacts list generator operates to update, during a communication session established by the session initialization request, the active user contacts list in response to a change in the evaluation data;

wherein the evaluation data change is detected via a polling request received from the messaging client at a configurable interval, and results in a change for a particular user contact in the user contact data store in satisfying a particular policy stored in the policy data store.

2. The system of claim 1 , wherein the one or more policies for each user contact stored in the user contact data store are configurable.

3. The system of claim 1 wherein the active contacts list generator comprises:

a policy evaluator that evaluates the one or more policies associated with each user contact.

4. The system of claim 3 wherein the policy is associated with a set of logical constraints.

5. The system of claim 1 wherein the messaging client operates on a second computer system and includes a user interface that receives input from the session owner and displays session information data to the session owner.

6. The system of claim 5 wherein the messaging client receives the active user contacts lists and caches the received active user contact list.

7. The system of claim 5 , wherein the messaging client further comprises a client local data store that stores the session information data comprising the active user contacts list and displayed to the session owner.

8. The system of claim 5 wherein the user interface provides a visual display of the active user contacts list.

9. A non-transitory computer readable storage medium storing a set of instructions executable by one or more processors to perform a method comprising:

configuring a user contact data store that stores a plurality of user contacts, and a policy data store that stores one or more policies for each user contact stored in the user contact data store;

configuring a data source that includes evaluation data for use in evaluating the policies in the policy data store, wherein the evaluation data is periodically updated;

receiving, via a messaging server executing on a machine including one or more microprocessors, a request for initializing a communication session associated with a session owner from a messaging client, wherein the message server is coupled to the user contact data store and the policy data store;

generating, in response to the session initialization request, an active user contacts list, wherein each user contact on the active users contact list satisfies the one or more policies associated with that user contact based on the evaluation data;

updating, during the communication session and via the active contacts list generator the active user contacts list in response to a change in the evaluation data;

wherein the evaluation data change is detected via a polling request received from the messaging client at a configurable interval, and results in a change for a particular user contact in the user contact data store in satisfying a particular policy stored in the policy data store.

10. The non-transitory computer readable storage medium of claim 9 , wherein the one or more policies associated with each user contact stored in the user contact data store are configurable.

11. The non-transitory computer readable storage medium of claim 9 , wherein the messaging client operates on a second computer system and includes a user interface that receives input from the session owner and displays session information data to the session owner.

12. The non-transitory computer readable storage medium of claim 11 , wherein the messaging client receives the active user contacts lists and caches the received active user contact list.

13. The non-transitory computer readable storage medium of claim 9 , wherein the active contacts list generator comprises:

a policy evaluator that evaluates the one or more policies associated with each user contact.

14. The non-transitory computer readable storage medium of claim 9 , wherein the messaging client further comprises a client local data store that stores the session information data comprising the active user contacts list and displayed to the session owner.

15. The non-transitory computer readable storage medium of claim 9 , wherein the user interface provides a visual display of the active user contacts list.

16. A method for managing an active user contacts list for a user of an electronic communication system, the method comprising:

configuring a user contact data store that stores a plurality of user contacts, and a policy data store that stores one or more policies for each user contact stored in the user contact data store;

configuring a data source that includes evaluation data for use in evaluating the policies in the policy data store, wherein the evaluation data is periodically updated;

receiving, via a messaging server executing on a machine including one or more microprocessors, a request for initializing a communication session associated with a session owner from a messaging client, wherein the message server is coupled to the user contact data store and the policy data store;

generating, in response to the session initialization request, an active user contacts list, wherein each user contact on the active users contact list satisfies the one or more policies associated with that user contact based on the evaluation data;

updating, during the communication session and via the active contacts list generator the active user contacts list in response to a change in the evaluation data;

wherein the evaluation data change is detected via a polling request received from the messaging client at a configurable interval, and results in a change for a particular user contact in the user contact data store in satisfying a particular policy stored in the policy data store.

17. The method of claim 16 , wherein the one or more policies associated with each user contact stored in the user contact data store are configurable.

18. The method of claim 16 , wherein the messaging client operates on a second computer system and includes a user interface that receives input from the session owner and displays session information data to the session owner.

19. The method of 18 , wherein the messaging client receives the active user contacts lists and caches the received active user contact list.

20. The method of 16 , wherein the user interface provides a visual display of the active user contacts list.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 25, 2009
From: KOUL, ROHIT; RAMANATHAIAH, GURUDUTTA; RAMAKRISHNAN, DEEPAK
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 022877/0947 →
Continuity (1)
Related Publication 20100332584A1 · Dec 30, 2010