Class: Majoron::AntHill::SMPP::SMPPAlertNotification
- Defined in:
- lib/pdu/smpp_alert_notification.rb
Instance Attribute Summary collapse
-
#esme_addr ⇒ Object
Returns the value of attribute esme_addr.
-
#esme_addr_npi ⇒ Object
Returns the value of attribute esme_addr_npi.
-
#esme_addr_ton ⇒ Object
Returns the value of attribute esme_addr_ton.
-
#ms_availability_status ⇒ Object
Optional fields.
-
#ms_availability_status_len ⇒ Object
Optional fields len.
-
#source_addr ⇒ Object
Returns the value of attribute source_addr.
-
#source_addr_npi ⇒ Object
Returns the value of attribute source_addr_npi.
-
#source_addr_ton ⇒ Object
Mandatory fields.
Attributes inherited from SMPPPDU
Instance Method Summary collapse
-
#decode_packet(decoder) ⇒ Object
Interface to decode SMPP packet.
-
#encode_packet(encoder) ⇒ Object
Interface to encode SMPP packet.
-
#initialize(command_status = ErrorCode::ESME_ROK, sequence_number = nil) ⇒ SMPPAlertNotification
constructor
A new instance of SMPPAlertNotification.
-
#output_packet(outputter) ⇒ Object
Interface to output SMPP packet.
-
#validate_packet(validator) ⇒ Object
Interface to validate SMPP packet.
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) ⇒ SMPPAlertNotification
Returns a new instance of SMPPAlertNotification.
23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/pdu/smpp_alert_notification.rb', line 23 def initialize(command_status = ErrorCode::ESME_ROK, sequence_number = nil) super(CommandId::CM_ALERT_NOTIFICATION, command_status, sequence_number) # Mandatory fields @source_addr_ton = TON::UNKNOWN @source_addr_npi = TON::UNKNOWN @source_addr = "" @esme_addr_ton = TON::UNKNOWN @esme_addr_npi = TON::UNKNOWN @esme_addr = "" # Optional fields @ms_availability_status = nil # Optional fields len @ms_availability_status_len = SMPPTLVLen::BYTE_LEN end |
Instance Attribute Details
#esme_addr ⇒ Object
Returns the value of attribute esme_addr.
122 123 124 |
# File 'lib/pdu/smpp_alert_notification.rb', line 122 def esme_addr @esme_addr end |
#esme_addr_npi ⇒ Object
Returns the value of attribute esme_addr_npi.
121 122 123 |
# File 'lib/pdu/smpp_alert_notification.rb', line 121 def esme_addr_npi @esme_addr_npi end |
#esme_addr_ton ⇒ Object
Returns the value of attribute esme_addr_ton.
120 121 122 |
# File 'lib/pdu/smpp_alert_notification.rb', line 120 def esme_addr_ton @esme_addr_ton end |
#ms_availability_status ⇒ Object
Optional fields
125 126 127 |
# File 'lib/pdu/smpp_alert_notification.rb', line 125 def ms_availability_status @ms_availability_status end |
#ms_availability_status_len ⇒ Object
Optional fields len
128 129 130 |
# File 'lib/pdu/smpp_alert_notification.rb', line 128 def ms_availability_status_len @ms_availability_status_len end |
#source_addr ⇒ Object
Returns the value of attribute source_addr.
119 120 121 |
# File 'lib/pdu/smpp_alert_notification.rb', line 119 def source_addr @source_addr end |
#source_addr_npi ⇒ Object
Returns the value of attribute source_addr_npi.
118 119 120 |
# File 'lib/pdu/smpp_alert_notification.rb', line 118 def source_addr_npi @source_addr_npi end |
#source_addr_ton ⇒ Object
Mandatory fields
117 118 119 |
# File 'lib/pdu/smpp_alert_notification.rb', line 117 def source_addr_ton @source_addr_ton end |
Instance Method Details
#decode_packet(decoder) ⇒ Object
Interface to decode SMPP packet
60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/pdu/smpp_alert_notification.rb', line 60 def decode_packet(decoder) # Decode header and mandatory fields @header = decoder.decode_header() @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_addr65(command_length()) @esme_addr_ton = decoder.decode_esme_addr_ton(command_length()) @esme_addr_npi = decoder.decode_esme_addr_npi(command_length()) @esme_addr = decoder.decode_esme_addr(command_length()) # Decode optional fields while decoder.has_tlvs() case decoder.get_tlv_code() when OptTags::TAG_MS_AVAILABILITY_STATUS @ms_availability_status, @ms_availability_status_len = decoder.decode_ms_availability_status(command_length()) else # Report about error raise Errors::UNKNOWN_TAG_MSG + decode.get_tlv_error() end end end |
#encode_packet(encoder) ⇒ Object
Interface to encode SMPP packet
44 45 46 47 48 49 50 51 52 53 54 55 56 57 |
# File 'lib/pdu/smpp_alert_notification.rb', line 44 def encode_packet(encoder) # Encode header and mandatory fields encoder.encode_header(@header) encoder.encode_source_addr_ton(@source_addr_ton) encoder.encode_source_addr_npi(@source_addr_npi) encoder.encode_source_addr65(@source_addr) encoder.encode_esme_addr_ton(@esme_addr_ton) encoder.encode_esme_addr_npi(@esme_addr_npi) encoder.encode_esme_addr(@esme_addr) # Encode optional fields encoder.encode_ms_availability_status(@ms_availability_status, @ms_availability_status_len) if !@ms_availability_status.nil? end |
#output_packet(outputter) ⇒ Object
Interface to output SMPP packet
101 102 103 104 105 106 107 108 109 110 111 112 113 114 |
# File 'lib/pdu/smpp_alert_notification.rb', line 101 def output_packet(outputter) # Output header and mandatory fields outputter.output_header(@header) outputter.output_source_addr_ton(@source_addr_ton) outputter.output_source_addr_npi(@source_addr_npi) outputter.output_source_addr65(@source_addr) outputter.output_esme_addr_ton(@esme_addr_ton) outputter.output_esme_addr_npi(@esme_addr_npi) outputter.output_esme_addr(@esme_addr) # Output optional fields outputter.output_ms_availability_status(@ms_availability_status, @ms_availability_status_len) if !@ms_availability_status.nil? end |
#validate_packet(validator) ⇒ Object
Interface to validate SMPP packet
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 |
# File 'lib/pdu/smpp_alert_notification.rb', line 84 def validate_packet(validator) # Decode header and mandatory fields validator.validate_header(@header) validator.validate_source_addr_ton(@source_addr_ton) validator.validate_source_addr_npi(@source_addr_npi) validator.validate_source_addr65(@source_addr) validator.validate_esme_addr_ton(@esme_adddr_ton) validator.validate_esme_addr_npi(@esme_addr_npi) validator.validate_esme_addr(@esme_addr) # Validate optional fields validator.validate_ms_availability_status(@ms_availability_status, @ms_availability_status_len) if !@ms_availability_status.nil? end |