+

Search Tips   |   Advanced Search

Access 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 the 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.

  • Web services require a Web Services Description Language (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, we 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

    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 the phone on the Internet.

    This topic references one or more of the application server log files. As a recommended alternative, we 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 on distributed and IBM i systems. We can also use HPEL in conjunction with the native z/OS logging facilities. If we are using HPEL, we can access all of the log and trace information using the LogViewer command-line tool from the server profile bin directory. See the information about using HPEL to troubleshoot applications for more information on using HPEL.

    1. Enable the system application.

    2. Install the WSDL file.

    3. Install the IP PBX.

    4. Configure the IP PBX location.

    5. Restart the application server.

    6. Develop an application.

    7. Install and start the new application.

    8. 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 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 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.

    gotcha

    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.http.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. We might increase the default connection from 50 to 200 in a scenario where we 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 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 we 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.


    Subtopics


    Related concepts

  • Access the samples


    Related tasks

  • Set up the communications enabled application samples
  • Samples documentation

  • HTTP transport custom properties for web services applications
  • Java virtual machine custom properties