Go to main content
1/48
Contents
Title and Copyright Information
Preface
Audience
Documentation Accessibility
Related Documents
Part I Overview of Creating Applications for Services Gatekeeper
1
About Creating Applications that Interact with Services Gatekeeper
Basic Concepts
Understanding the Interfaces
Understanding Communication Services
Understanding Traffic Types
Understanding Application-Initiated Traffic
Understanding Network-Triggered Traffic
Securing Applications from Malicious Traffic
Adding Proxy Servers for Callbacks and Notifications
Understanding Mobile Applications
Preparing a Development Environment
Creating a Mobile Application
Testing a Mobile Application
Distributing a Mobile Application
Understanding Management Structures
Understanding How to Test Applications
2
Understanding the Supported Application Interfaces
Overview of Services Gatekeeper Supported Interfaces
SOAP-Based Interfaces
RESTful Interfaces
RESTful OneAPI Interfaces
Native Interfaces
3
Managing Communication Sessions
Understanding the Session Manager Web Service
Session Management for SOAP, RESTful, and OneAPI Interfaces
About Sessions
Changing the Session Mode
Session Manager WSDL File
SessionManager Interface Reference
Operation: getSession
Input message: getSession
Output message: getSessionResponse
Referenced faults
Operation: changeApplicationPassword
Input message: changeApplicationPassword
Output message: changeApplicationPasswordResponse
Referenced faults
Operation: getSessionRemainingLifeTime
Input message: getSessionRemainingLifeTime
Output message: getSessionRemainingLifeTimeResponse
Referenced faults
Operation: refreshSession
Input message: refreshSession
Output message: refreshSessionResponse
Referenced faults
Operation: destroySession
Input message: destroySession
Output message: destroySessionResponse
Referenced faults
Session Manager Examples
Part II Creating Applications Using the RESTful Interfaces
4
Using the RESTful Interfaces
Supported RESTful Interfaces
Understanding RESTful Operations
Request-URI and HTTP Methods
General Format of a Request-URI
POST
PUT
GET
DELETE
Status-Line
Headers
Headers for Multipart Messages with Attachments
Service Correlation
How Service Correlation IDs are Provided
Message Body
Request Body
Response Body
Example of a Request and Response
RESTful Authentication and Security
RESTful Notifications and Publish/Subscribe
Supported Endpoint Addresses
Endpoint Addresses for RESTful Interfaces
Using the Bayeux (Cometd) Protocol to Communicate with the Server
Understanding Bayeux Connections and Subscriptions
Understanding the Bayeux Protocol Channel Name
Using the Data at the Endpoint Address
Understanding RESTful Errors and Exceptions
5
Adding RESTful Third Party Call Support
About the RESTful Third Party Call Interface
REST Service Descriptions Available at Runtime
RESTful Third Party Call Interface Reference
Make Call
Get Call Information
Cancel Call
End Call
6
Adding RESTful Anonymous Customer Reference Support
About Anonymous Customer References
Configuring ACR Support in Services Gatekeeper
Creating an ACR Plug-in Instance
Setting ACR Plug-in Parameters
Creating Multiple ACRs for a Single Subscriber
RESTful APIs for ACR Support
Create ACR
Query ACR
Change ACR Status
Errors and Exceptions
EDRs
7
Adding RESTful Application Subscription Management Support
About Application Subscription Management
REST Service Descriptions Available at Run-time
Subscribe
Unsubscribe
Suspend
Unsuspend
Notify
Confirm
queryBySubscriberAddress
queryByApplicationName
queryBySubscriptionID
8
Adding RESTful Call Notification Support
About the Call Notification Interface
REST Service Descriptions Available at Run-time
Common Data
Start Call Notification
Stop Call Notification
Start Call Direction Notification
Stop Call Direction Notification
9
Adding RESTful Short Messaging Support
About the Short Messaging Interface
REST Service Descriptions Available at Run-time
Send SMS
Send SMS Ringtone
Send SMS Logo
Get Received SMS
Get SMS Delivery Status
Start SMS Notification
Stop SMS Notification
10
Adding RESTful Multimedia Messaging Support
About the Multimedia Messaging Interface
REST Service Descriptions Available at Run-time
Send Message
Get Received Messages
Get Message
Get Message Delivery Status
Start Message Notification
Stop Message Notification
11
Adding RESTful Email Communication Service Support
About the Email Communication Interface
REST Service Descriptions Available at Run-time
Send Message
Get Received Messages
Get Message
Get Message Delivery Status
Start Message Notification
Stop Message Notification
12
Adding RESTful Terminal Status Support
About the Terminal Status Interface
REST Service Descriptions Available at Run-time
Get Status
Get Status For Group
Status Notification
End Notification
13
Adding RESTful Terminal Location Support
About the Terminal Location Interface
REST Service Descriptions Available at Run-time
Get Location
Get Location for Group
Get Terminal Distance
Start Geographical Notification
Start Periodic Notification
End Notification
14
Adding RESTful Payment Support
About the Payment Interface
REST Service Descriptions Available at Run-time
Charge Amount
Refund Amount
Charge Split Amount
Reserve Amount
Reserve Additional Amount
Charge Volume
Refund Volume
Charge Split Volume
Get Amount
Charge Reservation
Release Reservation
Reserve Volume
Reserve Additional Volume
Get Amount Reserve Charging
15
Adding RESTful Audio Call Support
About the Audio Call Interface
REST Service Descriptions Available at Run-time
Play Audio Message
Play Text Message
Play VoiceXML Message
Get Message Status
End Message
16
Adding RESTful Quality of Service Support
About the QoS Interface
REST Service Descriptions Available at Run-time
Example QoS Scenario
Configuring QoS for Services Gatekeeper
Using OAuth with QoS
Apply QoS
Apply Template-Based QoS
Modify QoS
Template-Based Modify QoS
Get QoS Status
Remove QoS
Register for QoS Notifications
Unregister for QoS Notifications
QoS Event Notification
List QoS Event Notifications
17
Adding RESTful Presence Support
About the Presence Interface
REST Service Descriptions Available at Run-time
About Presentities and Watchers
Data Common to Operations in RESTful Presence Interface
attributes
presenceAttribute
unionElement
activity
place
privacy
sphere
type
communication
means
typeAndValue
other
Get Open Subscriptions
Get My Watchers
Update Subscription Authorization
Subscribe Presence
Block Subscription
Start Presence Notification
End Presence Notification
Get User Presence
Publish
18
Adding RESTful Device Capabilities Support
About the Device Capabilities Interface
REST Service Descriptions Available at Run-time
Get Capabilities
Get Device Id
19
Adding RESTful Binary Short Messaging Support
About the Binary Short Messaging Interface
REST Service Descriptions Available at Runtime
RESTful Binary SMS Interface Reference
Send Binary Sms
Start Binary Sms Notification
Stop Binary Sms Notification
20
Adding RESTful Session Manager Support
About the Session Manager Interface
REST Service Descriptions Available at Run-time
Get Session
Get Session Remaining Lifetime
Destroy Session
21
Adding RESTful Subscriber Profile Support
About the Subscriber Profile Interface
REST Service Descriptions Available at Run-time
Get
Get Profile
22
Adding RESTful WAP Push Support
About the WAP Push Interface
REST Service Descriptions Available at Run-time
Send Push Message
Part III Creating Applications Using the OneAPI RESTful Interfaces
23
Using the OneAPI RESTful Interfaces
About the OneAPI Facade Architecture
Support for Anonymous Customer References
Components of the RESTful Facade
Supported OneAPI Interfaces
SMS
MMS
Terminal Location
Payment
About Configuring OneAPI Server Functionality
General Format of an Operation
Request-URI and HTTP Methods
General Format of a Request-URI
POST
PUT
GET
DELETE
Headers
Headers for Multipart Messages with Attachments
Status Line
Message Body
Request Body
Response Body
Example of a Request and Response
Authentication and Security
Notifications
Errors and Exceptions
Part IV Creating Applications Using the SOAP Interfaces
24
Using the SOAP Interfaces
Understanding the SOAP Interfaces
Requirements for Using the SOAP-Based Interfaces
Understanding SOAP-Based Authentication
SOAP Header Element for Authentication
Username/Password Authentication (Username Token)
Digital Signatures (X.509 Certificate Token)
Encryption (SAML Token)
Setting Callback Timeout Limits
Understanding How Service Correlation Orchestrates Services
Understanding Parameter Tunneling
Understanding SOAP Payload Attachments
Managing SOAP Headers and Attachments Programmatically
25
Adding a SOAP2SOAP Communication Services
About SOAP2SOAP Communication Services
26
Adding SOAP-Based Quality of Service Support
About the SOAP-Based QoS Interface
SOAP-Based Service Descriptions Available at Run-time
Example Parlay X 4.0 Application-Driven QoS/Diameter Scenario
Configuring Services Gatekeeper to Use the QoS Communication Services
27
About the Supported SOAP Parlay X 2.1 Facades
Parlay X 2.1 Part 2: Third Party Call
Interface: ThirdPartyCall
MakeCall
GetCallInformation
EndCall
CancelCall
Error Codes
Parlay X 2.1 Part 3: Call Notification
Interface: CallDirection
HandleBusy
HandleNotReachable
HandleNoAnswer
HandleCalledNumber
Interface: CallNotification
NotifyBusy
NotifyNotReachable
NotifyNoAnswer
NotifyCalledNumber
Interface: CallNotificationManager
StartCallNotification
StopCallNotification
Interface: CallDirectionManager
StartCallDirectionNotification
StopCallDirectionNotification
Error Codes
Parlay X 2.1 Part 4: Short Messaging
Interface: SendSms
SendSms
SendSmsLogo
SendSmsRingtone
GetSmsDeliveryStatus
Interface: SmsNotification
NotifySmsReception
NotifySmsDeliveryReceipt
Interface: ReceiveSms
GetReceivedSms
Interface: SmsNotificationManager
StartSmsNotification
StopSmsNotification
Sending Custom Message Content for Split and Submit Messaging Requests
Using DifferentContentForSingleAddressInBulk to Customize Split Messages
Error Codes
Parlay X 2.1 Part 5: Multimedia Messaging
Interface: SendMessage
SendMessage
GetMessageDeliveryStatus
Interface: ReceiveMessage
GetReceivedMessages
GetMessageURIs
GetMessage
Interface: MessageNotification
NotifyMessageReception
NotifyMessageDeliveryReceipt
Interface: MessageNotificationManager
StartMessageNotification
StopMessageNotification
Error Codes
Parlay X 2.1 Part 8: Terminal Status
Interface: TerminalStatus
getStatus
getStatusForGroup
Interface: TerminalStatusNotificationManager
startNotification
endNotification
Interface: TerminalNotification
statusNotification
statusError
statusEnd
Error Codes
Parlay X 2.1 Part 9: Terminal Location
Understanding Parlay X 2.1 Terminal Location Precision
Interface: TerminalLocation
GetLocation
GetTerminalDistance
GetLocationForGroup
Interface: TerminalLocationNotificationManager
StartGeographicalNotification
StartPeriodicNotification
EndNotification
Interface: TerminalLocationNotification
LocationNotification
LocationError
LocationEnd
Error Codes
Parlay X 2.1 Part 11: Audio Call
Interface: PlayAudio
EndMessage
GetMessageStatus
PlayAudioMessage
PlayTextMessage
PlayVoiceXmlMessage
Error Codes
Parlay X 2.1 Part 14: Presence
Interface: PresenceConsumer
subscribePresence
getUserPresence
startPresenceNotification
endPresenceNotification
Interface: PresenceNotification
statusChanged
statusEnd
notifySubscription
subscriptionEnded
Interface: PresenceSupplier
publish
getOpenSubscriptions
updateSubscriptionAuthorization
getMyWatchers
getSubscribedAttributes
blockSubscription
Error Codes
About Notifications
General Exceptions
General Error Codes
Code Examples
Example: sendSMS
Example: startSmsNotification
Example: getReceivedSms
Example: sendMessage
Example: getReceivedMessages and getMessage
Example: getLocation
28
About the Supported SOAP Parlay X 3.0 Facades
Parlay X 3.0 Part 6: Payment
Interface: AmountCharging
chargeAmount
refundAmount
chargeSplitAmount
Interface: VolumeCharging
chargeVolume
refundVolume
chargeSplitVolume
getAmount
chargeReservation
releaseReservation
Interface: ReserveAmountCharging
reserveAmount
reserveAdditionalAmount
chargeReservation
releaseReservation
Interface: ReserveVolumeCharging
reserveVolume
reserveAdditionalVolume
getAmountReserveCharging
Parlay X 3.0 Part 13: Address List Management
Interface: GroupManagement
createGroup
queryGroups
deleteGroup
setAccess
queryAccess
General Exceptions
Interface: Group
addMember
addMembers
queryMembers
deleteMember
deleteMembers
addGroupAttribute
queryGroupAttribute
deleteGroupAttribute
addGroupMemberAttribute
queryGroupMemberAttributes
deleteGroupMemberAttribute
Interface: Member
addMemberAttribute
queryMemberAttributes
deleteMemberAttribute
Parlay X 3.0 Part 18: Device Capabilities and Configuration
Interface: DeviceCapabilities
getCapabilities
getDeviceId
General Exceptions
Interface: DeviceCapabilitiesNotificationManager
startNotification
endNotification
Interface: DeviceCapabilitiesNotification
deviceNotification
deviceError
deviceEnd
Interface: DeviceConfiguration
pushConfiguration
getConfigurationList
getConfigurationHistory
General Exceptions
29
About the Supported SOAP Parlay X 4.0 Facades
Parlay X 4.0 Part 17 Application-Driven QoS
Interface: Application-driven QoS
applyQoSFeature
Request Example
Response Parameters
Response Example
getQoSHistory
Request Parameters
Request Example
Response Parameters
Response Example
getQoSStatus
Request Parameters
Request Example
Response Parameters
Response Example
modifyQoSFeature
Request Parameters
Request Example
Response Parameters
Response Example
notifyQoSEvent
Request Parameters
Response Parameters
removeQoSFeature
Request Parameters
Request Example
Response Parameters
Response Example
Interface: ApplicationQoSNotificationManager
startQoSNotification
Request Parameters
Request Example
Response Parameters
stopQoSNotification
Request Parameters
Response Parameters
30
About the Supported SOAP Native Facade
About the Native Interfaces
MM7
Supported MM7 Operations
MM7_submit
MM7_deliver
MM7_cancel
MM7_replace
MM7_delivery_report
MM7_read_reply_report
SMPP
Bind PDUs and Sessions
Error Handling
Supported Operations
bind_transmitter PDU
bind_transmitter_resp PDU
bind_receiver PDU
bind_receiver_resp PDU
bind_transceiver PDU
bind_transceiver_resp PDU
outbind PDU
unbind PDU
unbind_resp PDU
generic_nack PDU
submit_sm PDU
submit_sm_resp PDU
submit_multi PDU
submit_multi_resp PDU
deliver_sm PDU
deliver_sm_resp PDU
data_sm PDU
data_sm_resp PDU
query_sm PDU
query_sm_resp PDU
cancel_sm PDU
cancel_sm_resp PDU
replace_sm PDU
replace_sm_resp PDU
enquire_link PDU
enquire_link_resp PDU
alert_notification PDU
UCP
Error Handling
ERROR_CODE_OPERATION_NOT_ALLOWED
ERROR_CODE_AUTH_FAILURE
ERROR_CODE_OPERATION_NOT_SUPPORTED
ERROR_CODE_SYNTAX_ERROR
Native UCP Operations: Application-Facing Interface
submitSM
openSession
ack
nack
deliverSM
deliveryNotification
Native UCP Operations: Network-Facing Interface
ack
nack
Part V Creating Applications Using Extended Web Service Interfaces
31
Understanding the Extended Web Services Common Definitions
Namespace
XML Schema Datatype Definition
AdditionalProperty Structure
ChargingInformation structure
SimpleReference structure
Fault Definitions
ServiceException
PolicyException
32
Adding Extended Web Service Binary SMSs Support
Understanding the Binary SMS Web Service
Namespaces
Endpoints
Sequence Diagram
Send SMS
Receive SMS
XML Schema data type definition
BinaryMessage structure
BinarySmsMessage structure
Interface: BinarySms
Operation: sendBinarySMS
Interface: BinarySmsNotificationManager
Operation: StartBinarySmsNotification
Operation: StopBinarySmsNotification
Interface: BinarySmsNotification
Operation: NotifyBinarySmsReception
Configuring Automatic Chunking of Binary SMSs
WSDLs
Error Codes
Sample Send Binary SMS
33
Adding WAP Push Extended Web Service Message Support
Understanding the WAP Push Extended Web Service Interface
Namespaces
Endpoint
Sequence Diagram
XML Schema Data Type Definition
PushResponse Structure
ResponseResult structure
ReplaceMethod enumeration
MessageState enumeration
WAP Push Extended Web Service Interface Descriptions
Interface: PushMessage
Operation: sendPushMessage
Interface: PushMessageNotification
Operation: resultNotificationMessage
WSDLs
Sample Send WAP Push Message
34
Adding Subscriber Profile Extended Web Service Support
Understanding the Subscriber Profile Extended Web Service Interface
Namespaces
Endpoint
Address schemes
XML Schema data type definition
PropertyTuple Structure
WAP Push Extended Web Service Interface Descriptions
Interface: SubscriberProfile
Operation: get
Operation: getProfile
WSDLs
Part VI Testing Applications with the Application Test Environment
35
Understanding the Application Test Environment
Understanding the ATE
Understanding the ATE Graphical Interface
Supported Interfaces
Supported Communication Services
36
Testing Applications with the Application Test Environment
Starting the ATE
Starting the ATE on UNIX
Starting the ATE on Windows
Starting the ATE on Mac OS X
Stopping the ATE
Understanding Application Testing
Basic Testing
Test with Virtual Communication Service Configuration Settings
Test with Account Credentials
Test Policy Enforcement
Substituting ATE Endpoints in Your Application
Substituting Credentials in Your Application
Setting Up and Using Map Elements
Adding and Using Phone Elements
Adding a Phone Element
Changing a Phone Element´s Properties
Removing a Phone Element
Sending an SMS from a Phone Element
Sending an MMS from a Phone Element
Sending a Binary SMS from a Phone Element
Sending an Example Message from a Phone Element
Reading a Phone Element´s Received Messages
Deleting a Phone Element´s Messages
Setting a Phone Element´s Status
Reading a Phone Element's Third Party Call Status
Adding and Using Mobile Elements That Are Not Phones
Adding and Using Circular Notification Area Elements
Adding a Circular Notification Area
Changing a Circular Notification Area´s Properties
Removing a Circular Notification Area
Displaying a Custom Map
Configuring, Starting and Stopping the VCS
Starting/Stopping a VCS
VCS MBean Object and Class Names
Configuring VCS Settings
Configuring the Short Messaging VCS
Configuring Offline Notifications for SMS Messages
Configuring the Multimedia Messaging VCS
Configuring Offline Notifications for MMS Messages
Configuring the Terminal Location VCS
Configuring the Terminal Status VCS
Configuring the Payment VCS
Configuring the Third Party Call VCS
Configuring the Binary Short Messaging VCS
Troubleshooting
Simple Mobile-Terminated Test
Simple Mobile-Originated Test
Managing Accounts
Managing Service-Level Agreements
Managing Value Enforcements
Managing Rate Enforcements
Monitoring Payment Accounts
Example Module
37
Customizing the Application Test Environment
Understanding Customizing the ATE
Understanding the ATE Configuration File
Example Startup Configuration File
Configuration Element Order
When Configuration Elements Are Read
Customizing ATE General Characteristics
Customizing a VCS
Showing/Hiding a VCS Module
Changing a VCS Title
Reconfiguring the Default VCS MBean Attributes
Customizing the Account Manager
Showing and Hiding the Account Manager
Creating Accounts
Customizing the SLA Manager
Showing and Hiding the SLA Manager
Creating Policy Enforcements
Showing And Hiding Payment Accounts Panels
A
ATE Endpoints
ATE Endpoints for SOAP-Based Interfaces
Session Manager
Parlay X 2.1 Short Messaging Service/SMPP
Parlay X 2.1 MultiMedia Messaging Service
Parlay X 2.1 Terminal Location
Parlay X 2.1 Terminal Status
Parlay X 3.0 Payment
Parlay X 2.1 Third Party Call
EWS Binary SMS
ATE Endpoints for RESTful Interfaces
Session Manager
Short Messaging
Multimedia Messaging
Terminal Location
Terminal Status
Payment
Third Party Call
Binary SMS
ATE Endpoints for Example Communication Service
B
Virtual Communication Services Exception Codes
Short Messaging Exception Codes
SendSms.sendSms
SendSms.getSmsDeliveryStatus
ReceiveSms.getReceivedSms
SmsNotificationManager.startSmsNotification
Multimedia Messaging Exception Codes
SendMessage.sendMessage
SendMessage.getMessageDeliveryStatus
ReceiveMessage.getMessage
ReceiveMessage.getReceivedMessage
MessageNotificationManager.startMessageNotification
MessageNotitifcationManager.stopMessageNotification
Terminal Location Exception Codes
TerminalLocation.getLocation
TerminalLocation.getTerminalDistance
TerminalLocationNotificationManager.startGeographicalNotification
TerminalLocationNotificationManager.startPeriodicNotification
TerminalLocationNotificationManager.endNotification
Terminal Status Exception Codes
TerminalStatus.getStatus
TerminalStatus.getStatusForGroup
TerminalStatusNotificationManager.startNotification
TerminalStatusNotificationManager.endNotification
Third Party Call Exception Codes
ThirdPartyCallImpl.cancelCallRequest
ThirdPartyCallImpl.endCall
ThirdPartyCallImpl.getCallInformation
ThirdPartyCallImpl.makeCall
ThirdPartyCallImpl.sendMessage
ReceiveMessage.makeCall
Payment Exception Codes
AmountCharging.ChargeAmount
AmountCharging.RefundAmount
AmountCharging.ChargeSplitAmount
VolumeCharging.ChargeVolume
VolumeCharging.RefundVolume
ReserveAmountCharging.ReserveAmount
ReserveAmountCharging.ReserveAdditionalAmount
ReserveAmountCharging.ChargeReservation
ReserveAmountChargingReleaseReservation
VolumeCharging.ChargeSplitVolume
ReserveVolumeCharging.ReserveVolume
ReserveVolumeCharging.ReserveAdditionalVolume
ReserveVolumeCharging.ChargeReservation
ReserveVolumeCharging.ReleaseReservation
Binary SMS Exception Codes
SendBinarySms.sendMessage
BinarySmsNotificationManager.startMessageNotification
Scripting on this page enhances content navigation, but does not change the content in any way.