WO2009039702A1 - Procédé et système pour gérer les informations d'utilisateur dans le système de messagerie instantanée - Google Patents

Procédé et système pour gérer les informations d'utilisateur dans le système de messagerie instantanée Download PDF

Info

Publication number
WO2009039702A1
WO2009039702A1 PCT/CN2007/070786 CN2007070786W WO2009039702A1 WO 2009039702 A1 WO2009039702 A1 WO 2009039702A1 CN 2007070786 W CN2007070786 W CN 2007070786W WO 2009039702 A1 WO2009039702 A1 WO 2009039702A1
Authority
WO
WIPO (PCT)
Prior art keywords
user
information
friend
reverse
access server
Prior art date
Application number
PCT/CN2007/070786
Other languages
English (en)
French (fr)
Inventor
Yongwei Kong
Jianxiang Mo
Zhiguang Xu
Ji Xu
Original Assignee
Alibaba Group Holding Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Limited filed Critical Alibaba Group Holding Limited
Priority to JP2010526126A priority Critical patent/JP5379800B2/ja
Priority to US12/676,821 priority patent/US8554785B2/en
Priority to PCT/CN2007/070786 priority patent/WO2009039702A1/zh
Priority to EP07816977.8A priority patent/EP2194679B1/en
Publication of WO2009039702A1 publication Critical patent/WO2009039702A1/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Definitions

  • the present invention relates to instant messaging technologies in the field of communication and computer technology, and more particularly to a method and a corresponding system for user information management in an instant messaging system.
  • the online information of the friend needs to be obtained; at the same time, the login information of the user needs to be sent to the user who adds the user as a friend. If the user's online status changes, the user's online status change information needs to be sent to the user who added the user as a friend.
  • a centralized management method is generally adopted, and the user information of the user is managed by a dedicated user information management server.
  • the user's login information is sent to the user information management server, which is managed by the user information management server.
  • the online status changes after the user logs in, or the instant message is sent between the user and the user, the online information of the user looking for the contact needs to be searched through the user information management server. In this way, not only the load of the user information management server is increased, but also the network overhead is increased.
  • a user information management server cannot centrally manage all user online information, and user online information is distributed to multiple user information management servers.
  • searching for online information of a user it needs to be searched on multiple user information management servers, which reduces the efficiency of searching.
  • the search efficiency of the user information management server is drastically reduced, resulting in deterioration of the online information management performance of the user, which becomes a bottleneck for the operation of the entire instant messaging system.
  • the invention provides a method and a system for managing user information in instant messaging, which are used to solve the problem that the user information management server needs to be frequently accessed when querying user information in the prior art, which increases system load, increases network overhead, and affects system performance. .
  • a method for user information management in an instant messaging system includes the following steps:
  • the access server acquires and saves contact information of the logged-in user;
  • the access server notifies the other access server of the user information of the login user; and when the access server that receives the notification message determines that the contact of the login user is locally located, the user information of the login user is saved;
  • the query is performed locally or on another access server.
  • the access server further sends the status information of the contact of the logged-in user to the client where the logged-in user is located; and the other access servers that store the user information of the logged-in user further send the status information of the logged-in user to the relevant contact.
  • the contact information of the login user includes the friend information of the user and the reverse friend information.
  • a buddy list for storing user buddy information and a reverse buddy list for storing reverse friend information of the user are established on the access server, and the user identifier is locally located with the user in the buddy list.
  • the friend information association is associated with the reverse friend information of the user by the user identifier in the reverse friend table and the location information of the user is recorded.
  • the obtaining, by the access server, the contact information of the logged-in user includes the following steps: the access server that is logged in by the user searches for the buddy identifier and the reverse buddy identifier of the logged-in user from the database;
  • the access server searches for the buddy identifier in the reverse buddy list, and records the user identifier of the logged-in user into the associated reverse buddy information after finding the identifier;
  • the reverse friend identifier is searched in the friend table of the access server, and the user identifier of the login user is recorded in the associated friend information after the identifier is found.
  • the friend identifier is recorded in the reverse friend table, and the user identifier of the login user is used as the reverse friend information and associated with the friend identifier.
  • the reverse friend identifier is recorded in the friend table, and the user identifier of the login user is used as the friend information and associated with the reverse friend identifier.
  • the method further comprises the steps of:
  • the access server searches the local buddy list for the identity of the logged-in user, and finds the target After the identification, all local friend identifiers are obtained from the corresponding friend information; the location information of the access server is described.
  • the access server that receives the notification message searches for the login user identifier in the reverse friend table, and the identifier
  • the location information of the login user is recorded in the associated location information, and the state information of the login user is sent to the corresponding user according to the user identifier in the reverse friend information associated with the identifier.
  • the method further includes: when the access server requests status information of the login user from another access server, the other access server searches for the identifier of the login user in the local buddy list, and associates with the logged-in user The user identifier in the friend information is returned to the access server.
  • the method further includes: the access server searching for the user identifier returned by the other access server in the local reverse buddy list, and recording the location information of the user in the location information associated with the user identifier after finding the user identifier .
  • the access server when the status of the login user changes, notifies other access servers of the information of the user status change, and the access server that receives the notification message finds the login in the reverse buddy list.
  • the status change information of the login user is sent to the corresponding user according to the user identifier in the reverse friend information associated with the identifier.
  • the access server When the user status of the logged-in user is changed to quit the login, the access server further deletes the information of the logged-in user associated with the user identifier in the local buddy table and the reverse buddy list; when receiving the When the access server of the notification message finds the login user identifier in the reverse buddy list, the location information associated with it is further emptied.
  • the access server queries the contact identifier in the local reverse friend table, and forwards the instant message according to the location information associated with the login message.
  • the access server does not find the contact identifier in the local reverse buddy list, request the user's contact information from the other access server, and forward the instant message according to the contact information.
  • the access server sends a notification message and a request message to other access servers in a multicast manner.
  • a communication system comprising:
  • each access server is configured to acquire and save contact information of the logged-in user, notify other access servers of the user information of the logged-in user, and query the user's contact from the local and/or other access servers.
  • the user client accesses the instant messaging system through the access server, finds the contact information from the access server, and sends and receives the instant message through the access server.
  • the access server has a buddy list for storing user buddy information and a reverse buddy list for storing reverse buddy information of the user; the buddy list includes user identifier and buddy information local to the user, the reverse The buddy list contains the user identification and the reverse buddy information of the user and the location information of the user.
  • the invention manages the information of the user by establishing a friend table for storing the user friend information and a reverse friend table for storing the user reverse friend information on the access server, thereby greatly reducing the search on the user information management server.
  • the frequency of user information not only reduces the load of the user information management server, but also improves the search performance of the user information, improves the online information management performance of the user, and reduces the network overhead of the system.
  • FIG. 1A is a schematic structural diagram of a system according to an embodiment of the present invention.
  • FIG. 1B is a schematic structural diagram of a friend table according to an embodiment of the present invention.
  • FIG. 1C is a schematic structural diagram of a reverse buddy table according to an embodiment of the present invention.
  • FIG. 2 is a processing sequence diagram of a user login process in an embodiment of the present invention.
  • FIG. 3 is a processing sequence diagram of a user searching for online information of a friend according to an embodiment of the present invention
  • FIG. 4 is a processing sequence diagram of a user online state change information notification according to an embodiment of the present invention
  • FIG. 5 is a flowchart of processing a user sending a message according to an embodiment of the present invention
  • FIG. 6 is a flowchart of another process for a user to send a message according to an embodiment of the present invention.
  • FIG. 7 is a sequence diagram of processing when a user logs out according to an embodiment of the present invention.
  • the efficiency of finding user information is reduced, the load of the user information management server is large, and the performance of the online information management of the user is deteriorated, the user's friend table and the reverse friend table are established on the access server.
  • the communication system in this embodiment includes a plurality of access servers, and a plurality of login user clients connected to the server through a network.
  • Each access server is configured to obtain and save the contact information of the logged-in user, and notify the other access server of the user information of the logged-in user; and locally query the contact information of the user and forward the instant message.
  • the login user client accesses the instant messaging system through the access server, finds contact information from the access server, and sends an instant message to the contact through the access server.
  • each server in the group can receive multicast UDP information sent by other servers accessing the group.
  • the reverse buddy list is associated with the reverse buddy information of the user by the user identifier and records the location information of the user.
  • Both the buddy list and the reverse buddy list are indexed by the user's ID.
  • a reverse friend refers to a user who adds a user as a friend. For example, user A adds user B as a friend, user B is a friend of user A, and user A is a reverse friend of user B.
  • the buddy list is used to find the buddy information of a user on the server. As shown in FIG. 1B, the buddy table structure includes a node with a user ID in the buddy list, and a buddy list corresponding to each node records the buddy information of the user locally.
  • the node of the user When querying a user's friend on the server, the node of the user is queried in the friend list of the server, and the friend information of the user corresponding to the node record on the local machine can be found.
  • the reverse friend information of the user is obtained, and in the friend table of the server accessed by the user, the user information is recorded in the friend list of the reverse friend node.
  • User A is a friend of User B and User C.
  • the IDs of User A's Reverse Friends B and C are found from the database, and User A's information is obtained.
  • the recording process is: searching for the user B node in the buddy table of the server A, if the user B node does not exist, The user B node is established in the buddy list, and the user A information is recorded in the buddy list of the user B node; the user C node is searched in the buddy list, and if the user C node already exists, it is directly recorded in the buddy list of the user C node.
  • User A's information Thus, when user A logs into the instant messaging system, the information of user A is recorded in the buddy list of the user B node and the user C node in the buddy list on server A.
  • the reverse buddy list is used to find out which users of the server are added as friends by the server.
  • the reverse buddy table structure is as shown in FIG. 1C, the node containing the user identification ID in the reverse buddy list, and the server information of the user. (POS), the list corresponding to each node records the reverse friend information of the user locally.
  • the reverse friend information of the user corresponding to the node record and the server information of the user can be found.
  • the friend information of the user is obtained, and in the reverse friend table of the server accessed by the user, the user information is recorded in the reverse friend list of the friend node.
  • User A is the reverse friend of User B and User C.
  • User A accesses the instant messaging system through Server B through Server A and User B.
  • User C is not online.
  • the IDs of the user A and the user C of the user A are searched from the database, and the information of the user A is recorded to the user B node and the user C in the reverse friend table of the server A.
  • the recording process is: searching for the user B node in the reverse buddy table of the server A.
  • the user B node If the user B node does not exist, the user B node is established in the reverse buddy list, and the user B is recorded.
  • the POS is the server B, and the information of the user A is recorded in the reverse buddy list of the user B node; the user C node is searched in the reverse buddy list, and if the user C node exists, the POS record of the user C is empty. And record the information of user A in the reverse buddy list of the user C node.
  • user A when user A logs into the instant messaging system, user A, as user B and the reverse friend of user C on server A, is recorded in the buddy list of the user B node and the user C node in the reverse buddy list on server A.
  • the server information of user B and user C is also recorded in the reverse friend table.
  • Step 201 User A of access server A sends a login message to server A.
  • Step 202 The server A obtains the friend ID and the reverse friend ID of the user A from the database.
  • Step 203 The server A returns the friend ID and the reverse friend ID of the user A retrieved in the database to the local machine.
  • Step 205 When the server A sends the user A's online notification to the reverse friend in the local device, the user A queries the user A in the reverse friend table of the local device. If the user A node does not exist, the user does not exist in the local device. User A's reverse friend, no processing; if there is user A node, modify the server information of user A to server A in the reverse friend list of user A node, and check in the reverse friend list of user A node Go to the reverse friend ID.
  • Step 206 The server A sends the user to the corresponding user according to the found reverse friend ID.
  • Step 207 When the server A sends the online notification of the user A to the other access server, the server A sends a message to the UDP multicast user A in the instant messaging system.
  • Step 208 After receiving the multicast message, the access server B in the instant messaging system queries the user A in the reverse friend table of the local device. If the user A does not exist, the user does not have the reverse friend of the user A. , no processing; if user A exists, go to step 209.
  • Step 209 Modify the server information of the user A in the reverse friend table of the server B to be the server A, and find the reverse friend ID in the reverse friend list of the user A node.
  • Step 210 The server B sends a user A online notification to the corresponding user according to the found reverse friend ID.
  • the information of the user A and the contact information of the user A are saved in the server accessed by the user A; and the reverse friend of the user A obtains the user. A's information.
  • Step 301 User A logs in to server A.
  • Step 302 The server A queries the node of the user A in the friend table of the local device, and finds the friend ID recorded in the friend list of the node. According to the friend ID, the node that finds the friend in the reverse friend table corresponds to the node. The server information recorded by the node is modified to server A, and the online mail of the friend is viewed. Interest.
  • Step 303 The server A returns the found online information of the user A in the local machine to the user A.
  • Step 304 The server A multicasts the online information of the friend A of the user A in the instant messaging system.
  • Step 306 The server B sends the online information of the friend of the user A in the local machine to the server A.
  • Step 307 The server A records, according to the friend information of the user A returned by the server B, the server information of the friend of the local reverse friend table on the server B as the server B.
  • Step 308 The server A returns the online information of the friend A of the user A received from the server B to the user A.
  • Step 401 User A of access server A sends a message that the online status is invisible to server A.
  • Step 402 Server A records the status of user A in the local buddy list and the reverse buddy list as stealth login.
  • Step 403 The server A queries, in the reverse friend table of the local device, whether there is a node of the user A. If the node exists, the reverse friend ID is found in the reverse friend list of the node, and then step 404 is performed; otherwise, No treatment.
  • Step 404 The server A sends the user A state change information to the corresponding user according to the found reverse friend ID.
  • Step 405 The server A multicasts the user A online status change message in the instant messaging system.
  • Step 406 After receiving the multicast message, the server B in the instant messaging system queries whether the node of the user A exists in the reverse friend table of the local device. If yes, finds the reverse in the reverse friend list of the user A node. To the buddy ID, then go to step 407; otherwise, no processing.
  • Step 407 The server B records the server information of the user A in the reverse friend table of the local machine as the server A.
  • Step 408 The server B sends the user to the corresponding user according to the ID of the found reverse friend. A status change information.
  • the process of sending the message sent by user A of access server A to the friend user B is as follows:
  • Step 501 User A connected to server A requests server A to send a message to friend B.
  • Step 502 Query the node of the user B in the reverse friend table of the server A, and view the server information of the user B corresponding to the record of the node.
  • Step 503 Determine whether the server information of the user B is empty. If it is empty, it indicates that the user B is not logged into the instant messaging system, and step 504 is performed; if not, step 505 is performed.
  • Step 504 The server A saves the information sent by the user A to the user B to the database, and ends the process.
  • Step 505 Check whether the server where the user B is located is a local device. If the device is the local device, go to step 506; otherwise, go to step 507.
  • Step 506 The server A forwards the message sent by the user A to the user B directly to the user B, and ends the process.
  • Step 507 When the server where the user B is located is the server B, the server A forwards the information sent by the user A to the user B to the server B.
  • Step 508 When the server B receives the message forwarded by the server A, it searches for the connection of the user B. If yes, go to step 509; otherwise, go to step 511.
  • This step is performed to avoid that when User B is offline and the User B information saved in Server B has not been updated, Server B sends a message to User B, causing the message to be lost.
  • Step 509 The server B sends the message forwarded by the server A to the user B.
  • Step 510 Server B sends a message sending success notification to server A, and ends the process.
  • Step 511 Server B sends a message failure notification to server A.
  • Step 512 Server B saves the message to the database, and ends the process.
  • the user B If the user B is not the friend of the user A, but the user connected to the server A has added the user B as a friend, and when the user B information exists in the reverse friend table of the server A, the user A sends a message to the user B. The same as the process described above.
  • Step 601 User A connected to server A requests server A to send a message to user B.
  • Step 602 Query the node of user B in the reverse friend table of server A, and the node cannot be found in the reverse friend table.
  • Step 603 Server A searches for the connection of user B locally.
  • Step 604 Determine whether there is local connection information of user B. If there is a connection, perform steps.
  • step 606 is performed.
  • Step 605 Server A forwards the message directly to user B, and ends the process.
  • Step 606 The server A multicasts the user B for online information.
  • Step 607 The server A determines whether the online information of the user B is received. If not, the process proceeds to step 608; otherwise, the process proceeds to step 609.
  • Step 608 Server A saves the message to the database, and ends the process.
  • Step 609 When the server A receives the online information of the user B sent by the server B, establish a node of the user B in the reverse friend table of the local machine, and record the server information of the user B as the server B corresponding to the node record. , the reverse buddy list is empty; server A forwards the user to server B
  • Step 610 Server B sends a message to user B.
  • Step 611 Server B sends a message sending success notification to server A, and ends the process.
  • the process for the user to log out is as follows:
  • Step 701 User A of access server A sends a message for logging out to server A.
  • Step 703 The server A sends the user A logout information to the corresponding user according to the found reverse friend ID.
  • Step 704 The server A queries the corresponding node in the friend table and the reverse friend table of the local device according to the found reverse friend ID, and after querying the corresponding node, deletes the information of the user A corresponding to the node record. At the same time, the server information of the user A in the user A node in the reverse buddy list is cleared.
  • Step 705 The server A multicasts the user A to log out of the login message in the instant messaging system.
  • Step 706 After receiving the multicast message, the server B in the instant messaging system queries whether the node of the user A exists in the reverse friend table of the local device. If yes, finds the reverse in the reverse friend list of the user A node. To the buddy ID, then go to step 707; otherwise, no processing.
  • Step 707 The server B clears the server information of the user A node in the reverse friend table of the local machine.
  • Step 708 The server B sends the user A to logout information according to the found reverse friend ID to the corresponding user.
  • a user's buddy list and a reverse buddy list are established on the server, and the user accessing the local machine and its contact information are managed, and the user information originally obtained through frequent access to the user information management server is used. It is stored in the local server, which reduces network overhead and improves search efficiency and user information management performance.
  • two memory data structures may be established on the access server, which are used to record the buddy table and the reverse buddy table data respectively. It has been confirmed by practical operation and statistical analysis that the method of the present invention is practical.
  • the friend's information is saved. If you keep 32 bytes of information for each friend, it takes up a total of 320M of memory.
  • mainstream servers generally have 2G-4G memory, and memory overhead is feasible.
  • the ID table and the reverse friend table are indexed by ID, and many identical IDs are repeatedly displayed on the same access server, and the ID can be put into a memory pool, and then directly represented by a pointer, thereby further reducing the actual occupation. Memory.
  • the use of the present invention reduces network overhead.
  • the user information needs to be sent to a user information management server, occupying a network transmission time unit; using the method of the present invention, the user's online information changes, and is transmitted through UDP multicast. For each equivalent access server, it also occupies a network transmission time unit.
  • the existing technology is used to find the access server where the user is located, and the user information management server needs to be accessed.
  • cross-machine search is required, which not only increases the network overhead but also reduces the search. effectiveness.
  • user information can be retained in the access server memory, which saves the search time, reduces the network overhead, and improves the search efficiency.
  • the method of the present invention is also applicable to a large-scale instant messaging system in which a client P2P transmits information, and the method is the same, and will not be described again. The spirit and scope of the Ming. Thus, it is intended that the present invention cover the modifications and modifications of the invention

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

一种即时通讯系统中用户信息管理的方法及系统 技术领域
本发明涉及通信及计算机技术领域中的即时通讯技术,尤其涉及一种即时 通讯系统中用户信息管理的方法以及相应的系统。
背景技术
在即时通讯系统中, 当用户登录即时通讯系统时, 需要获得好友的在线信 息; 同时需要将该用户的登录信息发送给添加该用户为好友的用户。如果用户 的在线状态发生改变,也需要将用户的在线状态改变信息发送给添加该用户为 好友的用户。
釆用现有技术的方法,对于用户在线信息的管理,一般釆用集中式管理方 式, 由专属的用户信息管理服务器管理用户的在线信息。 当用户登录系统时, 将用户的登录信息发送给用户信息管理服务器,由用户信息管理服务器进行管 理。 用户登录, 用户登录后的在线状态改变, 或是用户与用户间发送即时消息 时, 用户查找联系人的在线信息都需要通过用户信息管理服务器进行查找。这 样, 不仅增加了用户信息管理服务器的负载, 同时也增大了网络开销。
随着大型即时通讯系统中在线用户数量的不断增加,一台用户信息管理服 务器不能实现集中管理所有的用户在线信息,用户在线信息被分散到多台用户 信息管理服务器上。 查找用户的在线信息时, 需要在多台用户信息管理服务器 上查找, 降低了查找效率。 随着用户数量的进一步增加, 用户信息管理服务器 的查找效率急剧下降, 导致用户在线信息管理性能恶化, 成为整个即时通讯系 统的运行瓶颈。
发明内容
本发明提供一种即时通讯中用户信息管理的方法及系统,用以解决现有技 术中因查询用户信息时需要频繁访问用户信息管理服务器,存在增加系统负载 和增加网络开销, 影响系统性能的问题。
本发明提供以下技术方案:
一种即时通讯系统中用户信息管理的方法, 包括如下步骤:
接入服务器获取并保存登录用户的联系人信息; 所述接入服务器将所述登录用户的用户信息通知其他接入服务器; 接收到通知消息的接入服务器确定本地有所述登录用户的联系人时,保存 所述登录用户的用户信息; 以及
当接入服务器需要获取用户的联系人信息时, 在本地或 /和其他接入服务 器上进行查询。
其中:
所述接入服务器进一步将登录用户的联系人的状态信息发送给登录用户 所在客户端;保存所述登录用户的用户信息的其他接入服务器进一步将登录用 户的状态信息发送给相关的联系人。
所述登录用户的联系人信息包含用户的好友信息和反向好友信息。
较佳的,在所述接入服务器上建立用于存储用户好友信息的好友表和用于 存储用户反向好友信息的反向好友表,在所述好友表中通过用户标识与该用户 在本地的好友信息关联,在所述反向好友表中通过用户标识与该用户的反向好 友信息关联并记录该用户的位置信息。
其中:
所述接入服务器获取并保存登录用户的联系人信息包括如下步骤: 用户所登录的接入服务器从数据库中查找到该登录用户的好友标识和反 向好友标识;
所述接入服务器在反向好友表中查找所述好友标识,并在查找到标识后将 所述登录用户的用户标识记录到关联的反向好友信息中; 以及
在所述接入服务器的好友表中查找所述反向好友标识,并在查找到标识后 将所述登录用户的用户标识记录到关联的好友信息中。
优选的,在所述反向好友表中未查找到好友标识时,在该反向好友表中记 录好友标识, 将所述登录用户的用户标识作为反向好友信息并与好友标识关 联。
在所述好友表中未查找到反向好友标识时,在该好友表中记录反向好友标 识, 将所述登录用户的用户标识作为好友信息并与该反向好友标识关联。
较佳的, 在用户登录后进一步包括步骤:
所述接入服务器在本地的好友表中查找登录用户的标识,并在查找到该标 识后从对应的好友信息中获取所有本地好友标识; 述接入服务器的位置信息。
优选的,所述接入服务器将所述登录用户的用户信息通知其他接入服务器 后, 接收到通知消息的接入服务器在反向好友表中查找到所述登录用户标识 时,在与该标识关联的位置信息中记录所述登录用户的位置信息, 并根据与该 标识关联的反向好友信息中的用户标识,向对应的用户发送登录用户的状态信 息。
优选的,还包括: 所述接入服务器从其他接入服务器请求所述登录用户的 状态信息时, 所述其他接入服务器在本地好友表中查找到所述登录用户的标 识, 将与其关联的好友信息中的用户标识返回给所述接入服务器。
优选的, 进一步包括: 所述接入服务器在本地反向好友表中查找所述其他 接入服务器返回的用户标识, 并在查找到用户标识后,在与其关联的位置信息 中记录用户的位置信息。
较佳的, 所述登录用户的状态改变时, 所述接入服务器将用户状态改变的 信息通知其他接入服务器,当接收到通知消息的接入服务器在反向好友表中查 找到所述登录用户标识时, 根据与该标识关联的反向好友信息中的用户标识, 向对应的用户发送登录用户的状态改变信息。
其中, 当登录用户的用户状态改变为退出登录时, 所述接入服务器进一步 将与本机的好友表和反向好友表中用户标识关联的所述登录用户的信息删除; 当接收到所述通知消息的接入服务器在反向好友表中查找到所述登录用户标 识时, 进一步将与其关联的位置信息清空。
当所述登录用户给联系人发送即时消息时,接入服务器在本地的反向好友 表中查询到所述联系人标识后, 根据与其关联的位置信息转发所述即时消息。
若所述接入服务器在本地的反向好友表中查询不到所述联系人标识,则从 其他接入服务器请求用户的联系人信息, 根据该联系人信息转发所述即时消 息。
其中:
所述接入服务器以组播方式向其他接入服务器发送通知消息和请求消息。 一种通信系统, 其特征在于, 包括:
多个接入服务器, 各接入服务器用于获取并保存登录用户的联系人信息, 将所述登录用户的用户信息通知其他接入服务器, 以及从本地和 /或其他接入 服务器查询用户的联系人信息和转发即时消息;
用户客户端,通过接入服务器接入即时通讯系统,从接入服务器查找到联 系人信息, 并通过接入服务器发送和接收即时消息。
所述接入服务器具有用于存储用户好友信息的好友表和用于存储用户反 向好友信息的反向好友表;所述好友表包含用户标识与该用户在本地的好友信 息,所述反向好友表包含用户标识与该用户的反向好友信息及该用户的位置信 息。
本发明通过在接入服务器上建立用于存储用户好友信息的好友表和用于 存储用户反向好友信息的反向好友表,对用户的信息进行管理, 大大降低了在 用户信息管理服务器上查找用户信息的频度,不仅降低了用户信息管理服务器 的负载, 而且提高了用户信息的查找性能, 提高了用户在线信息管理性能; 同 时降低了系统的网络开销。
附图说明
图 1A为本发明实施例的系统结构示意图;
图 1B为本发明实施例中好友表结构示意图;
图 1C为本发明实施例中反向好友表结构示意图;
图 2为本发明实施例中用户登录过程的处理时序图;
图 3为本发明实施例中用户查找好友在线信息的处理时序图;
图 4为本发明实施例中用户在线状态改变信息通知的处理时序图; 图 5为本发明实施例中用户发送消息的处理流程图;
图 6为本发明实施例中用户发送消息的另一处理流程图;
图 7为本发明实施例中用户退出登录的处理时序图。
具体实施方式
为了解决目前即时通讯系统中, 查找用户信息效率降低, 用户信息管理月良 务器负载大, 用户在线信息管理性能恶化等问题, 在接入服务器上建立用户的 好友表和反向好友表,对接入本机的用户及其联系人信息进行管理, 查询用户 信息时, 直接在接入服务器上进行查找。
以下结合附图对本发明进行详细说明。
参阅图 1A所示, 本实施例中的通信系统包括多个接入服务器, 以及通过 网络与服务器连接的多个登录用户客户端。
各接入服务器用于获取登录用户的联系人信息并保存,并将所述登录用户 的用户信息通知其他接入服务器;以及在本地查询用户的联系人信息和转发即 时消息。
所述的登录用户客户端通过接入服务器接入即时通讯系统,从接入服务器 查找到联系人信息, 并通过接入服务器给联系人发送即时消息。
当用户登录时, 连接到系统中的一台服务器上, 多台接入服务器组成一个
UDP组播组, 组中的每一台服务器能够收到组内接入的其他服务器发送的组 播 UDP信息。
在接入服务器上建立用于存储用户好友信息的好友表和用于存储用户反 向好友信息的反向好友表,在所述好友表中通过用户标识与该用户在本地的好 友信息关联,在所述反向好友表中通过用户标识与该用户的反向好友信息关联 并记录该用户的位置信息。
好友表和反向好友表都釆用用户的 ID作索引。 反向好友是指添加用户为 好友的用户, 如用户 A将用户 B添加为好友, 则用户 B是用户 A的好友, 用 户 A是用户 B的反向好友。 好友表用来查找某个用户在该服务器上的好友信 息。 好友表结构如图 1B所示, 在好友表中包含用户标识 ID的节点, 各节点 对应的好友列表记录用户在本地的好友信息。
查询用户在服务器上的好友时, 在该服务器的好友表中查询该用户的节 点, 即可找到对应于该节点记录的用户在本机上的好友信息。
每一个用户登录服务器时, 获取该用户的反向好友信息, 在用户接入的服 务器的好友表中, 将该用户信息记录到其反向好友节点的好友列表中。 例如: 用户 A是用户 B和用户 C的好友,当用户 A通过服务器 A接入即时通讯系统 时,从数据库中查找到用户 A的反向好友用户 B和用户 C的 ID,将用户 A的 信息记录到服务器 A好友表中用户 B节点和用户 C节点的好友列表中, 记录 过程为: 在服务器 A的好友表中查找用户 B节点, 如果用户 B节点不存在, 在好友表中建立用户 B节点, 并在用户 B节点的好友列表中记录用户 A的信 息; 在好友表中查找用户 C节点, 如果用户 C节点已经存在, 直接在用户 C 节点的好友列表中记录用户 A的信息。 这样, 当用户 A登录即时通讯系统时, 用户 A的信息,被记录到了服务器 A上好友表中用户 B节点和用户 C节点的 好友列表中。
反向好友表是用来查找某个用户被本服务器哪些用户加为好友,反向好友 表结构如图 1C所示, 在反向好友表中包含用户标识 ID的节点以及用户所处 的服务器信息 (POS ), 各节点对应的列表记录用户在本地的反向好友信息。
在该服务器的反向好友表中查询用户的节点,即可查找到对应于该节点记 录的用户在本机上的反向好友信息以及该用户所处的服务器信息。
每一个用户登录服务器时, 获取该用户的好友信息,在用户接入的服务器 的反向好友表中, 将该用户信息记录到其好友节点的反向好友列表中。 例如: 用户 A是用户 B和用户 C的反向好友, 用户 A通过服务器 A、 用户 B通过服 务器 B接入即时通讯系统中, 用户 C不在线。 当用户 A通过服务器 A接入即 时通讯系统时, 从数据库中查找到用户 A的好友用户 B和用户 C的 ID, 将用 户 A的信息记录到服务器 A反向好友表中用户 B节点和用户 C节点的反向好 友列表中, 记录过程为: 在服务器 A的反向好友表中查找用户 B节点, 如果 用户 B节点不存在, 在反向好友表中建立用户 B节点, 并记录用户 B所处的 POS为服务器 B, 在用户 B节点的反向好友列表中记录用户 A的信息; 在反 向好友表中查找用户 C节点, 如果存在用户 C节点, 将用户 C所处的 POS记 录为空, 并在用户 C节点的反向好友列表中记录用户 A的信息。 这样, 当用 户 A登录即时通讯系统时,用户 A作为用户 B和用户 C在服务器 A上的反向 好友, 被记录到了服务器 A上反向好友表中用户 B节点和用户 C节点的好友 列表中, 同时, 用户 B和用户 C所处的服务器信息也记录到了反向好友表中。
参阅图 2所示, 用户接入服务器时的处理过程如下:
步骤 201、 接入服务器 A的用户 A向服务器 A发送登录消息。
步骤 202、 服务器 A从数据库获取用户 A的好友 ID和反向好友 ID。
步骤 203、 服务器 A将数据库中取到的用户 A的好友 ID和反向好友 ID 返回本机。 步骤 204、 根据好友的 ID, 在服务器 A的反向好友表中查找到好友的节 点,将用户 A的信息记录到好友节点的反向好友列表中; 根据反向好友的 ID, 在服务器 A的好友表中查找到反向好友的节点, 将用户 A的信息记录到反向 好友节点的好友列表中。
步骤 205、 服务器 A给用户 A在本机中的反向好友发送用户 A的上线通 知时, 在本机的反向好友表中查询用户 A, 如果不存在用户 A节点, 表明本 机中不存在用户 A的反向好友, 不作处理; 如果存在用户 A节点, 在用户 A 节点的反向好友列表中将用户 A所处服务器信息修改为服务器 A,并在用户 A 节点的反向好友列表中查到反向好友 ID。
步骤 206、 服务器 A根据查找到的反向好友的 ID向相应的用户发送用户
A上线通知。
步骤 207、 服务器 A向其他接入服务器发送用户 A的上线通知时, 服务 器 A在即时通讯系统中 UDP组播用户 A上线消息。
步骤 208、 即时通讯系统中的接入服务器 B收到组播消息后, 在本机的反 向好友表中查询用户 A, 如果不存在用户 A, 表明本机中不存在用户 A的反 向好友, 不作处理; 如果存在用户 A, 执行步骤 209。
步骤 209、 将服务器 B的反向好友表中用户 A所处的服务器信息修改为 服务器 A, 在用户 A节点的反向好友列表中查到反向好友 ID。
步骤 210、 服务器 B根据查找到的反向好友的 ID向相应的用户发送用户 A上线通知。
釆用以上所述处理, 即时通讯系统中用户 A登录系统后, 在用户 A接入 的服务器中保存了用户 A的信息以及用户 A的联系人信息; 同时用户 A的反 向好友都获得了用户 A的信息。
参阅图 3所示, 用户 A登录通讯系统后, 查找好友在线信息的处理过程 如下:
步骤 301、 用户 A登录服务器 A。
步骤 302、 服务器 A在本机的好友表中查询用户 A的节点, 查找到该节 点的好友列表中记录的好友 ID, 根据好友 ID, 在反向好友表查找到好友的节 点, 将对应于该节点记录的服务器信息修改为服务器 A, 并查看好友的在线信 息。
步骤 303、 服务器 A将查找到的用户 A在本机中的好友在线信息返回给 用户 A。
步骤 304、 服务器 A在即时通讯系统中组播请求用户 A的好友在线信息。 步骤 305、 即时通讯系统中的服务器 B收到组播请求后, 在本机的好友表 中查询用户 A的节点, 查看本机是否存在用户 A的好友, 如果存在, 执行步 骤 306; 否则, 不作处理。
步骤 306、 服务器 B将本机中用户 A的好友的在线信息发送给服务器 A。 步骤 307、 服务器 A根据服务器 B返回的用户 A的好友信息, 将本机反 向好友表中用户 A在服务器 B上的好友所处的服务器信息记录为服务器 B。
步骤 308、 服务器 A将从服务器 B接收到的用户 A的好友在线信息返回 给用户 A。
参阅图 4所示, 用户在线状态改变为隐身登录的处理过程如下:
步骤 401、 接入服务器 A的用户 A将上线状态变为隐身的消息发送给服 务器 A。
步骤 402、 服务器 A将本地的好友表和反向好友表中用户 A的状态记录 为隐身登录。
步骤 403、 服务器 A在本机的反向好友表中查询是否存在用户 A的节点, 如果存在该节点, 在该节点的反向好友列表中查到反向好友 ID, 然后执行步 骤 404; 否则, 不作处理。
步骤 404、 服务器 A根据查找到的反向好友的 ID向相应的用户发送用户 A状态改变信息。
步骤 405、 服务器 A在即时通讯系统中组播用户 A上线状态改变消息。 步骤 406、 即时通讯系统中的服务器 B收到组播消息后, 在本机的反向好 友表中查询是否存在用户 A的节点, 如果存在, 在用户 A节点的反向好友列 表中查找到反向好友 ID, 然后执行步骤 407; 否则, 不作处理。
步骤 407、 服务器 B将本机的反向好友表中用户 A所处的服务器信息记 录为服务器 A。
步骤 408、 服务器 B根据查找到的反向好友的 ID给相应的用户发送用户 A状态改变信息。
参阅图 5所示, 接入服务器 A的用户 A给好友用户 B发送消息的处理过 程如下:
步骤 501、 与服务器 A连接的用户 A请求服务器 A给好友用户 B发送消 息。
步骤 502、 在服务器 A的反向好友表中查询用户 B的节点, 查看对应于 该节点记录的用户 B所处的服务器信息。
步骤 503、 判断用户 B所处的服务器信息是否为空, 如果为空, 表明用户 B没有登录即时通讯系统, 执行步骤 504; 如果不为空, 执行步骤 505。
步骤 504、 服务器 A将用户 A发送给用户 B的信息保存到数据库, 结束 本流程。
步骤 505、 查看用户 B所处的服务器是否为本机, 如果为本机, 执行步骤 506; 否则, 执行步骤 507。
步骤 506、 服务器 A将用户 A发送给本机用户 B的消息直接转发给用户 B, 结束本流程。
步骤 507、 当用户 B所处的服务器为服务器 B时, 服务器 A将用户 A发 送给用户 B的信息转发到服务器 B。
步骤 508、服务器 B接收到服务器 A转发的消息时,查找是否存在用户 B 的连接, 如果存在, 执行步骤 509; 否则, 执行步骤 511。
执行该步骤, 避免了当用户 B正好离线, 服务器 B中保存的用户 B信息 还没更新时, 服务器 B给用户 B发送消息造成消息丟失。
步骤 509、 服务器 B将服务器 A转发的消息发送给用户 B。
步骤 510、 服务器 B给服务器 A发送消息发送成功通知, 结束本流程。 步骤 511、 服务器 B给服务器 A发送消息发送失败通知。
步骤 512、 服务器 B将消息存到数据库, 结束本流程。
如果用户 B不是用户 A的好友, 但与服务器 A连接的用户中有用户添加 了用户 B为好友, 在服务器 A的反向好友表中存在用户 B信息时, 用户 A给 用户 B发送消息的处理与以上所述处理过程相同。
参阅图 6所示, 当用户 B不是用户 A的好友, 服务器 A的反向好友表中 不存在用户 B信息, 用户 A给用户 B发送消息的处理过程如下:
步骤 601、 与服务器 A连接的用户 A请求服务器 A给用户 B发送消息。 步骤 602、 在服务器 A的反向好友表中查询用户 B的节点, 反向好友表 中查找不到该节点。
步骤 603、 服务器 A在本地查找用户 B的连接。
步骤 604、 判断本地是否存在用户 B的连接信息, 如果有连接, 执行步骤
605; 否则, 执行步骤 606。
步骤 605、 服务器 A将消息直接转发给用户 B, 结束本流程。
步骤 606、 服务器 A组播请求用户 B在线信息。
步骤 607、 服务器 A判断是否接收到用户 B的在线信息, 如果没有接收 到, 执行步骤 608; 否则, 执行步骤 609。
步骤 608、 服务器 A将消息存到数据库, 结束本流程。
步骤 609、 当服务器 A接收到服务器 B发送的用户 B的在线信息时, 在 本机的反向好友表中, 建立用户 B的节点, 对应于该节点记录用户 B所处的 服务器信息为服务器 B, 反向好友列表为空; 服务器 A给服务器 B转发用户
A发送给用户 B的消息。
步骤 610、 服务器 B将消息发送给用户 B。
步骤 611、 服务器 B给服务器 A发送消息发送成功通知, 结束本流程。 参阅图 7所示, 用户退出登录的处理过程如下:
步骤 701、 接入服务器 A的用户 A将退出登录的消息发送给服务器 A。 步骤 702、 服务器 A在本机的反向好友表中查询是否存在用户 A的节点, 如果存在该节点, 在该节点的反向好友列表中查到反向好友 ID, 然后执行步 骤 703; 否则, 不作处理。
步骤 703、 服务器 A根据查找到的反向好友的 ID向相应的用户发送用户 A退出登录信息。
步骤 704、 服务器 A根据查找到的反向好友的 ID在本机的好友表和反向 好友表中查询对应的节点, 查询到对应的节点后, 将对应于节点记录的用户 A 的信息删除; 同时将反向好友表中用户 A节点中用户 A所处服务器信息清空。
步骤 705、 服务器 A在即时通讯系统中组播用户 A退出登录消息。 步骤 706、 即时通讯系统中的服务器 B收到组播消息后, 在本机的反向好 友表中查询是否存在用户 A的节点, 如果存在, 在用户 A节点的反向好友列 表中查找到反向好友 ID, 然后执行步骤 707; 否则, 不作处理。
步骤 707、 服务器 B将本机的反向好友表中用户 A节点所处的服务器信 息清空。
步骤 708、 服务器 B根据查找到的反向好友的 ID向相应的用户发送用户 A退出登录信息。
釆用本发明的方法,在服务器上建立用户的好友表和反向好友表,对接入 本机的用户及其联系人信息进行管理,将原本需要通过频繁访问用户信息管理 服务器获得的用户信息保存在了本地服务器中, 既降低了网络开销, 又提高了 查找效率和用户信息管理性能。
在具体实施过程中, 可在接入服务器上建立两个内存数据结构, 分别用于 记录好友表和反向好友表数据。通过实际操作并进行统计分析证实釆用本发明 的方法切实可行。
在即时通讯系统中,假设每一台接入服务器上接入了 50000个用户,每个 用户平均有 100个好友, 100个反向好友,那么将会有 50000* ( 100+100 )=10M 个好友的信息被保存下来,如果给每个好友保留 32字节信息,一共占用 320M 的内存。 在目前, 主流服务器一般 2G-4G 内存, 内存开销上是可行的。 而且 好友表和反向好友表中釆用 ID作索引,很多相同的 ID重复出现在同一个接入 服务器上, 可以将 ID放到一个内存池里, 然后直接用指针表示, 进一步降低 了实际占用的内存。
其次, 釆用本发明降低了网络开销。 釆用现有技术, 当一个用户在线信息 变化, 需要把用户信息发送给一台用户信息管理服务器, 占用一个网络传输时 间单位; 釆用本发明的方法, 用户在线信息变化, 通过 UDP组播发送给各个 等价的接入服务器, 也占用一个网络传输时间单位。
另外, 查找用户信息时, 釆用现有技术查找用户所处接入服务器, 需要访 问用户信息管理服务器, 存在多个用户信息管理服务器时, 需要跨机器查找, 不仅增加了网络开销也降低了查找效率。本发明具体实施时可在接入服务器内 存中保留用户信息, 节省了查找时间, 降低了网络开销, 提高了查找效率。 本发明的方法也适用于客户端 P2P发送信息的大型即时通讯系统,其方法 同理, 不再赘述。 明的精神和范围。 这样,倘若本发明的这些修改和变型属于本发明权利要求及 其等同技术的范围之内, 则本发明也意图包含这些改动和变型在内。

Claims

权 利 要 求
1、 一种即时通讯系统中用户信息管理的方法, 其特征在于, 包括如下步 骤:
接入服务器获取并保存登录用户的联系人信息;
所述接入服务器将所述登录用户的用户信息通知其他接入服务器; 接收到通知消息的接入服务器确定本地有所述登录用户的联系人时,保存 所述登录用户的用户信息; 以及
当接入服务器需要获取用户的联系人信息时, 在本地或 /和其他接入服务 器上进行查询。
2、 如权利要求 1所述的方法, 其特征在于, 还包括: 所述接入服务器将 登录用户的联系人的状态信息发送给登录用户所在客户端;保存所述登录用户 的用户信息的其他接入服务器将登录用户的状态信息发送给相关的联系人。
3、 如权利要求 2所述的方法, 其特征在于, 所述登录用户的联系人信息 包含用户的好友信息和反向好友信息。
4、 如权利要求 3所述的方法, 其特征在于, 还包括: 在所述接入服务器 上建立用于存储用户好友信息的好友表和用于存储用户反向好友信息的反向 好友表; 在所述好友表中通过用户标识与该用户在本地的好友信息关联,在所 述反向好友表中通过用户标识与该用户的反向好友信息关联并记录该用户的 位置信息。
5、 如权利要求 4所述的方法, 其特征在于, 所述接入服务器获取并保存 登录用户的联系人信息具体包括如下步骤:
用户所登录的接入服务器从数据库中查找到该登录用户的好友标识和反 向好友标识;
所述接入服务器在反向好友表中查找所述好友标识,并在查找到标识后将 所述登录用户的用户标识记录到关联的反向好友信息中; 以及
在所述接入服务器的好友表中查找所述反向好友标识,并在查找到标识后 将所述登录用户的用户标识记录到关联的好友信息中。
6、 如权利要求 5所述的方法, 其特征在于, 还包括: 在所述反向好友表 中未查找到好友标识时, 在该反向好友表中记录好友标识,将所述登录用户的 用户标识作为反向好友信息并与好友标识关联。
7、 如权利要求 5所述的方法, 其特征在于, 还包括: 在所述好友表中未 查找到反向好友标识时, 在该好友表中记录反向好友标识,将所述登录用户的 用户标识作为好友信息并与该反向好友标识关联。
8、 如权利要求 5所述的方法, 其特征在于, 在用户登录后进一步包括步 骤:
所述接入服务器在本地的好友表中查找登录用户的标识,并在查找到该标 识后从对应的好友信息中获取所有本地好友标识; 述接入服务器的位置信息。
9、 如权利要求 8所述的方法, 其特征在于, 所述接入服务器将所述登录 用户的用户信息通知其他接入服务器后,接收到通知消息的接入服务器在反向 好友表中查找到所述登录用户标识时,在与该标识关联的位置信息中记录所述 登录用户的位置信息, 并根据与该标识关联的反向好友信息中的用户标识, 向 对应的用户发送登录用户的状态信息。
10、 如权利要求 8所述的方法, 其特征在于, 还包括: 所述接入服务器从 其他接入服务器请求所述登录用户的状态信息时,所述其他接入服务器在本地 好友表中查找到所述登录用户的标识,将与其关联的好友信息中的用户标识返 回给所述接入服务器。
11、 如权利要求 10所述的方法, 其特征在于, 进一步包括: 所述接入服 务器在本地反向好友表中查找所述其他接入服务器返回的用户标识,并在查找 到用户标识后, 在与其关联的位置信息中记录用户的位置信息。
12、 如权利要求 5至 11任一项所述的方法, 其特征在于, 还包括: 所述 登录用户的状态改变时,所述接入服务器将用户状态改变的信息通知其他接入 服务器,当接收到通知消息的接入服务器在反向好友表中查找到所述登录用户 标识时,根据与该标识关联的反向好友信息中的用户标识, 向对应的用户发送 登录用户的状态改变信息。
13、 如权利要求 12所述的方法, 其特征在于, 还包括: 当登录用户的用 户状态改变为退出登录时 ,所述接入服务器将与本机的好友表和反向好友表中 用户标识关联的所述登录用户的信息删除;当接收到所述通知消息的接入服务 器在反向好友表中查找到所述登录用户标识时,进一步将与其关联的位置信息 清空。
14、 如权利要求 12所述的方法, 其特征在于, 还包括: 当所述登录用户 给联系人发送即时消息时 ,所述接入服务器在本地的反向好友表中查询到所述 联系人标识后, 根据与其关联的位置信息转发所述即时消息。
15、 如权利要求 14所述的方法, 其特征在于, 若所述接入服务器在本地 的反向好友表中查询不到所述联系人标识,则从其他接入服务器请求用户的联 系人信息, 根据该联系人信息转发所述即时消息。
16、 如权利要求 12所述的方法, 其特征在于, 所述接入服务器以组播方 式向其他接入服务器发送通知消息和请求消息。
17、 一种通信系统, 其特征在于, 包括:
多个接入服务器, 各接入服务器用于获取并保存登录用户的联系人信息, 将所述登录用户的用户信息通知其他接入服务器, 以及从本地和 /或其他接入 服务器查询用户的联系人信息和转发即时消息;
用户客户端,通过接入服务器接入即时通讯系统,从接入服务器查找到联 系人信息, 以及通过接入服务器发送和接收即时消息。
18、 如权利要求 17所述的系统, 其特征在于, 所述接入服务器具有用于 存储用户好友信息的好友表和用于存储用户反向好友信息的反向好友表;所述 好友表包含用户标识与该用户在本地的好友信息,所述反向好友表包含用户标 识与该用户的反向好友信息及该用户的位置信息。
PCT/CN2007/070786 2007-09-26 2007-09-26 Procédé et système pour gérer les informations d'utilisateur dans le système de messagerie instantanée WO2009039702A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2010526126A JP5379800B2 (ja) 2007-09-26 2007-09-26 インスタントメッセージシステム内においてユーザ情報を管理するための方法およびシステム
US12/676,821 US8554785B2 (en) 2007-09-26 2007-09-26 Method and system for managing user information in instant messaging systems
PCT/CN2007/070786 WO2009039702A1 (fr) 2007-09-26 2007-09-26 Procédé et système pour gérer les informations d'utilisateur dans le système de messagerie instantanée
EP07816977.8A EP2194679B1 (en) 2007-09-26 2007-09-26 A method and system for managing the user information in the instant messaging system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2007/070786 WO2009039702A1 (fr) 2007-09-26 2007-09-26 Procédé et système pour gérer les informations d'utilisateur dans le système de messagerie instantanée

Publications (1)

Publication Number Publication Date
WO2009039702A1 true WO2009039702A1 (fr) 2009-04-02

Family

ID=40510733

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2007/070786 WO2009039702A1 (fr) 2007-09-26 2007-09-26 Procédé et système pour gérer les informations d'utilisateur dans le système de messagerie instantanée

Country Status (4)

Country Link
US (1) US8554785B2 (zh)
EP (1) EP2194679B1 (zh)
JP (1) JP5379800B2 (zh)
WO (1) WO2009039702A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114021055A (zh) * 2021-10-29 2022-02-08 上海米哈游璃月科技有限公司 一种好友信息获取方法、装置、设备及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200357198A1 (en) * 2019-05-09 2020-11-12 Toyota Motor North America, Inc. Vehicle sensor tracking for customized vehicle profile

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6643360B1 (en) * 2000-01-31 2003-11-04 Cisco Technology, Inc. Check for pending e-mail using caller ID and selective answer ring
WO2005036841A1 (de) * 2003-10-06 2005-04-21 Siemens Aktiengesellschaft Verfahren und vorrichtung zum aktualisieren einer teilnehmerliste in einem kommunikationssystem
CN1968536A (zh) * 2005-11-16 2007-05-23 日本电气株式会社 移动通信系统、呼叫控制服务器、以及呼叫控制方法
CN101090371A (zh) * 2006-06-14 2007-12-19 阿里巴巴公司 一种即时通讯系统中用户信息管理的方法及系统

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1936893A3 (en) * 2001-03-14 2009-12-16 Nokia Corporation Method and device for presence management
US6993327B2 (en) * 2001-10-29 2006-01-31 Motorola, Inc. Multicast distribution of presence information for an instant messaging system
JP4381655B2 (ja) * 2002-05-31 2009-12-09 株式会社日立製作所 ストレージシステム、ストレージ装置、及び該ストレージ装置を利用した情報共有方法
JP3980421B2 (ja) * 2002-06-27 2007-09-26 富士通株式会社 プレゼンス管理方法及び装置
DE60315679T2 (de) * 2002-09-19 2008-06-05 Research In Motion Ltd., Waterloo Vorrichtung und verfahren zur sofortigen drahtlosen nachrichtenübermittlung
US7949712B2 (en) * 2003-02-10 2011-05-24 At&T Intellectual Property I, L.P. High availability presence engine for instant messaging
FR2851704A1 (fr) * 2003-02-20 2004-08-27 France Telecom Procede de gestion de presence selective pour service de messagerie instantanee au sein d'un reseau de telecommunication tel que le reseau internet
US20040205175A1 (en) * 2003-03-11 2004-10-14 Kammerer Stephen J. Communications system for monitoring user interactivity
CA2831132C (en) * 2003-05-20 2018-02-06 Facebook, Inc. Presence and geographic location notification
US7317716B1 (en) * 2003-07-25 2008-01-08 Verizon Laboratories Inc. Methods and systems for presence-based telephony communications
US7529801B2 (en) * 2003-11-06 2009-05-05 International Business Machines Corporation Method and system for multiple instant messaging login sessions
US20050198124A1 (en) * 2004-03-03 2005-09-08 Mccarthy Shawn J. System and method for embedded instant messaging collaboration
US7120455B1 (en) * 2004-05-20 2006-10-10 Cellco Partnership Method and system for mobile instant messaging using multiple interfaces
US7487214B2 (en) * 2004-11-10 2009-02-03 Microsoft Corporation Integrated electronic mail and instant messaging application
US20060168037A1 (en) * 2004-12-21 2006-07-27 Alcatel Systems and methods for handling presence messages
JP2006209193A (ja) * 2005-01-25 2006-08-10 Nec Corp 配信先管理装置、配信先管理方法およびプログラム
US20060195532A1 (en) * 2005-02-28 2006-08-31 Microsoft Corporation Client-side presence documentation
JP4591117B2 (ja) * 2005-03-03 2010-12-01 株式会社日立製作所 プレゼンス情報配布システム
US20060288077A1 (en) * 2005-06-16 2006-12-21 Mediatek Inc. Systems and methods for instant messaging
US9053461B2 (en) * 2005-10-07 2015-06-09 Yahoo! Inc. Instant messaging interoperability between disparate service providers
US20070124386A1 (en) * 2005-11-21 2007-05-31 Research In Motion Limited Method for regulating instant messaging traffic
US7702753B2 (en) * 2005-11-21 2010-04-20 Accenture Global Services Gmbh Unified directory and presence system for universal access to telecommunications services
WO2007092310A2 (en) * 2006-02-03 2007-08-16 Cibernet Corporation System and method for electronically facilitating, recording, and tracking transactions
EP2098010A1 (en) * 2006-11-30 2009-09-09 WANLESS, James Andrew A method and system for providing automated real-time contact information
US8095603B2 (en) * 2007-02-21 2012-01-10 Research In Motion Limited Efficient transmission of presence update information to presence service clients
US20090049190A1 (en) * 2007-08-16 2009-02-19 Yahoo!, Inc. Multiple points of presence in real time communications
US20090083382A1 (en) * 2007-09-24 2009-03-26 Yahoo! Inc. Real-time presence of online contacts

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6643360B1 (en) * 2000-01-31 2003-11-04 Cisco Technology, Inc. Check for pending e-mail using caller ID and selective answer ring
WO2005036841A1 (de) * 2003-10-06 2005-04-21 Siemens Aktiengesellschaft Verfahren und vorrichtung zum aktualisieren einer teilnehmerliste in einem kommunikationssystem
CN1968536A (zh) * 2005-11-16 2007-05-23 日本电气株式会社 移动通信系统、呼叫控制服务器、以及呼叫控制方法
CN101090371A (zh) * 2006-06-14 2007-12-19 阿里巴巴公司 一种即时通讯系统中用户信息管理的方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114021055A (zh) * 2021-10-29 2022-02-08 上海米哈游璃月科技有限公司 一种好友信息获取方法、装置、设备及存储介质

Also Published As

Publication number Publication date
EP2194679B1 (en) 2019-05-15
JP5379800B2 (ja) 2013-12-25
JP2010541341A (ja) 2010-12-24
EP2194679A1 (en) 2010-06-09
US20100306246A1 (en) 2010-12-02
US8554785B2 (en) 2013-10-08
EP2194679A4 (en) 2014-05-21

Similar Documents

Publication Publication Date Title
JP5398836B2 (ja) メッセージ処理のための方法及びシステム
CN101090371B (zh) 一种即时通讯系统中用户信息管理的方法及系统
EP1489811B1 (en) System and method for managing cached objects using notification bonds
EP2320616B1 (en) Mobile searching method and system, and method for synchronizing search ability of searching server
US20040059722A1 (en) Method and apparatus for discovery of dynamic network services
CN105357246B (zh) 基于信息中心网络的缓存方法和系统
US20080080392A1 (en) Virtual peer for a content sharing system
CN106230896A (zh) 一种消息推送方法、装置及系统
WO2008034353A1 (fr) Procédé, système et dispositif permettant d'établir une connexion entre homologues dans un réseau d'homologues
WO2011069387A1 (zh) 一种网络节点及其数据查询方法和索引更新方法
WO2009111965A1 (zh) 一种数据同步的方法、设备及系统
WO2010025653A1 (zh) 搜索信息的方法、系统、装置及垂直搜索引擎注册的方法
WO2009009967A1 (fr) Système, composant et procédé de messagerie instantanée pour des services supplémentaires
US8798001B2 (en) Message routing platform
WO2009039702A1 (fr) Procédé et système pour gérer les informations d'utilisateur dans le système de messagerie instantanée
WO2014075426A1 (zh) 一种数据更新方法及web服务器
CN112104888B (zh) 一种直播用户分组的方法及系统
CN114095508A (zh) 一种同交换机下p2p传输的方法
JP5071990B2 (ja) データベース装置、データベースシステム、キャッシュメンテナンス方法およびそのプログラム
KR100804901B1 (ko) 동등계층 통신을 이용한 인스턴트 메신저 서비스 방법
JP3932041B2 (ja) 複数エリア内ユーザコミュニティ通信システム
JPH11298514A (ja) 電子メールサーバ装置
KR20060029707A (ko) 피어-투-피어 네트워크를 이용한 이벤트 알림 시스템 및그 방법
KR20050096417A (ko) 피어-투-피어 네트워크를 이용한 이벤트 알림 시스템 및그 방법

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07816977

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 12676821

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 2007816977

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 2010526126

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE