Method and system for multiple instant messaging login sessions
Abstract
Provides a mechanism for multiple instant messaging (IM) sessions associated with a single username. The front-end server receives the user login request and transmits the instant messaging system to the back-end server. Each login associated with a specific username is transmitted to the same backend server (or IM host). Messages targeting recipients with multiple active IM sessions are broadcast to all active sessions. Messages targeting recipients with a single IM session are unicast.
Term
Term ended
Expired 29 October 2024, 1.9 years ago.
- Priority
- Filed
- Granted
- Expired
- Today
13 claims: 1 independent, 12 dependent
- 1第 1. 一种用于多个即时消息传递会话的方法,包括: (a) 响应用于登录到即时消息传递会话中的第一登录请求,将第一 登录请求分配给即时消息传递IM主机服务器,其中每个登录请求具有 一个与请求登录的用户相关联的登录标识符; (b) 将第一登录请求传递给在步骤(a)所分配的IM主机服务器;以 及 (c) 响应与第一登录请求具有相同登录标识符的第二登录请求,将 第二登录请求传送给在步骤(a)所分配的IM主机服务器。
- 2如权利要求1所述的方法,还包括: (d) 在会话列表中插入第一登录会话,第一登录会话对应于第一登 录请求,第一登录会话包括在步骤何所分配的IM主机服务器的信息。
- 3如权利要求2所述的方法,其中将第二登录请求传送给在步骤何 所分配的服务器的步骤包括从第一登录会话中检索在步骤(a)所分配的 IM主机服务器的信息。
- 4如权利要求1所述的方法,还包括: (e) 响应接收到与步骤(a)中的登录标识符相关联的用户的消息,判 定用户是否具有多个登录会话;以及 ⑴ 如果用户具有多个登录会话,则将所述相关联的用户的消息多 点传送到多个登录会话中的活动会话。
- 5如权利要求4所述的方法,还包括:判定是否所有会话都被锁 定,步骤(ί)中多个登录会话的活动会话包括未被锁定的会话。
- 6如权利要求4所述的方法,其中与登录标识符相关联的步骤(e)中 的用户包括用户组。
- 7如权利要求2所述的方法,还包括响应第一会话的退出,从会话 列表中删除第一登录会话。 一种用于多个即时消息传递会话的数据处理系统,包括: (a)用于响应用于登录到即时消息传递会话中的第一登录请求而将 200410089693.2 第 第一登录请求分配给即时消息传递IM主机服务器的工作电路,其中每 个登录请求具有一个与请求登录的用户相关联的登录标识符; (b) 用于将第一登录请求传递给在(a)中所分配的IM主机服务器的 工作电路;以及 (c) 用于响应与第一登录请求具有相同登录标识符的第二登录请求 而将第二登录请求传送给在(a)中所分配的IM主机服务器的工作电路。
- 89. 如权利要求8所述的数据处理系统,还包括: (d) 用于在会话列表中插入第一登录会话的工作电路,第一登录会 话对应于第一登录请求,第一登录会话包括在(a)中所分配的IM主机服 务器的信息。
- 910. 如权利要求9所述的数据处理系统,其中将第二登录请求传送 给在(a)中所分配的服务器包括从第一登录会话中检索在(町中所分配的 IM主机服务器的信息。
- 1011. 如权利要求10所述的数据处理系统,还包括: (e) 用于响应接收到与(a)中的登录标识符相关联的用户的消息而判 定用户是否具有多个登录会话的工作电路;以及 (f) 用于如果用户具有多个登录会话,则将所述相关联的用户的消 息多点传送到多个登录会话中的活动会话的工作电路。
- 1112. 如权利要求11所述的数据处理系统,还包括用于判定是否所有 会话都被锁定的工作电路,(f)中多个登录会话的活动会话包括未被锁定 的会话。
- 1213. 如权利要求11所述的数据处理系统,其中与登录标识符相关联 的(e)中的用户包括用户组。
- 1314. 如权利要求9所述的数据处理系统,还包括用于响应第一会话 的退出,从会话列表中删除第一登录会话的装置。 200410089693.2
Independent claims13
26 paragraphs, as filed
TECHNICAL FIELD The present invention relates to a data processing system for instant messaging services, and more particularly to a data processing system that allows multiple instant messaging login sessions.
BACKGROUND Instant messaging systems have become an increasingly popular communication medium in personal and corporate environments. Instant messaging allows the real-time exchange of messages and presence between two parties in a network connection. Although on the surface similar to e-mail, because the instant messaging system is aware of the presence of the recipient on the network, the instant messaging system delivers messages in near real time. Although instant messaging systems and e-mail are typically based on a client-server model, e-mail is a store-and-forward system. The sender of an email message uses an email client (also known as a mail user agent or MUA), which sends the message to the mail transfer agent (MTA), which further forwards the message to the recipient through the network MTA, that is, the "mail server" to which the recipient is connected. The email message is stored on the recipient's MTA. The message is stored until the recipient retrieves his email from the MTA, which is typically using a post office protocol or POP client deployed on the recipient's personal computer or workstation.
In contrast, in the case of instant messaging, the instant messaging (IM) client of the sender sends the message to the IM server, which then continues to send the message to the receiver without storing the message. In other words, a typical IM system is not a storage forwarding architecture. In addition, IM systems typically allow only one active IM session for each username. Therefore, if a user changes their work location, say, from an office to a laboratory, they must log out of any active IM sessions and log in from the new location. During this time, they cannot receive messages.
Therefore, a mechanism that allows multiple active IM sessions is needed in the art. Specifically, there is a need in this technical field to allow multiple active IM sessions without avoiding the built-in IM system
200410089693.2 System and method of congestion and communication flow mechanism in the first system.
SUMMARY OF THE INVENTION The present invention addresses the aforementioned needs. Therefore, a method for multiple instant messaging sessions is provided. The method includes allocating a first login request to an instant messaging (IM) host server in response to the login request. Each login request has a login identifier associated with the user requesting the login. The first request is passed to the assigned IM host server. In response to a second login request having the same login identifier as the first login request, the second login request is passed to the IM host server assigned to the first request.
The foregoing provides a fairly broad overview of the features and technical advantages of one or more embodiments of the present invention, so that the following detailed description of the present invention may be better understood. Additional features and advantages of the present invention will be described below, which form the subject of the claims of the present invention.
BRIEF DESCRIPTION OF THE DRAWINGS For a more comprehensive understanding of the present invention and its advantages, reference is now made to the following description in conjunction with the accompanying drawings, in which: Fig. 1 shows an instant messaging architecture according to the principles of the present invention; An instant messaging login manager method according to an embodiment of the present invention; Fig. 3 shows in the form of a flow chart a method for instant messaging back-end server according to the principles of the present invention; Fig. 4 shows a user contact that can be used in conjunction with the present invention An exemplary display screen diagram of the person list; Figure 5 shows in block diagram form a data processing system that can be used in conjunction with the method incorporating the principles of the present invention.
DETAILED DESCRIPTION A mechanism is provided for multiple instant messaging sessions associated with a single username. The front-end server receives the user login request and transmits the instant messaging system to the back-end
200410089693.2 No. server. Each login associated with a specific username is transmitted to the same backend server. Messages targeting recipients with multiple active IM sessions are multicast to all active sessions. A message targeting a recipient with a single IM session is unicast. In the following description, in order to thoroughly understand the present invention, many specific details are explained. For example, a specific instant messaging protocol may be referred to. However, those of ordinary skill in the art should realize that the present invention can be implemented without these specific details. In addition, in order not to make the present invention change due to unnecessary details To be vague, the well-known circuit is shown in the form of a block diagram. Referring now to the drawings, the elements shown therein are not necessarily drawn to scale, and the same reference numerals are used between the drawings to indicate the same or similar elements.
Figure 1 shows an instant messaging (IM) architecture 100 that can be used in conjunction with the present invention. Multiple IM clients 102 can exchange instant messages with each other through the intermediary of one or more IM host servers 104a·e. (The host server can also be called the back-end server.) As mentioned earlier, IM systems are typically built based on the client-server model (as opposed to the peer-to-peer model). Several IM protocols that define the format of IM messages have been developed. However, the specific IM protocol used generally does not involve the principles of the present invention. One such commonly available open source protocol based on XML (Extensible Markup Language) is Jabber. (Jabber is published by Jabber Software Foundation, Denver, CO.) A user who wants to communicate with another user via IM client deployed on the user's personal computer or workstation, such as one of the IM clients 102a102d , Log in to the IM host server. In the architecture 100 of FIG. 1, in order to help congestion and communication traffic management, login is initiated through the front-end IM server 106. The login request is processed by the login manager 108 in the front-end server 106. The operation of the login manager 108 according to the principles of the present invention will be described with reference to FIG. 2. In addition, the network connectivity between the front-end server 106 and the host servers 104a·104e represented by the network 110 in the architecture 100 may be a local area network (LAN) or a wide area network (WAN) that may be established in an enterprise environment, or may be the Internet. Likewise, the principle of the present invention is not related to the specific network connecting the IM client and the IM server. Messages between IM clients are sent to the IM host server to which the sending client is connected. Then, the server transmits the message to the recipients IM host server, that is, the recipients connected
200410089693.2 p.
IM host server, which does not need to be the same as the host server of the sender. In addition, each client is responsible for providing presence messages to its server, that is, the IM host server to which it is connected. For example, if the recipient leaves his or her workstation and therefore cannot participate in the IM exchange, the IM client should indicate the recipient's absence to its host server. As mentioned earlier, one aspect of instant messaging that distinguishes email is to know the presence, that is, whether the message recipient is present, or at least whether their client is present. In other words, the IM client is responsible for reporting the presence status of the user participating in the IM session to the IM host server. Typically, this is achieved by passing the presence information message to the IM host server. If the user locks his or her workstation and cannot conduct a substantially real-time IM session, this can be reported to the IM host server. Similarly, if the user logs out, he can also report this to the IM server.
This can be further understood by referring to FIG. 4, which shows an exemplary display screen 400 of a user IM contact list. The presence of a specific contact is indicated by an icon symbol. The square icon 402 indicates that the user is logged in and is active. The diamond icon 404 indicates that the user is logged in to the IM system, but he or she is not present, that is, his or her workstation is locked. In addition, the contact can choose not to participate in instant messaging without logging out by indicating that he or she does not want to be "disturbed." The presence status of the contact is represented as a "diagonal circle" icon 405. Note that the contact may appear in the user's contact list in the form of an alias such as a contact name (for example, contact 406) or a node/domain of the contact (for example, contact 408). Typically, this takes the same form as a common email address, namely node@domain.
2 shows a login manager process 200 according to the principles of the present invention. Specifically, the login manager 200 works to manage multiple IM active sessions. In step 202, a user login request is received. In response, it is determined in step 204 that the Whether the user name has a pre-existing login session. This determination can be performed by, for example, the front-end server that maintains the session list such as the front-end server 106 in Fig. 1 and the IM host or back-end server connected to it as described below. In step 206 , Allocate the back-end server, and insert the allocated server into the session list in step 208. In step 210, transfer the session to the back-end server allocated in step 206.
200410089693.2 First, once the front-end server has established a connection with the user, the workload management task is called to find a back-end server with sufficient bandwidth to serve the new IM session. Then, the front-end server transmits the session login information to the back-end server to handle all IM traffic. Each back-end server can maintain a host IP address (that is, the IP address of each connected IM client) and a list of corresponding login IDs. According to the present invention, a given login ID can be associated with multiple IP addresses.
Returning to step 204, if it is determined that the login session has been associated with the login user name, then in step 212, the backend server assigned to the active session is retrieved from the session list. In step 214, the new session is transferred to the backend server retrieved in step 212. In this way, all active sessions of a given user are processed by the same backend server. The back-end server updates its host IP address list to include the IP address of the IM client that issued the login request. The method for instant messaging across multiple sessions that can be used by a back-end server according to the present invention is described in conjunction with FIG. 3.
As long as a given user is logged into at least one session, the user can appear in the session list, and when the user exits the session, the session is deleted. Therefore, for each session of a specific user, step 216, until the user exits the session, step 218, the user's login ID and session are kept in the session list. When the user exits the session, the session is deleted from the session list, step 220. In this way, the method 200 can determine whether a given user has an active IM login by comparing the login user name or ID with each entry in the session list in step 204.
Referring now to FIG. 3, it shows a back-end server process 300 for instant messaging between users with multiple IM login sessions in the form of a flowchart. In step 302, a message is received from the IM client. If the recipient of the message has a single login session in step 304, the message is single-pointed to that recipient, step 306. Conversely, if the recipient has multiple login sessions (the "yes" branch in step 304), then at step 308 it is determined whether all IM login sessions for that recipient are locked. As described above, the back-end server can maintain a list of IDs currently active on the server and corresponding host IP addresses. The server can also save the status of each host in the list. If not, then multicast the message to the active session, step 310. On the contrary, if all recipient sessions are locked, then in step 312 a notification that the recipient is not present is returned to the sender.
Returning to step 304, a group of recipients jointly identified by the group name can be similarly targeted
200410089693.2 The first bid. If the recipient of the instant message received in step 302 is a group in step 304, it is determined in step 308 whether any member of the group is present, that is, the conversation is not locked. If so, then in step 310 the message is multicast to one or more active sessions. If no members of the dull group are present, a notification is returned to the message sender. Note that, as described above, this can be displayed to the sender in the form of an icon associated with the user name of the recipient.
FIG. 5 shows an exemplary hardware configuration of a data processing system 500 according to the present invention. Combined with the methods shown in Figures 2 and 3, this hardware configuration can be used as a component of a data processing system to manage an instant message login session according to the principles of the present invention. The data processing system 500 includes a central processing unit (CPU) 510 such as a conventional microprocessor and a number of other units interconnected by a system bus 512. The data processing system 500 also includes: random access memory (RAM) 514; read only memory (ROM) 516; input/output (I/O) adapter 518 for connecting peripheral devices such as disk unit 520 to bus 512; user The interface adapter 522 is used to connect the keyboard 524, the mouse 526, the trackball 532, and/or other user interface devices (such as a touch screen device (shown in the figure shown)) to the bus 512. (A person of ordinary skill in the art should understand that the embodiment of the system 500 configured as a server may omit part or all of the user interface device). The system 500 further includes: a communication adapter 534 for connecting the data processing system 500 to a data processing network, so that the system can communicate with other systems; and a display adapter 536 for connecting the bus 512 and the display device 538. The CPU 510 may include other circuits not shown here, which will include common circuits in a microprocessor, such as an execution unit, a bus interface unit, an arithmetic logic unit, and the like. CPU 510 can also reside on a single integrated circuit.
Preferred implementations of the present invention include implementation as a computer system programmed to perform one or more of the methods described herein and as a computer program product. According to the computer system implementation, the instruction set for executing one or more methods resides in the random access memory 514 of the one or more computer systems generally configured as described above. These instruction sets, in combination with the system components that execute them, can manage multiple instant messaging login sessions as described above. Until the computer system needs it, the instruction set can be stored as a computer program product in another computer memory such as a disk drive 520 (which may include a removable memory such as an optical disk or a floppy disk ultimately used in the disk drive 520). In addition, the computer program product can also be stored on another computer and transmitted to the user workstation via a network or an external network such as the Internet. Skills in this field
200410089693.2 The technical staff should understand that the physical storage of the instruction set physically changes the medium stored on it, so that the medium carries computer-readable information. The change can be electrical, magnetic, chemical, biological, or some other physical change. Although it is convenient to describe the present invention in terms of instructions, symbols, characters, etc., readers should remember that all of these contents using similar terms should be associated with appropriate physical elements.
Note that the present invention may describe terms such as comparison, verification, selection, identification, or other terms that may be associated with an operator. However, for at least a number of operations described herein that form part of at least one embodiment, no operator operations are desired. Most of the operations described are machine operations that process electrical signals to generate other electrical signals.
200410089693.2
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| WO0141477A1 | Cites | World Intellectual Property Organization (WIPO) | Search report |
| WO03049459A1 | Cites | World Intellectual Property Organization (WIPO) | Search report |
| CN1452747A | Cites | China | Search report |
| 20030612 | Cites | – | – |
| 20031029 | Cites | – | – |
| 20010607 | Cites | – | – |
4 members in 2 offices
Priority claims5
| Document | Office | Kind | Date |
|---|---|---|---|
| 10703019 | United States of America | – | |
| 70301903 | United States of America | A | |
| 70301903 | United States of America | A | |
| 10703019 | – | – | – |
| US20030703019 | – | – | – |
Members4
| Document | Office | Kind | |
|---|---|---|---|
| CN1614959A | China | A | |
| US2005102365A1 | United States of America | A1 | |
| CN1311671CThis record | China | C | |
| US7529801B2 | United States of America | B2 |
5 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Expiry of patent termCX01 | CX01 | |
| Transfer of patent rightTR01 | TR01 | |
| Grant of patent or utility modelGrantedC14 | C14 | |
| Entry into substantive examinationC10 | C10 | |
| PublicationC06 | C06 |
Numbers
- Publication
- 1311671
- Publication, DOCDB
- 1311671
- Publication, EPODOC
- CN1311671C
- Application
- 100896932
- Application, DOCDB
- 200410089693
- Application, EPODOC
- CN2004189693
Titles2
- Chinese
- 用于多个即时消息传递登录会话的方法和系统
- English
- Method and system for multiple instant messaging login sessions
Classification
- CPC, 2
- H04L51/04
- H04L12/18
- IPC, 3
- H04L12 58
- H04L12 18
- G06F15 16