com.ibm.soa.parlayx21.multimedia_messaging
Class SendMessageProxy

java.lang.Object
  extended by com.ibm.soa.parlayx21.multimedia_messaging.SendMessageProxy
All Implemented Interfaces:
SendMessage, java.rmi.Remote

public class SendMessageProxy
extends java.lang.Object
implements SendMessage


Constructor Summary
SendMessageProxy()
           
 
Method Summary
 java.lang.String getEndpoint()
           
 DeliveryInformation[] getMessageDeliveryStatus(java.lang.String requestIdentifier)
          This is a poll method used by the application to retrieve delivery status for each message sent as a result of a previous sendMessage message invocation.
 SendMessage getSendMessage()
           
 java.lang.String sendMessage(java.net.URI[] addresses, java.lang.String senderAddress, java.lang.String subject, MessagePriority priority, ChargingInformation charging, SimpleReference receiptRequest)
          Request to send a Message to a set of destination addresses, returning a requestIdentifier to identify the message.
 void setEndpoint(java.lang.String endpoint)
           
 void useJNDI(boolean useJNDI)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SendMessageProxy

public SendMessageProxy()
Method Detail

useJNDI

public void useJNDI(boolean useJNDI)

getEndpoint

public java.lang.String getEndpoint()

setEndpoint

public void setEndpoint(java.lang.String endpoint)

getSendMessage

public SendMessage getSendMessage()

sendMessage

public java.lang.String sendMessage(java.net.URI[] addresses,
                                    java.lang.String senderAddress,
                                    java.lang.String subject,
                                    MessagePriority priority,
                                    ChargingInformation charging,
                                    SimpleReference receiptRequest)
                             throws java.rmi.RemoteException,
                                    PolicyException,
                                    ServiceException
Description copied from interface: SendMessage

Request to send a Message to a set of destination addresses, returning a requestIdentifier to identify the message. The requestIdentifier can subsequently be used by the application to poll for the message status, for example, using getMessageDeliveryStatus to see if the message has been delivered or not. The content is sent as one or more attachments as specified in SOAP Messages with Attachments [3].

addresses may include group URIs as defined in the Address List Management specification. If groups are not supported, a fault (POL0006) will be returned to the application.

Optionally the application can also indicate the sender address (senderAddress), for example, the string that is displayed on the user's terminal as the originator of the message, the message priority, the message subject, the charging information and a receiptRequest. The receiptRequest which is a SimpleReference structure indicates the application endpoint, interface used for notification of delivery receipt and a correlator that uniquely identifies the sending request. By invoking this operation with the optional receiptRequest part the application requires to receive the notification of the status of the message delivery.

If the notification mechanism is not supported by a network a fault (SVC0283) will be returned to the application and the message will not be sent to the addresses specified. Notification to the application is done by invoking the notifyMessageDeliveryReceipt operation at the endpoint specified in receiptRequest.

The correlator provided in the receiptRequest must be unique for this Web Service and application at the time the notification is initiated, otherwise a ServiceException (SVC0005) will be returned to the application.

Referenced faults

ServiceException from ES 202 391-1 [2]:
  * SVC0001 - Service error.
  * SVC0002 - Invalid input value.
  * SVC0004 - No valid addresses.
  * SVC0006 - Invalid group.
  * SVC0283 - Delivery Receipt Notification not supported

PolicyException from ES 202 391-1 [2]:
  * POL0001 - Policy error.
  * POL0006 - Groups not allowed.
  * POL0007 - Nested groups not allowed.
  * POL0008 - Charging not supported.

Specified by:
sendMessage in interface SendMessage
Parameters:
addresses - xsd:anyURI [0..unbounded]

Destination addresses for the Message.

senderAddress - xsd:string

Message sender address. This parameter is not allowed for all 3rd party providers. Parlay X server needs to handle this according to a SLA for the specific application and its use can therefore result in a PolicyException.

subject - xsd:string

Message subject. If mapped to SMS this parameter will be used as the senderAddress, even if a separate senderAddress is provided. priority

charging - common:ChargingInformation

Charging to apply to this message.

receiptRequest - common:SimpleReference

It defines the application endpoint, interfaceName and correlator that will be used to notify the application when the message has been delivered to a terminal or if delivery is impossible.

NOTE: The input message contains one or more attachments, with appropriate content as defined by SOAP Messages with Attachments [3].

Returns:

Priority of the message. If not present, the network will assign a priority based on an operator policy.

Throws:
java.rmi.RemoteException
PolicyException
ServiceException

getMessageDeliveryStatus

public DeliveryInformation[] getMessageDeliveryStatus(java.lang.String requestIdentifier)
                                               throws java.rmi.RemoteException,
                                                      PolicyException,
                                                      ServiceException
Description copied from interface: SendMessage

This is a poll method used by the application to retrieve delivery status for each message sent as a result of a previous sendMessage message invocation. The requestIdentifier parameter identifies this previous message invocation.

Referenced faults

ServiceException from ES 202 391-1 [2]:
  * SVC0001 - Service error.
  * SVC0002 - Invalid input value.

PolicyException from ES 202 391-1 [2]:
  * POL0001 - Policy error.

Specified by:
getMessageDeliveryStatus in interface SendMessage
Parameters:
requestIdentifier - xsd:string

Identifier related to the delivery status request.

Returns:
result DeliveryInformation [0..unbounded]

It is an array of status of the messages that were previously sent. Each array element represents a sent message: for example, its destination address and its delivery status.

Throws:
java.rmi.RemoteException
PolicyException
ServiceException


Copyright © 2003 IBM Corp. All Rights Reserved.