Skip Headers
Oracle® Communications Services Gatekeeper Communication Service Guide
Release 5.0

Part Number E21362-01
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

4 Parlay X 2.1 Multimedia Messaging/MM7

This chapter describes the Parlay X 2.1 Multimedia Messaging/MM7 communication service in detail.

Overview of the Parlay X 2.1 Multimedia Messaging/MM7 Communication Service

The Parlay X 2.1 Multimedia Messaging/MM7 communication service exposes the Parlay X 2.1 Multimedia Messaging set of application interfaces.

The communication service acts as a Value Added Service (VAS) application connecting to an MMS relay server using the MM7 protocol.

For the exact version of the standards that the communication service supports for the application-facing interfaces and the network protocols, see the appendix on standards and specifications in Concepts Guide.

Using a Multimedia Messaging communication service, an application can:

Requests can flow in two directions. They can be application-initiated or network-triggered,

Processing Application-initiated Requests

After an application has sent a multimedia message to one or more destination addresses, two different types of response can be returned:

Send Receipts

Send receipts are acknowledgements that the network node has received the multimedia message from the application by means of Services Gatekeeper. Although a single multimedia message may be sent to multiple destination addresses, normally only one send receipt is returned to the application. The receipt is returned synchronously in the response message to the sendMessage operation.

Delivery Receipts

Delivery receipts contain the delivery status of the multimedia message. They report whether the multimedia message has actually been delivered to the mobile terminal by the network. There is one delivery receipt per destination address, with one of three possible outcomes:

  • Successful.

  • Unsuccessful: The multimedia message could not be delivered before it expired.

  • Unsupported: Delivery notification for this address is not supported. This can occur if the originating network supports delivery receipts but is unable to acquire the appropriate information for one or more destination addresses. This status is reported for each address for which this is the case.

Because actual delivery of the multimedia message may take several hours, or even days (if, for example, the mobile terminal is turned off at the time the multimedia message is sent), delivery receipts are returned asynchronously. Applications can either choose to have delivery receipts delivered to them automatically by supplying Services Gatekeeper with a callback interface or they can chose to poll Services Gatekeeper.

If the application supplies a callback interface, there are two possible outcomes:

  • Services Gatekeeper sends the delivery receipt and the application receives and acknowledges it.

  • Services Gatekeeper sends the delivery receipt but the application does not acknowledge reception. In this case, Services Gatekeeper stores the delivery receipt in temporary in-memory storage. The application can poll Services Gatekeeper for these receipts. Each stored delivery receipt is time stamped and, after a configurable time period, is removed.

If the application chooses not to supply a callback interface, Services Gatekeeper stores the delivery receipt in temporary in-memory storage. The application can poll Services Gatekeeper for these receipts. Each stored delivery receipt is time stamped and, after a configurable time period, removed.

Processing Network-triggered Requests

Two types of traffic destined for an application can arrive at Services Gatekeeper from the network:

  • Delivery receipts for application-initiated sent multimedia messages (see “Delivery Receipts”)

  • Mobile-originated multimedia messages destined for the application

For an application to receive multimedia messages from the network, it must register its interest in these multimedia messages by setting up a subscription in Services Gatekeeper. A subscription, or notification, is defined by a service activation number, the destination address of the multimedia message. The service activation number may be translated by some mechanism, such as short codes, in the telecom network.

Additional criteria can be tied to the service activation number, such as the start of the first plain/text part in the multimedia message payload or the subject of the multimedia message. For the message to be accepted by Services Gatekeeper, both the service activation number and any additional criteria must match the subscription.

Mobile-originated messages to applications are routed based on the criteria that are specified when the notifications are created. The behavior for matching criteria is as follows:

  • If the subject of the message is not null, the subject is used for criteria matching the specified criteria.

  • If the subject of the message is null, the first word of first text attachment is used for matching the criteria.

  • If the criteria is not null, messages with no subject and no text attachment are not delivered to the application.

  • If the criteria is null, all messages are considered a match and delivered to the application.

Each registered subscription must be unique, and subscription attempts with overlapping criteria are rejected. The application can choose either to poll Services Gatekeeper for received multimedia messages (if polling is enabled) or to include a callback interface when it sets up the original subscription.

If a multimedia message that matches a subscription arrives at Services Gatekeeper from the network and the original subscription includes a callback interface, there are two possible results:

  • Services Gatekeeper sends the notification that the multimedia message has arrived on to the application, and the application receives and acknowledges it. In this case, Services Gatekeeper stores the multimedia message in temporary in-memory storage and acknowledges the reception of the multimedia message to the network. Each stored multimedia message is time stamped and, after a configurable time period, removed. The application can poll Services Gatekeeper for any stored multimedia messages.

  • Services Gatekeeper sends the notification that the multimedia message has arrived on to the application, but the application does not acknowledge reception. Services Gatekeeper does not acknowledge reception to the network. In this case, it is the responsibility of the network node to handle any further processing of the multimedia message.

If a multimedia message that matches a subscription arrives at Services Gatekeeper and the original subscription does not include a callback interface, but polling is available, the multimedia message is stored in temporary in-memory storage and Services Gatekeeper acknowledges the reception of the multimedia message to the network. The application can poll Services Gatekeeper for any such multimedia messages. Each stored multimedia message is time stamped and, after a configurable time period, removed.

If a multimedia message arrives at Services Gatekeeper and no matching subscription is found and polling is not otherwise enabled, Services Gatekeeper does not acknowledge reception to the network. It is the responsibility of the network node to handle any further processing of the multimedia message.

Polling Functionality

The polling capability must be set up in advance.

It is controlled through the combined use of parameters sent in the request and the RequestDeliveryReportFlag attribute. See "Attribute: RequestDeliveryReportFlag" for more information.

Short Code Translation

Messaging-capable networks use short codes and message prefixes to help route traffic and to make access to certain features easier for the end user. Instead of having to use the entire address, users can enter a short code that is mapped to the full address in the network. The Parlay X 2.1 Multimedia Messaging/MM7 communication service supports short codes and message prefixes, which allow the same short code to be mapped to multiple addresses based on the prefix to the enclosed message.

Application Interfaces

For information about the SOAP-based interface for the Parlay X 2.1 MultiMedia Messaging/MM7 communication service, see the discussion of Parlay X 2.1 Interfaces in Application Developer's Guide.

For information about the RESTful Call Notification interface, see the discussion of Multimedia Messaging in RESTful Application Developer's Guide.

The RESTful Service Multimedia Messaging interfaces provide RESTful access to the same functionality as the SOAP-based interfaces. The internal representations are identical, and for the purposes of creating SLAs, reading CDRs, and so on, they are the same

Events and Statistics

The Parlay X 2.1 Multimedia Messaging/MM7 communication service generates Event Data records (EDRs), Charging Data Records (CDRs), alarms, and statistics to assist system administrators and developers in monitoring the service.

For general information, see Appendix A, "Events, Alarms, and Charging."

Event Data Records

Table 4-1 lists the IDs of the EDRs created by the Parlay X 2.1 Multimedia Messaging/MM7 communication service.

Table 4-1 Event Types Generated by Parlay X 2.1 Multimedia Messaging/MM7

EDR ID Description

8100

An MO message has arrived from the network.

8101

An MO delivery receipt has arrived from the network.

8102

The application has requested that a notification be started.

8103

The application has requested that a notification be stopped.

8104

The application has polled for a list of received messages.

8106

The application has polled for actual messages, returned as attachments.


Charging Data Records

Multimedia Messaging/MM7-specific CDRs are generated under the following conditions:

  • After a sendMessage request has entered the network plug-in from the application.

  • After a notifyMessageDeliveryReceipt request has entered the network plug-in from the network.

  • After a notifyMessageReception request has been delivered to the application.

  • When there is an error.

Statistics

Table 4-2 maps methods invoked from either the application or the network to the transaction types collected by the Services Gatekeeper statistics counters.

Table 4-2 Methods and Transaction Types for Parlay X 2.1 Multimedia Messaging/MM7

Method Transaction Type

sendMessage

TRANSACTION_TYPE_MESSAGING_MMS_SEND

deliver

TRANSACTION_TYPE_MESSAGING_MMS_RECEIVE

deliveryReport

TRANSACTION_TYPE_MESSAGING_MMS_RECEIVE


Alarms

For the list of alarms, see Alarm Handling Guide.

Tunneled Parameters for Parlay X 2.1 MM7 Rel 6.8.0

This section lists, by parameter key, the parameters that can be tunneled or defined in the <requestContext> element of an SLA.

ChargedParty

Description

Specifies the party to be charged for a multimedia message submitted by the Value-Added Service Provider (VASP).

If defined, the ChargedParty xparameter is forwarded in the SOAP header in the north-bound interface.

Validated by the plug-in.

Format

String

Value

Valid values: Sender, Recipient, Both, Neither

ChargedPartyCD

Description

Specifies the address of the third party expected to pay for the multimedia message.

If defined, the ChargedPartyID xparameter is forwarded in the SOAP header in the north-bound interface.

Format

String

timeStamp

Description

Specifies date and time that the multimedia message was submitted.

Format

Date/Time

expiryDate

Description

Specifies the desired time for the expiration of the multimedia message.

Format

Date/Time

allowAdaptation

Description

Specifies if VASP allows adaptation of the content.

Set to true to allow adaptation, false to prohibit it.

Format

Boolean

DeliveryCondition

Description

In the event of a single "Delivery Condition", if the condition is met, the multimedia message is delivered to the recipient MMS User Agent. Otherwise the message is discarded.

Validated by the plug-in.

Format

Positive Integer

UAProf

Description

Specifies the UserAgent Name or URL to the UAProfile RDF.

Used for transferring user agent capabilities from R/S to VASP.

If not null, this parameter is forwarded to the application.

Format

String

StatusText

Description

Human-readable description of the numerical code that indicates the general type of an error.

If not null, this parameter is forwarded to the application.

Format

String

Managing Parlay X 2.1 Multimedia Messaging/MM7

This section describes the properties and workflow for Parlay X 2.1 Multimedia Messaging/MM7 plug-in instances.

Properties for Parlay X 2.1 Multimedia Messaging/MM7

Table 4-3 lists the technical specifications for the communication service

Table 4-3 Properties for Multimedia Messaging/MM7

Property Description

Managed object in Administration Console

domain_name > OCSG > server_name > Communication Services > plug-in_instance_id

MBean

Domain=com.bea.wlcp.wlng

Name=wlng_nt

InstanceName=same as the network protocol instance_id assigned when the plug-in instance is created

Type=com.bea.wlcp.wlng.plugin.multimediamessaging.mm7.management.MessagingManagementMBean

Network protocol plug-in service ID

Plugin_px21_multimedia_messaging_mm7

Network protocol plug-in instance ID

The ID is assigned when the plug-in instance is created. See "Managing and Configuring the Plug-in Manager" in System Administrator's Guide.

Supported Address Scheme

tel, mailto, short

Application-facing interfaces

com.bea.wlcp.wlng.px21.plugin.MessageNotificationManagerPlugin

com.bea.wlcp.wlng.px21.plugin.ReceiveMessagePlugin

com.bea.wlcp.wlng.px21.plugin.SendMessagePlugin

com.bea.wlcp.wlng.px21.callback.MessageNotificationCallback

Service type

MultimediaMessaging

Exposes to the service communication layer a Java representation of:

Parlay X 3.0 Part 5: Multimedia Messaging

Interfaces with the network nodes using:

MM7

Deployment artifact:

NT EAR

wlng_nt_multimedia_messaging_px21.ear

Plugin_px21_multimedia_messaging_mm7.jar, px21_multimedia_messaging_service.jar, multimedia_messaging_mm7_rel5mm712.war, and multimedia_messaging_mm7_rel5mm715.war

Deployment artifact:

AT EAR: Normal

wlng_at_multimedia_messaging_px21.ear

px21_multimedia_messaging_callback.jar, px21_multimedia_messaging.war and rest_multimedia_messaging.war

Deployment artifact:

AT EAR: SOAP Only

wlng_at_multimedia_messaging_px21_soap.ear

px21_multimedia_messaging_callback.jar and px21_multimedia_messaging.war


Configuration Workflow for Parlay X 2.1 MultiMedia Messaging/MM7

Following is an outline for configuring the plug-in using the Administration Console or an MBean browser.

  1. Create one or more instances of the plug-in service. See "Managing and Configuring the Plug-in Manager" in System Administrator's Guide. Use the plug-in service ID listed in the "Properties for Parlay X 2.1 Multimedia Messaging/MM7" section.

  2. Select the MBean for the plug-in instance. The MBean display name is the same as the plug-in instance ID given when the plug-in instance was created.

  3. Configure the behavior of the plug-in instance suing the following attributes:

  4. Specify heartbeat behavior. See "Configuring Heartbeats" in System Administrator's Guide.

  5. Set up the routing rules to the plug-in instance. See "Managing and Configuring the Plug-in Manager" in System Administrator's Guide. Use the plug-in instance ID and address schemes listed in the "Properties for Parlay X 2.1 Multimedia Messaging/MM7" section.

  6. Provide the administrator of the MM7 server with the URL to which the MM7 server should deliver mobile originated messages and delivery reports. The default URL is

    http://IP_Address_of_NT_server:port/server:port/context-root/plug-in_instance_ID
    

    If you are using the REL-5-MM7-1-2 XSD, the default context-root is mmm-mm7.

    If you are using the REL-5-MM7-1-5 XSD, the default context-root is mmm-mm7-rel5mm7-1-5.

    If you are using the REL-6-MM7-1-4 XSDm the default context-root is mmm-mm7-rel6mm7-1-4.

  7. If required, create and load a node SLA. For details see “Defining Global Node and Service Provider Group Node SLAs” and “Managing SLAs” in the Accounts and SLAs Guide.

  8. Provision the service provider accounts and application accounts.

Provisioning Workflow for Parlay X 2.1 MultiMedia Messaging/MM7

The following steps outline the provisioning workflow for the communication service.

  1. Use "Operation: enableReceiveMms" to register offline notifications. This specifies that mobile-originated messages should not result in notifications to an application but should instead be stored in Services Gatekeeper for polling.

    Use the following operations to manage the offline registrations:

  2. Use "Operation: startMessageNotification" to register online notifications. This is to manage registrations for mobile-originated messages on behalf of an application.

    Use the following operations to manage the online registrations:

Reference: Attributes and Operations for Parlay X 2.1 MultiMedia Messaging/MM7

This section describes the attributes and operations for configuration and maintenance:

Attribute: DefaultPriority

Scope: Cluster

Unit: Not applicable

Format: String

Specifies the default priority for sent MMS messages. Enter one the following:

  • normal

  • high

  • low

Attribute: HTTPBasicAuthentication

Scope: Cluster

Unit: Not applicable

Format: Boolean

Specifies if HTTP basic authentication will be used for authentication with the MM7 server.

Set to true to use HTTP basic authentication, otherwise false.

If true, "Attribute: HTTPBasicAuthenticationUsername" and "Attribute: HTTPBasicAuthenticationPassword" must be specified.

Attribute: HTTPBasicAuthenticationUsername

Scope: Cluster

Unit: Not applicable

Format: String

The user name to use for HTTP basic authentication towards the MM7 server.

Attribute: HTTPBasicAuthenticationPassword

Scope: Cluster

Unit: Not applicable

Format: String

The password to use for HTTP basic authentication towards the MM7 server.

Attribute: Mm7relayserverAddress

Scope: Cluster

Unit: Not applicable

Format: String

Specifies the address to the MM7 Relay Server. The address is an HTTP url.

Attribute: MM7Version

Scope: Cluster

Unit: Not applicable

Format: String

Specifies the version of the MM7 protocol to be used. Applicable versions are:

  • 5.3.0

  • 6.8.0

Attribute: VasId

Scope: Cluster

Unit: Not applicable

Format: String

Specifies the Value Added Service (VAS) ID to be used for the plug-in instance when connecting to the MMSC.

Attribute: VaspId

Scope: Cluster

Unit: Not applicable

Format: String

Specifies the Value Added Service Provider (VASP) ID to be used for the plug-in instance when connecting to the MMSC.

Attribute: RequestDeliveryReportFlag

Scope: Cluster

Unit: Not applicable

Format: Integer

Specifies how the plug-in instance requests and handles delivery reports for sent messages. Enter one of the following:

  • 0: Delivery notifications are not processed, which means that no polling functionality is available to the applications using the communication service.

  • 1: Delivery notifications are processed if the application provided a receiptRequest in the SendMessage requests or the application provided a tunnelled parameter with ID com.bea.wlcp.wlng.plugin.multimediamessaging.RequestDeliveryReportFlag with the value true in the SOAP header of the SendMessage request.

  • 2: Delivery notifications are always processed.

Attribute: ServiceCode

Scope: Cluster

Unit: Not applicable

Format: String

Specifies the service used for billing purposes.

Attribute: XSDVersion

Scope: Server

Unit: Not applicable

Format: String

The MM7 xsd version that should be used for requests towards the MMSC.

Enter one of the following:

  • REL-5-MM7-1-0 to use an altered version of the REL-5-MM7-1-0.xsd. The altered version allows use of delivery notifications when the MMC-S requires this version of the xsd. This is a requirement when connecting to, among others, Comverse MMSCs.

  • REL-5-MM7-1-2 to use REL-5-MM7-1-2.xsd

  • REL-5-MM7-1-5 to use REL-5-MM7-1-5.xsd

  • REL-6-MM7-1-4 to use REL-6-MM7-1-4.xsd

Operation: enableReceiveMms

Scope: Cluster

Adds an offline notification for applications that will poll for mobile originated messages. Mobile-originated messages matching this notification will not result in a callback to an application. Instead the application has to use the correlator returned by this method and poll for new messages.

Returns the correlator uniquely identifying the new notification.

Signature:

enableReceiveMms(shortcode: String, criteria: String, appInstanceID: String)

Table 4-4 enableReceiveMms Parameters

Parameter Description

shortcode

The destination address or service activation number of the Multmedia message.

Prefixed with the URI, for example tel:

criteria

The first word in the text in the subject field of the MMS message to match. Exact matches only.

appInstanceID

The application instance ID associated with the notification.


Operation: getOfflineNotificationInfo

Scope: Cluster

Displays information about a notification registered offline. See "Operation: enableReceiveMms" for more information.

Signature:

getOfflineNotificationInfo(correlator: String)

Table 4-5 getOfflineNotificationInfo Parameters

Parameter Description

correlator

Correlator identifying the notification.


Operation: getOnlineNotificationInfo

Scope: Cluster

Displays information about a notification registered by an application or by "Operation: startMessageNotification".

Signature:

getOnlineNotificationInfo(correlator: String)

Table 4-6 getOnlineNotificationInfo Parameters

Parameter Description

correlator

Correlator identifying the notification.


Operation: listOfflineNotificationInfo

Scope: Cluster

Displays a list of all notifications registered offline by Operation: enableReceiveMms.

Signature:

listOfflineNotificationInfo()

Operation: listOnlineNotificationInfo

Scope: Cluster

Displays a list of all notifications registered online by the application or by "Operation: startMessageNotification".

Signature:

listOnlineNotificationInfo()

Operation: removeOfflineNotificationInfo

Scope: Cluster

Removes a notification registered offline using "Operation: enableReceiveMms".

Signature:

removeOfflineNotificationInfo(Registration Identifier: String)

Table 4-7 removeOfflineNotificationInfo Parameters

Parameter Description

Registration Identifier

ID of the notification.


Operation: removeOnlineNotificationInfo

Scope: Cluster

Removes a notification registered by an application or on behalf of an application by "Operation: startMessageNotification".

Signature:

removeOnlineNotificationInfo(Registration Identifier: String)

Table 4-8 removeOnlineNotificationInfo Parameters

Parameter Description

Correlator

ID of the notification.


Operation: startMessageNotification

Scope: Cluster

Creates an online notification on behalf of an application. Produces the same results as if an application registered for notifications using the startMessageNotification operation in the Parlay X 2.1 Multimedia Messaging MessageNotificationManager interface.

This operation can be used, for example, if the application is not allowed to register for notifications by restrictions defined in its SLA. Returns a correlator that uniquely identifies the notification.

Signature:

startMessageNotification(endpoint: String, shortcode: String, criteria: String, appInstanceID: String)

Table 4-9 startMessageNotification Parameters

Parameter Description

endpoint

Notification endpoint implemented by the application. This endpoint implements the Parlay X 2.1 Multimedia MessagingMessageNotification interface.

Format: URL

shortcode

Destination address for the MMS message. Must have the prefix tel:; for example, tel:1234

criteria

The first word in the text in the subject field of the MMS message to match. Exact matches only.

appInstanceID

ID of the application instance for the application.