WebSphere brand IBM WebSphere Telecom Web Services Server, Version 7.1

Integrating with Parlay X Third Party Call over SIP/IMS

Parlay X Third Party Call over SIP/IMS provides the ability to initiate a call from a network entity between two different users or user agents.

Parlay X Third Party Call over SIP/IMS provides simple (high level) Parlay X functions to application developers that can be used to determine how to initiate a third party call. Using this Web service application developers can quickly develop applications use without having detailed knowledge of the telecommunications field. Parlay X Third Party Call over SIP/IMS works on a request or response message from a client to a Web service application. The implementation includes a SIP application and SIP Servlets that are required to run in a WebSphere® converged HTTP and SIP container. The call initiation is done through a SOAP over HTTP request.

Parlay X Third Party Call over SIP/IMS provides Parlay X Web service support for applications with the ability to initiate a call between two addresses (makeCall), retrieve the current call status after a call has been initiated (getCallInformation), terminate a call (endCall), or cancel a call if the parties have not yet been reached (cancelCall).

Call flows

This is a sample call flow for the makeCall Webservice operation:
  1. The application client invokes a Web service with two user endpoints (User Agent 1 and User Agent 2) using SOAP message over HTTP to Access Gateway.
  2. If there is a service policy for Parlay X Third Party Call over SIP/IMS then Access Gateway will send this information through SOAP message to the service.
  3. Access Gateway invokes Parlay X Third Party Call over SIP/IMS, with any policy information as discussed in Step 2.
  4. Parlay X Third Party Call over SIP/IMS will contact the Admission control service to ensure the service does not exceed the server or cluster capacity.
  5. The common service Privacy is called to ensure that the requester is allowed to view requested information.
  6. Traffic Shaping component Web service is called to control the rate of traffic (messages) to the element in the network. The traffic estimate size can be configured for the method being called using the trafficEstimatePerRequest property. A default 50 to 1 ratio means for every Parlay X request there will be up to 50 SIP requests generated. When planning, along with figuring the number of outstanding SIP requests that will be supported, the duration of the call needs to be taken into consideration.
  7. The Parlay X Third Party Call over SIP/IMS creates a new SIP application session, with the initial state Call_Initial.
  8. The SIP call signals now flow from the SIP Servlet 1 to the Out Bound Proxy address, which can be referred to also as the S-CSCF.
  9. Call Information data is stored in the database table THIRDPARTYCALL.
  10. SIP call negotiation between Servlet 1 call flow and User Agents is taking place.
  11. The call negotiation is completed and the User Agents can now start their phone conversation through the established Mobile media connection.

Interfaces

ThirdPartyCall
makeCall
Initiates a call between two addresses, CallingParty and CalledParty. Optionally the application can also indicate the charging information (Charging). This is determined by the policy information configured per provider.
getCallInformation
Retrieves the current call status of the CallIdentifier (a parameter returned from makeCall). A CallInformation structure is returned, containing StartTime, Call status, Duration, and TerminationCause (if applicable). Provided that the call status record has not expired and has not been purged, this method can be invoked multiple times even if the call has ended.
endCall
Terminates the call identified by CallIdentifier.
cancelCall
Cancels the call identified by CallIdentifier. This operation has no effect if a call has been connected.

Session affinity

Session affinity is provided through WebSphere Application Server. To make use of this capability for session affinity, the calling Web service client must preserve the same HTTP session for subsequent calls related to a corresponding SIP session.

In your Third Party Call application, therefore, requests that refer to the result of a previous makecall invocation must preserve the HTTP session. A Java application would preserve the HTTP session by setting SESSION_MAINTAIN_PROPERTY in the Call class.

Here is an example of using the Java Call class to preserve the HTTP session:
ServiceFactory factory = ServiceFactory.newInstance();
Service service = factory.createService(new Qname("http://www.provider.ParlayX..."));
Call call = service.createCall();
:
call.setProperty(call.SESSION_MAINTAIN_PROPERTY,new Boolean(true));
:
// rest of class



Terms of use
(C) Copyright IBM Corporation 2009. All Rights Reserved.