|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface PDU
The SMPP protocol is basically a set of operations, each one taking the form of a request and response Protocol Data Unit (PDU).
All the Request/Response implements PDU interface
| Method Summary | |
|---|---|
void |
addTLV(Tag tag,
java.lang.Object value)
Tagged Length Value (TLV) parameters are identified by a tag, length and value and can be appended to a PDU in any order. |
java.util.Map<Tag,java.lang.Object> |
getAllTLVs()
|
int |
getCommandId()
The command_id identifies the SMPP operation e.g. |
int |
getCommandStatus()
The command_status represents the means by which an ESME or MC sends an error code to its peer. |
long |
getSequenceNum()
Each SMPP request PDU has an identifier called a sequence number that is used to uniquely identify the PDU in the context of its’ originating entity and the current SMPP session. |
java.lang.Object |
getValue(Tag tag)
|
boolean |
hasTLV(Tag tag)
|
boolean |
isTLVPermitted(Tag tag)
|
java.lang.Object |
removeTLV(Tag tag)
|
| Method Detail |
|---|
int getCommandId()
The command_id identifies the SMPP operation e.g. submit_sm, bind_transmitter etc. The command_id is encoded as a 4-octet integer value.
Command_ids for request PDUs are allocated from a range of numbers; 0x00000000 to 0x000001FF.
Command_ids for response PDUs are allocated from a range of numbers; 0x80000000 to 0x800001FF.
The relationship between the command_id for a request PDU and its associated response PDU is that bit 31 is cleared for the request and set for the response. For example, replace_sm has a command_id = 0x00000007 and its’ response PDU replace_sm_resp has a command_id = 0x80000007.
int getCommandStatus()
The command_status represents the means by which an ESME or MC sends an error code to its peer. This field is only relevant in response PDUs. Thus PDU requests always have this field set to NULL (0x00000000).
When a response PDU carries a non-NULL command_status field, it is indicating some form of error or rejection of the original request PDU. In such circumstances, a PDU body should not be included in the PDU and the command_length of the PDU should therefore be set to 16 (0x00000010). However some ESMEs or Message Centers may always include a PDU body regardless of the command_status being returned. In such circumstances, the receiving ESME or MC should ignore its contents, based on the knowledge that the original request failed.
long getSequenceNum()
void addTLV(Tag tag,
java.lang.Object value)
throws TLVNotPermittedException
TLVNotPermittedExceptionjava.lang.Object getValue(Tag tag)
java.lang.Object removeTLV(Tag tag)
boolean hasTLV(Tag tag)
boolean isTLVPermitted(Tag tag)
java.util.Map<Tag,java.lang.Object> getAllTLVs()
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||