Method and apparatus for providing multi-client support in a sip-enabled terminal
First Claim
Patent Images
1. A method comprising:
- coupling a plurality of client programs of a communications terminal to a shared message processing stack of the communications terminal via an application program interface (API) of the message processing stack that is accessible by the client programs using an operating system specific interprocess communications facility of the communications terminal, wherein the client programs are capable of simultaneously engaging in multimedia sessions via a network interface of the communications terminal, and wherein the message processing stack processes messages used to establish the multimedia sessions on behalf of the client programs;
communicating client capabilities of each of the plurality of client programs to the message processing stack using the API of the message processing stack;
receiving a session establishment message at the message processing stack from the network interface;
determining a destination program from the plurality of client programs based on the session establishment message and the client capabilities; and
communicating the session establishment message from the message processing stack to the destination program via the API of the message processing stack to facilitate establishing a session on behalf of the destination program.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for providing multi-client support in a SIP-enabled terminal involves providing a SIP processing stack on the terminal. The clients connect to the SIP processing stack to communicate client capabilities and to process SIP messages. The SIP processing stack sends and receives SIP messages. Incoming SIP messages are sent to the appropriate client by looking at the client capabilities and the data in the SIP message.
-
Citations
38 Claims
-
1. A method comprising:
-
coupling a plurality of client programs of a communications terminal to a shared message processing stack of the communications terminal via an application program interface (API) of the message processing stack that is accessible by the client programs using an operating system specific interprocess communications facility of the communications terminal, wherein the client programs are capable of simultaneously engaging in multimedia sessions via a network interface of the communications terminal, and wherein the message processing stack processes messages used to establish the multimedia sessions on behalf of the client programs; communicating client capabilities of each of the plurality of client programs to the message processing stack using the API of the message processing stack; receiving a session establishment message at the message processing stack from the network interface; determining a destination program from the plurality of client programs based on the session establishment message and the client capabilities; and communicating the session establishment message from the message processing stack to the destination program via the API of the message processing stack to facilitate establishing a session on behalf of the destination program. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer-readable storage medium having instructions stored thereon which are executable by a communications terminal to perform the steps comprising:
-
coupling a plurality of client programs of the communications terminal to a shared message processing stack of the communications terminal via an application program interface (API) of the message processing stack that is accessible by the client programs using an operating system specific interprocess communications facility of the communications terminal, wherein the client programs are capable of simultaneously engaging in multimedia sessions via a network interface of the communications terminal, and wherein the message processing stack processes messages used to establish the multimedia sessions on behalf of the client programs; communicating client capabilities of each of the plurality of client programs to the message processing stack using the API of the message processing stack; receiving a session establishment message at the message processing stack from the network interface; determining a destination program from the plurality of client programs based on the session establishment message and the client capabilities; and communicating the session establishment message from the message processing stack to the destination program via the API of the message processing stack to facilitate establishing a session on behalf of the destination program.
-
-
12. A method, comprising:
-
coupling a plurality of Session Initiation Protocol (SIP) programs of a communications terminal to a SIP processing stack of the communications terminal via an application program interface (API) of the SIP processing stack that is accessible by the client programs using an operating system specific interprocess communications facility of the communications terminal, wherein the SIP processing stack processes all messages used to establish the multimedia sessions on behalf of the SIP programs; communicating a respective client capability from each of the SIP programs to the SIP processing stack using the API of the SIP processing stack; receiving the SIP message from a network entity at a pre-determined port of the network interface, wherein the pre-determined port of the network interface is associated with the SIP processing stack; selecting a destination SIP program from the plurality of SIP programs based on data of the SIP message and a capability of the destination program; and facilitating establishing a SIP session between the destination SIP program and the network entity via the SIP processing stack. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. An apparatus comprising:
-
a network interface; a processor coupled to the network interface; and memory coupled to the processor and comprising; a plurality of client programs capable of simultaneously engaging in multimedia sessions via the network interface; and a shared message processing stack having an application program interface (API) that is accessible by the client programs using an operating system specific interprocess communications facility of the apparatus, wherein the message processing stack processes messages used to establish the multimedia sessions on behalf of the client programs, and wherein the message processing stack has instructions that cause the processor to; receive client capabilities of each of the plurality of client programs via the API; receive a session establishment message from the network interface; determine a destination program from the plurality of client programs based on the session establishment message and the client capabilities; and communicate the session establishment message to the destination program via the API of the message processing stack to facilitate establishing a session on behalf of the destination program. - View Dependent Claims (21, 22, 23, 24, 25, 26, 27, 28)
-
-
29. An apparatus, comprising:
-
a network interface; a processor coupled to the network interface; and memory coupled to the processor and comprising; a plurality of Session Initiation Protocol (SIP) programs capable of simultaneously engaging in multimedia sessions via the network interface; a SIP processing stack having an application program interface (API) that is accessible by the client programs using an operating system specific interprocess communications facility of the apparatus, wherein the message processing stack receives SIP messages used to establish the multimedia sessions on behalf of the client programs via a predetermined port of the network interface that is associated with the SIP processing stack, and wherein the message processing stack has instructions that cause the processor to; receive client capabilities of each of each of the SIP programs via the API of the SIP processing stack; receive a SIP message from a network entity at the pre-determined port of the network interface; select a destination SIP program from the plurality of SIP programs based on data of the SIP message and the client capabilities; and facilitate establishing a SIP session between the destination SIP program and the network entity via the SIP processing stack. - View Dependent Claims (30, 31, 32, 33, 34, 35, 36, 37)
-
-
38. A communications terminal comprising:
-
means for coupling a plurality of client programs of a communications terminal to a shared message processing stack of the communications terminal via an application program interface (API) of the message processing stack that is accessible by the client programs using an operating system specific interprocess communications facility of the communications terminal, wherein the client programs are capable of simultaneously engaging in multimedia sessions via a network interface of the communications terminal, and wherein the message processing stack processes messages used to establish the multimedia sessions on behalf of the client programs; means for communicating client capabilities of each of the plurality of client programs to the message processing stack using the API of the message processing stack; means for receiving a session establishment message at the message processing stack from the network interface; means for determining a destination program from the plurality of client programs based on the session establishment message and the client capabilities; and means for communicating the session establishment message from the message processing stack to the destination program via the API of the message processing stack to facilitate establishing a session on behalf of the destination program.
-
Specification