Method and apparatus for a sip client manager
First Claim
1. A method in a communications system for processing a message in a text based communications protocol, the method comprising:
- receiving, in a first X-SIP client module, a first communication;
generating a simplified SIP message from said first communication; and
sending the simplified SIP message to a SIP management module;
wherein the SIP management module processes simplified SIP messages from a plurality of X-SIP client modules;
wherein at least two of said X-SIP client modules are interfaced to client applications operating under different programming languages and having different client application message formats.
7 Assignments
0 Petitions
Accused Products
Abstract
A method, apparatus, system, and computer program product for communicating using Session Initiation Protocol (SIP) is provided. The method, apparatus, system and computer program product provide mechanisms by which client applications need not maintain information pertaining to the routing of messages. The SIP client manager receives SIP messages through a network interface. The SIP client manager contains a SIP management module and an X-SIP client module. The SIP management module contains a SIP message modifier for modifying incoming messages and outgoing messages in accordance with context information or state information for a session associated with a SIP message, and the SIP management module also contains input/output controllers for receiving, sending, or forwarding SIP messages. The X-SIP client module contains an input/output controller for receiving and sending SIP messages and also contains a SIP application programming interface (API) for handling SIP messages for a SIP-enabled application.
-
Citations
54 Claims
-
1. A method in a communications system for processing a message in a text based communications protocol, the method comprising:
-
receiving, in a first X-SIP client module, a first communication;
generating a simplified SIP message from said first communication; and
sending the simplified SIP message to a SIP management module;
wherein the SIP management module processes simplified SIP messages from a plurality of X-SIP client modules;
wherein at least two of said X-SIP client modules are interfaced to client applications operating under different programming languages and having different client application message formats. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
adding routing information to said simplified SIP message to form an expanded SIP message; and
sending said expanded SIP message to a target location.
-
-
3. The method of claim 2, wherein said first communications is a reply to a second communication received from a given source and said routing information added in said adding step was previously taken from said second communication.
-
4. The method of claim 2, wherein said routing information includes at least one header chosen from the group consisting of a via header, a route header, and a record route header.
-
5. The method of claim 2, wherein said expanded SIP message is sent to a SIP server.
-
6. The method of claim 2, wherein said expanded SIP message is sent to a second X-SIP client module.
-
7. The method of claim 2, wherein said expanded SIP message is an outgoing message to a SIP server, and said expanded SIP message is forwarded using IP data packets.
-
8. The method of claim 1, wherein said SIP management module is implemented in a platform-independent environment.
-
9. The method of claim 1, wherein said first X-SIP client module is implemented in a platform-dependant environment.
-
10. A method for communicating a message, comprising the steps of:
-
receiving, in a SIP management module, a SIP message;
determining session context information associated with said SIP message, said session context information including message routing information;
storing said message routing information, wherein the stored message routing information is used when sending a response signal;
removing said message routing information to form a simplified SIP message and forwarding said simplified SIP message to a first X-SIP client module;
wherein said SIP management module forwards information to a plurality of X-SIP client modules;
wherein at least two of said X-SIP client modules are interfaced to client applications operating under different programming languages and having different client application message formats. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
receiving said SIP message at an input/output controller;
decoding said SIP message to form a decoded message; and
forwarding said decoded message to a context manager.
-
-
15. The method of claim 10, wherein the step of forwarding the message further comprises:
-
encoding said simplified SIP message at an input/output controller; and
forwarding said simplified SIP message through a socket.
-
-
16. The method of claim 10, wherein said simplified SIP message is forwarded using TCP packets.
-
17. The method of claim 10, wherein said SIP management module is implemented in a platform-independent environment.
-
18. The method of claim 10, wherein said first X-SIP client module is implemented in a platform-dependent environment.
-
19. A data processing system for communicating using a text based communication protocol, the data processing system comprising:
-
a first X-SIP client module containing first receiving means for receiving a first request, first generating means for generating a first simplified SIP message from said first request, and first sending means for sending said first simplified SIP message to a SIP management module; and
a second X-SIP client module that is different from said first X-SIP client module, said second X-SIP client module containing second receiving means for receiving a second request, second generating means for generating a simplified SIP message from said second request, and second sending means for sending said second simplified SIP message to said SIP management module;
wherein said SIP management module processes said first and said second simplified SIP messages from said first and said second X-SIP client modules;
wherein at least two of said X-SIP client modules are interfaced to client applications operating under different programming languages and having different client application message formats. - View Dependent Claims (20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33)
third receiving means for receiving a SIP message from a SIP server; and
conversion means for converting said SIP message into a simplified SIP message that does not include message routing information, and transmission means for transmitting said simplified SIP message to one of said first or said second X-SIP client modules.
-
-
24. The data processing system of claim 19, wherein said SIP management module further comprises:
-
third receiving means for receiving a SIP message from a SIP sever; and
conversion means for converting said SIP message into a simplified SIP message, said conversion means removing at least one header from said SIP message, said header being chosen from the group consisting of a “
Via”
header, a “
Route”
header, and a “
Record Route”
header andtransmission means for transmitting said simplified SIP message to one of said first or said second X-SIP client modules.
-
-
25. The data processing system of claim 19, wherein said SIP management module further comprises:
-
third receiving means for receiving a SIP message from a SIP server; and
conversion means for converting said SIP message into a simplified SIP message and transmission means for transmitting said simplified SIP message to one of said first or said second X-SIP client modules;
wherein said third receiving means includes an input/output controller for receiving messages, a decoder for decoding messages, and a second forwarding means for forwarding decoded messages to a context manager.
-
-
26. The data processing system of claim 19, wherein said SIP management module further comprises:
-
third receiving means for receiving a SIP message from a SIP server;
conversion means for converting said SIP message into a simplified SIP message and transmission means for transmitting said simplified SIP message to one of said first or said second X-SIP client modules;
session state information determination means for determining session state information associated with a given message;
next session state determination means for determining a next session state based on said given message and the associated session context information or the associated session state information; and
forwarding means for forwarding said simplified SIP message to an input/output controller.
-
-
27. The data processing system of claim 19, wherein said SIP management module further comprises:
-
third receiving means for receiving a SIP message from a SIP server;
conversion means for converting said SIP message into a simplified SIP message; and
transmission means for transmitting said simplified SIP message to one of said first or said second X-SIP client modules, said transmission means including;
and encoder for encoding the modified message at an input/output controller; and
a forwarding means for forwarding the modified message through a socket.
-
-
28. The data processing system of claim 19, wherein said SIP management module modifies ones of said first and said second simplified SIP messages and forwards said ones to a SIP server using IP data packets.
-
29. The data processing system of claim 19, wherein said SIP management module receives an incoming message from said first SIP client module and forwards said incoming message to said second client module.
-
30. The data processing system of claim 19, wherein said SIP management module sends and outgoing message using IP data packets.
-
31. The data processing system of claim 19, wherein said SIP management module sends and outgoing message using TCP packets.
-
32. The data processing system of claim 19, wherein said SIP management module is implemented in a platform independent environment.
-
33. The data processing system of claim 19, wherein at least one of said first and said second X-SIP client modules are implemented in a platform dependent environment.
-
34. A computer program product in a computer-readable medium for use in a data processing system for communicating a message, the computer program product comprising:
-
in each of a plurality of X-SIP client modules;
first instructions for receiving said message;
second instructions for creating a simplified SIP message containing said message; and
third instructions for sending said simplified SIP message to a SIP management module; and
in said SIP management module;
fourth instructions for receiving said simplified SIP message from said plurality of client X-SIP modules; and
fifth instruction for creating and forwarding an expanded SIP message from said simplified SIP message;
wherein at least two of said X-SIP client modules are interfaced to client applications operating under different programming languages and having different client application message formats. - View Dependent Claims (35, 36, 37, 38, 39, 40, 41, 42, 43)
sixth instructions for receiving SIP messages for said plurality of X-SIP client modules;
seventh instructions for removing message routing information from said SIP message to form simplified SIP messages; and
eighth instructions for transmitting said simplified SIP messages to ones of said plurality of client X-SIP modules.
-
-
37. The computer program product of claim 34, wherein said fifth instructions include instructions for adding the message routing information to the message.
-
38. The computer program product of claim 34, wherein said first instructions include instructions for receiving a message at an input/output controller, instructions for decoding said message to form a decoded message, and instructions for forwarding said decoded message to a context manager.
-
39. The computer program product of claim 34, further comprising:
-
sixth instructions for determining session state information associated with said message;
seventh instructions for determining a next session state based on said message and associated session context information or associated session state information; and
eighth instructions for forwarding said expanded SIP message to an input/output controller.
-
-
40. The computer program product of claim 34, wherein said fifth instructions include:
-
instructions for encoding said expanded SIP message at an input/output controller to form an encoded message; and
instructions for forwarding said encoded message through a socket.
-
-
41. The computer program product of claim 34, wherein said expanded SIP message is sent to a SIP server using IP data packets.
-
42. The computer program product of claim 34, wherein said SIP management module is implemented in a platform independent environment.
-
43. The computer program product of claim 34, wherein at least one of said X-SIP client modules is implemented in a platform dependent environment.
-
44. A data processing system for communicating using a text based communication protocol, the data processing system comprising:
-
a network interface; and
a client manager, wherein the client manager comprises a plurality of X-SIP client modules, each said X-SIP client module receiving requests from a respective client application, and SIP management module that communicates with said plurality of X-SIP client modules;
wherein at least two of said plurality of X-SIP client modules are interfaced to client applications operating under different programming languages and having different client application message formats;
wherein messages that are passed between said X-SIP client modules and said SIP manager module are simplified SIP messages containing no message routing information. - View Dependent Claims (45, 46, 47, 48, 49, 50, 51, 52, 53, 54)
an encoder for encoding the modified message at an input/output controller; and
a socket for forwarding the modified message.
-
-
51. The data processing system of claim 44, wherein outgoing messages to SIP server are forwarded using IP data packets.
-
52. The data processing system of claim 44, wherein messages sent from said SIP management module to ones of said plurality of X-SIP client modules are forwarded using TCP packets.
-
53. The data processing system of claim 44, wherein said SIP management module is implemented in a platform independent environment.
-
54. The data processing system of claim 44, wherein said X-SIP client modules are implemented in a platform dependent environment.
Specification