WO2009012724A1 - A method and device for communication interconnection - Google Patents
A method and device for communication interconnection Download PDFInfo
- Publication number
- WO2009012724A1 WO2009012724A1 PCT/CN2008/071762 CN2008071762W WO2009012724A1 WO 2009012724 A1 WO2009012724 A1 WO 2009012724A1 CN 2008071762 W CN2008071762 W CN 2008071762W WO 2009012724 A1 WO2009012724 A1 WO 2009012724A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- user
- session
- identifier
- message
- sip
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/10—Architectures or entities
- H04L65/102—Gateways
- H04L65/1033—Signalling gateways
- H04L65/104—Signalling gateways in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/1066—Session management
- H04L65/1101—Session protocols
- H04L65/1104—Session initiation protocol [SIP]
Definitions
- the present invention relates to the field of communications technologies, and in particular, to a communication interconnection method and device. Background technique
- the current messaging services in the mobile communication network or the Internet mainly include two types, one is instant messaging based on the Client Server Protocol (CSP)/Server-Server Protocol (SSP) protocol. And the message service in the Instant Messaging and Presence Service (IMS), and the other is the Session Initiated Protocol (SIP)-based message service, such as SIP instant messaging and presence extension (SIP Instant Message and Presence). Leveraging Extensions, SIMPLE) Instant Message (IM), Converged IP Message (CPM) and more.
- CSP Client Server Protocol
- SSP Server-Server Protocol
- IMS Session Initiated Protocol
- SIP Session Initiated Protocol
- SIMPLE Session Initiated Protocol
- IM Session Initiated Protocol
- CCPM Converged IP Message
- a user can have multiple clients. These multiple clients can be located in different terminals or on the same terminal. Users can use multiple clients at the same time without interfering with each other.
- a message can be sent to a user, and the message will be sent to a client, or multiple clients according to the settings of the user in the network, or directly sent to a client; when subscribing to the presence information, If you are using one of the multiple clients to subscribe, you also need to send the presence information to the subscribed terminal without affecting other terminals.
- SIP-based message service there are three types of messages in SIP: paging mode, large message mode, and session mode.
- the paging mode is sent by SIP message (SIP MESSAGE), and is not established between the sender and the receiver. Session, there is no connection between different messages, each message is independently routed; the big message mode needs to establish a session between the sender and the receiver, the media stream of the session is one-way, the session ends when a single message is sent, and different messages are also No contact, each message is independently routed; the session mode establishes a long-term session, sends a message within the session, and there is a connection between the messages, and the messages are routed according to the path negotiated by the session negotiation process.
- the SIP subscription also needs to establish a session and send a SIP notification within the session, so that the routing path of the SIP notification is determined.
- FIG. 1 is a schematic diagram of the existing IMPS user and SIP user interconnection, the IMPS system on the left and the SIP system on the right. The two systems are connected through the interconnection gateway (GW) for instant messaging, presence information, conferences, etc. Interconnection.
- SIP users can pass SIP messages (SIP MESSAGE) Or the Message Session Relay Protocol (MSRP) sends a message to the IMPS user or receives a message from the IMPS user, and the interconnection gateway completes the conversion between the IMPS message and the SIP MESSAGE/MSRP.
- SIP MESSAGE SIP MESSAGE
- MSRP Message Session Relay Protocol
- the SIP system represents an entity in the SIP system, which may be a SIP client or a SIP server;
- the IMPS system represents an entity in the IMPS system, which may be an IMPS client or an IMPS server.
- the process includes the following steps:
- Step 201 The SIP system sends a SIP INVITE request to the interconnection gateway.
- Step 203 The IMPS system returns a status response to the interconnection gateway.
- Step 204 The interconnection gateway returns a SIP 100 Trying temporary response to the SIP system.
- Step 205 After step 203, the IMPS system processes according to the received invitation request, and returns an invitation response (InviteResponse) of the invitation transaction to the interconnection gateway, indicating that the IMPS user accepts the invitation;
- an invitation response InviteResponse
- Step 206 The interconnection gateway returns a status response to the IMPS system.
- Step 207 The interconnection gateway returns a SIP 200 OK successful response to the SIP system.
- Step 208 The SIP system sends a SIP ACK response to the interconnection gateway.
- a message session is established between the SIP system and the interconnection gateway.
- the SIP user can send a message to the IMPS user through the session.
- the interconnection gateway converts the message to the IMPS system, and the IMPS user can send the message to the SIP user.
- the message is converted into a format, and the message is sent to the SIP system by using a message session established with the SIP system.
- the interconnection gateway sends a message to the IMPS user according to the user identifier (UserlD) of the IMPS user, and sends a message to the SIP user according to the SIP Uniform Resource Identifier (SIP URI) of the SIP user, if the IMPS user has multiple clients. It is possible that a client is involved in the session negotiation, but the actual message is sent to multiple clients; if the SIP user interacts with the same IMPS user through multiple sessions at the same time, the interconnection gateway receives the IMPS user to send. When the message is received, it cannot be determined which session of the SIP system is sent to the SIP user.
- UserlD user identifier
- SIP URI SIP Uniform Resource Identifier
- SIP user A has two terminals A1 and A2, and IMPS user B has multiple clients B1 and B2.
- A1 interacts with B1 through session mode, and A2 interacts with B2 through session mode.
- the prior art cannot be implemented. Therefore, for multi-client IMPS The message service between the SIP user of the user and the multi-client, the prior art does not have a solution that can meet the actual needs. Summary of the invention
- the embodiments of the present invention provide a method and an interconnection function entity for communication interconnection, which can enable a session between multiple client users supporting different protocols.
- the embodiment of the present invention provides a method for communication interconnection, where the interconnection function entity is respectively connected to the first communication system supporting the first communication protocol and the second communication system supporting the second communication protocol, and includes: the interconnection function entity Establishing an association relationship between the session identifier of the first communication system and the session identifier of the second communication system;
- the interconnect functional entity forwards the session message between the two communication systems in accordance with the association relationship.
- An embodiment of the present invention further provides an interconnecting functional entity, including:
- transceiver module configured to receive a message from the first communication system, and send a message from the format conversion module to the second communication system according to the association relationship established by the association relationship establishing module;
- An association establishing module configured to determine a session identifier corresponding to the first communication system and the second communication system, and establish and store an association relationship between the session identifiers;
- a format conversion module configured to convert a message supported by the first communication protocol received by the transceiver module into a format supported by the second communication protocol, and send the converted message to the transceiver module;
- the message from the first communication protocol system can be accurately sent to the destination client in the second communication protocol system.
- the solution of the present invention can enable the multiple clients to support the message service between different clients, and the multiple clients do not interfere with each other.
- FIG. 1 is a schematic diagram of interconnection between an IMPS user and a SIP user in the prior art
- FIG. 2 is a flow chart of establishing a message session between a SIP user and an IMPS user in the prior art
- FIG. 3 is a flowchart of processing an interconnection gateway in a process of establishing a session for a session mode instant message by using a SIP INVITE according to an embodiment of the present invention
- FIG. 4 is a flowchart of processing an interconnection gateway in an process in which an IMPS user sends an invitation request to an SIP user to perform an instant message according to an embodiment of the present invention
- FIG. 5 is a flowchart of processing an interconnection gateway in a process in which a SIP user initiates a subscription request and receives a presentation notification sent from an IMPS server according to an embodiment of the present invention
- FIG. 6 is a flowchart of processing an interconnection gateway in a process in which an IMPS user initiates a subscription request and receives a presence notification sent by a SIMPLE presentation server according to an embodiment of the present invention
- FIG. 7 is a flow chart of signaling interaction of a SIP user requesting an instant message according to the first embodiment of the present invention
- FIG. 8 is a process in which the IMPS client 1 is in a process of talking to a SIP client according to the first embodiment of the present invention
- the IMPS user actively requests the signaling interaction flow chart of the instant message through the IMPS client 2;
- FIG. 9 is a signaling interaction flow diagram of a SIP user subscribing to IMPS user presence information according to a second embodiment of the present invention.
- FIG. 10 is a structural block diagram of an interconnection gateway according to a third embodiment of the present invention. detailed description
- the interconnection gateway stores the association relationship during the session, and associates sessions of the two systems according to the association relationship, so that multiple clients can be implemented.
- the SIP user uses the session mode for instant message communication with the IMPS user, and the message is sent through the established session, so that multiple messages can be simultaneously performed between the SIP user multi-client and the IMPS user multi-client. Interacting without interfering with each other; it is also possible to implement a subscription for the SIP user or the IMPS user multi-client to present information to another system user.
- the association relationship between the session identifier of the SIP system established by the interconnection gateway and the session identifier of the IMPS system in the session establishment process is as shown in Table 1.
- the User1D of the SIP user in the IMPS system is the address record of the SIP user (Address Of Record, AOR ), which is the SIP URI, ClientlD is generated by the GW, and its function is described below.
- System type association note SIP system consists of source tag (from-tag), destination tag (to-tag) and call identity
- SIP user's ClientID is generated by GW
- the message service is implemented in the SIP system, and mainly includes the following two methods: First, a SIP INVITE request to establish a session for instant messaging in a session mode; and second, a SIP SUBSCRIBE request to establish Conversations are used to present subscriptions and notifications of information. These two cases are described separately below.
- Establishing a SIP system dialog through a SIP INVITE for session mode Instant messaging can be divided into two situations. One is that the SIP user initiates a SIP INVITE request, and the other is that the IMPS user initiates an invite request (InviteRequest). In the process, The Interconnect Gateway completes the conversion between the SIP INVITE request and the IMPS invite request.
- the SIP user sends a SIP INVITE request to the IMPS user to perform an instant message in the session mode.
- the processing flow of the GW in this process is as shown in FIG. 3, and includes the following steps:
- Step 301 Receive a SIP INVITE request from the SIP user, newly generate an association relationship record, and write the session identifier of the SIP system in the SIP INVITE request into the association relationship record, where the dialog identifier is from the source tag (From tag ), the destination tag (To tag ) and a call identifier (Call-ID);
- Step 302 Write the AOR of the sender in the SIP INVITE request as a SIP user to the User1D of the IMPS system to write the association relationship record;
- Step 303 Write the receiver AOR in the SIP INVITE request as the IMP1 user's User1D to the association record;
- Step 304 Generate a ClientID of the SIP user, and the ClientID is unique to the SIP user and the IMPS user who perform the message service of the same pair, that is, the ClientIDs corresponding to different clients of the SIP user are different from each other, and the generated ClientID is written. Enter the relationship record. Generate ClientID The specific manner may be generated according to the user identifier of the SIP user. For example, if the user identifier of the SIP user is: alice@atlanta.com, the ClientlD of each client of the SIP user may be: aliceO 1, alice02, alice03, etc.
- ClientlD step 305 map the SIP INVITE request to the corresponding IMPS invitation request, and the sender of the IMPS request is the SIP user identified by UserlD and/or ClientlD, and the request is received.
- the party is an IMPS user identified by UserlD;
- Step 306 Receive a response from the IMPS system, if the response indicates that the IMPS user does not receive the invitation, then go to step 309; if the IMPS user receives the invitation, proceed to step 307;
- Step 307 If the IMPS invitation response includes ClientlD or ApplicationlD of the IMPS user, the ClientlD or ApplicationlD is placed into the association relationship record; the successful response corresponding to the SIP INVITE request is returned, and the instant message communication is started;
- Step 308 Convert and forward the session message between the SIP system and the IMPS system according to the set association relationship. Specifically include:
- Receiving a SIP message sent by the SIP user through the MSRP in the session searching for the association relationship record according to the session identifier to which the SIP message belongs, obtaining the user identifier, the client identifier, and/or the application identifier of the IMPS user, and converting the message
- the format supported by the IMPS protocol is sent to the IMPS client corresponding to the IMPS user identifier, the client identifier, and/or the application identifier.
- the converting the SIP message into the IMPS message includes: setting the sender of the IMPS message to the SIP user identified by User1D and Client1D, and setting the receiver of the IMPS message to be identified by User1D, User1D, and Client1D or User1D and Application1D.
- the client of the IMPS user includes: setting the sender of the IMPS message to the SIP user identified by User1D and Client1D, and setting the receiver of the IMPS message to be identified by User1D, User1D, and Client1D or User1D and Application1D.
- a message from the IMPS user according to the user identifier of the IMPS user in the message, the user identifier of the SIP user, and/or the client identifier, searching for the association relationship to obtain the corresponding SIP system session identifier,
- the message is converted into a SIP-supported format, and the converted formatted message is sent to the SIP system through the SIP session corresponding to the SIP system session identifier.
- the SIP BYE request of the SIP user is received, or the message of the IMPS user is not received within a certain period of time, the SIP system session is ended, the association record is deleted, and the process ends.
- Step 309 Returning directly to the SIP user failure response, deleting the association relationship record generated in step 301, and ending the process.
- the IMPS user sends an invitation request to the SIP user for instant message communication.
- the processing flow of the GW in this process is as shown in FIG. 4, and includes the following steps:
- Step 401 Receive an invitation request of the IMPS user, newly generate an association relationship record, and put the user UserlD in the invitation request into the association relationship record as the User1D of the IMPS user. If the request includes the sender ClientID or ApplicationID, the IMPS is obtained. User's ClientID or
- the ApplicationID is placed in the relationship record
- Step 402 Put the user UserlD in the IMPS invitation request as the SIP user's UserlD into the association relationship record;
- Step 403 Convert the IMPS invitation request into a SIP INVITE request, the requesting receiver AOR is the SIP user User1D determined in step 402, the requesting sender AOR is the IMP1 user's User1D, and the requested From tag and Call-ID are generated by the GW;
- Step 404 Send a SIP INVITE request, receive a response, if it is a failure response, go to step 409; if it is a successful response, perform steps 405 to 408;
- Step 405 Put the SIP dialog identifier into the association relationship record.
- Step 406 Generate a Client ID of the SIP user.
- the ClientID is unique to the same pair of SIP users and IMPS users, and the generated ClientID is placed in the association relationship record.
- the specific generation manner can be analogized to the previous step 304.
- Step 407 Convert the successful response into an invitation response, indicating that the SIP user receives the invitation, and identifies the SIP user by using the User1D and the ClientID of the SIP user in the invitation response, and starts an instant message;
- Step 408 Convert and forward the session message between the SIP system and the IMPS system according to the set association relationship. Specifically include:
- Receiving a SIP message sent by the SIP user through the MSRP in the session searching for the association relationship record according to the session identifier to which the SIP message belongs, obtaining the user identifier, the client identifier, and/or the application identifier of the IMPS user, and converting the message
- the format supported by the IMPS protocol is sent to the IMPS client corresponding to the IMPS user identifier, the client identifier, and/or the application identifier.
- the converting the SIP message into the IMPS message includes: setting the sender of the IMPS message to the SIP user identified by User1D and ClientID, and setting the receiver of the IMPS message to be identified by User1D, UserlD, and ClientID or UserlD and ApplicationID.
- the client of the IMPS user includes: setting the sender of the IMPS message to the SIP user identified by User1D and ClientID, and setting the receiver of the IMPS message to be identified by User1D, UserlD, and
- the user identifier and/or the client identifier of the SIP user are searched for the association relationship to obtain the corresponding SIP system session identifier, convert the message into a format supported by the SIP, and pass the converted format message to the SIP system.
- the SIP session corresponding to the session identifier is sent to the SIP system.
- the SIP system session is ended, and the relationship record is deleted.
- Step 409 Replying to the IMPS user invitation response, indicating that the SIP user does not receive the invitation, deleting the association relationship record generated in step 401, and the process ends.
- the SIP SUBSCRIBE request to establish a conversation can also be divided into two cases: a SIP user initiates a subscription request and an IMPS user initiates a subscription request.
- the SIP user initiates a subscription request and receives the presentation notification sent by the IMPS server.
- the processing flow of the GW in this process is as shown in FIG. 5, and includes the following steps:
- Step 501 Receive a SIP SUBSCRIBE request sent by the SIP user, newly generate an association relationship record, and put the SIP identifier in the SIP SUBSCRIBE request into an association relationship record, where the dialog identifier is composed of a From tag, a To tag, and a Call ID. ;
- Step 502 Put the sender AOR in the SIP SUBSCRIBE request as a SIP user in the UserlD of the IMPS system, and put the relationship record;
- Step 503 Put the receiver AOR in the SIP SUBSCRIBE request as the User1D of the IMPS user into the relationship record;
- Step 504 Generate a Client1D of a SIP user, the ClientlD is unique to the same pair of SIP users and IMPS users, and the generated ClientlD is put into the association relationship record; the specific generation manner may be analogous to the previous step 304;
- Step 505 Map the SIP SUBSCRIBE request to the corresponding IMPS presentation subscription request or obtain the presence information request.
- the sender of the IMPS request is the SIP user identified by User1D and Client1D, and the requested receiver is the IMPS user identified by User1D, and the IMPS is sent.
- Step 506 Receive the response of the IMPS system, if the response indicates that the subscription fails, then go to step 509; if the response indicates that the subscription is successful, then perform steps 507 to 508;
- Step 507 Return a successful response corresponding to the SIP SUBSCRIBE request
- Step 508 Receive a notification of the presence information sent by the IMPS system, according to the SIP user of the recipient UserlD and ClientID, UserlD of the sender IMPS user look up the association record, determine the conversation of the SIP system, and send the presence information with the SIP NOTIFY request in the SIP system dialog. If the SIP user's de-subscription request is received, or the SIP system subscription expires and the SIP user does not continue to subscribe, the SIP system session is ended, and the association record is deleted, and the process ends;
- Step 509 The association relationship record generated in step 501 is deleted, and the response to the SIP user is directly returned, and the entire process ends.
- the IMPS user initiates a subscription request and receives a presentation notification sent by the SIMPLE presentation server.
- the processing flow of the GW in this process is as shown in FIG. 6, and includes the following steps:
- Step 601 Receive a subscription request initiated by the IMPS user, generate an association relationship record, and put the user UserlD in the request into the association relationship record as the User1D of the IMPS user. If the request includes the sender ClientID or ApplicationID, the IMPS user is included. ClientID or
- ApplicationID is placed in the association relationship
- Step 602 Put the Subscriber UserlD in the IMPS presentation subscription request as a SIP user in the UserlD of the IMPS system, and put the association relationship record;
- Step 603 Convert the IMPS presentation subscription request into a SIP SUBSCRIBE request, the requested recipient AOR is the SIP user User1D determined in step 602, the requested sender AOR is the IMP1 user's User1D, and the requested From tag and Call-ID are generated by the GW. , sending a SIP SUBSCRIBE request;
- Step 604 Receive a SIP response, if it is a failure response, then go to step 608; if it is a successful response, then perform steps 605 to 607;
- Step 605 Put the conversation identifier into the association relationship record
- Step 606 Convert the SIP successful response into an IMPS success status response, indicating that the subscription is successful, and the status response is sent to the IMPS user;
- Step 607 Receive a notification of the presence information of the subscriber SIP user sent by the SIMPLE presentation server in the conversation, and convert the presentation notification into an IMPS format, and the recipient of the presentation notification is set to UserlD, UserlD, ClientID or UserlD according to the association relationship record.
- the IMPS user identified by the ApplicationID, the presenter in the presentation notification is the SIP user identified by UserlD; if the subscription request of the IMPS user is received, or the subscription of the SIP system is terminated (including the termination of the subscription cannot be resubscribed or the termination of the resubscription fails), Then, the SIP system dialogue is ended, the association record is deleted, and the process ends.
- Step 608 Replying to the IMPS user failure response, indicating that the subscription fails, deleting the step generated in step 1 The relationship record, the process ends.
- Fig. 7 is a diagram showing the signaling interaction process of a SIP user requesting an instant message according to the first embodiment of the present invention.
- the SIP client in the figure includes multiple clients belonging to the same SIP user.
- one SIP user has two SIP clients;
- the SIP server includes a SIP/IP core network and at least one SIP-based service server.
- the flow of this embodiment is specifically as follows:
- Step 701 The SIP user sends an instant message to the IMPS user, so the SIP INVITE request is sent by the SIP client belonging to the SIP user.
- the SIP INVITE request is sent by the SIP client 1, as follows:
- the SIP INVITE request is routed to the SIP server.
- Step 702 The SIP server processes the SIP INVITE request, for example, determines a next route, and forwards the SIP INVITE to the interconnection gateway.
- Step 703 The interconnection gateway according to the "INVITE" in the above SIP INVITE request
- Wv:bob@biloxi.com SIP/2.0 determines that the request is an instant message request, so the SIP INVITE request is mapped to the IMPS InviteRequest, and the content of the InviteRequest is below:
- Step 704 The IMPS server returns a status (Status) response to the interconnection gateway.
- Step 705 After step 703, the IMPS server sends the InviteRequest of the SSP into an invitation user request (InviteUserRequest) of the CSP to the IMPS Client.
- Step 705 can be in the step Before or after 704, there is no order relationship between step 704 and step 705.
- Step 706 The IMPS client returns a status response to the IMPS server.
- Step 707 The IMPS user receives the invitation and returns an Inviting User Response (InviteUserResponse) through the IMPS client to the IMPS server, as follows:
- Url http: ⁇ www.wireless-village.org/applications/MudServer" /> Client ClientID of the invited user
- the signaling contains the ClientID of the IMPS Client.
- Step 708 The IMPS server returns a status response to the IMPS client.
- Step 709 After step 707, the IMPS server turns the CSP's InviteUserResponse Switch to the SSP's InviteResponse and send it to the interconnect gateway.
- Step 710 The interconnection gateway returns a status response to the IMPS server.
- Step 711 After step 709, the interconnection gateway determines that the IMPS user receives the invitation, and therefore returns a successful response SIP 200 OK corresponding to the SIP INVITE in step 702, and the response is first sent to the SIP server, as follows:
- the interconnection gateway creates a new association record, as shown in Table 2:
- IMPID ClientID http://www. wireless-village.org/applications/MudServer Client's ClientID
- Step 712 The SIP server returns a SIP 200 OK response to the SIP client 1;
- Step 713 The SIP client 1 sends a SIP ACK request to the SIP server.
- Step 714 The SIP server sends a SIP ACK request to the interconnection gateway, and an MSRP session for the instant message is established between the SIP client 1 and the interconnection gateway.
- Step 715 The SIP client 1 sends an instant message by using the MSRP sending command (MSRP SEND), and the message is sent to the interconnection gateway, and the specific content is as follows:
- To-Path msr : ⁇ gateway. example. com:8888/9di4eae923wzd;tcp
- Step 716 The interconnection gateway returns an MSRP OK response to the SIP client 1;
- Step 717 After the step 715, the interconnection gateway receives the MSRP SEND message from the SIP client 1, and determines that the message belongs to the established session, and searches for the relationship record that has been saved according to the session identifier carried in the MSRP SEND message. Determining UserlD and ClientlD of the receiving IMPS user; and, the interconnection gateway performs message format conversion, and converts the MSRP SEND message into an IMPS format sending message request (SendMessageRequest), as follows:
- Step 718 The IMPS server returns a message response to the interconnection gateway.
- Step 719 After step 717, the IMPS server converts the SSP's SendMessageRequest into a CSP new message (NewMessage) and sends it to the IMPS client. Since the recipient's UserlD and ClientlD have been confirmed between them, the guarantee message can be sent to the correct IMPS client.
- NewMessage CSP new message
- Step 720 The IMPS client returns a message to the IMP server (MessageDelivered).
- Step 721 In the process of the SIP user using the SIP client 1 to perform an instant message with the IMPS user, the user may want to use the other terminal SIP client 2 to perform instant messaging with the same IMPS user, and the original SIP client 1 and IMPS
- the session performed by the user cannot be interrupted, for example, the file is being transferred, so two sessions need to be performed at the same time, and the SIP user uses the SIP client 2 to issue a SIP INVITE request, as follows:
- the SIP INVITE request is routed to the SIP server as in step 701;
- Step 722 The SIP server processes the SIP INVITE request from the SIP client 2, for example, determining the next route, and forwarding the SIP INVITE to the interconnection gateway.
- Step 723 The interconnection gateway determines that the request is an instant message request, so the SIP INVITE request is Map the InviteRequest to IMPS as follows:
- the UserlD of the inviter and the UserlD of the invitee are respectively from the From header field and the To header field of the SIP INVITE request, and the inviter's ClientlD is generated for the interconnection gateway, and the request is sent to the corresponding IMPS server.
- the InviteRequest in step 723 is different from the InviteRequest in step 703 only in that the client identifier of the request is different.
- Step 724 The IMPS server returns a status response to the interconnection gateway.
- Step 725 After step 723, the IMPS server converts the SSP InviteRequest into a CSP InviteUserRequest and sends it to the IMPS client.
- Step 726 The IMPS client returns a status response to the IMPS server.
- Step 727 The IMPS user receives the invitation, returns the InviteUserResponse through the IMPS client, and sends it to the IMPS Server, as follows:
- the signaling contains the ClientID of the IMPS Client.
- Step 728 The IMPS server returns a status response to the IMPS client.
- Step 729 After step 727, the IMPS server converts the CSP's InviteUserResponse into an SSP's InviteResponse and sends it to the interconnect gateway. Step 730: The interconnection gateway returns a status response to the IMPS server.
- Step 731 After step 729, the interconnection gateway determines that the IMPS user receives the invitation, and therefore returns a successful response of the SIP INVITE in the corresponding step 722.
- the SIP 200 OK the response is first sent to the SIP server, and the following:
- the interconnection gateway creates a new association record, as shown in Table 3:
- IMPS uses wv:bob(3 ⁇ 4biloxi.com
- Step 732 The SIP server returns a SIP 200 OK response to the SIP client 2.
- Step 733 The SIP client 2 sends a SIP ACK request to the SIP server.
- Step 734 The SIP server sends a SIP ACK request to the interconnection gateway, and an MSRP session for the instant message is established between the SIP client 2 and the interconnection gateway.
- Step 735 For the IMPS user, this can be sip with a UserlD: alice@example.com
- the two clients of the user perform instant messaging.
- the clientlDs of the two clients are aliceO 1 and alice02 respectively.
- the IMPS user sends an instant message to the newly issued invitation alice02 by using the IMPS client, and the message is sent to the IMPS server, as follows:
- Step 736 The IMPS server returns a SendMessageResponse response to the IMPS client.
- Step 738 The Interconnect Gateway returns a response to the IMPS server SendMessageResponse.
- Step 739 After step 737, the interconnection gateway receives the message sent by the SendMessageRequest, according to the sender of the message UserlD, the receiver UserlD and the ClientID, finds the association record, determines the dialog identifier of the SIP system, and the GW performs message format conversion and converts into MSRP.
- the format of the MSRP SEND message, and the message is sent in the found dialog, the MSRP SEND content is as follows: MSRP d93kswow SEND
- the message is sent to the SIP client 2;
- Step 740 The SIP client 2 receives the MSRP SEND message and returns an MSRP OK port response to the interconnection gateway.
- Step 801 to step 814 The IMPS user sends an instant message invitation to the same SIP user through the IMPS client 2, the interconnection gateway performs signaling conversion, and sends a SIP INVITE to the SIP user.
- Step 815 to step 820 The SIP user sends a message to the new IMPS user client by using the newly created session. After receiving the message, the GW receives the association table and sends the message to the client of the IMPS user.
- the client ID of the client is "bobIM". .
- the above-mentioned first embodiment illustrates the client-to-client message flow, and is also applicable to a scenario where a SIP user or an IMPS user uses a multi-terminal to join another system chat room.
- FIG. 9 is a flowchart showing a signaling interaction process for a SIP user to subscribe to IMPS user presence information according to a second embodiment of the present invention, which specifically includes the following steps:
- Step 901 The SIP user wants to subscribe to the presentation information of the IMPS user, so the SIP SUBSCRIBE request is sent through the SIP client 1, and the specific content of the request is as follows:
- the request is first sent to the presence server (Presence Server).
- Step 902 The presence server determines that the subscriber is an IMPS user, and sends a SIP SUBSCRIBE request to the interconnection gateway.
- Step 903 The interconnection gateway converts the SIP SUBSCRIBE request into an IMPS
- Step 904 The IMPS server checks the authorization status, determines that the SIP user is allowed to subscribe to the presentation information of the IMPS user, and returns a status response, indicating that the subscription is successful.
- Step 905 The interconnection gateway receives the status response, converts to a SIP 200 OK response, and returns the response to the presence server.
- the content of the SIP 200 OK response is as follows:
- the interconnection gateway creates a new association record as shown in Table 5:
- IMPS uses wv:bob(3 ⁇ 4biloxi.com
- Step 906 The presence server returns a SIP 200 OK response to the SIP client 1;
- Step 907 After step 904, the IMPS server sends the subscriber's presence information to the subscriber, as follows:
- the message is first sent to the interconnection gateway
- Step 908 The interconnection gateway returns a Status response to the IMPS server.
- Step 909 After step 907, the interconnection gateway searches for the association record according to the subscriber UserID, the ClientID, and the subscriber UserlD in the received PresenceNotification, and finds a corresponding SIP system subscription conversation, and receives the SIP NOTIFY request in the conversation.
- the presence information is sent to the SIP client 1, as follows:
- Step 910 The SIP client 1 returns a SIP 200 OK response to the interconnection gateway.
- Step 911 The SIP user opens another terminal SIP client 2, and subscribes to the same through the terminal.
- the request is first sent to the presence server.
- Step 912 The presence server determines that the subscriber is an IMPS user, and sends a SIP SUBSCRIBE request to the interconnection gateway.
- Step 913 The interconnection gateway converts the SIP SUBSCRIBE request into an IMPS
- Step 914 The IMPS server checks the authorization status, determines that the SIP user is allowed to subscribe to the presentation information of the IMPS user, and returns a Status response, indicating that the subscription is successful;
- Step 915 The interconnection gateway receives the Status response, converts it into a SIP 200 OK response, and returns it to the presentation server, as follows:
- the interconnection gateway creates a new association record as shown in Table 6:
- IMPS uses wv: bob@biloxi.com
- Step 916 The presence server returns a SIP 200 OK response to the SIP client 2;
- Step 917 After step 904, the IMPS server sends the subscriber's presence information to the subscriber: under:
- the message is first sent to the interconnection gateway
- Step 918 The interconnection gateway returns a Status response to the IMPS server.
- Step 919 After step 907, the interconnection gateway searches for the association record according to the subscriber UserID, the ClientID, and the subscriber UserlD in the received PresenceNotification, and finds a corresponding SIP system subscription conversation, and receives the SIP NOTIFY request in the conversation.
- the presence information is sent to the SIP client 1, as follows:
- Step 920 The SIP client 1 returns a SIP 200 OK response to the interconnection gateway.
- Step 921 After a period of time, the presentation information of the IMPS user subscribed by the SIP client 1 changes, and the IMPS server issues PresenceNotification, as follows:
- the message is first sent to the interconnection gateway
- Step 922 The interconnection gateway returns a Status response to the IMPS server.
- Step 923 After step 907, the interconnection gateway searches for the association record according to the subscriber UserID, the ClientID, and the subscriber UserlD in the received PresenceNotification, and finds a corresponding SIP system subscription conversation, and receives the SIP NOTIFY request in the conversation.
- the presence information is sent to the SIP client 1, as follows:
- Step 924 The SIP client 1 returns a SIP 200 OK response to the interconnection gateway.
- the process of presenting the same SIP user's presence information for multiple IMPS clients of the same IMPS user is reversed in the above process, except that the interconnection gateway does not assign a ClientID to each SIP session, but associates the SIP dialog to the UserlD and ClientID of the IMPS user.
- the specific process is not detailed.
- a third embodiment of the present invention provides an interconnection gateway.
- the structural block diagram is as shown in FIG. 11, and includes: a transceiver module 1001, configured to receive a message from a SIP system (or an IMPS system), and query the module 1003 according to the association relationship. Sending a message from the format conversion module 1004 to the IMPS system (or SIP system);
- the association relationship establishing module 1002 is configured to determine a session identifier of a message service corresponding to the SIP system and the IMPS system, and establish and store an association relationship between the session identifiers;
- the SIP system session identifier includes a dialog identifier of the SIP system;
- the session identifier of the IMPS system includes the user identifier and the client identifier of the SIP user participating in the session, the user identifier and the client identifier of the IMPS user participating in the session, where the client identifier of the IMPS user may be a ClientID or an ApplicationID;
- the relationship query module 1003 is configured to query the association relationship stored in the association relationship establishing module 1002 according to the content of the message received by the transceiver module 1001 from the SIP system (or the IMPS system), to obtain the message to be sent.
- the format conversion module 1004 is configured to convert a SIP (or IMPS protocol) supported message received by the transceiver module 1001 into a format supported by the IMPS protocol (or SIP), and convert the converted The information is sent to the transceiver module 1001.
- SIP or IMPS protocol
- the association establishing module 1002 further includes:
- an obtaining unit configured to obtain, from the SIP request/response or IMPS request/response received by the transceiver module 1001, the user identifier of the SIP user, the session identifier of the SIP system, the user identifier of the IMPS user, and the client identifier of the IMPS user. And using the obtained identifiers as the content in the relationship record;
- the generating unit is configured to generate a client identifier of the SIP user in the relationship record.
- the foregoing embodiments are all message services between the IMPS user and the SIP user.
- the present invention is not limited thereto, and the message service between multiple client users supporting different communication protocols can be applied to the solution of the present invention.
- the network element used in the foregoing embodiment for connecting the SIP system and the IMPS system and performing message conversion between the foregoing systems is an interconnection gateway, and may actually be implemented by other network elements capable of implementing the foregoing interconnection function, and thus The network elements can be collectively referred to as interconnected functional entities.
- the medium can be a readable and writable memory RAM, a read only memory ROM, a magnetic disk or an optical disk.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- General Business, Economics & Management (AREA)
- Telephonic Communication Services (AREA)
Abstract
A method for communication interconnection is provided, an interconnection function entity respectively interconnects the first communication system supporting the first communication protocol and the second communication system supporting the second communication protocol, the interconnection function entity establishes the associated relation between the session id of the first communication system and the session id of the second communication system; based on the associated relation, the interconnection function entity forwards the session message between two communication systems. A device for communication interconnection is also provided. The scheme of this invention makes no interference between multi-clients, when the message service is processed between the users of multi-clients supporting different protocols.
Description
一种通信互连方法和设备 Communication interconnection method and device
技术领域 Technical field
本发明涉及通信技术领域, 特别涉及一种通信互连方法和设备。 背景技术 The present invention relates to the field of communications technologies, and in particular, to a communication interconnection method and device. Background technique
目前的移动通信网络或互联网络中的消息业务主要包括两种类型, 一种是 基于客户端-服务器协议(Client Server Protocol, CSP ) /服务器 -服务器协议 ( Server Server Protocol, SSP )协议的即时消息和存在业务( Instant Messaging and Presence Service, IMPS )中的消息业务, 另外一种是基于会话初始协议 ( Session Initiated Protocol, SIP ) 的消息业务, 例如 SIP 即时消息和存在效用扩展 ( SIP Instant Message and Presence Leveraging Extensions , SIMPLE )即时消息 ( Instant Message, IM )、 融合 IP消息 ( Converged IP Message, CPM )等等。 The current messaging services in the mobile communication network or the Internet mainly include two types, one is instant messaging based on the Client Server Protocol (CSP)/Server-Server Protocol (SSP) protocol. And the message service in the Instant Messaging and Presence Service (IMS), and the other is the Session Initiated Protocol (SIP)-based message service, such as SIP instant messaging and presence extension (SIP Instant Message and Presence). Leveraging Extensions, SIMPLE) Instant Message (IM), Converged IP Message (CPM) and more.
在 IMPS或 SIP中,一个用户可以有多个客户端, 这多个客户端可以位于不 同的终端, 也可以位于同一个终端, 用户可以同时使用多个客户端而不互相干 扰。 在 IMPS中, 可以对一个用户发送消息, 消息将按照用户在网络中的设置被 发送到某个客户端, 或多个客户端, 也可以直接对某个客户端发送消息; 订阅 呈现信息时, 如果是使用多个客户端之一订阅, 也需要将呈现信息发送给订阅 的终端而不影响其他终端。以基于 SIP的消息业务为例,在 SIP中有三种类型的 消息: 寻呼模式、 大消息模式和会话模式, 寻呼模式利用 SIP 消息 (SIP MESSAGE )发送, 发送端和接收端之间不建立会话, 不同消息之间没有联系, 每个消息独立路由; 大消息模式需要发送端和接收端之间建立会话, 会话的媒 体流为单向, 单个消息发送完毕就结束会话, 不同消息之间也没有联系, 每个 消息独立路由; 会话模式则建立一个长期的会话, 在会话内发送消息, 消息之 间有联系,且消息都按会话协商过程协商的路径路由。 SIMPLE呈现业务中, SIP 订阅同样需要建立会话,在会话内发送 SIP通知,这样 SIP通知的路由路径是确 定的。 In IMPS or SIP, a user can have multiple clients. These multiple clients can be located in different terminals or on the same terminal. Users can use multiple clients at the same time without interfering with each other. In the IMPS, a message can be sent to a user, and the message will be sent to a client, or multiple clients according to the settings of the user in the network, or directly sent to a client; when subscribing to the presence information, If you are using one of the multiple clients to subscribe, you also need to send the presence information to the subscribed terminal without affecting other terminals. Taking the SIP-based message service as an example, there are three types of messages in SIP: paging mode, large message mode, and session mode. The paging mode is sent by SIP message (SIP MESSAGE), and is not established between the sender and the receiver. Session, there is no connection between different messages, each message is independently routed; the big message mode needs to establish a session between the sender and the receiver, the media stream of the session is one-way, the session ends when a single message is sent, and different messages are also No contact, each message is independently routed; the session mode establishes a long-term session, sends a message within the session, and there is a connection between the messages, and the messages are routed according to the path negotiated by the session negotiation process. In the SIMPLE presentation service, the SIP subscription also needs to establish a session and send a SIP notification within the session, so that the routing path of the SIP notification is determined.
在 IMPS用户与 SIP用户之间进行消息收发的情况下, 需要实现 IMPS和 SIP之间的互连。图 1是现有的 IMPS用户和 SIP用户互连的示意图,左边是 IMPS 系统, 右边是 SIP系统, 这两个系统之间通过互连网关(GW )连接, 进行即时 消息、呈现信息、会议等等的互连。 SIP用户可以通过 SIP消息(SIP MESSAGE )
或消息会话中继协议( Message Session Relay Protocol, MSRP )向 IMPS用户发 送消息或从 IMPS 用户接收消息, 互连网关完成 IMPS 消息和 SIP MESSAGE/MSRP之间的转换。 图 2是现有技术中 SIP用户和 IMPS用户建立消 息会话的流程, 由 SIP用户主动发起请求。 其中, SIP系统表示 SIP系统中的实 体, 可以是 SIP客户端或 SIP服务器; IMPS系统表示 IMPS系统中的实体, 可 以是 IMPS客户端或 IMPS服务器。 该流程包括如下步骤: In the case of messaging between an IMPS user and a SIP user, an interconnection between IMPS and SIP needs to be implemented. Figure 1 is a schematic diagram of the existing IMPS user and SIP user interconnection, the IMPS system on the left and the SIP system on the right. The two systems are connected through the interconnection gateway (GW) for instant messaging, presence information, conferences, etc. Interconnection. SIP users can pass SIP messages (SIP MESSAGE) Or the Message Session Relay Protocol (MSRP) sends a message to the IMPS user or receives a message from the IMPS user, and the interconnection gateway completes the conversion between the IMPS message and the SIP MESSAGE/MSRP. FIG. 2 is a flow chart of establishing a message session between a SIP user and an IMPS user in the prior art, and the SIP user actively initiates a request. The SIP system represents an entity in the SIP system, which may be a SIP client or a SIP server; the IMPS system represents an entity in the IMPS system, which may be an IMPS client or an IMPS server. The process includes the following steps:
步骤 201 : SIP系统向互连网关发送 SIP邀请 ( SIP INVITE )请求; 步骤 202: 互连网关将 SIP INVITE请求转换成 IMPS的邀请事务的邀请请 求(Invite Request ), 发送给 IMPS系统; Step 201: The SIP system sends a SIP INVITE request to the interconnection gateway. Step 202: The interconnection gateway converts the SIP INVITE request into an invitation request of the IMPS invitation transaction (Invite Request), and sends the request to the IMPS system.
步骤 203: IMPS系统向互连网关返回状态响应; Step 203: The IMPS system returns a status response to the interconnection gateway.
步骤 204: 互连网关向 SIP系统返回 SIP 100 Trying临时响应; Step 204: The interconnection gateway returns a SIP 100 Trying temporary response to the SIP system.
步骤 205: 在步骤 203之后, IMPS系统根据所收到的邀请请求进行处理, 向互连网关返回邀请事务的邀请响应 ( InviteResponse ), 表明 IMPS用户接受邀 请; Step 205: After step 203, the IMPS system processes according to the received invitation request, and returns an invitation response (InviteResponse) of the invitation transaction to the interconnection gateway, indicating that the IMPS user accepts the invitation;
步骤 206: 互连网关向 IMPS系统返回状态响应; Step 206: The interconnection gateway returns a status response to the IMPS system.
步骤 207: 互连网关向 SIP系统返回 SIP 200 OK成功响应; Step 207: The interconnection gateway returns a SIP 200 OK successful response to the SIP system.
步骤 208: SIP系统向互连网关发出 SIP ACK响应。 Step 208: The SIP system sends a SIP ACK response to the interconnection gateway.
这样 SIP系统和互连网关之间建立了消息会话, SIP用户通过该会话可以向 IMPS用户发送消息, 互连网关接收到消息之后, 将所述消息转换格式后发送给 IMPS系统, IMPS用户可以向 SIP用户发送消息, 互连网关接收到消息之后, 将所述消息转换格式, 利用和 SIP 系统之间建立的消息会话将消息发送到 SIP 系统。 In this way, a message session is established between the SIP system and the interconnection gateway. The SIP user can send a message to the IMPS user through the session. After receiving the message, the interconnection gateway converts the message to the IMPS system, and the IMPS user can send the message to the SIP user. After the message is received, after the interconnection gateway receives the message, the message is converted into a format, and the message is sent to the SIP system by using a message session established with the SIP system.
现有技术中, 互连网关根据 IMPS用户的用户标识( UserlD )来向 IMPS用 户发送消息, 根据 SIP用户的 SIP统一资源标志符( SIP URI ) 向 SIP用户发送 消息,如果 IMPS用户有多个客户端,就可能会造成参与会话协商的是某个客户 端, 但是实际的消息却发送到多个客户端; 如果 SIP用户通过多个会话同时与 同一个 IMPS用户交互, 则互连网关接收到 IMPS用户发送的消息时, 不能判断 通过 SIP系统的哪个会话发送给 SIP用户。 例如 SIP用户 A有两个终端 A1和 A2 , IMPS用户 B有多个客户端 B1和 B2, A1通过会话方式和 B1交互, A2通 过会话方式和 B2交互, 现有技术就无法实现。 因此, 对于多客户端的 IMPS用
户和多客户端的 SIP用户之间的消息业务, 现有技术没有能够满足实际需要的 解决方案。 发明内容 In the prior art, the interconnection gateway sends a message to the IMPS user according to the user identifier (UserlD) of the IMPS user, and sends a message to the SIP user according to the SIP Uniform Resource Identifier (SIP URI) of the SIP user, if the IMPS user has multiple clients. It is possible that a client is involved in the session negotiation, but the actual message is sent to multiple clients; if the SIP user interacts with the same IMPS user through multiple sessions at the same time, the interconnection gateway receives the IMPS user to send. When the message is received, it cannot be determined which session of the SIP system is sent to the SIP user. For example, SIP user A has two terminals A1 and A2, and IMPS user B has multiple clients B1 and B2. A1 interacts with B1 through session mode, and A2 interacts with B2 through session mode. The prior art cannot be implemented. Therefore, for multi-client IMPS The message service between the SIP user of the user and the multi-client, the prior art does not have a solution that can meet the actual needs. Summary of the invention
有鉴于此, 本发明实施例提出了一种通信互连的方法和互联功能实体, 可 以使支持不同协议的多客户端用户之间进行会话。 In view of this, the embodiments of the present invention provide a method and an interconnection function entity for communication interconnection, which can enable a session between multiple client users supporting different protocols.
本发明实施例提出了一种通信互联的方法, 互连功能实体与支持第一通信 协议的第一通信系统和支持第二通信协议的第二通信系统分别相连, 包括: 所述互连功能实体建立所述第一通信系统的会话标识和第二通信系统的会 话标识之间的关联关系; The embodiment of the present invention provides a method for communication interconnection, where the interconnection function entity is respectively connected to the first communication system supporting the first communication protocol and the second communication system supporting the second communication protocol, and includes: the interconnection function entity Establishing an association relationship between the session identifier of the first communication system and the session identifier of the second communication system;
所述互连功能实体根据所述关联关系, 在所述两个通信系统间转发会话消 息。 The interconnect functional entity forwards the session message between the two communication systems in accordance with the association relationship.
本发明实施例还提出了一种互连功能实体, 包括: An embodiment of the present invention further provides an interconnecting functional entity, including:
收发模块, 用于接收来自所述第一通信系统的消息, 根据所述关联关系建 立模块建立的关联关系将来自格式转换模块的消息发送至所述第二通信系统; 或者 a transceiver module, configured to receive a message from the first communication system, and send a message from the format conversion module to the second communication system according to the association relationship established by the association relationship establishing module; or
用于接收来自所述第二通信系统的消息, 根据所述关联关系建立模块建立 的关联关系将来自格式转换模块的消息发送至所述第一通信系统; Receiving a message from the second communication system, and sending a message from the format conversion module to the first communication system according to the association relationship established by the association relationship establishing module;
关联关系建立模块, 用于确定对应于第一通信系统和第二通信系统的会话 标识, 建立并存储所述会话标识之间的关联关系; An association establishing module, configured to determine a session identifier corresponding to the first communication system and the second communication system, and establish and store an association relationship between the session identifiers;
格式转换模块, 用于将所述收发模块所接收的第一通信协议支持的消息转 换为第二通信协议支持的格式, 并将所述转换后的消息发送给所述收发模块; 或者 a format conversion module, configured to convert a message supported by the first communication protocol received by the transceiver module into a format supported by the second communication protocol, and send the converted message to the transceiver module; or
用于将所述收发模块所接收的第二通信协议支持的消息转换为第一通信协 议支持的格式 , 并将所述转换后的消息发送给所述收发模块。 And a method for converting a message supported by the second communication protocol received by the transceiver module into a format supported by the first communication protocol, and sending the converted message to the transceiver module.
从以上技术方案可以看出, 通过建立不同通信协议的会话标识的关联关系, 根据该关联关系可以实现将来自第一通信协议系统的消息准确发送到第二通信 协议系统中的目的客户端中。 本发明方案可以使支持不同协议的多客户端用户 之间进行消息业务时, 多个客户端之间不互相干扰。
附图说明 It can be seen from the above technical solution that, by establishing an association relationship of session identifiers of different communication protocols, according to the association relationship, the message from the first communication protocol system can be accurately sent to the destination client in the second communication protocol system. The solution of the present invention can enable the multiple clients to support the message service between different clients, and the multiple clients do not interfere with each other. DRAWINGS
图 1为现有技术中 IMPS用户和 SIP用户互连的示意图; 1 is a schematic diagram of interconnection between an IMPS user and a SIP user in the prior art;
图 2为现有技术中 SIP用户和 IMPS用户建立消息会话的流程图; 2 is a flow chart of establishing a message session between a SIP user and an IMPS user in the prior art;
图 3为本发明实施例通过 SIP INVITE请求建立对话用于会话模式即时消息 的过程中, 互连网关的处理流程图; 3 is a flowchart of processing an interconnection gateway in a process of establishing a session for a session mode instant message by using a SIP INVITE according to an embodiment of the present invention;
图 4为本发明实施例 IMPS用户向 SIP用户发送邀请请求进行即时消息的过 程中, 互连网关的处理流程图; 4 is a flowchart of processing an interconnection gateway in an process in which an IMPS user sends an invitation request to an SIP user to perform an instant message according to an embodiment of the present invention;
图 5为本发明实施例 SIP用户发起订阅请求并接收来自 IMPS服务器发送的 呈现通知过程中, 互连网关的处理流程图; 5 is a flowchart of processing an interconnection gateway in a process in which a SIP user initiates a subscription request and receives a presentation notification sent from an IMPS server according to an embodiment of the present invention;
图 6为本发明实施例 IMPS用户发起订阅请求并接收来自 SIMPLE呈现服务 器发送的呈现通知的过程中, 互连网关的处理流程图; 6 is a flowchart of processing an interconnection gateway in a process in which an IMPS user initiates a subscription request and receives a presence notification sent by a SIMPLE presentation server according to an embodiment of the present invention;
图 7为本发明第一实施例的 SIP用户请求进行即时消息的信令交互流程图; 图 8为本发明第一实施例中 IMPS客户端 1正在与 SIP客户端通话的过程中 , 7 is a flow chart of signaling interaction of a SIP user requesting an instant message according to the first embodiment of the present invention; FIG. 8 is a process in which the IMPS client 1 is in a process of talking to a SIP client according to the first embodiment of the present invention;
IMPS用户通过 IMPS客户端 2主动请求进行即时消息的信令交互流程图; The IMPS user actively requests the signaling interaction flow chart of the instant message through the IMPS client 2;
图 9为本发明第二实施例为 SIP用户订阅 IMPS用户呈现信息的信令交互流 程图; 9 is a signaling interaction flow diagram of a SIP user subscribing to IMPS user presence information according to a second embodiment of the present invention;
图 10为本发明第三实施例的互连网关的结构框图。 具体实施方式 FIG. 10 is a structural block diagram of an interconnection gateway according to a third embodiment of the present invention. detailed description
本发明实施例通过在 SIP系统会话和 IMPS系统会话之间建立起关联关系, 互连网关在会话期间存储所述关联关系, 并根据该关联关系来关联两个系统的 会话, 这样就可以实现多客户端 (终端)情况下, SIP用户用和 IMPS用户之间 用会话模式进行即时消息通讯, 通过建立的会话发送消息, 可以实现 SIP用户 多客户端和 IMPS用户多客户端之间同时进行多个消息交互而不互相干扰;还可 以实现 SIP用户或 IMPS用户多客户端对另一系统用户呈现信息的订阅。 In the embodiment of the present invention, by establishing an association relationship between a SIP system session and an IMPS system session, the interconnection gateway stores the association relationship during the session, and associates sessions of the two systems according to the association relationship, so that multiple clients can be implemented. In the case of the terminal (terminal), the SIP user uses the session mode for instant message communication with the IMPS user, and the message is sent through the established session, so that multiple messages can be simultaneously performed between the SIP user multi-client and the IMPS user multi-client. Interacting without interfering with each other; it is also possible to implement a subscription for the SIP user or the IMPS user multi-client to present information to another system user.
其中,互连网关在会话建立过程中所建立 SIP系统的会话标识与 IMPS系统 的会话标识之间的关联关系如表 1所示, 其中 SIP用户在 IMPS系统的 UserlD 是 SIP用户的地址记录( Address Of Record, AOR ), 即为 SIP URI, ClientlD是 由 GW生成的, 其作用在下面描述。 The association relationship between the session identifier of the SIP system established by the interconnection gateway and the session identifier of the IMPS system in the session establishment process is as shown in Table 1. The User1D of the SIP user in the IMPS system is the address record of the SIP user (Address Of Record, AOR ), which is the SIP URI, ClientlD is generated by the GW, and its function is described below.
系统类型 关联关系 备注
SIP系统 由来源标签 ( from-tag ), 目的标签 ( to-tag )和呼叫标识System type association note SIP system consists of source tag (from-tag), destination tag (to-tag) and call identity
( Call-ID )组成 (Call-ID) composition
SIP用户的 UserlD SIP用户的 SIP URI SIP URI of the SIP user's UserlD SIP user
SIP用户的 ClientID 由 GW生成 SIP user's ClientID is generated by GW
IMPS系 IMPS Department
IMPS用户的 UserlD IMPL user's UserlD
IMPS用户的 ClientID 表 1 IMPID user's ClientID table 1
目前在 SIP系统实现消息业务, 主要包括以下两种方式: 第一种, 通过 SIP 邀请(SIP INVITE )请求建立对话用于会话模式的即时消息; 第二种, 通过 SIP 订阅 (SIP SUBSCRIBE )请求建立对话用于呈现信息的订阅和通知。 以下对这 两种情况分别加以叙述。 At present, the message service is implemented in the SIP system, and mainly includes the following two methods: First, a SIP INVITE request to establish a session for instant messaging in a session mode; and second, a SIP SUBSCRIBE request to establish Conversations are used to present subscriptions and notifications of information. These two cases are described separately below.
通过 SIP INVITE请求建立对话用于会话模式即时消息 Establish a dialog for session mode instant messaging via a SIP INVITE request
通过 SIP INVITE请求建立 SIP系统对话用于会话模式即时消息可以分为两 种情况, 一种是 SIP用户主动发起 SIP INVITE请求, 一种是 IMPS用户主动发 起邀请请求( InviteRequest ),在该过程中,互连网关完成 SIP INVITE请求和 IMPS 邀请请求之间的转换。 Establishing a SIP system dialog through a SIP INVITE for session mode Instant messaging can be divided into two situations. One is that the SIP user initiates a SIP INVITE request, and the other is that the IMPS user initiates an invite request (InviteRequest). In the process, The Interconnect Gateway completes the conversion between the SIP INVITE request and the IMPS invite request.
SIP用户向 IMPS用户发送 SIP INVITE请求, 进行会话模式的即时消息, GW在此过程中的处理流程如图 3所示, 包括如下步骤: The SIP user sends a SIP INVITE request to the IMPS user to perform an instant message in the session mode. The processing flow of the GW in this process is as shown in FIG. 3, and includes the following steps:
步骤 301 : 接收来自 SIP用户的 SIP INVITE请求, 新生成一条关联关系记 录, 将所述 SIP INVITE请求中的 SIP系统的对话标识写入关联关系记录, 对话 标识由来源标签 ( From tag ), 目的标签 ( To tag )和呼叫标识( Call-ID )组成; 步骤 302: 将 SIP INVITE请求中的发送方的 AOR作为 SIP用户在 IMPS系 统的 UserlD写入关联关系记录; Step 301: Receive a SIP INVITE request from the SIP user, newly generate an association relationship record, and write the session identifier of the SIP system in the SIP INVITE request into the association relationship record, where the dialog identifier is from the source tag (From tag ), the destination tag (To tag ) and a call identifier (Call-ID); Step 302: Write the AOR of the sender in the SIP INVITE request as a SIP user to the User1D of the IMPS system to write the association relationship record;
步骤 303: 将 SIP INVITE请求中的接收方 AOR作为 IMPS用户的 UserlD 写入关联关系记录; Step 303: Write the receiver AOR in the SIP INVITE request as the IMP1 user's User1D to the association record;
步骤 304: 生成一个 SIP用户的 ClientID, 该 ClientID对同一对进行消息业 务的 SIP用户和 IMPS用户保持唯一, 也就是说, 该 SIP用户的不同客户端所对 应的 ClientID彼此不同, 将生成的 ClientID写入关联关系记录。 生成 ClientID
的具体方式可以是根据该 SIP用户的用户标识来生成,例如,若 SIP用户的用户 标识为: alice@atlanta.com, 则该 SIP用户的各个客户端的 ClientlD可以是: aliceO 1、 alice02、 alice03等等;实际上也可以釆用其它生成方式,只要这些 ClientlD 步骤 305: 将 SIP INVITE请求映射成相应的 IMPS邀请请求, IMPS请求的 发送方为以 UserlD和 /或 ClientlD标识的 SIP用户, 请求的接收方为以 UserlD 标识的 IMPS用户; Step 304: Generate a ClientID of the SIP user, and the ClientID is unique to the SIP user and the IMPS user who perform the message service of the same pair, that is, the ClientIDs corresponding to different clients of the SIP user are different from each other, and the generated ClientID is written. Enter the relationship record. Generate ClientID The specific manner may be generated according to the user identifier of the SIP user. For example, if the user identifier of the SIP user is: alice@atlanta.com, the ClientlD of each client of the SIP user may be: aliceO 1, alice02, alice03, etc. In other words, other generation methods can be used as long as these ClientlD step 305: map the SIP INVITE request to the corresponding IMPS invitation request, and the sender of the IMPS request is the SIP user identified by UserlD and/or ClientlD, and the request is received. The party is an IMPS user identified by UserlD;
步骤 306: 接收来自 IMPS系统的应答, 如果应答表示 IMPS用户不接收邀 请, 则转至步骤 309; 如果 IMPS用户接收邀请, 则执行步骤 307; Step 306: Receive a response from the IMPS system, if the response indicates that the IMPS user does not receive the invitation, then go to step 309; if the IMPS user receives the invitation, proceed to step 307;
步骤 307:若 IMPS邀请应答中包含 IMPS用户的 ClientlD或 ApplicationlD, 则将该 ClientlD或 ApplicationlD放入关联关系记录;返回对应 SIP INVITE请求 的成功响应, 开始即时消息通讯; Step 307: If the IMPS invitation response includes ClientlD or ApplicationlD of the IMPS user, the ClientlD or ApplicationlD is placed into the association relationship record; the successful response corresponding to the SIP INVITE request is returned, and the instant message communication is started;
步骤 308: 根据已设置的关联关系, 在 SIP系统和 IMPS系统之间进行会话 消息的转换与转发。 具体包括: Step 308: Convert and forward the session message between the SIP system and the IMPS system according to the set association relationship. Specifically include:
接收 SIP用户在对话内通过 MSRP发送的 SIP消息, 根据所述 SIP消息所 属的对话标识, 查找所述关联关系记录得到 IMPS用户的用户标识、客户端标识 和 /或应用标识, 将所述消息转换为 IMPS协议支持的格式, 并将所述转换格式 后的消息发送到所述 IMPS用户标识、 客户端标识和 /或应用标识对应的 IMPS 客户端。 其中, 所述将 SIP消息转换为 IMPS消息包括: 将 IMPS消息的发送方 设成以 UserlD和 ClientlD标识的 SIP用户, 将 IMPS消息的接收方设置为以 UserlD、 UserlD和 ClientlD或 UserlD和 ApplicationlD标识的 IMPS用户的客户 端。 Receiving a SIP message sent by the SIP user through the MSRP in the session, searching for the association relationship record according to the session identifier to which the SIP message belongs, obtaining the user identifier, the client identifier, and/or the application identifier of the IMPS user, and converting the message The format supported by the IMPS protocol is sent to the IMPS client corresponding to the IMPS user identifier, the client identifier, and/or the application identifier. The converting the SIP message into the IMPS message includes: setting the sender of the IMPS message to the SIP user identified by User1D and Client1D, and setting the receiver of the IMPS message to be identified by User1D, User1D, and Client1D or User1D and Application1D. The client of the IMPS user.
和 /或, 来自 IMPS用户的消息, 才艮据所述消息中的 IMPS用户的用户标识、 SIP用户的用户标识和 /或客户端标识, 查找所述关联关系得到对应的 SIP系统 会话标识, 将所述消息转换为 SIP支持的格式, 并将所述转换格式后的消息通 过所述 SIP系统会话标识对应的 SIP会话发送到 SIP系统。 And/or a message from the IMPS user, according to the user identifier of the IMPS user in the message, the user identifier of the SIP user, and/or the client identifier, searching for the association relationship to obtain the corresponding SIP system session identifier, The message is converted into a SIP-supported format, and the converted formatted message is sent to the SIP system through the SIP session corresponding to the SIP system session identifier.
如果接收到 SIP用户的 SIP BYE请求,或者在某个时间期内没有收到 IMPS 用户的消息, 则结束 SIP系统的对话, 删除关联关系记录, 结束流程。 If the SIP BYE request of the SIP user is received, or the message of the IMPS user is not received within a certain period of time, the SIP system session is ended, the association record is deleted, and the process ends.
步骤 309: 直接返回给 SIP用户失败响应, 删除步骤 301生成的关联关系记 录, 并结束本流程。
IMPS用户向 SIP用户发送邀请请求进行即时消息通讯, GW在此过程中的 处理流程如图 4所示, 包括如下步骤: Step 309: Returning directly to the SIP user failure response, deleting the association relationship record generated in step 301, and ending the process. The IMPS user sends an invitation request to the SIP user for instant message communication. The processing flow of the GW in this process is as shown in FIG. 4, and includes the following steps:
步骤 401 : 接收 IMPS用户的邀请请求, 新生成一条关联关系记录, 将邀请 请求中的发送方 UserlD作为 IMPS用户的 UserlD放入关联关系记录,如果请求 中包含发送方 ClientID或 ApplicationID , 则将该 IMPS用户的 ClientID或 Step 401: Receive an invitation request of the IMPS user, newly generate an association relationship record, and put the user UserlD in the invitation request into the association relationship record as the User1D of the IMPS user. If the request includes the sender ClientID or ApplicationID, the IMPS is obtained. User's ClientID or
ApplicationID放入关联关系记录; The ApplicationID is placed in the relationship record;
步骤 402: 将 IMPS邀请请求中的接收方 UserlD作为 SIP用户的 UserlD放 入关联关系记录; Step 402: Put the user UserlD in the IMPS invitation request as the SIP user's UserlD into the association relationship record;
步骤 403: 将 IMPS邀请请求转换成 SIP INVITE请求, 请求的接收方 AOR 为步骤 402确定的 SIP用户 UserlD,请求的发送方 AOR为 IMPS用户的 UserlD, 请求的 From tag和 Call-ID由 GW生成; Step 403: Convert the IMPS invitation request into a SIP INVITE request, the requesting receiver AOR is the SIP user User1D determined in step 402, the requesting sender AOR is the IMP1 user's User1D, and the requested From tag and Call-ID are generated by the GW;
步骤 404: 发送 SIP INVITE请求, 接收响应, 如果为失败响应, 则转至步 骤 409; 如果为成功响应, 则执行步骤 405至 408; Step 404: Send a SIP INVITE request, receive a response, if it is a failure response, go to step 409; if it is a successful response, perform steps 405 to 408;
步骤 405: 将 SIP对话标识放入关联关系记录; Step 405: Put the SIP dialog identifier into the association relationship record.
步骤 406: 生成一个 SIP用户的 ClientID, 该 ClientID对同一对 SIP用户和 IMPS用户保持唯一, 将生成的 ClientID放入关联关系记录; 具体生成方式可类 比前面的步骤 304。 Step 406: Generate a Client ID of the SIP user. The ClientID is unique to the same pair of SIP users and IMPS users, and the generated ClientID is placed in the association relationship record. The specific generation manner can be analogized to the previous step 304.
步骤 407: 将成功响应转换成邀请响应, 表示 SIP用户接收邀请, 在邀请响 应中以 SIP用户的 UserlD和 ClientID来标识 SIP用户, 开始即时消息; Step 407: Convert the successful response into an invitation response, indicating that the SIP user receives the invitation, and identifies the SIP user by using the User1D and the ClientID of the SIP user in the invitation response, and starts an instant message;
步骤 408: 根据已设置的关联关系, 在 SIP系统和 IMPS系统之间进行会话 消息的转换与转发。 具体包括: Step 408: Convert and forward the session message between the SIP system and the IMPS system according to the set association relationship. Specifically include:
接收 SIP用户在对话内通过 MSRP发送的 SIP消息, 根据所述 SIP消息所 属的对话标识, 查找所述关联关系记录得到 IMPS用户的用户标识、客户端标识 和 /或应用标识, 将所述消息转换为 IMPS协议支持的格式, 并将所述转换格式 后的消息发送到所述 IMPS用户标识、 客户端标识和 /或应用标识对应的 IMPS 客户端。 其中, 所述将 SIP消息转换为 IMPS消息包括: 将 IMPS消息的发送方 设成以 UserlD和 ClientID标识的 SIP用户, 将 IMPS消息的接收方设置为以 UserlD、 UserlD和 ClientID或 UserlD和 ApplicationID标识的 IMPS用户的客户 端。 Receiving a SIP message sent by the SIP user through the MSRP in the session, searching for the association relationship record according to the session identifier to which the SIP message belongs, obtaining the user identifier, the client identifier, and/or the application identifier of the IMPS user, and converting the message The format supported by the IMPS protocol is sent to the IMPS client corresponding to the IMPS user identifier, the client identifier, and/or the application identifier. The converting the SIP message into the IMPS message includes: setting the sender of the IMPS message to the SIP user identified by User1D and ClientID, and setting the receiver of the IMPS message to be identified by User1D, UserlD, and ClientID or UserlD and ApplicationID. The client of the IMPS user.
和 /或, 来自 IMPS用户的消息, 才艮据所述消息中的 IMPS用户的用户标识、
SIP用户的用户标识和 /或客户端标识, 查找所述关联关系得到对应的 SIP系统 会话标识, 将所述消息转换为 SIP支持的格式, 并将所述转换格式后的消息通 过所述 SIP系统会话标识对应的 SIP会话发送到 SIP系统。 And/or a message from the IMPS user, based on the user ID of the IMPS user in the message, The user identifier and/or the client identifier of the SIP user are searched for the association relationship to obtain the corresponding SIP system session identifier, convert the message into a format supported by the SIP, and pass the converted format message to the SIP system. The SIP session corresponding to the session identifier is sent to the SIP system.
如果接收到 SIP用户的 SIP BYE请求,或者在某个时间期内没有收到 IMPS 用户的消息或收到 IMPS用户发出的取消邀请请求, 则结束 SIP系统的对话, 删 除关联关系记录。 If the SIP BYE request of the SIP user is received, or the IMPS user does not receive the message or receives the cancellation request from the IMPS user within a certain period of time, the SIP system session is ended, and the relationship record is deleted.
步骤 409: 回复 IMPS用户邀请响应, 表示 SIP用户不接收邀请, 删除步骤 401生成的关联关系记录, 流程结束。 Step 409: Replying to the IMPS user invitation response, indicating that the SIP user does not receive the invitation, deleting the association relationship record generated in step 401, and the process ends.
通过 SIP SUBSCRIBE请求建立对话用于呈现信息订阅和通知 Request to establish a conversation for presentation of information subscriptions and notifications via SIP SUBSCRIBE
通过 SIP SUBSCRIBE请求建立对话同样可以分为 SIP用户发起订阅请求和 IMPS用户发起订阅请求两种情况。 The SIP SUBSCRIBE request to establish a conversation can also be divided into two cases: a SIP user initiates a subscription request and an IMPS user initiates a subscription request.
SIP用户发起订阅请求, 接收来自 IMPS服务器发送的呈现通知, GW在此 过程中的处理流程如图 5所示, 包括如下步骤: The SIP user initiates a subscription request and receives the presentation notification sent by the IMPS server. The processing flow of the GW in this process is as shown in FIG. 5, and includes the following steps:
步骤 501 : 接收 SIP用户发送的 SIP SUBSCRIBE请求, 新生成一条关联关 系记录, 将所述 SIP SUBSCRIBE请求中的 SIP的对话标识放入关联关系记录, 对话标识由 From tag, To tag和 Call - ID组成; Step 501: Receive a SIP SUBSCRIBE request sent by the SIP user, newly generate an association relationship record, and put the SIP identifier in the SIP SUBSCRIBE request into an association relationship record, where the dialog identifier is composed of a From tag, a To tag, and a Call ID. ;
步骤 502: 将 SIP SUBSCRIBE请求中的发送方 AOR作为 SIP用户在 IMPS 系统的 UserlD , 放入关联关系记录; Step 502: Put the sender AOR in the SIP SUBSCRIBE request as a SIP user in the UserlD of the IMPS system, and put the relationship record;
步骤 503: 将 SIP SUBSCRIBE请求中的接收方 AOR作为 IMPS用户的 UserlD, 放入关联关系记录; Step 503: Put the receiver AOR in the SIP SUBSCRIBE request as the User1D of the IMPS user into the relationship record;
步骤 504: 生成一个 SIP用户的 ClientlD, 该 ClientlD对同一对 SIP用户和 IMPS用户保持唯一, 将生成的 ClientlD放入关联关系记录; 具体生成方式可类 比前面的步骤 304; Step 504: Generate a Client1D of a SIP user, the ClientlD is unique to the same pair of SIP users and IMPS users, and the generated ClientlD is put into the association relationship record; the specific generation manner may be analogous to the previous step 304;
步骤 505: 将 SIP SUBSCRIBE请求映射成相应的 IMPS呈现订阅请求或获 取呈现信息请求, IMPS请求的发送方为以 UserlD和 ClientlD标识的 SIP用户, 请求的接收方为以 UserlD标识的 IMPS用户, 发送 IMPS呈现订阅请求; Step 505: Map the SIP SUBSCRIBE request to the corresponding IMPS presentation subscription request or obtain the presence information request. The sender of the IMPS request is the SIP user identified by User1D and Client1D, and the requested receiver is the IMPS user identified by User1D, and the IMPS is sent. Present a subscription request;
步骤 506: 接收 IMPS系统的应答, 如果应答表示订阅失败, 则至步骤 509; 如果应答表示订阅成功, 则执行步骤 507至步骤 508; Step 506: Receive the response of the IMPS system, if the response indicates that the subscription fails, then go to step 509; if the response indicates that the subscription is successful, then perform steps 507 to 508;
步骤 507: 返回对应 SIP SUBSCRIBE请求的成功响应; Step 507: Return a successful response corresponding to the SIP SUBSCRIBE request;
步骤 508: 接收 IMPS系统发送的呈现信息通知, 根据其中接受方 SIP用户
的 UserlD和 ClientID,发送方 IMPS用户的 UserlD查找关联关系记录,确定 SIP 系统的对话, 在 SIP系统对话内用 SIP NOTIFY请求发送呈现信息。如果接收到 SIP用户的去订阅请求, 或者 SIP系统订阅有效期满而 SIP用户没有继续订阅, 则结束 SIP系统的对话, 删除关联关系记录, 过程结束; Step 508: Receive a notification of the presence information sent by the IMPS system, according to the SIP user of the recipient UserlD and ClientID, UserlD of the sender IMPS user look up the association record, determine the conversation of the SIP system, and send the presence information with the SIP NOTIFY request in the SIP system dialog. If the SIP user's de-subscription request is received, or the SIP system subscription expires and the SIP user does not continue to subscribe, the SIP system session is ended, and the association record is deleted, and the process ends;
步骤 509: 删除步骤 501生成的关联关系记录, 直接返回给 SIP用户失败响 应, 整个过程结束。 Step 509: The association relationship record generated in step 501 is deleted, and the response to the SIP user is directly returned, and the entire process ends.
IMPS用户发起订阅请求, 接收来自 SIMPLE呈现服务器发送的呈现通知, GW在此过程中的处理流程如图 6所示, 包括如下步骤: The IMPS user initiates a subscription request and receives a presentation notification sent by the SIMPLE presentation server. The processing flow of the GW in this process is as shown in FIG. 6, and includes the following steps:
步骤 601 : 接收 IMPS用户发起的订阅请求, 生成一条关联关系记录, 将请 求中的发送方 UserlD作为 IMPS用户的 UserlD放入关联关系记录,如果请求中 包含发送方 ClientID或 ApplicationID , 则将该 IMPS用户的 ClientID或 Step 601: Receive a subscription request initiated by the IMPS user, generate an association relationship record, and put the user UserlD in the request into the association relationship record as the User1D of the IMPS user. If the request includes the sender ClientID or ApplicationID, the IMPS user is included. ClientID or
ApplicationID放入关联关系 己录;; ApplicationID is placed in the association relationship;
步骤 602:将 IMPS呈现订阅请求中的被订阅者 UserlD作为 SIP用户在 IMPS 系统的 UserlD , 放入关联关系记录; Step 602: Put the Subscriber UserlD in the IMPS presentation subscription request as a SIP user in the UserlD of the IMPS system, and put the association relationship record;
步骤 603: 将 IMPS呈现订阅请求转换成 SIP SUBSCRIBE请求, 请求的接 收方 AOR为步骤 602确定的 SIP用户 UserlD, 请求的发送方 AOR为 IMPS用 户的 UserlD, 请求的 From tag和 Call - ID由 GW生成, 发送 SIP SUBSCRIBE 请求; Step 603: Convert the IMPS presentation subscription request into a SIP SUBSCRIBE request, the requested recipient AOR is the SIP user User1D determined in step 602, the requested sender AOR is the IMP1 user's User1D, and the requested From tag and Call-ID are generated by the GW. , sending a SIP SUBSCRIBE request;
步骤 604: 接收 SIP响应, 如果为失败响应, 则至步骤 608; 如果为成功响 应, 则执行步骤 605至步骤 607; Step 604: Receive a SIP response, if it is a failure response, then go to step 608; if it is a successful response, then perform steps 605 to 607;
步骤 605: 将对话标识放入关联关系记录; Step 605: Put the conversation identifier into the association relationship record;
步骤 606: 将 SIP成功响应转换成 IMPS成功状态响应, 表示订阅成功, 状 态响应被送往 IMPS用户; Step 606: Convert the SIP successful response into an IMPS success status response, indicating that the subscription is successful, and the status response is sent to the IMPS user;
步骤 607:接收 SIMPLE呈现服务器在对话内发送的被订阅者 SIP用户的呈 现信息通知,转换成 IMPS格式的呈现通知,呈现通知的接收者根据关联关系记 录设成以 UserlD、 UserlD和 ClientID或 UserlD和 ApplicationID标识的 IMPS 用户, 呈现通知中的呈现者为以 UserlD为标识的 SIP用户; 如果接收到 IMPS 用户的去订阅请求, 或者 SIP系统的订阅终止(包括终止不能再订阅或终止再 订阅失败), 则结束 SIP系统的对话, 删除关联关系记录, 流程结束。 Step 607: Receive a notification of the presence information of the subscriber SIP user sent by the SIMPLE presentation server in the conversation, and convert the presentation notification into an IMPS format, and the recipient of the presentation notification is set to UserlD, UserlD, ClientID or UserlD according to the association relationship record. The IMPS user identified by the ApplicationID, the presenter in the presentation notification is the SIP user identified by UserlD; if the subscription request of the IMPS user is received, or the subscription of the SIP system is terminated (including the termination of the subscription cannot be resubscribed or the termination of the resubscription fails), Then, the SIP system dialogue is ended, the association record is deleted, and the process ends.
步骤 608: 回复 IMPS用户失败响应, 表示订阅失败, 删除步骤 1生成的关
联关系记录, 流程结束。 Step 608: Replying to the IMPS user failure response, indicating that the subscription fails, deleting the step generated in step 1 The relationship record, the process ends.
为使本发明的目的、 技术方案和优点更加清楚, 下面结合具体实施例对本 发明作进一步的详细阐述。 In order to make the objects, technical solutions and advantages of the present invention more comprehensible, the present invention will be further described in detail with reference to the specific embodiments.
图 7示出了本发明第一实施例的 SIP用户请求进行即时消息的信令交互流 程。 图中的 SIP客户端包括属于同一个 SIP用户的多个客户端,本实施例中一个 SIP用户有两个 SIP客户端; SIP服务器包括 SIP/IP核心网和至少一个基于 SIP 的业务服务器。 本实施例的流程具体如下: Fig. 7 is a diagram showing the signaling interaction process of a SIP user requesting an instant message according to the first embodiment of the present invention. The SIP client in the figure includes multiple clients belonging to the same SIP user. In this embodiment, one SIP user has two SIP clients; the SIP server includes a SIP/IP core network and at least one SIP-based service server. The flow of this embodiment is specifically as follows:
步骤 701 : SIP用户要和 IMPS用户进行即时消息, 因此通过属于该 SIP用 户的 SIP客户端发送 SIP INVITE请求, 本实施例中, 假设是通过 SIP客户端 1 发送该 SIP INVITE请求, 如下: Step 701: The SIP user sends an instant message to the IMPS user, so the SIP INVITE request is sent by the SIP client belonging to the SIP user. In this embodiment, it is assumed that the SIP INVITE request is sent by the SIP client 1, as follows:
INVITE wv:bob@biloxi.com SIP/2.0 INVITE wv:bob@biloxi.com SIP/2.0
Via: SIP/2.0/UDP c33.atlanta.com;branch=z9hG4bK776asdhds Via: SIP/2.0/UDP c33.atlanta.com;branch=z9hG4bK776asdhds
Max-Forwards: 70 Max-Forwards: 70
To: Bob <wv:bob@biloxi.com> 〃被邀请用户的 UserlD From: Alice <sip:alice@atlanta.com>;tag=l 928301774 〃发起邀请 的用户的 UserlD以及来源标签 To: Bob <wv:bob@biloxi.com> UserDD From: Alice <sip:alice@atlanta.com>;tag=l 928301774 〃Invited User UserlD and Source Tags
Call-ID: a84b4c76e66710@pc33.atlanta.com 〃呼叫标识 Call-ID: a84b4c76e66710@pc33.atlanta.com 〃call identification
CSeq: 314159 INVITE CSeq: 314159 INVITE
Contact: <sip:alice@atlanta.com;gr=urn: Contact: <sip:alice@atlanta.com;gr=urn:
uuid:f81 d4fae-7dec- 11 d0-a765-00a0c91 e6bf6> Uuid:f81 d4fae-7dec- 11 d0-a765-00a0c91 e6bf6>
Content- Type: application/sdp Content- Type: application/sdp
Content-Length: 142 该 SIP INVITE请求被路由到 SIP服务器。 Content-Length: 142 The SIP INVITE request is routed to the SIP server.
步骤 702: SIP服务器对所述 SIP INVITE请求进行处理, 例如确定下一步 的路由, 将 SIP INVITE转发到互连网关。 Step 702: The SIP server processes the SIP INVITE request, for example, determines a next route, and forwards the SIP INVITE to the interconnection gateway.
步骤 703: 互连网关根据上述 SIP INVITE请求中的 "INVITE Step 703: The interconnection gateway according to the "INVITE" in the above SIP INVITE request
wv:bob@biloxi.com SIP/2.0" 判断该请求是即时消息请求, 因此将 SIP INVITE 请求映射为 IMPS的 InviteRequest, 所述 InviteRequest的内容^口下: Wv:bob@biloxi.com SIP/2.0" determines that the request is an instant message request, so the SIP INVITE request is mapped to the IMPS InviteRequest, and the content of the InviteRequest is below:
<WV-SSP-Message
xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 "> <WV-SSP-Message Xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 ">
<Session sessionID="123456@someone.za"> <Session sessionID="123456@someone.za">
^Transaction mode="Request" transactionID=" 113 "> ^Transaction mode="Request" transactionID=" 113 ">
<InviteRequest inviteID= "12345" invite Type= "IM" validity: "60" > <MetaInfo clientOriginated="Yes"> <InviteRequest inviteID= "12345" invite Type= "IM" validity: "60" > <MetaInfo clientOriginated="Yes">
<Requestor> <Requestor>
<User userID=" sip: alice @atlanta. com "> <User userID=" sip: alice @atlanta. com ">
<ClientID url="alice01 " /> <ClientID url="alice01 " />
</User> </User>
</Requestor> </Requestor>
</MetaInfo> </MetaInfo>
<Inviting> <Inviting>
<User userID= "sip:alice@atlanta.com"> 〃发起邀请用户的 UserlD <User userID= "sip:alice@atlanta.com"> 〃Initiate the user's UserlD
<ClientID url= "alice01'7> 〃发起邀请用户的 ClientID<ClientID url= "alice01'7> 〃Initiate the client ID of the inviting user
</User> </User>
</Inviting> </Inviting>
<Invited> <Invited>
<User userID= "wv:bob@biloxi.com"/> 〃被邀请用户的 UserlD </Invited> <User userID= "wv:bob@biloxi.com"/> User UserlD </Invited> of the invited user
</InviteRequest> </InviteRequest>
</Transaction> </Transaction>
</Session> </Session>
</WV-SSP-Message> </WV-SSP-Message>
其中邀请者的 UserlD "sip:alice@atlanta.com"和被邀请者的 UserlD Among the invitees' UserlD "sip:alice@atlanta.com" and the invitee's UserlD
"wv:bob@biloxi.com"分别来自于 SIP INVITE请求的来源 ( From ) 头域和目的 ( To ) 头域, 邀请者的 ClientID "aliceOl',为互连网关在该步骤中即时生成, 该 请求被发送到相应的 IMPS服务器。 "wv:bob@biloxi.com" comes from the source of the SIP INVITE request ( From ) header field and destination ( To ) header field, the inviter's ClientID "aliceOl", which is generated immediately by the interconnect gateway in this step, the request Is sent to the corresponding IMPS server.
步骤 704: IMPS服务器向互连网关返回状态 (Status )响应。 Step 704: The IMPS server returns a status (Status) response to the interconnection gateway.
步骤 705: 步骤 703之后, IMPS服务器将 SSP的 InviteRequest转换成 CSP 的邀请用户请求 ( InviteUserRequest )发给 IMPS Client。 步骤 705可以在步骤
704之前或之后, 步骤 704和步骤 705之间没有先后次序关系。 Step 705: After step 703, the IMPS server sends the InviteRequest of the SSP into an invitation user request (InviteUserRequest) of the CSP to the IMPS Client. Step 705 can be in the step Before or after 704, there is no order relationship between step 704 and step 705.
步骤 706: IMPS客户端向 IMPS服务器返回状态响应; Step 706: The IMPS client returns a status response to the IMPS server.
步骤 707: IMPS用户接收邀请, 通过 IMPS 客户端相 IMPS服务器返回邀 请用户响应 ( InviteUserResponse ), 具体如下: Step 707: The IMPS user receives the invitation and returns an Inviting User Response (InviteUserResponse) through the IMPS client to the IMPS server, as follows:
<WV-CSP-Message <WV-CSP-Message
xmlns="http://www.openmobilealliance.org/DTD/WV-CSP1.3"> Xmlns="http://www.openmobilealliance.org/DTD/WV-CSP1.3">
<Session sessionID="478923@bob.biloxi.com"> <Session sessionID="478923@bob.biloxi.com">
^Transaction mode="Response" transactionID=" 113 "> ^Transaction mode="Response" transactionID=" 113 ">
<InviteUserResponse inviteID= "12345" acceptance: "Yes" > <InviteUserResponse inviteID= "12345" acceptance: "Yes" >
<Status code="200"/> <Status code="200"/>
<Inviting> <Inviting>
<User userID= "sip:alice@atlanta.com"> 〃发起邀请用户的 UserlD <User userID= "sip:alice@atlanta.com"> 〃Initiate the user's UserlD
<ClientID url= "alice01'7> 〃发起邀请用户的 ClientID<ClientID url= "alice01'7> 〃Initiate the client ID of the inviting user
</User> </User>
</Inviting> </Inviting>
<Responding> <Responding>
<User userID= "wv:bob@biloxi.com"> 〃被邀请用户的 UserlD <ClientID <User userID= "wv:bob@biloxi.com"> User UserlD <ClientID of the invited user
url="http:〃 www.wireless-village.org/applications/MudServer" /> 〃被邀请用户 的 ClientID Url="http:〃 www.wireless-village.org/applications/MudServer" /> Client ClientID of the invited user
</User> </User>
</Responding> </Responding>
</InviteUserResponse> </InviteUserResponse>
</Transaction> </Transaction>
</Session> </Session>
</WV-CSP-Message> </WV-CSP-Message>
该信令中包含了 IMPS Client的 ClientID The signaling contains the ClientID of the IMPS Client.
'http:〃 www. wireless-village.org/applications/MudServer"。 'http:〃 www.wireless-village.org/applications/MudServer'.
步骤 708: IMPS服务器向 IMPS客户端返回状态响应。 Step 708: The IMPS server returns a status response to the IMPS client.
步骤 709: 在步骤 707之后, IMPS 服务器将 CSP的 InviteUserResponse转
换成 SSP的 InviteResponse, 发送给互连网关。 Step 709: After step 707, the IMPS server turns the CSP's InviteUserResponse Switch to the SSP's InviteResponse and send it to the interconnect gateway.
步骤 710: 互连网关向 IMPS 月良务器返回状态响应。 Step 710: The interconnection gateway returns a status response to the IMPS server.
步骤 711 : 步骤 709之后, 互连网关判断 IMPS用户接收邀请, 因此返回对 应步骤 702中 SIP INVITE的成功响应 SIP 200 OK,响应首先发送到 SIP服务器, 具体如下: Step 711: After step 709, the interconnection gateway determines that the IMPS user receives the invitation, and therefore returns a successful response SIP 200 OK corresponding to the SIP INVITE in step 702, and the response is first sent to the SIP server, as follows:
SIP/2.0 200 OK SIP/2.0 200 OK
To: Bob <wv:bob@biloxi.com>;tag=a6c85cf 〃被邀 请用户的 UserlD以及目的标签 To: Bob <wv:bob@biloxi.com>;tag=a6c85cf 〃 invited user's UserlD and destination tag
From: Alice <sip:alice@atlanta.com>;tag=l 928301774 From: Alice <sip:alice@atlanta.com>;tag=l 928301774
Call-ID: a84b4c76e66710@pc33.atlanta.com Call-ID: a84b4c76e66710@pc33.atlanta.com
CSeq: 314159 INVITE CSeq: 314159 INVITE
Contact: <sip: gateway @example . com> Contact: <sip: gateway @example . com>
Content- Type: application/sdp Content- Type: application/sdp
Content-Length: 131 Content-Length: 131
同时互连网关新建一条关联关系记录, 如.表 2所示: At the same time, the interconnection gateway creates a new association record, as shown in Table 2:
关联关系 内容 Relationship content
对话标识 From-tag=l 928301774; Conversation ID From-tag=l 928301774;
To-tag= a6c85cf; To-tag= a6c85cf;
Call-ID= a84b4c76e66710 Call-ID= a84b4c76e66710
的 UserlD UserlD
SIP用户 aliceOl SIP user aliceOl
的 ClientIDClientID
户的 UserlD User's UserlD
IMPS用 ClientID=http://www. wireless-village.org/applications/MudServer 户的 ClientID IMPID ClientID=http://www. wireless-village.org/applications/MudServer Client's ClientID
或 Or
ApplicationID ApplicationID
表 2
步骤 712: SIP服务器向 SIP客户端 1返回 SIP 200 OK响应; 步骤 713: SIP客户端 1向 SIP服务器发送 SIP ACK请求; Table 2 Step 712: The SIP server returns a SIP 200 OK response to the SIP client 1; Step 713: The SIP client 1 sends a SIP ACK request to the SIP server.
步骤 714: SIP服务器向互连网关发送 SIP ACK请求, SIP客户端 1和互连 网关之间建立用于即时消息的 MSRP会话; Step 714: The SIP server sends a SIP ACK request to the interconnection gateway, and an MSRP session for the instant message is established between the SIP client 1 and the interconnection gateway.
步骤 715: SIP客户端 1利用 MSRP发送指令 ( MSRP SEND )发送即时消 息, 消息被发送到互连网关, 具体内容如下: Step 715: The SIP client 1 sends an instant message by using the MSRP sending command (MSRP SEND), and the message is sent to the interconnection gateway, and the specific content is as follows:
MSRP d93kswow SEND MSRP d93kswow SEND
To-Path: msr :〃 gateway. example. com:8888/9di4eae923wzd;tcp To-Path: msr :〃 gateway. example. com:8888/9di4eae923wzd;tcp
〃源地址 〃source address
From-Path: msr :11 alicemphone . example . com: 7777/iau39 soe2843 z;tcp From-Path: msr :11 alicemphone . example . com: 7777/iau39 soe2843 z;tcp
〃目的地址 〃Destination address
Message-ID: 12339sdqwer //消息标识 Message-ID: 12339sdqwer //Message ID
Byte-Range: 1-148/148 Byte-Range: 1-148/148
Content- Type: message/cpim Content- Type: message/cpim
To: Bob <wv:bob@example.com> //IMPS用户的 UserlDTo: Bob <wv:bob@example.com> //UserlD for IMPS users
From: Alice <si : alice @example . com> From: Alice <si : alice @example . com>
Content- Type: text/plain Content- Type: text/plain
Hi, I'm Alice! //消息内容 Hi, I'm Alice! //Message content
d93kswow$ D93kswow$
步骤 716: 互连网关向 SIP客户端 1返回 MSRP OK响应; Step 716: The interconnection gateway returns an MSRP OK response to the SIP client 1;
步骤 717: 步骤 715之后, 互连网关收到来自 SIP客户端 1的 MSRP SEND 消息, 判断该消息属于已建立的对话, 才艮据该 MSRP SEND消息中携带的对话 标识查找自身已经保存的关联关系记录, 确定接收方 IMPS用户的 UserlD和 ClientlD; 并且, 互连网关进行消息格式转换, 将所述 MSRP SEND消息转换成 IMPS格式的发送消息请求( SendMessageRequest ), 具体如下: Step 717: After the step 715, the interconnection gateway receives the MSRP SEND message from the SIP client 1, and determines that the message belongs to the established session, and searches for the relationship record that has been saved according to the session identifier carried in the MSRP SEND message. Determining UserlD and ClientlD of the receiving IMPS user; and, the interconnection gateway performs message format conversion, and converts the MSRP SEND message into an IMPS format sending message request (SendMessageRequest), as follows:
<WV-SSP-Message <WV-SSP-Message
xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl.3 "> Xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl.3 ">
<Session sessionID="123456(¾someone.za">
<Transaction mode="Request" transactionID="114"> <Session sessionID="123456(3⁄4someone.za"> <Transaction mode="Request"transactionID="114">
<SendMessageRequest deliveryReport: "No" > <SendMessageRequest deliveryReport: "No" >
<MetaInfo clientOriginated="Yes"> <MetaInfo clientOriginated="Yes">
<Requestor> <Requestor>
<User userID=" sip: alice @atlanta. com "> <User userID=" sip: alice @atlanta. com ">
<ClientID url=" aliceOl " /> <ClientID url=" aliceOl " />
</User> </User>
</Requestor> </Requestor>
</MetaInfo> </MetaInfo>
<MessageInfo contentSize=" 14"> <MessageInfo contentSize=" 14">
<Recipient> 〃消息接收者 <Recipient> 〃 message recipient
<User userID= "wv:bob(¾biloxi.com"> <User userID= "wv:bob(3⁄4biloxi.com">
<ClientID <ClientID
url="http://www. wireless-village.org/applications/MudServer" /> Url="http://www. wireless-village.org/applications/MudServer" />
</User> </User>
</Recipient> </Recipient>
<ClientID url= "aliceOl' V> <ClientID url= "aliceOl' V>
</User> </User>
</Sender> </Sender>
</MessageInfo> </MessageInfo>
<ContentData contentType= "text/plain" encoding="base64"> II消息内容 <ContentData contentType= "text/plain" encoding="base64"> II message content
Hi, I'm Alice! Hi, I'm Alice!
</ContentData > </ContentData >
</SendMessageRequest> </SendMessageRequest>
</Transaction> </Transaction>
</Session> </Session>
</WV-SSP-Message> </WV-SSP-Message>
可以看到, 在 Messagelnfo元素中的接收方 UserlD和 ClientlD为查找到的
IMPS用户的 UserlD和 ClientlD,发送方 UserlD和 ClientlD为 SIP用户的 UserlD 和 ClientlD, 该 SendMessageRequest被发送到 IMPS服务器。 It can be seen that the receivers UserlD and ClientlD in the MessageInfo element are found. UserlD and ClientlD of the IMPS user, UserlD and ClientlD of the SIPS are UserlD and ClientlD of the SIP user, and the SendMessageRequest is sent to the IMPS server.
步骤 718: IMPS服务器向互连网关返回发送消息响应 Step 718: The IMPS server returns a message response to the interconnection gateway.
( SendMessageResponse )。 ( SendMessageResponse ).
步骤 719: 步骤 717之后, IMPS服务器将 SSP的 SendMessageRequest转换 成 CSP的新消息 ( NewMessage ) , 发送给 IMPS客户端。 由于在此之间已经确 认了接收方的 UserlD和 ClientlD , 所以保证消息能够发送给正确的 IMPS客户 端。 Step 719: After step 717, the IMPS server converts the SSP's SendMessageRequest into a CSP new message (NewMessage) and sends it to the IMPS client. Since the recipient's UserlD and ClientlD have been confirmed between them, the guarantee message can be sent to the correct IMPS client.
步骤 720: IMPS客户端向 IMP服务器返回消息已传递( MessageDelivered ) 口向应; Step 720: The IMPS client returns a message to the IMP server (MessageDelivered).
步骤 721 :在 SIP用户用 SIP客户端 1与 IMPS用户进行即时消息的过程中, 可能该用户想利用另一个终端 SIP客户端 2与相同的 IMPS用户进行即时消息, 而原来 SIP客户端 1与 IMPS用户进行的会话不能中断, 例如正在传送文件, 因 此需要同时进行两个会话, SIP用户利用 SIP客户端 2发出 SIP INVITE请求, 具体如下: Step 721: In the process of the SIP user using the SIP client 1 to perform an instant message with the IMPS user, the user may want to use the other terminal SIP client 2 to perform instant messaging with the same IMPS user, and the original SIP client 1 and IMPS The session performed by the user cannot be interrupted, for example, the file is being transferred, so two sessions need to be performed at the same time, and the SIP user uses the SIP client 2 to issue a SIP INVITE request, as follows:
INVITE wv:bob@biloxi.com SIP/2.0 INVITE wv:bob@biloxi.com SIP/2.0
Via: SIP/2.0/UDP c33.atlanta.com;branch=z9hG4bK776asdhds Via: SIP/2.0/UDP c33.atlanta.com;branch=z9hG4bK776asdhds
Max-Forwards: 70 Max-Forwards: 70
To: Bob <wv:bob@biloxi.com> To: Bob <wv:bob@biloxi.com>
From: Alice <sip:alice@atlanta.com>;tag=7723 From: Alice <sip:alice@atlanta.com>;tag=7723
Call-ID: 12345@pc33.atlanta.com Call-ID: 12345@pc33.atlanta.com
CSeq: 212 INVITE CSeq: 212 INVITE
Contact: <sip:alice@atlanta.com;gr=kjh29x97us97d> Contact: <sip:alice@atlanta.com;gr=kjh29x97us97d>
Content- Type: application/sdp Content- Type: application/sdp
Content-Length: 142 该 SIP INVITE请求同步骤 701中一样, 被路由到 SIP服务器; Content-Length: 142 The SIP INVITE request is routed to the SIP server as in step 701;
步骤 722: SIP服务器对来自 SIP客户端 2的 SIP INVITE请求进行处理,例 如确定下一步的路由, 将 SIP INVITE转发到互连网关。 Step 722: The SIP server processes the SIP INVITE request from the SIP client 2, for example, determining the next route, and forwarding the SIP INVITE to the interconnection gateway.
步骤 723: 互连网关判断该请求是即时消息请求, 因此将 SIP INVITE请求
映射为 IMPS的 InviteRequest, 如下: Step 723: The interconnection gateway determines that the request is an instant message request, so the SIP INVITE request is Map the InviteRequest to IMPS as follows:
<WV-SSP-Message <WV-SSP-Message
xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 "> Xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 ">
<Session sessionID="223456@someone.za"> <Session sessionID="223456@someone.za">
^Transaction mode="Request" transactionID=" 113 "> ^Transaction mode="Request" transactionID=" 113 ">
<InviteRequest inviteID= "22345" invite Type= "IM" validity: "60" > <MetaInfo clientOriginated="Yes"> <InviteRequest inviteID= "22345" invite Type= "IM" validity: "60" > <MetaInfo clientOriginated="Yes">
<Requestor> <Requestor>
<User userID=" sip: alice @atlanta. com "> <User userID=" sip: alice @atlanta. com ">
<ClientID url="alice02" /> <ClientID url="alice02" />
</User> </User>
</Requestor> </Requestor>
</MetaInfo> </MetaInfo>
<Inviting> 〃邀请者 <Inviting> 〃 Inviter
<User userID= " si : alice @atlanta. com"> <User userID= " si : alice @atlanta. com">
<ClientID url= "alice02'7> <ClientID url= "alice02'7>
</User> </User>
</Inviting> </Inviting>
<Invited> 〃被邀请者 <Invited> 〃 Invitees
<User userID= "wv:bob@biloxi.com"/> <User userID= "wv:bob@biloxi.com"/>
</Invited> </Invited>
</InviteRequest> </InviteRequest>
</Transaction> </Transaction>
</Session> </Session>
</WV-SSP-Message> </WV-SSP-Message>
其中邀请者的 UserlD和被邀请者的 UserlD分别来自于 SIP INVITE请求的 From头域和 To头域, 邀请者的 ClientlD为互连网关生成, 该请求被发送到相 应的 IMPS服务器。 步骤 723中的 InviteRequest与步骤 703中的 InviteRequest 相比, 差别仅仅在于发起请求的客户端标识不同。 The UserlD of the inviter and the UserlD of the invitee are respectively from the From header field and the To header field of the SIP INVITE request, and the inviter's ClientlD is generated for the interconnection gateway, and the request is sent to the corresponding IMPS server. The InviteRequest in step 723 is different from the InviteRequest in step 703 only in that the client identifier of the request is different.
步骤 724: IMPS服务器向互连网关返回状态响应。
步骤 725: 步骤 723之后, IMPS 服务器将 SSP的 InviteRequest转换成 CSP 的 InviteUserRequest发给 IMPS客户端。 Step 724: The IMPS server returns a status response to the interconnection gateway. Step 725: After step 723, the IMPS server converts the SSP InviteRequest into a CSP InviteUserRequest and sends it to the IMPS client.
步骤 726: IMPS客户端向 IMPS服务器返回状态响应; Step 726: The IMPS client returns a status response to the IMPS server.
步骤 727: IMPS用户接收邀请,通过 IMPS客户端返回 InviteUserResponse, 发送给 IMPS Server, 如下: Step 727: The IMPS user receives the invitation, returns the InviteUserResponse through the IMPS client, and sends it to the IMPS Server, as follows:
<WV-CSP-Message <WV-CSP-Message
xmlns="http://www.openmobilealliance.org/DTD/WV-CSP1.3"> Xmlns="http://www.openmobilealliance.org/DTD/WV-CSP1.3">
<Session sessionID="478923@bob.biloxi.com"> <Session sessionID="478923@bob.biloxi.com">
^Transaction mode="Response" transactionID=" 113 "> ^Transaction mode="Response" transactionID=" 113 ">
<InviteUserResponse inviteID= "22345" acceptance: "Yes" > <InviteUserResponse inviteID= "22345" acceptance: "Yes" >
<Status code="200"/> <Status code="200"/>
<Inviting> 〃邀请者 <Inviting> 〃 Inviter
<User userID= " si : alice @atlanta. com"> <User userID= " si : alice @atlanta. com">
<ClientID url= "alice02'7> <ClientID url= "alice02'7>
</User> </User>
</Inviting> </Inviting>
<Responding> 〃被邀请者 <Responding> 〃 Invitees
<User userID= "wv:bob@biloxi.com"> <User userID= "wv:bob@biloxi.com">
<ClientID <ClientID
url="http://www. wireless-village.org/applications/MudServer" /> Url="http://www. wireless-village.org/applications/MudServer" />
</User> </User>
</Responding> </Responding>
</InviteUserResponse> </InviteUserResponse>
</Transaction> </Transaction>
</Session> </Session>
</WV-CSP-Message> </WV-CSP-Message>
该信令中包含了 IMPS Client的 ClientID。 The signaling contains the ClientID of the IMPS Client.
步骤 728: IMPS服务器向 IMPS客户端返回状态响应。 Step 728: The IMPS server returns a status response to the IMPS client.
步骤 729: 在步骤 727之后, IMPS服务器将 CSP的 InviteUserResponse转 换成 SSP的 InviteResponse, 并发送给互连网关。
步骤 730: 互连网关向 IMPS服务器返回状态响应。 Step 729: After step 727, the IMPS server converts the CSP's InviteUserResponse into an SSP's InviteResponse and sends it to the interconnect gateway. Step 730: The interconnection gateway returns a status response to the IMPS server.
步骤 731 : 步骤 729之后, 互连网关判断 IMPS用户接收邀请, 因此返回对 应步骤 722中 SIP INVITE的成功响应 SIP 200 OK,响应首先发送到 SIP服务器, 下: Step 731: After step 729, the interconnection gateway determines that the IMPS user receives the invitation, and therefore returns a successful response of the SIP INVITE in the corresponding step 722. The SIP 200 OK, the response is first sent to the SIP server, and the following:
SIP/2.0 200 OK SIP/2.0 200 OK
To: Bob <wv:bob@biloxi.com>;tag=1234 To: Bob <wv:bob@biloxi.com>;tag=1234
From: Alice <sip:alice@atlanta.com>;tag=7723 From: Alice <sip:alice@atlanta.com>;tag=7723
Call-ID: 12345@pc33.atlanta.com Call-ID: 12345@pc33.atlanta.com
CSeq: 212 INVITE CSeq: 212 INVITE
Contact: <sip: gateway @example . com> Contact: <sip: gateway @example . com>
Content- Type: application/sdp Content- Type: application/sdp
Content-Length: 131 Content-Length: 131
同时互连网关新建一条关联关系记录, 如表 3所示: At the same time, the interconnection gateway creates a new association record, as shown in Table 3:
关联关系 内容 Relationship content
对话标识 From-tag=7723 ;To-tag= 1234;Call-ID= 12345@pc33.atlanta.com SIP用户 sip: alice@atlanta.com Conversation ID From-tag=7723 ;To-tag= 1234;Call-ID= 12345@pc33.atlanta.com SIP User sip: alice@atlanta.com
UserlD UserlD
SIP用户 alice02 SIP user alice02
ClientID ClientID
IMPS用 wv:bob(¾biloxi.com IMPS uses wv:bob(3⁄4biloxi.com
户 UserlD UserlD
IMPS用 ClientID=http://www. wireless-village.org/applications/MudServer 户 ClientID或 IMPS uses ClientID=http://www.wireless-village.org/applications/MudServer ClientID or
ApplicationID ApplicationID
表 3 table 3
步骤 732: SIP服务器向 SIP客户端 2返回 SIP 200 OK响应。 Step 732: The SIP server returns a SIP 200 OK response to the SIP client 2.
步骤 733: SIP客户端 2向 SIP服务器发送 SIP ACK请求。 Step 733: The SIP client 2 sends a SIP ACK request to the SIP server.
步骤 734: SIP服务器向互连网关发送 SIP ACK请求, SIP客户端 2和互连 网关之间建立用于即时消息的 MSRP会话。 Step 734: The SIP server sends a SIP ACK request to the interconnection gateway, and an MSRP session for the instant message is established between the SIP client 2 and the interconnection gateway.
步骤 735:对 IMPS用户来说,此时可以与 UserlD为 sip: alice@example.com
的用户的两个客户端进行即时消息, 这两个客户端的 ClientlD分别为 aliceO 1和 alice02 , IMPS用户利用 IMPS客户端向新发出邀请的 alice02发送即时消息, 消 息被发送到 IMPS服务器, 如下: Step 735: For the IMPS user, this can be sip with a UserlD: alice@example.com The two clients of the user perform instant messaging. The clientlDs of the two clients are aliceO 1 and alice02 respectively. The IMPS user sends an instant message to the newly issued invitation alice02 by using the IMPS client, and the message is sent to the IMPS server, as follows:
<WV-CSP-Message <WV-CSP-Message
xmlns="http://www.openmobilealliance.org/DTD/WV-CSP1.3"> Xmlns="http://www.openmobilealliance.org/DTD/WV-CSP1.3">
<Session sessionID="478923@bob.biloxi.com"> <Session sessionID="478923@bob.biloxi.com">
<Transaction mode="Request" transactionID="114"> <Transaction mode="Request" transactionID="114">
<SendMessageRequest deliveryReport= "No" > <SendMessageRequest deliveryReport= "No" >
<MessageInfo contentSize="18"> <MessageInfo contentSize="18">
<Recipient> 〃消息接收者 <Recipient> 〃 message recipient
<User userID= " si : alice @atlanta. com"> <User userID= " si : alice @atlanta. com">
<ClientID url=" alice02" /> <ClientID url=" alice02" />
</User> </User>
</Recipient> </Recipient>
<Sender> 〃消息发送者 <Sender> 〃 message sender
<User userID= "wv:bob@biloxi.com"> <User userID= "wv:bob@biloxi.com">
<ClientID url= <ClientID url=
"http://www. wireless-village. org/applications/MudServer'7> "http://www.wireless-village.org/applications/MudServer'7>
</User> </User>
</Sender> </Sender>
</MessageInfo> </MessageInfo>
<ContentData contentType= "text/plain" encoding="base64"> II消息内容 <ContentData contentType= "text/plain" encoding="base64"> II message content
Why change client? Why change client?
</ContentData > </ContentData >
</SendMessageRequest> </SendMessageRequest>
</Transaction> </Transaction>
</Session> </Session>
</WV-CSP-Message> </WV-CSP-Message>
步骤 736: IMPS服务器向 IMPS客户端返回 SendMessageResponse响应; 步骤 737: 步骤 735之后, IMPS服务器将 CSP的 SendMessageRequest转换
成 SSP的 SendMessageRequest, 发给互连网关。 Step 736: The IMPS server returns a SendMessageResponse response to the IMPS client. Step 737: After step 735, the IMPS server converts the CSP's SendMessageRequest. The SendMessageRequest of the SSP is sent to the interconnection gateway.
步骤 738: 互连网关返回给 IMPS服务器 SendMessageResponse响应。 Step 738: The Interconnect Gateway returns a response to the IMPS server SendMessageResponse.
步骤 739: 步骤 737之后, 互连网关收到 SendMessageRequest发送的消息, 根据消息的发送方 UserlD, 接收方 UserlD和 ClientID, 查找关联关系记录, 确 定 SIP系统的对话标识, GW进行消息格式转换, 转换成 MSRP格式的 MSRP SEND消息, 并在所查找到的对话内发送该消息, 所述 MSRP SEND内容如下: MSRP d93kswow SEND Step 739: After step 737, the interconnection gateway receives the message sent by the SendMessageRequest, according to the sender of the message UserlD, the receiver UserlD and the ClientID, finds the association record, determines the dialog identifier of the SIP system, and the GW performs message format conversion and converts into MSRP. The format of the MSRP SEND message, and the message is sent in the found dialog, the MSRP SEND content is as follows: MSRP d93kswow SEND
To-Path: msr:〃 alicepc. example. com:3020/iau39soe2844z;tcp To-Path: msr:〃 alicepc. example. com:3020/iau39soe2844z;tcp
From-Path: msr:〃 gateway. example. com:8888/0di4eae923wzd;tcp Message-ID: 12340sdqwer From-Path: msr:〃 gateway. example. com:8888/0di4eae923wzd;tcp Message-ID: 12340sdqwer
Byte-Range: 1-152/152 Byte-Range: 1-152/152
Content- Type: message/cpim Content- Type: message/cpim
To: Bob < sip: alice@example.com > To: Bob < sip: alice@example.com >
From: Alice < wv:bob@example.com > From: Alice < wv:bob@example.com >
Content- Type: text/plain Content- Type: text/plain
Why change client? 〃消息内容 Why change client? 〃Message content
d93kswow$ D93kswow$
该消息被发往 SIP客户端 2; The message is sent to the SIP client 2;
步骤 740: SIP客户端 2接收 MSRP SEND消息,向互连网关返回 MSRP OK 口向应。 Step 740: The SIP client 2 receives the MSRP SEND message and returns an MSRP OK port response to the interconnection gateway.
在上述会话过程中,有可能 IMPS用户会用另一个客户端与同一 SIP用户再 建立一个会话,图 8示出了 IMPS客户端 1正在与 SIP客户端通话的过程中, IMPS 用户通过 IMPS客户端 2主动请求进行即时消息的信令流程, 包括如下步骤: 步骤 801至步骤 814: IMPS用户通过 IMPS 客户端 2向同一 SIP用户发出 即时消息邀请, 互连网关进行信令转换, 向 SIP用户发出 SIP INVITE请求, SIP 用户接收邀请, 回复成功响应, 网关转换成 IMPS邀请响应, 表示 SIP用户接收 即时消息邀请, 在互连网关新建一条关联关系记录如表 4所示: During the above session, it is possible that the IMPS user will establish another session with the same SIP user with another client. Figure 8 shows that the IMPS client is in the process of talking to the SIP client, and the IMPS user passes the IMPS client. 2 Actively requesting the signaling process of the instant message, including the following steps: Step 801 to step 814: The IMPS user sends an instant message invitation to the same SIP user through the IMPS client 2, the interconnection gateway performs signaling conversion, and sends a SIP INVITE to the SIP user. The request, the SIP user receives the invitation, the response is successful, and the gateway converts to the IMPS invitation response, indicating that the SIP user receives the instant message invitation, and creates a new association record in the interconnection gateway as shown in Table 4:
对话标识 From-tag=7745;To-tag= 4456;Call-ID=
23456@pc33.atlanta.com The dialog identifier is From-tag=7745; To-tag= 4456; Call-ID= 23456@pc33.atlanta.com
SIP用户 sip: alice@atlanta.com SIP user sip: alice@atlanta.com
UserlD UserlD
SIP用户 alice03 SIP user alice03
ClientID ClientID
尸 UserlD Corpse UserlD
IMPS用 ClientID=bobIM IMPS with ClientID=bobIM
户 ClientID或 User ClientID or
ApplicationID ApplicationID
表 4 Table 4
步骤 815至步骤 820: SIP用户利用新建的会话向新 IMPS用户客户端发送 消息, GW接收消息, 查找关联表后, 将消息正确的发往 IMPS用户的客户端, 该客户端 ClientID为 "bobIM"。 Step 815 to step 820: The SIP user sends a message to the new IMPS user client by using the newly created session. After receiving the message, the GW receives the association table and sends the message to the client of the IMPS user. The client ID of the client is "bobIM". .
以上的第一实施例中说明了客户端到客户端的消息流程,也同样适用于 SIP 用户或 IMPS用户利用多终端加入另外系统聊天室的场景。 The above-mentioned first embodiment illustrates the client-to-client message flow, and is also applicable to a scenario where a SIP user or an IMPS user uses a multi-terminal to join another system chat room.
图 9示出了本发明第二实施例为 SIP用户订阅 IMPS用户呈现信息的信令交 互流程, 具体包括如下步骤: FIG. 9 is a flowchart showing a signaling interaction process for a SIP user to subscribe to IMPS user presence information according to a second embodiment of the present invention, which specifically includes the following steps:
步骤 901: SIP用户想订阅 IMPS用户的呈现信息, 因此通过 SIP客户端 1 发送 SIP订阅 ( SIP SUBSCRIBE )请求, 该请求具体内容如下: Step 901: The SIP user wants to subscribe to the presentation information of the IMPS user, so the SIP SUBSCRIBE request is sent through the SIP client 1, and the specific content of the request is as follows:
SUBSCRIBE wv:bob(¾biloxi.com SIP/2.0 SUBSCRIBE wv:bob(3⁄4biloxi.com SIP/2.0
Call-ID: 2010@biloxi.com Call-ID: 2010@biloxi.com
CSeq: 17766 SUBSCRIBE CSeq: 17766 SUBSCRIBE
Max-Forwards: 70 Max-Forwards: 70
Event: presence Event: presence
Accept: application/pidf+xml Accept: application/pidf+xml
Contact: <sip:alice@atlanta.com;gr=urn: Contact: <sip:alice@atlanta.com;gr=urn:
uuid:f81 d4fae-7dec- 11 d0-a765-00a0c91 e6bf6>
Expires: 600 Uuid:f81 d4fae-7dec- 11 d0-a765-00a0c91 e6bf6> Expires: 600
Content-Length: ... Content-Length: ...
请求首先被发送到呈现服务器 (Presence Server )。 The request is first sent to the presence server (Presence Server).
步骤 902: 呈现服务器判断被订阅者为 IMPS用户, 将 SIP SUBSCRIBE请 求发送给互连网关。 Step 902: The presence server determines that the subscriber is an IMPS user, and sends a SIP SUBSCRIBE request to the interconnection gateway.
步骤 903: 互连网关将 SIP SUBSCRIBE请求转换成 IMPS的 Step 903: The interconnection gateway converts the SIP SUBSCRIBE request into an IMPS
SubscribeRequest, 发送给 IMPS服务器, 如下: SubscribeRequest, sent to the IMPS server, as follows:
<WV-SSP-Message <WV-SSP-Message
xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 "> Xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 ">
<Session sessionID="123456@someone.za"> <Session sessionID="123456@someone.za">
^Transaction mode="Request" transactionID=" 113 "> ^Transaction mode="Request" transactionID=" 113 ">
<SubscribeRequest> <SubscribeRequest>
<MetaInfo clientOriginated="Yes"> <MetaInfo clientOriginated="Yes">
<Requestor> //订阅者 <Requestor> //Subscriber
<User userID=" sip: alice @atlanta. com "> <User userID=" sip: alice @atlanta. com ">
<ClientID url="alice01 " /> <ClientID url="alice01 " />
</User> </User>
</Requestor> </Requestor>
</MetaInfo> </MetaInfo>
<UserID userID= "wv:bob@biloxi.com'7> 〃被订阅的呈现者 <UserID userID= "wv:bob@biloxi.com'7> 呈现Subscribed by the presenter
</SubscribeRequest> </SubscribeRequest>
</Transaction> </Transaction>
</Session> </Session>
</WV-SSP-Message> </WV-SSP-Message>
步骤 904: IMPS服务器检查授权状况, 判断允许该 SIP用户订阅 IMPS用 户的呈现信息, 返回状态响应, 表示订阅成功; Step 904: The IMPS server checks the authorization status, determines that the SIP user is allowed to subscribe to the presentation information of the IMPS user, and returns a status response, indicating that the subscription is successful.
步骤 905: 互连网关接收状态响应, 转换成 SIP 200 OK响应, 返回给呈现 服务器, 所述 SIP 200 OK响应的内容具体如下: Step 905: The interconnection gateway receives the status response, converts to a SIP 200 OK response, and returns the response to the presence server. The content of the SIP 200 OK response is as follows:
SIP/2.0 200 OK
To: <wv:bob@biloxi.com>; tag=ffd2 SIP/2.0 200 OK To: <wv:bob@biloxi.com>; tag=ffd2
From: <si : alice@atlanta.com>;tag=xfg9 From: <si : alice@atlanta.com>;tag=xfg9
Call-ID: 2010@biloxi.com Call-ID: 2010@biloxi.com
CSeq: 17766 SUBSCRIBE CSeq: 17766 SUBSCRIBE
Expires: 600 Expires: 600
Contact: <sip: gateway @example . com> Contact: <sip: gateway @example . com>
Content-Length: 0 Content-Length: 0
同时互连网关新建一条关联关系记录如表 5所示:
At the same time, the interconnection gateway creates a new association record as shown in Table 5:
UserlD UserlD
SIP用户 aliceOl SIP user aliceOl
ClientID ClientID
IMPS用 wv:bob(¾biloxi.com IMPS uses wv:bob(3⁄4biloxi.com
户 UserlD UserlD
IMPS用 NULL IMPS uses NULL
户 ClientID或 User ClientID or
ApplicationID ApplicationID
表 5 table 5
步骤 906: 呈现服务器向 SIP客户端 1返回 SIP 200 OK响应; Step 906: The presence server returns a SIP 200 OK response to the SIP client 1;
步骤 907: 步骤 904之后, IMPS服务器向订阅者发送被订阅者的呈现信息, 下: Step 907: After step 904, the IMPS server sends the subscriber's presence information to the subscriber, as follows:
<WV-SSP-Message <WV-SSP-Message
xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 "> Xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 ">
<Session sessionID="123456@biloxi.com"> <Session sessionID="123456@biloxi.com">
^Transaction mode="Request" transactionID=" 113 "> ^Transaction mode="Request" transactionID=" 113 ">
<PresenceNotification> <PresenceNotification>
<MetaInfo clientOriginated="No"/> <MetaInfo clientOriginated="No"/>
<User userID= " si : alice @atlanta. com"> 〃订阅者 <User userID= " si : alice @atlanta. com"> 〃 subscribers
<ClientID url=" aliceOl" />
</User> <ClientID url="aliceOl"/> </User>
<Presence Value userID="wv:bob(¾biloxi.com"> 〃呈现者的呈现信息 <Presence Value userID="wv:bob(3⁄4biloxi.com"> 〃 Presenter's presence information
</PresenceValue> </PresenceValue>
</PresenceNotification> </PresenceNotification>
</Transaction> </Transaction>
</Session> </Session>
</WV-SSP-Message> </WV-SSP-Message>
该消息首先被发送到互连网关; The message is first sent to the interconnection gateway;
步骤 908: 互连网关向 IMPS服务器返回 Status应答; Step 908: The interconnection gateway returns a Status response to the IMPS server.
步骤 909: 步骤 907之后, 互连网关根据收到的 PresenceNotification中订阅 者 UserID、 ClientID和被订阅者 UserlD , 查找关联关系记录, 找到对应的 SIP 系统订阅对话,在该对话内通过 SIP NOTIFY请求将收到的呈现信息发给 SIP客 户端 1 , 如下: Step 909: After step 907, the interconnection gateway searches for the association record according to the subscriber UserID, the ClientID, and the subscriber UserlD in the received PresenceNotification, and finds a corresponding SIP system subscription conversation, and receives the SIP NOTIFY request in the conversation. The presence information is sent to the SIP client 1, as follows:
NOTIFY sip:alice@atlanta.com;gr=urn: NOTIFY sip:alice@atlanta.com;gr=urn:
uuid:f81 d4fae-7dec- 11 d0-a765-00a0c91 e6bf6 SIP/2.0 Uuid:f81 d4fae-7dec- 11 d0-a765-00a0c91 e6bf6 SIP/2.0
From: <wv: bob @biloxi . com>;tag=ffd2 From: <wv: bob @biloxi . com>;tag=ffd2
To: <si : alice@atlanta. com>;tag=xfg9 To: <si : alice@atlanta. com>;tag=xfg9
Call-ID: 2010@ biloxi.com Call-ID: 2010@ biloxi.com
Event: presence Event: presence
Subscription- State: active;expires=598 Subscription- State: active;expires=598
Max-Forwards: 70 Max-Forwards: 70
CSeq: 8775 NOTIFY CSeq: 8775 NOTIFY
Contact: <sip: gateway @example . com> Contact: <sip: gateway @example . com>
Content- Type: application/pidf+xml Content- Type: application/pidf+xml
Content-Length: ... Content-Length: ...
步骤 910: SIP客户端 1向互连网关返回 SIP 200 OK响应; Step 910: The SIP client 1 returns a SIP 200 OK response to the interconnection gateway.
步骤 911 : 该 SIP用户打开另一个终端 SIP客户端 2, 通过该终端订阅同一 Step 911: The SIP user opens another terminal SIP client 2, and subscribes to the same through the terminal.
IMPS用户的另外一些呈现信息, 首先通过 SIP客户端 2发送 SIP SUBSCRIBE 请求, 如下:
SUBSCRIBE wv:bob@biloxi.com SIP/2.0 Some other presentation information of the IMPS user, firstly sending a SIP SUBSCRIBE request through the SIP client 2, as follows: SUBSCRIBE wv:bob@biloxi.com SIP/2.0
To: <wv:bob@biloxi.com> To: <wv:bob@biloxi.com>
From: <sip: alice@atlanta.com>; tag=xfg8 From: <sip: alice@atlanta.com>; tag=xfg8
Call-ID: 2011@biloxi.com Call-ID: 2011@biloxi.com
CSeq: 177 SUBSCRIBE CSeq: 177 SUBSCRIBE
Max-Forwards: 70 Max-Forwards: 70
Event: presence Event: presence
Accept: application/pidf+xml Accept: application/pidf+xml
Contact: <sip:alice@atlanta.com;gr=kjh29x97us97d> Contact: <sip:alice@atlanta.com;gr=kjh29x97us97d>
Expires: 600 Expires: 600
Content-Length: 0 Content-Length: 0
请求首先被发送到呈现服务器。 The request is first sent to the presence server.
步骤 912: 呈现服务器判断被订阅者为 IMPS用户, 将 SIP SUBSCRIBE请 求发送给互连网关; Step 912: The presence server determines that the subscriber is an IMPS user, and sends a SIP SUBSCRIBE request to the interconnection gateway.
步骤 913: 互连网关将 SIP SUBSCRIBE请求转换成 IMPS的 Step 913: The interconnection gateway converts the SIP SUBSCRIBE request into an IMPS
SubscribeRequest, 发送给 IMPS服务器, 如下: SubscribeRequest, sent to the IMPS server, as follows:
<WV-SSP-Message <WV-SSP-Message
xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 "> Xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 ">
<Session sessionID="223456@someone.za"> <Session sessionID="223456@someone.za">
^Transaction mode="Request" transactionID=" 113 "> ^Transaction mode="Request" transactionID=" 113 ">
<SubscribeRequest> <SubscribeRequest>
<MetaInfo clientOriginated="Yes"> <MetaInfo clientOriginated="Yes">
<Requestor> <Requestor>
<User userID="sip:alice@atlanta.com "> <User userID="sip:alice@atlanta.com ">
<ClientID url="alice02" /> <ClientID url="alice02" />
</User> </User>
</Requestor> </Requestor>
</MetaInfo> </MetaInfo>
<UserID userID= "wv:bob(¾biloxi.com"/>
</SubscribeRequest> <UserID userID= "wv:bob(3⁄4biloxi.com"/> </SubscribeRequest>
</Transaction> </Transaction>
</Session> </Session>
</WV-SSP-Message> </WV-SSP-Message>
步骤 914: IMPS服务器检查授权状况, 判断允许该 SIP用户订阅 IMPS用 户的呈现信息, 返回 Status响应, 表示订阅成功; Step 914: The IMPS server checks the authorization status, determines that the SIP user is allowed to subscribe to the presentation information of the IMPS user, and returns a Status response, indicating that the subscription is successful;
步骤 915: 互连网关接收 Status响应, 转换成 SIP 200 OK响应, 返回给呈 现服务器, 如下: Step 915: The interconnection gateway receives the Status response, converts it into a SIP 200 OK response, and returns it to the presentation server, as follows:
SIP/2.0 200 OK SIP/2.0 200 OK
To: <wv:bob@biloxi.com>; tag=ffd3 To: <wv:bob@biloxi.com>; tag=ffd3
From: <si : alice@atlanta.com>;tag=xfg8 From: <si : alice@atlanta.com>;tag=xfg8
Call-ID: 2011@biloxi.com Call-ID: 2011@biloxi.com
CSeq: 177 SUBSCRIBE CSeq: 177 SUBSCRIBE
Expires: 600 Expires: 600
Contact: <sip: gateway @example . com> Contact: <sip: gateway @example . com>
Content-Length: 0 Content-Length: 0
同时互连网关新建一条关联关系记录如表 6所示: At the same time, the interconnection gateway creates a new association record as shown in Table 6:
对话标识 From-tag= xfg8;To-tag= ffd3; 2011 @biloxi.com Conversation ID From-tag= xfg8;To-tag= ffd3; 2011 @biloxi.com
SIP用户 sip: alice @atlanta. com SIP user sip: alice @atlanta. com
UserlD UserlD
SIP用户 alice02 SIP user alice02
ClientID ClientID
IMPS用 wv: bob@biloxi.com IMPS uses wv: bob@biloxi.com
户 UserlD UserlD
IMPS用 NULL IMPS uses NULL
户 ClientID或 User ClientID or
ApplicationID ApplicationID
表 6 Table 6
步骤 916: 呈现服务器向 SIP客户端 2返回 SIP 200 OK响应; Step 916: The presence server returns a SIP 200 OK response to the SIP client 2;
步骤 917: 步骤 904之后, IMPS服务器向订阅者发送被订阅者的呈现信息:
下: Step 917: After step 904, the IMPS server sends the subscriber's presence information to the subscriber: under:
<WV-SSP-Message <WV-SSP-Message
xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 "> Xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 ">
<Session sessionID="123456@biloxi.com"> <Session sessionID="123456@biloxi.com">
<Transaction mode="Request" transactionID="114"> <Transaction mode="Request" transactionID="114">
<PresenceNotification> <PresenceNotification>
<MetaInfo clientOriginated="No"/> <MetaInfo clientOriginated="No"/>
<User userID= " si : alice @atlanta. com"> <User userID= " si : alice @atlanta. com">
<ClientID url=" alice02" /> <ClientID url=" alice02" />
</User> </User>
<Presence Value userID="wv:bob@biloxi.com"> <Presence Value userID="wv:bob@biloxi.com">
</PresenceValue> </PresenceValue>
</PresenceNotification> </PresenceNotification>
</Transaction> </Transaction>
</Session> </Session>
</WV-SSP-Message> </WV-SSP-Message>
该消息首先被发送到互连网关; The message is first sent to the interconnection gateway;
步骤 918: 互连网关向 IMPS服务器返回 Status应答; Step 918: The interconnection gateway returns a Status response to the IMPS server.
步骤 919: 步骤 907之后, 互连网关根据收到的 PresenceNotification中订阅 者 UserID、 ClientID和被订阅者 UserlD , 查找关联关系记录, 找到对应的 SIP 系统订阅对话,在该对话内通过 SIP NOTIFY请求将收到的呈现信息发给 SIP客 户端 1 , 如下: Step 919: After step 907, the interconnection gateway searches for the association record according to the subscriber UserID, the ClientID, and the subscriber UserlD in the received PresenceNotification, and finds a corresponding SIP system subscription conversation, and receives the SIP NOTIFY request in the conversation. The presence information is sent to the SIP client 1, as follows:
NOTIFY sip:alice@atlanta.com;gr=kjh29x97us97d SIP/2.0 NOTIFY sip:alice@atlanta.com;gr=kjh29x97us97d SIP/2.0
From: <wv: bob @biloxi . com>;tag=ffd3 From: <wv: bob @biloxi . com>;tag=ffd3
To: <si : alice@atlanta. com>;tag=xfg8 To: <si : alice@atlanta. com>;tag=xfg8
Call-ID: 2011@ biloxi.com Call-ID: 2011@ biloxi.com
Event: presence Event: presence
Subscription- State: active;expires=598 Subscription- State: active;expires=598
Max-Forwards: 70
CSeq: 8775 NOTIFY Max-Forwards: 70 CSeq: 8775 NOTIFY
Contact: <sip: gateway @example . com> Contact: <sip: gateway @example . com>
Content- Type: application/pidf+xml Content- Type: application/pidf+xml
Content-Length: ... Content-Length: ...
步骤 920: SIP客户端 1向互连网关返回 SIP 200 OK响应; Step 920: The SIP client 1 returns a SIP 200 OK response to the interconnection gateway.
步骤 921: 一段时间之后, SIP客户端 1订阅的 IMPS用户的呈现信息发生 变化, IMPS月良务器发出 PresenceNotification , 如下: Step 921: After a period of time, the presentation information of the IMPS user subscribed by the SIP client 1 changes, and the IMPS server issues PresenceNotification, as follows:
<WV-SSP-Message <WV-SSP-Message
xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 "> Xmlns="http://www. openmobilealliance.org/DTD/WV-SSPl .3 ">
<Session sessionID="123456@biloxi.com"> <Session sessionID="123456@biloxi.com">
^Transaction mode="Request" transactionID=" 115 "> ^Transaction mode="Request" transactionID=" 115 ">
<PresenceNotification> <PresenceNotification>
<MetaInfo clientOriginated="No"/> <MetaInfo clientOriginated="No"/>
<User userID= " si : alice @atlanta. com"> <User userID= " si : alice @atlanta. com">
<ClientID url=" aliceOl" /> <ClientID url=" aliceOl" />
</User> </User>
<Presence Value userID="wv:bob@biloxi.com"> <Presence Value userID="wv:bob@biloxi.com">
</PresenceValue> </PresenceValue>
</PresenceNotification> </PresenceNotification>
</Transaction> </Transaction>
</Session> </Session>
</WV-SSP-Message> </WV-SSP-Message>
该消息首先被发送到互连网关; The message is first sent to the interconnection gateway;
步骤 922: 互连网关向 IMPS服务器返回 Status应答; Step 922: The interconnection gateway returns a Status response to the IMPS server.
步骤 923: 步骤 907之后, 互连网关根据收到的 PresenceNotification中订阅 者 UserID、 ClientID和被订阅者 UserlD , 查找关联关系记录, 找到对应的 SIP 系统订阅对话,在该对话内通过 SIP NOTIFY请求将收到的呈现信息发给 SIP客 户端 1 , 如下: Step 923: After step 907, the interconnection gateway searches for the association record according to the subscriber UserID, the ClientID, and the subscriber UserlD in the received PresenceNotification, and finds a corresponding SIP system subscription conversation, and receives the SIP NOTIFY request in the conversation. The presence information is sent to the SIP client 1, as follows:
NOTIFY sip:alice@atlanta.com;gr=urn:
uuid:f81 d4fae-7dec- 11 d0-a765-00a0c91 e6bf6 SIP/2.0 NOTIFY sip:alice@atlanta.com;gr=urn: Uuid:f81 d4fae-7dec- 11 d0-a765-00a0c91 e6bf6 SIP/2.0
From: <wv: bob @biloxi . com>;tag=ffd2 From: <wv: bob @biloxi . com>;tag=ffd2
To: <si : alice@atlanta. com>;tag=xfg9 To: <si : alice@atlanta. com>;tag=xfg9
Call-ID: 2010@ biloxi.com Call-ID: 2010@ biloxi.com
Event: presence Event: presence
Subscription- State: active;expires=580 Subscription- State: active;expires=580
Max-Forwards: 70 Max-Forwards: 70
CSeq: 8776 NOTIFY CSeq: 8776 NOTIFY
Contact: <sip: gateway @example . com> Contact: <sip: gateway @example . com>
Content- Type: application/pidf+xml Content- Type: application/pidf+xml
Content-Length: ... Content-Length: ...
步骤 924: SIP客户端 1向互连网关返回 SIP 200 OK响应; Step 924: The SIP client 1 returns a SIP 200 OK response to the interconnection gateway.
同一 IMPS用户的多个 IMPS客户端订阅同一 SIP用户的呈现信息流程为上 述流程反向, 不同之处在于互连网关不分配 ClientID给每个 SIP对话, 但是将 SIP对话关联到 IMPS用户的 UserlD和 ClientID, 具体流程不再详述。 The process of presenting the same SIP user's presence information for multiple IMPS clients of the same IMPS user is reversed in the above process, except that the interconnection gateway does not assign a ClientID to each SIP session, but associates the SIP dialog to the UserlD and ClientID of the IMPS user. The specific process is not detailed.
本发明第三实施例提出了一种互连网关, 其结构框图如图 11所示, 包括: 收发模块 1001 , 用于接收来自 SIP系统(或 IMPS系统) 的消息, 根据关 联关系查询模块 1003的通知, 将来自格式转换模块 1004的消息发送至 IMPS 系统(或 SIP系统); A third embodiment of the present invention provides an interconnection gateway. The structural block diagram is as shown in FIG. 11, and includes: a transceiver module 1001, configured to receive a message from a SIP system (or an IMPS system), and query the module 1003 according to the association relationship. Sending a message from the format conversion module 1004 to the IMPS system (or SIP system);
关联关系建立模块 1002, 用于确定对应于 SIP系统和 IMPS系统的消息业 务的会话标识, 建立并存储所述会话标识之间的关联关系; 所述 SIP系统会话 标识包括 SIP系统的对话标识; 所述 IMPS系统的会话标识包括参与该会话的 SIP用户的用户标识和客户端标识, 参与该会话的 IMPS用户的用户标识和客户 端标识, 其中, IMPS用户的客户端标识可以是 ClientID或 ApplicationID; 关联关系查询模块 1003 ,用于根据所述收发模块 1001所接收的来自 SIP系 统(或 IMPS系统) 的消息的内容, 查询所述关联关系建立模块 1002中存储的 关联关系, 得到所述消息将要发送的 IMPS系统(或 SIP系统)会话标识, 并将 所得到的会话标识通知所述收发模块 1001 ; The association relationship establishing module 1002 is configured to determine a session identifier of a message service corresponding to the SIP system and the IMPS system, and establish and store an association relationship between the session identifiers; the SIP system session identifier includes a dialog identifier of the SIP system; The session identifier of the IMPS system includes the user identifier and the client identifier of the SIP user participating in the session, the user identifier and the client identifier of the IMPS user participating in the session, where the client identifier of the IMPS user may be a ClientID or an ApplicationID; The relationship query module 1003 is configured to query the association relationship stored in the association relationship establishing module 1002 according to the content of the message received by the transceiver module 1001 from the SIP system (or the IMPS system), to obtain the message to be sent. The IMPS system (or SIP system) session identifier, and notifying the transceiver module 1001 of the obtained session identifier;
格式转换模块 1004, 用于将所述收发模块 1001所接收的 SIP (或 IMPS协 议)支持的消息转换为 IMPS协议(或 SIP )支持的格式, 并将所述转换后的消
息发送给所述收发模块 1001。 The format conversion module 1004 is configured to convert a SIP (or IMPS protocol) supported message received by the transceiver module 1001 into a format supported by the IMPS protocol (or SIP), and convert the converted The information is sent to the transceiver module 1001.
其中, 关联关系建立模块 1002进一步包括: The association establishing module 1002 further includes:
获取单元, 用于从所述收发模块 1001所接收的 SIP请求 /应答或 IMPS请求 /应答中, 获取 SIP用户的用户标识、 SIP系统的对话标识、 IMPS用户的用户标 识和 IMPS用户的客户端标识,并将所获取的所述各项标识作为关联关系记录中 的内容; And an obtaining unit, configured to obtain, from the SIP request/response or IMPS request/response received by the transceiver module 1001, the user identifier of the SIP user, the session identifier of the SIP system, the user identifier of the IMPS user, and the client identifier of the IMPS user. And using the obtained identifiers as the content in the relationship record;
生成单元, 用于生成关联关系记录中的 SIP用户的客户端标识。 The generating unit is configured to generate a client identifier of the SIP user in the relationship record.
以上所述实施例都是 IMPS用户和 SIP用户之间的消息业务,实际上本发明 方案并不限于此, 凡是支持不同通信协议的多客户端用户之间的消息业务都可 以应用本发明方案。 另外, 以上实施例中用于连接 SIP系统和 IMPS系统并且进 行上述系统之间消息转换的网元为互连网关, 实际上也可以由能够实现上述互 连功能的其它网元来实现, 因此将所述网元可以统称为互连功能实体。 The foregoing embodiments are all message services between the IMPS user and the SIP user. In fact, the present invention is not limited thereto, and the message service between multiple client users supporting different communication protocols can be applied to the solution of the present invention. In addition, the network element used in the foregoing embodiment for connecting the SIP system and the IMPS system and performing message conversion between the foregoing systems is an interconnection gateway, and may actually be implemented by other network elements capable of implementing the foregoing interconnection function, and thus The network elements can be collectively referred to as interconnected functional entities.
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是 可以通过程序来指令相关的硬件完成, 所述的程序可以存储于一种计算机可读 存储介质中,上述提到的存储介质可以是可读写存储器 RAM、只读存储器 ROM, 磁盘或光盘等。 A person skilled in the art can understand that all or part of the steps of implementing the above embodiments can be completed by a program to instruct related hardware, and the program can be stored in a computer readable storage medium, the above mentioned storage. The medium can be a readable and writable memory RAM, a read only memory ROM, a magnetic disk or an optical disk.
以上所述仅为本发明的较佳实施例而已, 并不用以限制本发明, 凡在本发 明的精神和原则之内所作的任何修改、 等同替换和改进等, 均应包含在本发明 的保护范围之内。
The above is only the preferred embodiment of the present invention, and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection of the present invention. Within the scope.
Claims
1、 一种通信互连方法, 互连功能实体与支持第一通信协议的第一通信系统 和支持第二通信协议的第二通信系统分别相连, 其特征在于, 包括: A communication interconnection method, wherein an interconnection function entity is respectively connected to a first communication system supporting a first communication protocol and a second communication system supporting a second communication protocol, and is characterized in that:
所述互连功能实体建立所述第一通信系统的会话标识和第二通信系统的会 话标识之间的关联关系; The interconnection function entity establishes an association relationship between a session identifier of the first communication system and a session identifier of the second communication system;
所述互连功能实体根据所述关联关系, 在所述两个通信系统间转发会话消 息。 The interconnect functional entity forwards the session message between the two communication systems in accordance with the association relationship.
2、 根据权利要求 1所述的方法, 其特征在于, 所述第一通信协议为会话初 始协议, 所述第一通信系统为会话初始协议系统, 所述第二通信协议为即时消 息和存在业务协议, 所述第二通信系统为即时消息和存在业务系统; 2. The method according to claim 1, wherein the first communication protocol is a session initiation protocol, the first communication system is a session initiation protocol system, and the second communication protocol is an instant message and a presence service. The second communication system is an instant message and a presence service system;
或者, 所述第一通信协议为即时消息和存在业务协议, 所述第一通信系统 为即时消息和存在业务系统, 所述第二通信协议为会话初始协议, 所述第二通 信系统为会话初始协议系统。 Or the first communication system is an instant message and a presence service protocol, the first communication system is an instant message and a presence service system, the second communication protocol is a session initiation protocol, and the second communication system is a session initiation protocol. Protocol system.
3、 根据权利要求 2所述的方法, 其特征在于, 所述会话初始协议系统的会 话标识为会话初始协议对话标识, 所述即时消息和存在业务的会话标识为会话 初始协议用户的用户标识、 会话初始协议用户的客户端标识、 即时消息和存在 业务用户的用户标识和 /或即时消息和存在业务用户的客户端标识。 The method according to claim 2, wherein the session identifier of the session initiation protocol system is a session initial protocol session identifier, and the instant message and the session identifier of the presence service are user identifiers of the session initiation protocol user, The client identifier of the session initiation protocol user, the instant message and the user identity and/or instant message of the presence of the service user, and the client identity of the presence service user.
4、 根据权利要求 3所述的方法, 其特征在于, 所述互连功能实体建立所述 第一通信系统的会话标识和第二通信系统的会话标识之间的关联关系步骤具体 为: The method according to claim 3, wherein the step of establishing an association between the session identifier of the first communication system and the session identifier of the second communication system by the interconnection function entity is specifically:
互连功能实体接收来自会话初始协议系统中的会话初始协议用户的会话初 始协议请求, 新建一条会话初始协议系统的会话标识和即时消息和存在业务系 统的会话标识的关联关系记录; The interconnection function entity receives the session initial protocol request from the session initial protocol user in the session initial protocol system, creates a session identifier of the session initial protocol system, and records the association relationship between the instant message and the session identifier of the service system;
将所述会话初始协议请求中的内容写入所述关联关系记录中; Writing the content in the session initiation protocol request into the association relationship record;
将所述会话初始协议请求转换为即时消息和存在业务请求, 并将所述即时 消息和存在业务请求发送到即时消息和存在业务系统中; Translating the session initiation protocol request into an instant message and a presence service request, and transmitting the instant message and the presence service request to the instant message and the presence service system;
接收来自即时消息和存在业务系统的应答, 并将所述应答中内容写入所述 关联关系记录中。 A response is received from the instant message and the presence of the service system, and the content in the response is written to the association record.
5、 根据权利要求 4所述的方法, 其特征在于, 所述将所述会话初始协议请
求中的内容写入所述关联关系记录中包括: 始协议系统的会话标识; 将所述会话初始协议请求中的发送方地址记录作为所 述关联关系记录中的所述会话初始协议用户的用户标识, 将所述会话初始协议 请求中的接收方地址记录作为所述关联关系记录中即时消息和存在业务用户的 用户标识; 互连功能实体生成所述关联关系记录中的会话初始协议用户的客户 端标识, 所述会话初始协议用户和即时消息和存在业务用户所对应的所述会话 初始协议用户的客户端标识保持唯一; The method according to claim 4, wherein the session initiation protocol is requested Writing the content in the request to the association relationship record includes: a session identifier of the initial protocol system; and recording, as the user of the session initiation protocol user in the association relationship record, a sender address record in the session initiation protocol request Identifying, by using the receiver address record in the session initiation protocol request as an instant message in the association relationship record and a user identifier of the presence service user; the interconnection function entity generates a client of the session initiation protocol user in the association relationship record End identifier, the session initial protocol user and the instant message and the client identifier of the session initial protocol user corresponding to the presence service user remain unique;
所述将会话初始协议请求转换为即时消息和存在业务请求包括: The converting the initial protocol request to the instant message and the presence service request includes:
将所述会话初始协议用户的用户标识和 /或所述会话初始协议用户的客户端 标识作为所述即时消息和存在业务请求的发送方, 将所述即时消息和存在业务 用户的用户标识作为所述即时消息和存在业务请求的接收方。 Using the user identifier of the session initiation protocol user and/or the client identifier of the session initiation protocol user as the sender of the instant message and the presence service request, using the instant message and the user identifier of the presence service user as The instant message and the recipient of the presence of the service request.
6、 根据权利要求 4所述方法, 其特征在于, 所述将应答中内容写入所述关 联关系记录中包括: The method according to claim 4, wherein the writing the content in the response to the association relationship record comprises:
将所述应答中的即时消息和存在业务用户的客户端标识或应用标识作为所 述关联关系记录中的即时消息和存在业务用户的客户端标识。 The instant message in the response and the client identifier or application identifier of the presence of the service user are used as the instant message in the association record and the client identifier of the presence service user.
7、 根据权利要求 3所述的方法, 其特征在于, 所述互连功能实体建立所述 第一通信系统的会话标识和第二通信系统的会话标识之间的关联关系包括: 互连功能实体接收来自即时消息和存在业务用户的即时消息和存在业务请 求, 新建一条会话初始协议系统的会话标识和即时消息和存在业务系统的会话 标识的关联关系记录; The method according to claim 3, wherein the interconnection function establishes an association relationship between the session identifier of the first communication system and the session identifier of the second communication system, including: Receiving an instant message and a presence service request from the instant message and the presence of the service user, creating a session identifier of the session initiation protocol system and an association record of the instant message and the session identifier of the presence service system;
将所述即时消息和存在业务请求中的内容写入所述关联关系记录中; 将所述即时消息和存在业务请求转换为会话初始协议请求, 并将所述会话 初始协议请求发送到会话初始协议系统中; Writing the content in the instant message and the presence service request into the association relationship record; converting the instant message and the presence service request into a session initiation protocol request, and sending the session initiation protocol request to the session initiation protocol In the system;
接收来自会话初始协议系统的成功响应, 将会话初始协议成功响应的对话 标识作为所述关联关系记录中的会话初始协议系统的会话标识, 生成所述关联 关系记录中的会话初始协议用户的客户端标识, 所述会话初始协议用户和即时 消息和存在业务用户所对应的所述会话初始协议用户的客户端标识保持唯一。 Receiving a successful response from the session initial protocol system, using the session identifier of the session initial protocol success response as the session identifier of the session initial protocol system in the association record, and generating the client of the session initiation protocol user in the association record And the client identifier of the session initiation protocol user and the instant message and the presence of the service user are unique.
8、 根据权利要求 7所述的方法, 其特征在于, 所述将所述即时消息和存在
业务请求中的内容写入所述关联关系记录中包括: 8. The method according to claim 7, wherein said said instant message and presence The content in the business request is written into the relationship record including:
将所述即时消息和存在业务请求中的发送方用户标识作为所述关联关系记 录中的即时消息和存在业务用户的用户标识, 将所述即时消息和存在业务请求 中的发送方客户端标识或应用标识作为所述关联关系记录中的即时消息和存在 业务用户的客户端标识, 将所述即时消息和存在业务请求中的接收方用户标识 作为所述关联关系记录中的会话初始协议用户的用户标识; Using the sender user identifier in the instant message and the presence service request as the instant message in the association relationship record and the user identifier of the presence service user, and the sender client identifier in the instant message and the presence service request or Applying the identifier as the instant message in the association record and the client identifier of the presence service user, and using the receiver user identifier in the instant message and the presence service request as the user of the session initiation protocol user in the association relationship record Identification
所述将所述即时消息和存在业务请求转换为会话初始协议请求包括: 将所述会话初始协议用户的用户标识作为所述会话初始协议请求中的接收 方地址记录, 将所述即时消息和存在业务用户的用户标识作为发送方的地址记 录。 The converting the instant message and the presence service request into the session initiation protocol request comprises: recording, by using the user identifier of the session initiation protocol user as a recipient address in the session initiation protocol request, the instant message and the presence The user ID of the business user is recorded as the address of the sender.
9、 根据权利要求 4至 8任一项所述的方法, 其特征在于, 所述会话初始协 议请求为会话初始协议邀请请求, 所述即时消息和存在业务请求为即时消息和 存在业务邀请请求; 或者, 所述会话初始协议请求为会话初始协议订阅请求, 所述即时消息和存在业务请求为即时消息和存在业务订阅请求。 The method according to any one of claims 4 to 8, wherein the session initiation protocol request is a session initiation protocol invitation request, and the instant message and the presence service request are an instant message and a presence service invitation request; Or the session initiation protocol request is a session initial protocol subscription request, and the instant message and the presence service request are an instant message and a presence service subscription request.
10、 根据权利要求 4至 8任一项所述的方法, 其特征在于, 所述互连功能 实体根据所述关联关系, 在所述两个通信系统间转发会话消息包括: The method according to any one of claims 4 to 8, wherein the interconnecting function entity forwards the session message between the two communication systems according to the association relationship, including:
互连功能实体接收到来自会话初始协议用户的消息, 根据所述消息所属的 对话标识, 查找所述关联关系得到即时消息和存在业务用户的用户标识、 客户 端标识和 /或应用标识,将所述消息转换为即时消息和存在业务协议支持的格式, 并将所述转换格式后的消息发送到所述即时消息和存在业务用户标识、 客户端 标识和 /或应用标识对应的即时消息和存在业务客户端; The interconnection function entity receives the message from the user of the session initiation protocol, searches for the association relationship according to the conversation identifier to which the message belongs, and obtains the user identifier, the client identifier, and/or the application identifier of the service user. Transmitting the message into a format supported by the instant message and the presence service protocol, and sending the converted format message to the instant message and the presence of the service user identifier, the client identifier, and/or the application identifier corresponding to the instant message and the presence service Client
或者, 互连功能实体接收来自即时消息和存在业务用户的消息, 根据所述 消息中的即时消息和存在业务用户的用户标识、 会话初始协议用户的用户标识 和 /或客户端标识, 查找所述关联关系得到对应的会话初始协议系统会话标识, 将所述消息转换为会话初始协议支持的格式, 并将所述转换格式后的消息通过 所述会话初始协议系统会话标识对应的会话初始协议会话发送到会话初始协议 系统。 Or the interconnecting function entity receives the message from the instant message and the existing service user, and searches according to the instant message in the message and the user identifier of the service user, the user identifier of the session initiation protocol user, and/or the client identifier. The association relationship is obtained by the corresponding session initial protocol system session identifier, and the message is converted into a format supported by the session initial protocol, and the converted format message is sent through the session initial protocol session corresponding to the session initial protocol system session identifier. To the session initial protocol system.
11、 一种互连功能实体, 与支持第一通信协议的第一通信系统和支持第二 通信协议的第二通信系统分别相连, 其特征在于, 包括: An interconnecting functional entity, which is respectively connected to a first communication system supporting a first communication protocol and a second communication system supporting a second communication protocol, and is characterized in that:
收发模块, 用于接收来自所述第一通信系统的消息, 根据所述关联关系建
立模块建立的关联关系将来自格式转换模块的消息发送至所述第二通信系统; 或者 a transceiver module, configured to receive a message from the first communication system, according to the association relationship The association established by the vertical module sends a message from the format conversion module to the second communication system; or
用于接收来自所述第二通信系统的消息, 根据所述关联关系建立模块建立 的关联关系将来自格式转换模块的消息发送至所述第一通信系统; Receiving a message from the second communication system, and sending a message from the format conversion module to the first communication system according to the association relationship established by the association relationship establishing module;
关联关系建立模块, 用于确定对应于第一通信系统和第二通信系统的会话 标识, 建立并存储所述会话标识之间的关联关系; An association establishing module, configured to determine a session identifier corresponding to the first communication system and the second communication system, and establish and store an association relationship between the session identifiers;
格式转换模块, 用于将所述收发模块所接收的第一通信协议支持的消息转 换为第二通信协议支持的格式, 并将所述转换后的消息发送给所述收发模块; 或者 a format conversion module, configured to convert a message supported by the first communication protocol received by the transceiver module into a format supported by the second communication protocol, and send the converted message to the transceiver module; or
用于将将所述收发模块所接收的第二通信协议支持的消息转换为第一通信 协议支持的格式 , 并将所述转换后的消息发送给所述收发模块。 And a method for converting a message supported by the second communication protocol received by the transceiver module into a format supported by the first communication protocol, and transmitting the converted message to the transceiver module.
12、 如权利要求 11所述的互联功能实体, 其特征在于, 所述互联功能实体 还包括: The interconnecting functional entity of claim 11, wherein the interconnecting functional entity further comprises:
关联关系查询模块, 用于根据所述收发模块所接收的来自第一通信系统的 消息所属会话标识, 查询所述关联关系建立模块中存储的关联关系, 得到所述 第二通信系统的会话标识, 并将所得到的第二通信系统的会话标识通知所述收 发模块; 或者 The association relationship query module is configured to query an association relationship stored in the association relationship establishing module according to the session identifier of the message from the first communication system received by the transceiver module, to obtain a session identifier of the second communication system, And notifying the transceiver module of the obtained session identifier of the second communication system; or
用于根据所述收发模块所接收的来自第二通信系统的消息所属会话标识, 查询所述关联关系建立模块中存储的关联关系, 得到所述第一通信系统的会话 标识, 并将所得到的第一通信系统的会话标识通知所述收发模块。 Querying, according to the session identifier of the message received by the transceiver module from the second communication system, the association relationship stored in the association relationship establishing module, obtaining the session identifier of the first communication system, and obtaining the obtained session identifier The session identifier of the first communication system notifies the transceiver module.
13、 根据权利要求 12所述互连功能实体, 其特征在于, 所述第一通信协议 为会话初始协议, 第二通信协议为即时消息和存在业务; 或者, 所述第一通信 协议为即时消息和存在业务, 第二通信协议为会话初始协议。 The interconnection function entity according to claim 12, wherein the first communication protocol is a session initiation protocol, the second communication protocol is an instant message and a presence service; or the first communication protocol is an instant message. And the presence of the service, the second communication protocol is the session initiation protocol.
14、 根据权利要求 13所述的互连功能实体, 其特征在于, 所述收发模块进 一步用于接收来自会话初始协议系统的会话初始协议请求或来自即时消息和存 在业务系统的即时消息和存在业务请求; The interconnecting functional entity according to claim 13, wherein the transceiver module is further configured to receive a session initiation protocol request from a session initiation protocol system or an instant message and presence service from an instant message and a presence service system. Request
所述关联关系建立模块进一步包括: The association establishing module further includes:
获取单元, 用于从所述收发模块所接收的会话初始协议请求 /应答或即时消 息和存在业务请求 /应答中, 获取会话初始协议用户的用户标识、 会话初始协议 系统的对话标识、 即时消息和存在业务用户的用户标识和 /或即时消息和存在业
务用户的客户端标识, 并将所获取的所述各项标识作为关联关系记录中的内容; 生成单元, 用于生成关联关系记录中的会话初始协议用户的客户端标识。
An obtaining unit, configured to obtain, from a session initiation protocol request/response or an instant message and a presence service request/response received by the transceiver module, a user identity of a session initiation protocol user, a session identifier of a session initiation protocol system, an instant message, and User ID and/or instant message and presence of the business user The client identifier of the user is used as the content in the association record; the generating unit is configured to generate the client identifier of the session initiation protocol user in the association record.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710137522.6A CN101355533B (en) | 2007-07-26 | 2007-07-26 | Communication interconnect method and apparatus |
CN200710137522.6 | 2007-07-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009012724A1 true WO2009012724A1 (en) | 2009-01-29 |
Family
ID=40281021
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2008/071762 WO2009012724A1 (en) | 2007-07-26 | 2008-07-25 | A method and device for communication interconnection |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101355533B (en) |
WO (1) | WO2009012724A1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112291207A (en) * | 2020-10-16 | 2021-01-29 | 武汉中科通达高新技术股份有限公司 | Method and device for acquiring front-end equipment catalog |
US11533345B2 (en) | 2020-03-27 | 2022-12-20 | Samsung Electronics Co., Ltd. | Method and apparatus for providing generic framework to manage custom subscription over sip |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8914482B2 (en) * | 2010-05-26 | 2014-12-16 | Microsoft Corporation | Translation of technology-agnostic management commands into multiple management protocols |
US10476822B2 (en) * | 2016-12-08 | 2019-11-12 | T-Mobile Usa, Inc. | MSRP/HTTP file transfer |
CN108965108B (en) * | 2018-06-27 | 2021-03-26 | 腾讯科技(深圳)有限公司 | Message pushing method and related equipment |
CN109246385B (en) * | 2018-11-01 | 2020-08-28 | 苏州科达科技股份有限公司 | Communication method and conference system for multi-party conference |
CN109831377A (en) * | 2019-03-26 | 2019-05-31 | 安康鸿天科技股份有限公司 | It is a kind of difference instant communication protocol and Session Initiation Protocol between intercommunication technology |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005022863A1 (en) * | 2003-08-29 | 2005-03-10 | SIEMENS MOBILE COMMUNICATIONS S.p.A. .A. | Method for managing presence services in a communication system with heterogeneous presence protocols |
US20050213537A1 (en) * | 2004-02-27 | 2005-09-29 | Ingimundarson Jon I | Interworking gateway and method |
CN1794707A (en) * | 2005-08-09 | 2006-06-28 | 华为技术有限公司 | Searching method between immediate news systems and interlink server |
CN1878162A (en) * | 2005-06-07 | 2006-12-13 | 中兴通讯股份有限公司 | Mapping method for protocol interconnection entity to superposition transmitting-receiving code signalling |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100596124C (en) * | 2006-03-03 | 2010-03-24 | 华为技术有限公司 | Method and system for implementing intercommunication of operation |
-
2007
- 2007-07-26 CN CN200710137522.6A patent/CN101355533B/en active Active
-
2008
- 2008-07-25 WO PCT/CN2008/071762 patent/WO2009012724A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2005022863A1 (en) * | 2003-08-29 | 2005-03-10 | SIEMENS MOBILE COMMUNICATIONS S.p.A. .A. | Method for managing presence services in a communication system with heterogeneous presence protocols |
US20050213537A1 (en) * | 2004-02-27 | 2005-09-29 | Ingimundarson Jon I | Interworking gateway and method |
CN1878162A (en) * | 2005-06-07 | 2006-12-13 | 中兴通讯股份有限公司 | Mapping method for protocol interconnection entity to superposition transmitting-receiving code signalling |
CN1794707A (en) * | 2005-08-09 | 2006-06-28 | 华为技术有限公司 | Searching method between immediate news systems and interlink server |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11533345B2 (en) | 2020-03-27 | 2022-12-20 | Samsung Electronics Co., Ltd. | Method and apparatus for providing generic framework to manage custom subscription over sip |
CN112291207A (en) * | 2020-10-16 | 2021-01-29 | 武汉中科通达高新技术股份有限公司 | Method and device for acquiring front-end equipment catalog |
CN112291207B (en) * | 2020-10-16 | 2022-11-25 | 武汉中科通达高新技术股份有限公司 | Method and device for acquiring front-end equipment catalog |
Also Published As
Publication number | Publication date |
---|---|
CN101355533A (en) | 2009-01-28 |
CN101355533B (en) | 2011-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2342883B1 (en) | File transfer in conference services | |
KR101635906B1 (en) | Method for providing the communication history | |
US8670760B2 (en) | Converged mobile-web communications solution | |
US8676189B2 (en) | Converged mobile-web communications solution | |
US7983201B2 (en) | Coordinated invitations to a conference call | |
CN100499598C (en) | Method and system of instant message user to use other immediate news system | |
US9204264B2 (en) | Exchange of messages and sessions | |
US9426108B2 (en) | Method for storing conversation upon user's request in CPM system, and system thereof | |
US20080270553A1 (en) | Method and System for Instant Notification of Communication Block Information | |
CN101714170B (en) | XDMS-based group management system and method | |
US8014775B2 (en) | Method and system for implementing messaging services and a message application server | |
KR20080094082A (en) | Side channel for membership management within conference control | |
WO2009012724A1 (en) | A method and device for communication interconnection | |
US9444777B2 (en) | Method and processing system for routing a message request | |
EP1914973B1 (en) | System and method to provide combinational services to anonymous callers | |
CN101834730A (en) | Multimedia conferencing control method and system | |
WO2008006311A1 (en) | A method and corresponding device for using of user terminal identifier | |
CN101635672A (en) | Device and method for realizing convergence service session in group mode | |
Shelat et al. | A survey of open source protocols XMPP and SIP for instant messaging system | |
US20100009664A1 (en) | Methods, telecommunications node, and user equipment for transmission of user identifier | |
WO2009023569A2 (en) | Methods, systems, and computer program products for providing a universal uniform resource identifier (uuri) | |
WO2007131400A1 (en) | A method and a system for achieving presence services and the presence server | |
Zhu | An IMS Based Inter-working Solution for Multimedia Service in a Converged Network |
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: 08783755 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 08783755 Country of ref document: EP Kind code of ref document: A1 |