Skip Headers
Oracle® Communications Services Gatekeeper Concepts Guide
Release 5.1

E37541-01
Go to Documentation Home
Home
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
PDF · Mobi · ePub

3 Developing Applications

This chapter explains the interfaces and tools that Oracle Communications Services Gatekeeper. (Services Gatekeeper) provides to develop client applications.

Overview of Interfaces

Services Gatekeeper allows operators to provide client application developers with a choice of interface types, based on the needs of their applications. Services Gatekeeper provides:

  • SOAP-based interfaces, for both traditional Web Services and Oracle Service Bus environments

  • RESTful interfaces

  • Native telephony interfaces (MM7, SMPP, and UCP)

SOAP-Based Interfaces

The SOAP-based Web Services APIs are based on the Parlay X 2.1 and 3.0 standards and also include three additional Extended Web Services to cover Binary SMS, Subscriber Profile, and WAP Push, functionality which is not supported by Parlay X. These interfaces include:

  • Third Party Call (Parlay X 2.1 and 3.0) (Part 2)

    Using the communication services based on these interfaces, an application can set up a call between two parties (the caller and the callee), poll for the status of the call, and end the call. In addition, applications that use the Parlay X 3.0 based communication service can also add or delete additional parties, transfer call participants, get the call session information associated with a call participant, and interact with Audio Call and Call Notification communication services.

  • Call Notification (Parlay X 2.1 and 3.0) (Part 3)

    Using the communication services based on these interfaces, an application can set up and end notifications on call events, such as a callee in a third-party call attempt being busy. If desired, the application can then reroute the call to another party. In addition, the Parlay X 3.0 communication service can work in concert with Third Party Call or Audio Call communication services.

  • Short Messaging (Parlay X 2.1) (Part4)

    Using the communication service based on this interface, an application can send SMS text messages, ringtones, or logos to one or multiple addresses, set up and receive notifications for final delivery receipts of those sent items, and arrange to receive SMSs meeting particular criteria from the network.

  • Multimedia Messaging (Parlay X 2.1) (Part 5)

    Using the communication service based on this interface, an application can send multimedia messages to one or multiple addresses, set up and receive notifications for final delivery receipts of those sent items, and arrange to receive MMSs meeting particular criteria from the network.

  • Terminal Status (Parlay X 2.1) (Part 8)

    Using the communication service based on this interface, an application can request the status (reachable, unreachable, or busy) of a single terminal; request the statuses of a group of terminals; or request to be notified if a terminal status changes within a specified time period (or within a specific number of status queries).

  • Terminal Location (Parlay X 2.1) (Part 9)

    Using the communication service based on this interface, an application can request the position of one or more terminals or the distance between a given position and a terminal. It can also set up and receive notifications based on geographic location or time intervals.

  • Audio Call (Parlay X 2.1) (Part 11)

    Using the communication service based on this interface, an application can play an audio file, deliver VoiceXML content, or deliver text to a text-to-speech engine to a terminal in a call session that was set up using Parlay X 2.1.

  • Audio Call (Parlay X 3.0) (Part 11)

    Using the communication service based on this interface, an application can play audio to one or more call participants in a call session that was set up using Parlay X 3.0 Third Party Call service. It is also possible to collect digits from the participant in response to the audio, which can be delivered to the application using the Parlay X 3.0 Call Notification communication service.

  • Presence (Parlay X 2.1) (Part 14)

    Using the communication service based on this interface, an application can act as either of two different parties to a presence interaction: as a presentity or as a watcher. A presentity agrees to have certain data (called attributes) such as current activity, available communication means, and contact addresses made available to others while a watcher is a consumer of such information. As a watcher, an application can request to subscribe to all or a subset of a presentity's data, poll for that data, and start and end presence notifications. As a presentity, an application can publish presence data about itself, check to see if any new watchers wish to subscribe to its presence data, authorize those watchers it chooses to authorize, block those it wishes not to have access, and get a list of currently subscribed watchers.

  • Payment (Parlay X 3.0) (Part 6)

    Using the communication service based on this interface, an application can charge an amount to an end-user's account using Diameter, refund amounts to that account, and split charge amounts among multiple end-users. An application can also reserve amounts, reserve additional amounts, charge against the reservation or release the reservation.

  • Device Capabilities and Configuration (Parlay X 3.0) (Part 18)

    The communication service based on this interface allows an application to send a device's address (usually telephone number) to an LDAP server and receive device capability information in return. The returned information can either be the device's equipment identifier (for example, an IMEI number), or device capability information (the device's unique ID, device/model name, and a link to the User Agent Profile XML file).

  • Binary SMS (EWS)

    Using the communication service based on this interface, an application can send and receive generic binary objects (for example, a vCard) using SMS mechanisms, and set up and receive notifications. This interface is not based on the Parlay X standards, but instead belongs to the Oracle Extended Web Services set.

  • WAP Push (EWS)

    The application-facing interface of this communication service is not based on the Parlay X 2.1 specification. Many elements within it, however, are based on widely distributed standards. Using the communication service based on this interface, an application can send a WAP Push message, send a replacement WAP Push message, or set up status notifications about previously sent messages.

  • Subscriber Profile (EWS)

    The application-facing interface of this communication service is based on a subset of that in a proposed Parlay X version. Using the communication service based on this interface, an application can retrieve either individual properties associated with a subscriber profile record stored in an LDAP data source in the underlying network or entire profiles from that data source.

  • Session Manager (EWS)

    Using this communication service, an application can establish a Services Gatekeeper session.

RESTful Interfaces

The RESTful APIs provide access to functionality similar to the SOAP Facade. The interfaces include:

  • Audio Call (Parlay X 2.1)

    Using the communication service based on this interface, an application can play an audio file, deliver VoiceXML content, or deliver text to a text-to-speech engine to a terminal.

  • Audio Call (Parlay X 3.0)

    Using the communication service based on this interface, an application can play an audio file one or more call participants in a call session. It is also possible to collect digits from the participant in response to the audio, and return them to the application.

  • Call Notification

    Using the communication service based on this interface enables an application to set up and remove call notifications (in which the application is informed of a particular state - busy, unreachable, etc. - of the call) or to set up and remove call direction notifications (in which the application is queried for information on handling a call that is in a particular state)

  • Device Capabilities and Configuration

    Using the communication service based on this interface allows an application to send a device's address (usually telephone number) to an LDAP server and receive device capability information in return. The returned information can either be the device's equipment identifier (for example, an IMEI number), or device capability information (the device's unique ID, device/model name, and a link to the User Agent Profile XML file).

  • Multimedia Messaging

    Using the communication service based on this interface enables an application to send an MMS and to fetch information on MMSs for the application that have been received and stored on Services Gatekeeper. It also allows the application to fetch those messages. The application can also get delivery status on sent messages, and start and stop a notification

  • Payment

    Using the communication service based on this interface enables an application to charge an amount to an end-user's account using Diameter, refund amounts to that account, and split charge amounts among multiple end-users. An application can also reserve amounts, reserve additional amounts, charge against the reservation or release the reservation.

  • Presence

    Using the communication service based on this interface enables an application to act as either of two different parties to a presence interaction: as a presentity or as a watcher. A presentity agrees to have certain data (called attributes) such as current activity, available communication means, and contact addresses made available to others while a watcher is a consumer of such information. As a watcher, an application can request to subscribe to all or a subset of a presentity's data, poll for that data, and start and end presence notifications. As a presentity, an application can publish presence data about itself, check to see if any new watchers wish to subscribe to its presence data, authorize those watchers it chooses to authorize, block those it wishes not to have access, and get a list of currently subscribed watchers.

  • Short Messaging

    Using the communication service based on this interface enables an application to send an SMS, a ringtone, or a logo, and to fetch SMSs and delivery status reports for the application that have been received and stored on Services Gatekeeper. It also allows an application to start and stop a notification.

  • Terminal Status (Parlay X 2.1)

    Using the communication service based on this interface, an application can request the status (reachable, unreachable, or busy) of a single terminal; request the status of a group of terminals; or request to be notified if a terminal status changes within a specified time period.

  • Terminal Location

    Using the communication service based on this interface enables an application to get a location for an individual terminal or a group of terminals; to get the distance of the terminal from a specific location; and to start and stop notifications, based on geographic location or on a periodic interval

  • Third Party Call

    Using the communication service based on this interface enables an application to set up a call, get information on that call, cancel the call request before it is successfully completed, or end a call that has been successfully set up

  • WAP Push

    Using the communication service based on this interface enables an application to send a WAP Push message.

  • Session Manager

    Using the communication service based on this interface enables an application to get a session ID, get the time remaining in a session's lifetime, and destroy a session

  • Quality of Service

    Using this communication service, an application can, in conjunction with a PCRF and PCEF, apply, remove, modify and query QoS plans which can optimize various communication performance aspects.

OneAPI Interfaces

The Native interfaces provides access to native telecom-specific protocols. The interfaces include:

  • Native MM7

    The application-facing interface of this communication service is based on the 3GPP MM7 standard. Using the communication service based on this interface, an application can send and receive MMSs and receive status notifications about previously sent messages.

Native Interfaces

The Native interfaces provides access to native telecom-specific protocols. The interfaces include:

  • Native MM7

    The application-facing interface of this communication service is based on the 3GPP MM7 standard. Using the communication service based on this interface, an application can send and receive MMSs and receive status notifications about previously sent messages.

  • Native SMPP

    The application-facing interface of this communication service is based on the SMS Forum standard. Using the communication service based on this interface, an application can send and receive SMSs and receive status notifications about previously sent messages.

  • Native UCP

    The application-facing interface of the native UCP communication service is based on the Short Message Service Center EMI-UCP Interface 5.1 specification. This communication service exposes UCP protocol to applications and uses UCP to connect to a Short Message Service Center (SMSC). Using this service, an application can establish a session with application clients and the network, submit and receive SMSs, and receive status notifications about previously sent messages.

References

Services Gatekeeper ships with Oracle Communications Services Gatekeeper Application Developer's Guide and Oracle Communications Services Gatekeeper RESTful Application Developer's Guide, separate documents in this set, which cover both the APIs themselves and some additional information an application developer needs. Because the SOAP and Restful APIs are Web Services based, applications can be developed using any environment that the developer chooses.

SDK

As an option, application developers can use the Services Gatekeeper SDK to test their applications. The SDK consists of a feature called the Application Test Environment (ATE).

The ATE is a lightweight tool that enables application developers to test their applications on a simulation of Services Gatekeeper called the Virtual Communication Service (VCS). The VCS exposes both SOAP and RESTful interfaces.

Developers can perform functional tests on tasks involving communication with Services Gatekeeper, such as opening sessions, sending and receiving messages, and examining delivery reports through the simulator without having to connect to the network operator's actual Services Gatekeeper installation. When the time comes to test and later deploy the application with a real Services Gatekeeper, the developer needs only to change a few URLs in the application to run against a real installation.

Application developers configure their applications to interface with the ATE and then monitor their activity both in the ATE interface by checking whether messages have been received and by examining information returned to the application. The interface presents a map in which users can delineate geographic regions, insert and move terminals, and send messages to and receive messages from the terminals as if they were mobile devices in the real world.

For more information, see the Oracle Communications Services Gatekeeper SDK User's Guide, another document in this set.