Class: Majoron::AntHill::SMPP::SMPPQuerySM

Inherits:
SMPPPDU
  • Object
show all
Defined in:
lib/pdu/smpp_query_sm.rb

Instance Attribute Summary collapse

Attributes inherited from SMPPPDU

#header

Instance Method Summary collapse

Methods inherited from SMPPPDU

#command_id, #command_length, #command_status, #command_status=, #sequence_number, #sequence_number=

Constructor Details

#initialize(command_status = ErrorCode::ESME_ROK, sequence_number = nil) ⇒ SMPPQuerySM

Returns a new instance of SMPPQuerySM.



23
24
25
26
27
28
29
30
31
32
# File 'lib/pdu/smpp_query_sm.rb', line 23

def initialize(command_status = ErrorCode::ESME_ROK, sequence_number = nil)
	super(CommandId::CM_QUERY_SM, command_status, sequence_number)
  
	# Mandatory fields
	@message_id = ""
	@source_addr_ton = TON::UNKNOWN
	@source_addr_npi = NPI::UNKNOWN
	@source_addr = ""
  
end

Instance Attribute Details

#message_idObject

Mandatory fields



78
79
80
# File 'lib/pdu/smpp_query_sm.rb', line 78

def message_id
  @message_id
end

#source_addrObject

Returns the value of attribute source_addr.



81
82
83
# File 'lib/pdu/smpp_query_sm.rb', line 81

def source_addr
  @source_addr
end

#source_addr_npiObject

Returns the value of attribute source_addr_npi.



80
81
82
# File 'lib/pdu/smpp_query_sm.rb', line 80

def source_addr_npi
  @source_addr_npi
end

#source_addr_tonObject

Returns the value of attribute source_addr_ton.



79
80
81
# File 'lib/pdu/smpp_query_sm.rb', line 79

def source_addr_ton
  @source_addr_ton
end

Instance Method Details

#decode_packet(decoder) ⇒ Object

Interface to decode SMPP packet



46
47
48
49
50
51
52
53
54
# File 'lib/pdu/smpp_query_sm.rb', line 46

def decode_packet(decoder)
	# Decode header and mandatory fields
	@header = decoder.decode_header()
	@message_id = decoder.decode_message_id(command_length())
	@source_addr_ton = decoder.decode_source_addr_ton(command_length())
	@source_addr_npi = decoder.decode_source_addr_npi(command_length())
	@source_addr = decoder.decode_source_addr21(command_length())
	
end

#encode_packet(encoder) ⇒ Object

Interface to encode SMPP packet



35
36
37
38
39
40
41
42
43
# File 'lib/pdu/smpp_query_sm.rb', line 35

def encode_packet(encoder)
	# Encode header and mandatory fields
	encoder.encode_header(@header)
	encoder.encode_message_id(message_id)
	encoder.encode_source_addr_ton(source_addr_ton)
	encoder.encode_source_addr_npi(source_addr_npi)
	encoder.encode_source_addr21(source_addr)
  
end

#output_packet(outputter) ⇒ Object

Interface to output SMPP packet



67
68
69
70
71
72
73
74
# File 'lib/pdu/smpp_query_sm.rb', line 67

def output_packet(outputter)
	# Output header and mandatory fields
	outputter.output_header(@header)
	outputter.output_message_id(message_id)
	outputter.output_source_addr_ton(source_addr_ton)
	outputter.output_source_addr_npi(source_addr_npi)
	outputter.output_source_addr21(source_addr)
end

#validate_packet(validator) ⇒ Object

Interface to validate SMPP packet



57
58
59
60
61
62
63
64
# File 'lib/pdu/smpp_query_sm.rb', line 57

def validate_packet(validator)
	# Validate header and mandatory fields
	validator.validate_header(@header)
	validator.validate_message_id(message_id)
	validator.validate_source_addr_ton(source_addr_ton)
	validator.validate_source_addr_npi(source_addr_npi)
	validator.validate_source_addr21(source_addr)
end