RESTful Application Development Guide

     Previous  Next    Open TOC in new window    View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

WAP Push

 


Operation

The RESTful WAP Push interface allows an application to send a WAP Push message. The content of the message is coded as a PAP message. The message payload must adhere to the following:

See http://www.openmobilealliance.org/tech/affiliates/wap/wapindex.html for links to the specifications.

Note: The actual message is sent as an HTTP attachment. See Attachments for more information.

In the listing below, bold indicates a required attribute, <> a descriptive comment.

Note: An HTML version of this information is at http://host:port/rest/push_message/index.html where host and port depend on the Oracle Communications Services Gatekeeper installation.

Send Push Message

Sends a WAP Push message.

Request

URI

http://host:port/rest/push_message/messages

Request Content-Type

multipart/form-data

Message Part Name

messagePart

Message Part Content-Type

application/json

Message Part Content

{

"destinationAddresses": ["String"],<An array of terminal addresses. The addresses should be formatted according to the Push Proxy Gateway Service Specification (WAP-249-PPGService-20010713-a)>

"pushId": "String",<A unique id provided by the application. Supported types are PLMN and USER>

"replaceMethod": "all|pending-only",<Defines how to replace a previously sent message. Used in conjunction with the replacePushId parameter. Ignored if replacePushId is NULL.>

"requesterID": "String",<The application ID as given by the operator>

"serviceCode": "String",<A code for charging purposes>

"additionalProperties": [{<Name-value pairs. Used to add additional properties. Supported types include pap.priority, pap.delivery-method, pap.network, pap.network-required, pap.bearer, pap.bearer-required.>

"name": "String",<The property’s name>

"value": "String"<The value associated with the property>

}],

"deliverAfterTimestamp": "Calendar",<Specifies the date and time in ISO 8601 extended format after which the content should be delivered to the wireless device. If the network node does not support this parameter, the message is be rejected.>

"deliverBeforeTimestamp": "Calendar",<Defines the date and time in ISO 8601 extended format by which the content must be delivered to the end-user terminal .If the network node does not support this parameter, the message is rejected.>

"progressNotesRequested": "Boolean",<If true, the application wants to receive progress notes at the address specified by resultlNotificationEndpoint>

"replacePushId": "String",<The PushId of the message that is to be replaced. If this is set to NULL, the message is treated as a new message. If this is set to an ID, message replacement will occur for all currently pending messages. Already delivered messages cannot be cancelled, and therefore cannot be replaced>

"resultNotificationEndpoint": "URI",<The endpoint for notifications. This should be a channel name that begins: “/bayeux/${appInstanceId}”. If this is set, result notifications are requested. If the application does not want notifications, this must be NULL>

"sourceReference": "String"<The name of the service provider>

}

HTTP Method

POST

Response

Response Content-Type

application/json

Body

{"result": {

"pushId": "String",<A unique id provided by the application>

"result": {

"code": "String",<An outcome code generated by the network node. See Table 13-1 for more information>

"description": "String"<A textual description>

},

"additionalProperties": [{

"name": "String",<One of a set of supported additional properties: pap.stage|pap.note|pap.time>

"value": "String"<The value for the additional property>

}],

"replyTime": "Calendar",<The date and time in ISO 8601 extended format >

"senderAddress": "String",<The sender’s address>

"senderName": "String"<The sender’s name>

}}

Table 13-1 Outcome codes
Code
Description
1000
OK
1001
Accepted for processing
2000
Bad request
2001
Forbidden
2002
Address error
2003
Address not found
2004
Push ID not found
2005
Capabilities mismatch
2006
Required capabilities not supported
2007
Duplicate push ID
2008
Cancellation not possible
3000
Internal server error
3001
Not implemented
3002
Version not supported
3003
Not possible
3004
Capability matching not possible
3005
Multiple addresses not supported
3006
Transformation failure
3007
Specified delivery method not possible
3008
Capabilities not available
3009
Required network not available
3010
Required bearer not available
3011
Replacement not supported
4000
Service failure
4001
Service unavailable

Error Response

Service Exception

Policy Exception

 


Notifications

The content of notifications delivered to the designated endpoint.

Result Notification Message

{"resultNotificationMessage": {

"address": "String",<The terminal address for this message>

"code": "String",<Final status of the message>

"messageState": "rejected|pending|delivered|undeliverable|expired|aborted|timeout|cancelled|unknown",<State of the message>

"pushId": "String",<Defined in the intial request. Used for correlation>

"additionalProperties": [{<Name-value pairs. Used to add additional properties. Supported types include pap.priority, pap.delivery-method, pap.network, pap.network-required, pap.bearer, pap.bearer-required. Dependent on network node.>

"name": "String",<The property’s name>

"value": "String"<The value associated with the property>

}],

"description": "String",<A description of the notification, provided by the network. May not be provided.>

"eventTime": "Calendar",<The date and time the message reached the destination terminal in ISO 8601 extended format >

"receivedTime": "Calendar",<The date and time the message was received at the network node in ISO 8601 extended format >

"senderAddress": "String",<Address of the network node. May not be present>

"senderName": "String"<Name of the network node. May not be present>

}}

 


Errors

The content of possible error messages.

Service Exception

{"error":{

"type":" com.bea.wlcp.wlng.schema.ews.common.ServiceException"

"message":"String"

}}

Policy Exception

{"error":{

"type":" com.bea.wlcp.wlng.schema.ews.common.PolicyException"

"message":"String"

}}


  Back to Top       Previous  Next