Tag.java
package fr.sii.ogham.testing.sms.simulator.bean;
/**
* Optional Parameter tags
*
* @author Aurélien Baudet
*
*/
public enum Tag {
/**
* <p>
* The payload_type parameter defines the higher layer PDU type contained in
* the message payload.
* </p>
* <table><caption>payload_type</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>payload_type</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>
* <p>
* 0 - Default. In the case of a WAP application, the default higher layer
* message type is a WDP message. See [WDP] for details.
* </p>
* <p>
* 1 - WCMP message. Wireless Control Message Protocol formatted data. See
* [WCMP] for details.
* </p>
* <p>
* values - 2 to 255 are reserved
* </p>
* </td>
* </tr>
* </tbody>
* </table>
*/
PAYLOAD_TYPE("payload_type", 0x0019),
/**
* <p>
* The privacy_indicator indicates the privacy level of the message.
* </p>
*/
PRIVACY_INDICATOR("privacy_indicator", 0x0201),
/**
* <p>
* A reference assigned by the originating SME to the short message.
* </p>
* <table><caption>user_message_reference</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>user_message_reference</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>2</td>
* <td>Integer</td>
* <td>All values allowed.</td>
* </tr>
* </tbody>
* </table>
*/
USER_MESSAGE_REFERENCE("user_message_reference", 0x0204),
/**
* <p>
* A response code set by the user in a User Acknowledgement/Reply message.
* The response codes are application specific.
* </p>
* <table><caption>user_response_code</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>user_response_code</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0 to 255 (IS-95 CDMA)<br>
* 0 to 15 (CMT-136 TDMA)</td>
* </tr>
* </tbody>
* </table>
*/
USER_RESPONSE_CODE("user_response_code", 0x0205),
/**
* <p>
* The source_port parameter is used to indicate the application port number
* associated with the source address of the message.
* </p>
* <table><caption>source_port</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>source_port</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>2</td>
* <td>Integer</td>
* <td>All values allowed.</td>
* </tr>
* </tbody>
* </table>
*/
SOURCE_PORT("source_port", 0x020A),
/**
* <p>
* The destination_port parameter is used to indicate the application port
* number associated with the destination address of the message.
* </p>
* <table><caption>destination_port</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>destination_port</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>2</td>
* <td>Integer</td>
* <td>All values allowed.</td>
* </tr>
* </tbody>
* </table>
*/
DESTINATION_PORT("destination_port", 0x020B),
/**
* <p>
* The sar_msg_ref_num parameter is used to indicate the reference number
* for a particular concatenated short message.
* </p>
* <table><caption>sar_msg_ref_num</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>sar_msg_ref_num</td>
*
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>2</td>
* <td>Integer</td>
* <td>This parameter shall contain a originator generated reference number
* so that a segmented short message may be reassembled into a single
* original message. This allows the parallel transmission of several
* segmented messages. This reference number shall remain constant for every
* segment which makes up a particular concatenated short message. When
* present, the PDU must also contain the sar_total_segments and
* sar_segment_seqnum parameters. Otherwise this parameter shall be
* ignored.</td>
* </tr>
* </tbody>
* </table>
*/
SAR_MSG_REF_NUM("sar_msg_ref_num", 0x020C),
/**
* <p>
* The language_indicator parameter is used to indicate the language of the
* short message.
* </p>
* <table><caption>lang_indicator</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>language_indicator</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0 = unspecified (default)<br>
* 1 = english <br>
* 2 = french <br>
* 3 = spanish <br>
* 4 = german <br>
* 5 = Portuguese <br>
* refer to [CMT-136] for other values</td>
* </tr>
* </tbody>
* </table>
*/
LANGUAGE_INDICATOR("lang_indicator", 0x020D),
/**
* <p>
* The sar_total_segments parameter is used to indicate the total number of
* short messages within the concatenated short message.
* </p>
* <table><caption>sar_total_segments</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>sar_total_segments</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>This parameter shall contain a value in the range 1 to 255 indicating
* the total number of fragments within the concatenated short message. The
* value shall start at 1 and remain constant for every short message which
* makes up the concatenated short message. When present, the PDU must also
* contain the sar_msg_ref_num and sar_segment_seqnum parameters. Otherwise
* this parameter shall be ignored.</td>
* </tr>
* </tbody>
* </table>
*/
SAR_TOTAL_SEGMENTS("sar_total_segments", 0x020E),
/**
* <p>
* The sar_segment_seqnum parameter is used to indicate the sequence number
* of a particular short message within the concatenated short message.
* </p>
* <table><caption>sar_segment_seqnum</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>ar_segment_seqnum</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>This octet shall contain a value in the range 1 to 255 indicating the
* sequence number of a particular message within the concatenated short
* message. The value shall start at 1 and increment by one for every
* message sent within the concatenated short message. When present, the PDU
* must also contain the sar_total_segments and sar_msg_ref_num parameters.
* Otherwise this parameter shall be ignored.</td>
* </tr>
* </tbody>
* </table>
*/
SAR_SEGMENT_SEQNUM("sar_segment_seqnum", 0x020F),
/**
* <p>
* The source_subaddress parameter specifies a subaddress associated with
* the originator of the message.
* </p>
*/
SOURCE_SUBADDRESS("source_subaddress", 0x0202),
/**
* <p>
* The dest_subaddress parameter specifies a subaddress associated with the
* destination of the message.
* </p>
* <table><caption>dest_subaddress</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>dest_subaddress</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>Var 2 - 23</td>
* <td>Octet String</td>
* <td>See 5.3.2.15 for parameter encoding.</td>
* </tr>
* </tbody>
* </table>
*/
DEST_SUBADDRESS("dest_subaddress", 0x0203),
/**
* <p>
* The callback_num parameter associates a call back number with the
* message. In TDMA networks, it is possible to send and receive multiple
* callback numbers to/from TDMA mobile stations.
* </p>
* <table><caption>callback_num</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td> </td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>Var 4 - 19</td>
* <td>Octet String</td>
* <td>
* <p>
* <b>Bits 7.............0</b>
* </p>
* <p>
* 0000000D (octet 1)
* </p>
* <p>
* 00000TTT (octet 2)
* </p>
* <p>
* 0000NNNN (octet 3)
* </p>
* <p>
* XXXXXXXX (octet 4)
* </p>
* <p>
* :
* </p>
* <p>
* :
* </p>
* <p>
* XXXXXXXX (octet N)
* </p>
* <p>
* The originating SME can set a Call Back Number for the receiving Mobile
* Station. The first octet contains the Digit Mode Indicator. Bit D=0
* indicates that the Call Back Number is sent to the mobile as DTMF digits
* encoded in TBCD. Bit D=1 indicates that the Call Back Number is sent to
* the mobile encoded as ASCII digits. The 2nd octet contains the Type of
* Number (TON). Encoded as in section 5.2.5.
* </p>
* <p>
* The third octet contains the Numbering Plan Indicator (NPI). Encoded as
* specified in section 5.2.6
* </p>
* <p>
* The remaining octets contain the Call Back Number digits encoded as ASCII
* characters
* </p>
* </td>
* </tr>
* </tbody>
* </table>
*/
CALLBACK_NUM("callback_num", 0x0381),
/**
* <p>
* The message_payload parameter contains the user data.
* </p>
* <table><caption>message_payload</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>message_payload</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Set to length of user data</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>Variable</td>
* <td>Octet String</td>
* <td>Short message user data. The maximum size is SMSC and network
* implementation specific.</td>
* </tr>
* </tbody>
* </table>
*/
MESSAGE_PAYLOAD("message_payload", 0x0424),
/**
* <p>
* The sc_interface_version parameter is used to indicate the SMPP version
* supported by the SMSC. It is returned in the bind response PDUs.
* </p>
* <table><caption>sc_interface_version</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>sc_interface_version</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>values as per 5.2.4. (interface_version)</td>
* </tr>
* </tbody>
* </table>
*/
SC_INTERFACE_VERSION("sc_interface_version", 0x0210),
/**
* <p>
* The display_time parameter is used to associate a display time of the
* short message on the MS.
* </p>
* <table><caption>display_time</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>display_time</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0 = Temporary<br>
* 1 = Default (default)<br>
* 2 = Invoke<br>
* values 3 to 255 are reserved</td>
* </tr>
* </tbody>
* </table>
*/
DISPLAY_TIME("display_time", 0x1201),
/**
* <p>
* The ms_validity parameter is used to provide an MS with validity
* information associated with the received short message.
* </p>
* <table><caption>ms_validity</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>ms_validity</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0 = Store Indefinitely (default)<br>
* 1 = Power Down <br>
* 2 = SID based registration area <br>
* 3 = Display Only <br>
* values 4 to 255 are reserved</td>
* </tr>
* </tbody>
* </table>
*/
MS_VALIDITY("ms_validity", 0x1204),
/**
* <p>
* The dpf_result parameter is used in the data_sm_resp PDU to indicate if
* delivery pending flag (DPF) was set for a delivery failure of the short
* message..
* </p>
* <p>
* If the dpf_result parameter is not included in the data_sm_resp PDU, the
* ESME should assume that DPF is not set.
* </p>
* <p>
* Currently this parameter is only applicable for the Transaction message
* mode.
* </p>
* <table><caption>dpf_result</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>dpf_result</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0 = DPF not set<br>
* 1 = DPF set<br>
* values 2 to 255 are reserved</td>
* </tr>
* </tbody>
* </table>
*/
DPF_RESULT("dpf_result", 0x0420),
/**
* <p>
* An ESME may use the set_dpf parameter to request the setting of a
* delivery pending flag (DPF) for certain delivery failure scenarios, such
* as
* </p>
* <ul>
* <li>MS is unavailable for message delivery (as indicated by the HLR)</li>
* </ul>
* <p>
* The SMSC should respond to such a request with an alert_notification PDU
* when it detects that the destination MS has become available.
* </p>
* <p>
* The delivery failure scenarios under which DPF is set is SMSC
* implementation and network implementation specific. If a delivery pending
* flag is set by the SMSC or network (e.g. HLR), then the SMSC should
* indicate this to the ESME in the data_sm_resp message via the dpf_result
* parameter.
* </p>
* <table><caption>set_dpf</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>set_dpf</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0 = Setting of DPF for delivery failure to MS not requested<br>
* 1 = Setting of DPF for delivery failure requested (default) <br>
* values 2 to 255 are reserved</td>
* </tr>
* </tbody>
* </table>
*/
SET_DPF("set_dpf", 0x0421),
/**
* <p>
* The ms_availability_status parameter is used in the alert_notification
* operation to indicate the availability state of the MS to the ESME.
* </p>
* <p>
* If the SMSC does not include the parameter in the alert_notification
* operation, the ESME should assume that the MS is in an "available" state.
* </p>
* <table><caption>ms_availability_status</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>ms_availability_status</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0 = Available (Default)<br>
* 1 = Denied (e.g. suspended, no SMS capability, etc.)<br>
* 2 = Unavailable values 3 to 255 are reserved</td>
* </tr>
* </tbody>
* </table>
*/
MS_AVAILABILITY_STATUS("ms_availability_status", 0x0422),
/**
* <p>
* The network_error_code parameter is used to indicate the actual network
* error code for a delivery failure. The network error code is technology
* specific.
* </p>
* <table><caption>network_error_code</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>network_error_code</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>3</td>
* <td>Octet String</td>
* <td>
* <p>
* The first octet indicates the network type. The following values are
* defined:
* </p>
* <ul>
* <li>1 = ANSI-136</li>
* <li>2 = IS-95</li>
* <li>3 = GSM</li>
* <li>4 = Reserved</li>
* <li>All other values reserved.</li>
* </ul>
* <p>
* The remaining two octets specify the actual network error code
* appropriate to the network type.
* </p>
* </td>
* </tr>
* </tbody>
* </table>
*/
NETWORK_ERROR_CODE("network_error_code", 0x0423),
/**
* <p>
* The delivery_failure_reason parameter is used in the data_sm_resp
* operation to indicate the outcome of the message delivery attempt (only
* applicable for transaction message mode). If a delivery failure due to a
* network error is indicated, the ESME may check the network_error_code
* parameter (if present) for the actual network error code.
* </p>
* <p>
* The delivery_failure_reason parameter is not included if the delivery
* attempt was successful.
* </p>
* <table><caption>delivery_failure_reason</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>delivery_failure_reason</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0 = Destination unavailable<br>
* 1 = Destination Address Invalid (e.g.<br>
* suspended, no SMS capability, etc.)<br>
* 2 = Permanent network error<br>
* 3 = Temporary network error<br>
* values 4 to are 255 reserved</td>
* </tr>
* </tbody>
* </table>
*/
DELIVERY_FAILURE_REASON("delivery_failure_reason", 0x0425),
/**
* <p>
* The more_messages_to_send parameter is used by the ESME in the submit_sm
* and data_sm operations to indicate to the SMSC that there are further
* messages for the same destination SME. The SMSC may use this setting for
* network resource optimization.
* </p>
* <table><caption>more_messages_to_send</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>more_messages_to_send</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td> </td>
* <td>0 = No more messages to follow; 1 = More messages to follow (default)
* values 2 to 255 are reserved</td>
* </tr>
* </tbody>
* </table>
*/
MORE_MESSAGES_TO_SEND("more_messages_to_send", 0x0426),
/**
* <p>
* The message_state optional parameter is used by the SMSC in the
* deliver_sm and data_sm PDUs to indicate to the ESME the final message
* state for an SMSC Delivery Receipt.
* </p>
* <table><caption>message_state</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>message_state</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td> </td>
* <td>Values as per section 5.2.28</td>
* </tr>
* </tbody>
* </table>
*/
MESSAGE_STATE("message_state", 0x0427),
/**
* <table><caption>callback_num_pres_ind</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>callback_num_pres_ind</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Bit mask</td>
* <td>
* <p>
* <b> Bits 7............0<br>
* 0000ppss </b>
* </p>
* <p>
* This parameter controls the presentation indication and screening of the
* CallBackNumber at the mobile station.If present, the callback_num
* parameter must also be present.
* </p>
* <p>
* The Presentation Indicator is encoded in bits 2 and 3 as follows:
* </p>
* <p>
* 00 = Presentation Allowed
* </p>
* <p>
* 01 = Presentation Restricted
* </p>
* <p>
* 10 = Number Not Available
* </p>
* <p>
* 11 = Reserved
* </p>
*
* <p>
* The Screening Indicator is encoded in bits 0 and 1 as follows:
* </p>
* <p>
* 00 = User provided, not screened
* </p>
* <p>
* 01 = User provided, verified and passed
* </p>
* <p>
* 10 = User provided, verified and failed
* </p>
* <p>
* 11 = Network Provided.
* </p>
* </td>
* </tr>
* </tbody>
* </table>
*/
CALLBACK_NUM_PRES_IND("callback_num_pres_ind", 0x0302),
/**
* <p>
* The callback_num_atag parameter associates an alphanumeric display with
* the call back number.
* </p>
* <table><caption>callback_num_atag</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>callback_num_atag</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>Var max 65</td>
* <td>Octet string</td>
* <td>
* <p>
* Alphanumeric display tag for call back number
* </p>
*
* <pre class="aclSourceCodeInTable">
Bits 7...............0
EEEEEEEE (octet 1)
XXXXXXXX (octet 2)
:
:
XXXXXXXX (octet N)
* </pre>
* <p>
* The first octet contains the encoding scheme of the Alpha Tag display
* characters. This field contains the same values as for Data Coding Scheme
* (see section 5.2.19). The following octets contain the display
* characters: There is one octet per display character for 7-bit and 8-bit
* encoding schemes. There are two octets per display character for 16-bit
* encoding schemes.
* </p>
* </td>
* </tr>
* </tbody>
* </table>
*/
CALLBACK_NUM_ATAG("callback_num_atag", 0x0303),
/**
* <p>
* The number_of_messages parameter is used to indicate the number of
* messages stored in a mailbox.
* </p>
* <table><caption>number_of_messages</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>number_of_messages</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0 to 99 = allowed values. Values 100 to 255 are reserved</td>
* </tr>
* </tbody>
* </table>
*/
NUMBER_OF_MESSAGES("number_of_messages", 0x0304),
/**
* <p>
* The sms_signal parameter is used to provide a TDMA MS with alert tone
* information associated with the received short message.
* </p>
* <table><caption>sms_signal</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>sms_signal</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>2</td>
* <td>Integer</td>
* <td>Encoded as per [CMT-136]</td>
* </tr>
* </tbody>
* </table>
*/
SMS_SIGNAL("sms_signal", 0x1203),
/**
* <p>
* The alert_on_message_delivery parameter is set to instruct a MS to alert
* the user (in a MS implementation specific manner) when the short message
* arrives at the MS.
* </p>
* <table><caption>alert_on_message_delivery</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>alert_on_message_delivery</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets (= 0)</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>0</td>
* <td>No Value</td>
* <td> </td>
* </tr>
* </tbody>
* </table>
*/
ALERT_ON_MESSAGE_DELIVERY("alert_on_message_delivery", 0x130C),
/**
* <p>
* The its_reply_type parameter is a required parameter for the CDMA
* Interactive Teleservice as defined by the Korean PCS carriers [KORITS].
* It indicates and controls the MS user's reply method to an SMS delivery
* message received from the ESME.
* </p>
* <table><caption>its_reply_type</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>its_reply_type</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>
*
* <pre class="aclSourceCodeInTable">
* 0 = Digit
1 = Number
2 = Telephone No.
3 = Password
4 = Character Line
5 = Menu
6 = Date
7 = Time
8 = Continue
values 9 to 255 are reserved
* </pre>
*
* </td>
* </tr>
* </tbody>
* </table>
*/
ITS_REPLY_TYPE("its_reply_type", 0x1380),
/**
* <p>
* The its_session_info parameter is a required parameter for the CDMA
* Interactive Teleservice as defined by the Korean PCS carriers [KORITS].
* It contains control information for the interactive session between an MS
* and an ESME.
* </p>
* <table><caption>its_session_info</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>its_session_info</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>2</td>
* <td>Octet String</td>
* <td>
*
* <pre class="aclSourceCodeInTable">
* Bits 7...............0
SSSS SSSS (octet 1)
NNNN NNNE (octet 2)
* </pre>
* <p>
* Octet 1 contains the session number (0 - 255) encoded in binary. The
* session number remains constant for each session.
* </p>
* <p>
* The sequence number of the dialogue unit (as assigned by the ESME) within
* the session is encoded in bits 7..1 of octet 2.
* </p>
* <p>
* The End of Session Indicator indicates the message is the end of the
* conversation session and is encoded in bit 0 of octet 2 as follows: 0 =
* End of Session Indicator inactive. 1 = End of Session Indicator active.
* </p>
* </td>
* </tr>
* </tbody>
* </table>
*/
ITS_SESSION_INFO("its_session_info", 0x1383),
/**
* <p>
* The ussd_service_op parameter is required to define the USSD service
* operation when SMPP is being used as an interface to a (GSM) USSD system.
* </p>
* <table><caption>ussd_service_op</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>ussd_service_op</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Octet String</td>
* <td>
*
* <pre class="aclSourceCodeInTable">
* 0 = PSSD indication
1 = PSSR indication
2 = USSR request
3 = USSN request
4 to 15 = reserved
16 = PSSD response
17 = PSSR response
18 = USSR confirm
19 = USSN confirm
20 to 31 = reserved
32 to 255 = reserved for vendor specific
USSD operations
* </pre>
*
* </td>
* </tr>
* </tbody>
* </table>
*/
USSD_SERVICE_OP("ussd_service_op", 0x0501),
/**
* Billing information passed from ESME to MC <br>
* <br>
* Bits 7......0 <br>
* 0XXXXXXX (Reserved) <br>
* 1XXXXXXX (Vendor Specific) <br>
* The first octet represents the Billing Format tag and indicates the
* format of the billing information in the remaining octets. <br>
* The remaining octets contain the billing information. <br>
* <br>
* Wireless Network Technology: Generic
*
*/
BILLING_IDENTIFICATION("billing_identification", 0x060B),
/**
* <p>
* The dest_addr_subunit parameter is used to route messages when received
* by a mobile station, for example to a smart card in the mobile station or
* to an external device connected to the mobile station.
* </p>
* <table><caption>dest_addr_subunit</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>dest_addr_subunit</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0x00 = Unknown (default)<br>
* 0x01 = MS Display <br>
* 0x02 = Mobile Equipment<br>
* 0x03 = Smart Card 1 (expected to be SIM if<br>
* a SIM exists in the MS)<br>
* 0x04 = External Unit 1<br>
* 5 to 255 = reserved</td>
* </tr>
* </tbody>
* </table>
*/
DEST_ADDR_SUBUNIT("dest_addr_subunit", 0x0005),
/**
* The dest_network_type parameter is used to indicate a network type
* associated with the destination address of a message. In the case that
* the receiving system (e.g. SMSC) does not support the indicated network
* type, it may treat this a failure and return a response PDU reporting a
* failure.
*/
DEST_NETWORK_TYPE("dest_network_type", 0x0006),
/**
* <p>
* The dest_bearer_type parameter is used to request the desired bearer for
* delivery of the message to the destination address. In the case that the
* receiving system (e.g. SMSC) does not support the indicated bearer type,
* it may treat this a failure and return a response PDU reporting a
* failure.
* </p>
* <table><caption>dest_bearer_type</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>dest_bearer_type</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>0x00 = Unknown<br>
* 0x01 = SMS<br>
* 0x02 = Circuit Switched Data (CSD)<br>
* 0x03 = Packet Data<br>
* 0x04 = USSD<br>
* 0x05 = CDPD<br>
* 0x06 = DataTAC<br>
* 0x07 = FLEX/ReFLEX<br>
* 0x08 = Cell Broadcast (cellcast)<br>
* 9 to 255 = reserved</td>
* </tr>
* </tbody>
* </table>
*/
DEST_BEARER_TYPE("dest_bearer_type", 0x0007),
/**
* <p>
* This parameter defines the telematic interworking to be used by the
* delivering system for the destination address. This is only useful when a
* specific dest_bearer_type parameter has also been specified as the value
* is bearer dependent. In the case that the receiving system (e.g. SMSC)
* does not support the indicated telematic interworking, it may treat this
* a failure and return a response PDU reporting a failure.
* </p>
* <table><caption>dest_telematics_id</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>dest_telematics_id</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>2</td>
* <td>Integer</td>
* <td>to be defined</td>
* </tr>
* </tbody>
* </table>
*/
DEST_TELEMATICS_ID("dest_telematics_id", 0x0008),
/**
* <p>
* The source_addr_subunit parameter is used to indicate where a message
* originated in the mobile station, for example a smart card in the mobile
* station or an external device connected to the mobile station.
* </p>
* <table><caption>source_addr_subunit</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>source_addr_subunit</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>see 5.3.2.1</td>
* </tr>
* </tbody>
* </table>
*/
SOURCE_ADDR_SUBUNIT("source_addr_subunit", 0x000D),
/**
* <p>
* The source_network_type parameter is used to indicate the network type
* associated with the device that originated the message.
* </p>
* <table><caption>source_network_type</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>source_network_type</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>see 5.3.2.3</td>
* </tr>
* </tbody>
* </table>
*/
SOURCE_NETWORK_TYPE("source_network_type", 0x000E),
/**
* <p>
* The source_bearer_type parameter indicates the wireless bearer over which
* the message originated.
* </p>
* <table><caption>source_bearer_type</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>source_bearer_type</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>see 5.3.2.5</td>
* </tr>
* </tbody>
* </table>
*/
SOURCE_BEARER_TYPE("source_bearer_type", 0x000F),
/**
* <p>
* The source_telematics_id parameter indicates the type of telematics
* interface over which the message originated.
* </p>
* <table><caption>source_telematics_id</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>source_telematics_id</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1</td>
* <td>Integer</td>
* <td>see 5.3.2.7</td>
* </tr>
* </tbody>
* </table>
*/
SOURCE_TELEMATICS_ID("source_telematics_id", 0x0010),
/**
* <p>
* This parameter defines the number of seconds which the sender requests
* the SMSC to keep the message if undelivered before it is deemed expired
* and not worth delivering. If the parameter is not present, the SMSC may
* apply a default value.
* </p>
* <table><caption>qos_time_to_live</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>qos_time_to_live</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>4</td>
* <td>Integer</td>
* <td>number of seconds for message to be retained by the receiving
* system.</td>
* </tr>
* </tbody>
* </table>
*/
QOS_TIME_TO_LIVE("qos_time_to_live", 0x0017),
/**
* <p>
* The additional_status_info_text parameter gives an ASCII textual
* description of the meaning of a response PDU. It is to be used by an
* implementation to allow easy diagnosis of problems.
* </p>
* <table><caption>additional_status_info</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>additional_status_info_text</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1 - 256</td>
* <td>C Octet String</td>
* <td>Free format text to allow implementations to supply the most useful
* information for problem diagnosis. Maximum length is 256 octets.</td>
* </tr>
* </tbody>
* </table>
*/
ADDITIONAL_STATUS_INFO("additional_status_info", 0x001D),
/**
* <p>
* The receipted_message_id parameter indicates the ID of the message being
* receipted in an SMSC Delivery Receipt. This is the opaque SMSC message
* identifier that was returned in the message_id parameter of the SMPP
* response PDU that acknowledged the submission of the original message.
* </p>
* <table><caption>receipted_message_id</caption>
* <thead>
* <tr>
* <th>Field Name</th>
* <th>Size octets</th>
* <th>Type</th>
* <th>Description</th>
* </tr>
* </thead> <tbody>
* <tr>
* <td>Parameter Tag</td>
* <td>2</td>
* <td>Integer</td>
* <td>receipted_message_id</td>
* </tr>
* <tr>
* <td>Length</td>
* <td>2</td>
* <td>Integer</td>
* <td>Length of Value part in octets</td>
* </tr>
* <tr>
* <td>Value</td>
* <td>1 - 65</td>
* <td>C Octet String</td>
* <td>SMSC handle of the message being receipted.</td>
* </tr>
* </tbody>
* </table>
*/
RECEIPTED_MESSAGE_ID("receipted_message_id", 0x001E),
/**
* <p>
* The ms_msg_wait_facilities parameter allows an indication to be provided
* to an MS that there are messages waiting for the subscriber on systems on
* the PLMN. The indication can be an icon on the MS screen or other MMI
* indication.
* </p>
* <p>
* The ms_msg_wait_facilities can also specify the type of message
* associated with the message waiting indication.
* </p>
*/
MS_MSG_WAIT_FACILITIES("ms_msg_wait_facilities", 0x0030);
private final String tagName;
private final short code;
Tag(String tagName, int code) {
this.code = (short) code;
this.tagName = tagName;
}
/**
* @return the tag name
*/
public String getTagName() {
return tagName;
}
/**
* @return the code of the tag
*/
public short getCode() {
return code;
}
}