Patent ID: 8577895

Claim:
A method to be executed at least in part in a computing device for dynamically managing contacts lists information in a multimodal communication system, the method comprising: determining a user's profile at processor of the computing device; determining contact information associated with contacts in a contacts list for the user, the contact information including a current time of day for the contacts, a current day of week for the contacts, a current location of the contacts, application capabilities for the contacts, and past communication patterns with the contacts at the processor of the computing device in conjunction with at least one of a directory server, a uniform communication server, a communication server, and a presence server, wherein the past communication patterns include available one of: a modality of each past communication session, a modality of future activities scheduled in the past, a number of participants in each past communication session, and an initiator of each past communication session; computing weighted factors for each of the contacts based on the contact information at the processor; computing an overall weight for each contact based on the weighted factors associated with each contact at the processor; ordering the contacts list based on the overall weight of each contact in the contacts list at the processor; presenting the ordered contacts list to the user through a display of a device associated with the user; updating the weighted factors in response to changes to the contact information at the processor and based on feedback from a plurality of devices associated with the user for rendering the contacts list based on one or more capability of each device and corresponding capabilities of contacts in the contacts list; dynamically re-ordering the contacts list based on the updated weighted factors at the processor; customizing and reordering the contacts list for each of a plurality of devices associated with the user rendering the contacts list based on one or more capability of each device at the processor and corresponding capabilities of contacts in the contacts list; and making the contact list available, through a communication module of the communication server, in a unified contact store to a communication application associated with the user, wherein the contact list is reordered based on a capability of the communication application.