Caching user information in an integrated communication system
View Patent ↗An integrated messaging system for performing various types of messaging across different types of networks, including integrated user interfaces and administrator interfaces. Embodiments include a communication server that couples among networks of different types, and an interface module that couples to the communication server. The interface module may be hosted on a messaging server of a network. The interface module pulls various user information from the messaging server, including information relevant to at least the network that includes the messaging server. A cache couples to the communication server and to the interface module to hold information from the communication server and/or the user information pulled from messaging server. The interface module directs a message from the messaging server and/or the cache to at least one device on the networks using the user information.
1. A method for integrated messaging, comprising:
interfacing with a network using an interface module (IM), the network including a database storing a groupware application and a directory service, wherein the directory service stores user information for use in messaging of a first type among client devices coupled to the network;
pushing the user information with the IM from the database to a messaging communication server (MCS), wherein the MCS couples to at least one communication network and to the network;
caching the pushed user information;
providing—messaging of a second type among the client devices, wherein the MCS uses the pushed user information to provide the messaging of a second type;
detecting changes to the user information using the IM; and
pushing the detected changes to the MCS;
wherein the messaging of the second type includes voice mail messaging, and wherein the MCS comprises voice applications;
wherein the voice applications perform functions including:
maintaining shared address lists that all voice mail users can view and edit;
scheduling meetings that include people and conference rooms by viewing associated free or busy schedules;
sending a new voice mail;
forwarding a received voice mail;
exchanging voice mails and corresponding information with the groupware applications; and
granting people other than a voice mail user access to user voice mailboxes on behalf of the user.
2. The method of claim 1 , wherein the cache includes:
a local cache that is local to a certain MCS; and
a distributed cache that is communicatively coupled among multiple MCSs.
3. The method of claim 2 , wherein the user information pushed by the IM includes:
a global address list (GAL) that includes information pertaining to all members of the enterprise;
public folders that include information of the enterprise that is shared with all users, including shared contact information and shared calendar information;
personal contacts folders that include corresponding contact-information for each member of the enterprise; and
a user list that includes information of users of the integrated messaging.
4. The method of claim 3 , wherein the GAL and the public folders are each pushed periodically.
5. The method of claim 3 , wherein the personal folders are pushed on demand, including when a user logs into the MCS.
6. The method of claim 3 , wherein the personal folders are pushed incrementally, including upon detecting an update of information in a personal folder.
7. The method of claim 3 , wherein updated information in the personal folders is pushed incrementally upon detecting an update of information in a personal folder.
8. The method of claim 3 , wherein the personal folders include a user contacts folder, and wherein the contacts folder is pushed incrementally, including pushing the contacts folder to the MCS upon a user initially logging into the MCS, wherein the contacts folder is pushed with a timestamp.
9. The method of claim 8 , wherein the timestamp is applied prior to accessing the contacts folder for pushing.
10. The method of claim 8 , wherein pushing the contacts folder incrementally includes receiving the contacts folder and a timestamp subsequent to the user logging into the MCS, including receiving detected updates to the contacts folder.
11. The method of claim 10 , wherein pushing the contacts folder incrementally further comprises:
the MCS receiving the requested contacts folder, timestamp and a total number of contacts listed in the contacts folder;
comparing the received total number of contacts with a cached total number of contacts corresponding to a previous version of the contacts folder; and
if there is a difference between the two totals, requesting the contacts folder to be pushed by the IM to the MCS.