Experts in SMS and MMS Technology. NCLs Provato is an SMS/MMS Gateway supporting  WAP Push, EMS, MMS, SMS, Nokia Smart Messaging, SMPP, CIMD, UCP, MM7, M20, TC35 NCL Technologies Ltd
Provato - SMS MMS Gateway
Mobile Messaging in J2EE & .NET

SwiftNote - Java SMS Toolkit

ie.ncl.sms.nbs
Class SmartMessage

java.lang.Object
  extended by ie.ncl.msg.Message
      extended by ie.ncl.msg.BinaryMessage
          extended by ie.ncl.sms.nbs.SmartMessage
All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
EmailNotification, IconMessage, LogoMessage, MenuMessage, PictureMessage, RingToneMessage, VCalendarMessage, VCardMessage

public class SmartMessage
extends BinaryMessage

A Smart message adds the concept of a source and destination port. The source not usually used. The destination identifies different 'application listeners' that listen for items such as calendar entries, business cards, ring tones etc.

See Also:
Serialized Form

Field Summary
static char CR
           
static char LF
           
static int PORT_COMPACT_BUSINESS_CARD
           
static int PORT_DYNAMIC_MENU_CONTROL_PROTOCOL
           
static int PORT_ICON_READER
           
static int PORT_INTERNET_ACCESS_CONFIGURATION
           
static int PORT_JAVA
           
static int PORT_OPERATOR_LOGO
           
static int PORT_PICTURE_MESSAGE
           
static int PORT_RING_TONE
           
static int PORT_SERVICE_CARD
           
static int PORT_SIMPLE_EMAIL_NOTIFICATION
           
static int PORT_TTML
           
static int PORT_UP_BROWSER
           
static int PORT_UP_LINK
           
static int PORT_UP_MAIL
           
static int PORT_VCALENDAR
           
static int PORT_VCARD
           
static int PORT_WINK
           
static int TRANSFER_MODE_BINARY
          Used to indicate that the preferred mode of transport is via NBS binary messages.
static int TRANSFER_MODE_TEXT
          Used to indicate that the preferred mode of transport is via NBS text message.
 
Constructor Summary
SmartMessage(Address tel, byte[] bytes, int destPort)
          Simple smart message message specifying the bytes and destination port.
SmartMessage(Address tel, byte[] bytes, int srcPort, int destPort)
          Simple smart message message specifying the bytes and destination port and source port.
SmartMessage(Address tel, byte[] bytes, int srcPort, int destPort, boolean portNumberInEachFragment)
          Simple smart message message specifying the bytes and destination port and source port.
SmartMessage(Address tel, java.lang.String text, int destPort)
          Simple smart message message specifying the text and destination port.
 
Method Summary
 BinaryMessage[] encodeToSms(int sequenceNumber)
           
 int getDestinationPort()
          Get the destination port number.
 int getMaximumFragmentLength()
           
 java.lang.String getNbsHeader()
          A different NBS header may be used by some smart messages for backward compatability.
 int getPreferredTransferMode()
          Get the preferred transfer mode ie NBS Text mode or NBS binary mode.
 int getSourcePort()
          Get the source port number.
 boolean isForCdmaNetwork()
           
 boolean isMaximumFragmentLengthSet()
           
 boolean isPortNumberInEachFragment()
           
 void setForCdmaNetwork(boolean forCdmaNetwork)
           
 void setMaximumFragmentLength(int maximumFragmentLength)
           
 void setPreferredTransferMode(int mode)
          Get the preferred transfer mode ie NBS Text mode or NBS binary mode.
 
Methods inherited from class ie.ncl.msg.BinaryMessage
getBody, getBytes, setBody, setBytes, size
 
Methods inherited from class ie.ncl.msg.Message
getAttribute, getAttributes, getCorrelationID, getDestination, getID, getSource, getType, putAttribute, removeAttribute, setAttributes, setCorrelationID, setDestination, setID, setSource, setType
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LF

public static final char LF
See Also:
Constant Field Values

CR

public static final char CR
See Also:
Constant Field Values

PORT_VCARD

public static final int PORT_VCARD
See Also:
Constant Field Values

PORT_VCALENDAR

public static final int PORT_VCALENDAR
See Also:
Constant Field Values

PORT_COMPACT_BUSINESS_CARD

public static final int PORT_COMPACT_BUSINESS_CARD
See Also:
Constant Field Values

PORT_SERVICE_CARD

public static final int PORT_SERVICE_CARD
See Also:
Constant Field Values

PORT_INTERNET_ACCESS_CONFIGURATION

public static final int PORT_INTERNET_ACCESS_CONFIGURATION
See Also:
Constant Field Values

PORT_RING_TONE

public static final int PORT_RING_TONE
See Also:
Constant Field Values

PORT_OPERATOR_LOGO

public static final int PORT_OPERATOR_LOGO
See Also:
Constant Field Values

PORT_ICON_READER

public static final int PORT_ICON_READER
See Also:
Constant Field Values

PORT_DYNAMIC_MENU_CONTROL_PROTOCOL

public static final int PORT_DYNAMIC_MENU_CONTROL_PROTOCOL
See Also:
Constant Field Values

PORT_SIMPLE_EMAIL_NOTIFICATION

public static final int PORT_SIMPLE_EMAIL_NOTIFICATION
See Also:
Constant Field Values

PORT_PICTURE_MESSAGE

public static final int PORT_PICTURE_MESSAGE
See Also:
Constant Field Values

PORT_TTML

public static final int PORT_TTML
See Also:
Constant Field Values

PORT_WINK

public static final int PORT_WINK
See Also:
Constant Field Values

PORT_JAVA

public static final int PORT_JAVA
See Also:
Constant Field Values

PORT_UP_LINK

public static final int PORT_UP_LINK
See Also:
Constant Field Values

PORT_UP_MAIL

public static final int PORT_UP_MAIL
See Also:
Constant Field Values

PORT_UP_BROWSER

public static final int PORT_UP_BROWSER
See Also:
Constant Field Values

TRANSFER_MODE_TEXT

public static final int TRANSFER_MODE_TEXT
Used to indicate that the preferred mode of transport is via NBS text message.

See Also:
getPreferredTransferMode(), setPreferredTransferMode(int), Constant Field Values

TRANSFER_MODE_BINARY

public static final int TRANSFER_MODE_BINARY
Used to indicate that the preferred mode of transport is via NBS binary messages.

See Also:
getPreferredTransferMode(), setPreferredTransferMode(int), Constant Field Values
Constructor Detail

SmartMessage

public SmartMessage(Address tel,
                    byte[] bytes,
                    int srcPort,
                    int destPort,
                    boolean portNumberInEachFragment)
Simple smart message message specifying the bytes and destination port and source port.


SmartMessage

public SmartMessage(Address tel,
                    byte[] bytes,
                    int srcPort,
                    int destPort)
Simple smart message message specifying the bytes and destination port and source port.


SmartMessage

public SmartMessage(Address tel,
                    byte[] bytes,
                    int destPort)
Simple smart message message specifying the bytes and destination port.


SmartMessage

public SmartMessage(Address tel,
                    java.lang.String text,
                    int destPort)
Simple smart message message specifying the text and destination port.

Method Detail

getSourcePort

public int getSourcePort()
Get the source port number.


getDestinationPort

public int getDestinationPort()
Get the destination port number.


getPreferredTransferMode

public int getPreferredTransferMode()
Get the preferred transfer mode ie NBS Text mode or NBS binary mode. Subclasses should overwrite this method and return one of the values below to specify their own default.

See Also:
TRANSFER_MODE_TEXT, TRANSFER_MODE_BINARY, setPreferredTransferMode(int)

setPreferredTransferMode

public void setPreferredTransferMode(int mode)
Get the preferred transfer mode ie NBS Text mode or NBS binary mode. Subclasses should overwrite this method and return one of the values below to specify their own default.

See Also:
TRANSFER_MODE_TEXT, TRANSFER_MODE_BINARY, getPreferredTransferMode()

getNbsHeader

public java.lang.String getNbsHeader()
A different NBS header may be used by some smart messages for backward compatability. Subclasses should overwrite this method to indicate the use of a different header by returning the non-null string header.


encodeToSms

public BinaryMessage[] encodeToSms(int sequenceNumber)
                            throws ie.ncl.net.pdu.EncoderException,
                                   MessageException
Throws:
ie.ncl.net.pdu.EncoderException
MessageException

isPortNumberInEachFragment

public boolean isPortNumberInEachFragment()

getMaximumFragmentLength

public int getMaximumFragmentLength()

isMaximumFragmentLengthSet

public boolean isMaximumFragmentLengthSet()

setMaximumFragmentLength

public void setMaximumFragmentLength(int maximumFragmentLength)

isForCdmaNetwork

public boolean isForCdmaNetwork()

setForCdmaNetwork

public void setForCdmaNetwork(boolean forCdmaNetwork)

Experts in SMS and MMS Technology. NCLs Provato is an SMS/MMS Gateway supporting  WAP Push, EMS, MMS, SMS, Nokia Smart Messaging, SMPP, CIMD, UCP, MM7, M20, TC35 NCL Technologies Ltd
Provato - SMS MMS Gateway
Mobile Messaging in J2EE & .NET

SwiftNote - Java SMS Toolkit