Avaya Telephony Service is a Web service that exposes the basic outbound call control features of Avaya Communication Manager. The Service hides the complicated concepts associated with traditional TSAPI/JTAPI based call control such as connections, call identifiers and call states. Applications are not required to maintain any call state or information other than a session ID to manage their session on the server.
Avaya Telephony Service enables its clients to originate an outbound call, drop a call, transfer a call, or conference a party into a call. The client application can add a party to a call using the conference request even if the call was not originally established through the Telephony Service.
The Web Service API SDK is included in the IP Communication SDK CD. The SDK can be found at http://devconnect.avaya.com as well as http://support.avaya.com
The Web Service API SDK files are:
- Telephony Web Service: telsvc-sdk-<version number>.zip
- User Service: usersrvc-sdk-<version number>.zip
- System Management Service: smssvc-sdk<version number>.zip
Expand the SDK ZIP files using any application or tool that recognizes the ZIP file format.
- Telephony Web Service - All of the SDK files are placed into a directory named telsvcsdk.
- User Service - All of the SDK files are placed into a directory named usersrvc.
- System Management Service - All of the SDK files are placed into a directory named smssvc.
High level Telephony Service logging is activated by default on the AE Services server. The log files are in /opt/mvap/logs/tomcat (/var/log/coreservices/tomcat) and are named ws-telsvc-*. The ws-telsvc-trace.log.0 is the most recent trace of activity at the interface. Higher numbered files are older activity. Additional information may be found in the catalina.* files (specifically catalina.out). Since the Telephony Service utilizes TSAPI, it may be necessary to enable TSAPI logging to get a more complete understanding of what is occurring. See the FAQ titled "What is the procedure for enabling and accessing the AE Services logs for TSAPI?" in the General section of the TSAPI FAQ for details about enabling TSAPI logging.
The ability to enable higher level logging is available through a logging.properties file located at /usr/share/tomcat5/webapps/axis//WEB-INF/lib and works similarly to the DMCC logging described in the FAQ titled "How can I monitor the XML being sent and received by the AE Services Server (debug, log, trace)? ". Once you modify the logging.properties settings, you will need to restart the AES to view the increased logging information.
Remember to undo these changes when finished collecting trace information as they have an adverse impact on AE Services performance.
The following Web Service RPM's should have been installed on the AES server during the installation of AE Services. To verify the installation of the RPM's, use the sw version command:
sw version -a
This will list all installed MVAP RPM's. This list should include:
- User Service RPM
- User Service LDAP module RPM
- Telephony Web Service RPM:
- System Management Service RPM
- Call Control RPM for Telephony Web Service
Telephony Web Service provides no events. For instance, it allows a user to originate an outbound call, but does not provide any subsequent events about the call progression. If monitoring is required, the application should be implemented using either JTAPI or TSAPI.
Users of the Telephony Web Service are authenticated (by default) with the User Service that is similar to TSAPI /JTAPI services.
Telephony Web Service presents a session-based model to clients. Sessions can be explicitly or implicitly created. Explicit sessions occur when the attach request is sent with credentials. Sessions are implicitly created when a new request is sent to the service and valid credentials are provided. The Telephony Web Service authenticates the given credentials with the User Service.
|Originates an outbound call from one party to another
Single Step Conference Call
|Conferences in a new party to the existing active call
Single Step Transfer Call
|Transfers the remote party on the current active call to the specified destination
Disconnect Active Call
|Disconnects the specified extension from the active call
Answer Alerting Call
|Answers an alerting call at the specified destination
|Allows an application to authenticate the user and explicitly establish a session before invoking a telephony Request
|Explicitly ends the session
The Telephony Web Service WSDL is available via the following AES URLs:
- https://ServerName:8443/axis/services/TelephonyService?wsdl (secure)
- http://ServerName:8080/axis/services/TelephonyService?wsdl (non-secure)
Invalid Session Exception means that the session has expired or is invalid. Ensure that the AEServices connector server is up and administered correctly. To recover from this exception, client application will need to send valid credentials in the HTTP header of the next request.
ActiveCallExistsException occurs when a Make Call request is received for an extension and an active call already exists at the specified extension. The request should be sent when there are no active calls on the extension.
InvalidCredentialsException means that the credentials provided in the HTTP header were invalid. This occurs if either the username or password was invalid when establishing a new session. Ensure that the given user has been administered in the User Management OAM pages.
InvalidPartyException means that one of the specified parties was invalid or the user did not have permission to access the extension. Ensure that the extension is configured correctly on Communication Manager and on the AEServices connector server. Ensure that the originating device has been administered in the Security Database, and that the user is authorized to control the originating device.
NoActiveCallException occurs when a Single Step Conference Call, Single Step Transfer Call, or Disconnect Active Call request has been received for an extension, but there is no active call on that device. The request should be sent when an active call exists on the extension.
NoAlertingCallException occurs when an Answer Alerting Call request is received for an extension, but there is no alerting call on that extension. The request should be sent when an alerting call exists on the extension.
SwitchNotReachableException occurs if there is no active Switch Connection to the specified switch. Verify that the Switch Connection to the given switch is operational, and that the given switch name matches the Switch Connection name exactly.
Yes, Telephony Web Service sample code is available at http://devconnect.avaya.com. The sample codes can be tested against Avaya Remote Lab. Please see more details about the Remote Lab at http://devconnect.avaya.com
Telephony Web Service requires a TASPI Basic User license in Application Enablement Server.
The Telephony Web Service is meant to be used to initiate basic telephony actions. You can not send nor receive User-to-User Information with the Telephony Web Service as of AE Services release 5.2.
In AE Services release 4.2 it was changed from 24 hours to 30 minutes.
The Telephony Web Service (TWS) needs to be redeployed on Application Enablement Services (AES). Follow these steps to redeploy TWS:
- Log onto the AES server and "su" to root.
- "cd" to the "/opt/mvap/bin" directory.
- Ensure that the "telsvc.sh" script is present and is executable. If necessary: "chmod +x telsvc.sh".
- Run the "telsvc.sh" script: ". ./telsvc.sh".
- Restart the Tomcat service: "service tomcat5 restart".