SIP SipSession and SipApplicationSession classes
Possibly the most complex portions of the SIP Servlet 1.0 specification are the SipSession and SipApplicationSession classes.
SIP SipSession and SipApplicationSession classes
Both of these classes have some useful purposes and can act as the primary place to store data in applications that are designed for distributed or highly available environments.
The SipSession class is the best representative of a specific point-to-point communication between two entities and is the closest to the HttpSession object. Because historically no proxying or forking existed for the HTTP request in HTTP servlets, the need for something higher than a single point-to-point session did not exist. However, even HTTP users can see the growing need for this type of function since portlets began essentially forking HTTP requests. The SIP users expect the proxying and forking activities that require multiple layers of SIP session management. The SipSession class is the lowest point-to-point layer.
The SipApplicationSession class represents the higher layer of SIP session management. One SipApplicationSession class can own one or more SipSession objects. However, each SipSession class can be related to one SipSession object only. The SipApplicationSession class also supports the attachment of any number of other protocol sessions. Currently, only HTTP sessions are supported by any implementations. The SipApplicationSession class has a getSessions method, which takes the requested protocol type as an argument.
We might find it useful for many applications to combine HTTP and SIP. For example, we might use this approach to tie together HTTP and SIP sessions to monitor a phone call or to start a phone call through a rich HTTP GUI.
Related tasks
Browse all SIP topics
SIP servlets
Related
SIP SipServletRequest and SipServletResponse classes
Example: SIP servlet simple proxy
Example: SIP servlet SendOnServlet class
Example: SIP servlet Proxy servlet class