Network Deployment (Distributed operating systems), v8.0 > End-to-end paths > Communications enabled applications
Accessing telephony services with web services clients
We can integrate telephony services into new and existing applications using the web services interface of communications enabled applications (CEA). Telephony services include making phone calls, receiving phone calls, and receiving call notifications within the web application.
The CEA capability requires an IP private branch exchange (PBX) as part of your infrastructure. An IP PBX is a business telephone system designed to deliver voice over a data network and interoperate with the Public Switched Telephone Network (PSTN). A sample IP PBX application is included in the Samples section of the information center. The sample IP PBX is in the form of an application EAR file and is for test purposes only. The details of installing and configuring the vendor-specific IP PBX are not provided. Along with the sample IP PBX, two soft phones are needed to test the application. JAX-WS
Web services require a WSDL file that describes the interface. The WSDL file can be interpreted by web service tools to generate the web services client code needed to communicate with the web service. As a result, an application developer need only call the correct set of Java APIs to manage phone calls in an application.
This task lists the steps needed to create and deploy an application that can manage phone calls, including how to configure the application server. Formerly, this capability required building SIP servlets and a detailed understanding of the SIP specification. The CEA technology greatly reduces the amount of code required.
Use CEA capabilities, you can perform the following:
- Open a session to start monitoring a phone
- Get notifications about phone activity
- Make phone calls between two phones
- End an active phone call
- Close a session to stop monitoring a phone
In order to open a session and monitor a phone for activity, provide an address of record for your phone. This could be a URI (uniform resource indicator) of a phone. A SIP URI, for example, has the format of sip:username@serviceprovider, which represents the address of your phone on the Internet.
With WAS v8 you can configure the server to use the High Performance Extensible Logging (HPEL) log and trace infrastructure instead of using SystemOut.log , SystemErr.log, trace.log, and activity.log files or native z/OS logging facilities. If you are using HPEL, you can access all of your log and trace information using $PROFILE/bin/LogViewer.sh. See the information about using HPEL to troubleshoot applications for more information on using HPEL.New feature:
Procedure
- Enable the system application.
- Install the WSDL file.
- Install and configure the IP PBX.
- Configure the IP PBX location.
- Restart the application server.
- Develop an application.
- Install and start the new application.
- Test the new application.
Results
An application has been developed and deployed that uses a web services client to handle phone calls and call notifications.
Avoid trouble: If problems are encountered, use the following check list for troubleshooting the problem:
- Is the IP PBX installed and started? If using the sample IP PBX, the admin console of its application server can be used to verify the installation.
- Are the phones set up correctly? They should list that they are registered with the IP PBX and in ready state.
- Is the new application installed and started? Check with the admin console or verify by looking in the SystemOut.log file.
- Initiate a network trace to see how messages are exchanged on the network between the application, IP PBX, and phones.
Best practice: To avoid connection timeout exceptions, it is a best practice to increase the default connection using the Java virtual machine custom property com.ibm.websphere.webservices.//publib.boulder.ibm.com/infocenter/wasinfo/v8r0/index.jsp?topic=/ .maxConnection. The default connection is 50 and once it is reached, the next request waits for a connection to be freed. If it does not get a connection in 5 minutes, it can time out. You might increase the default connection from 50 to 200 in a scenario where you need more connections.
To learn more about this custom property, see the HTTP transport custom properties for web services applications.
To learn how to configure this custom property, see the Java virtual machine (JVM) custom properties information. bprac
This task lists the steps needed to access telephony services with web services clients. A sample web services application is also available in the CEA samples package that you can download from the WAS samples site. For more information about the sample application, see the supporting documentation provided in the root directory of the CEA samples package. Additionally, read about setting up and using the communications enabled application samples.