generic_nack/generic_nack.rs
1use smpp_codec::pdus::GenericNack;
2
3fn main() {
4 println!("=== SMPP Generic Nack Example ===");
5
6 // 1. Create Generic Nack
7 // Used when an invalid command_id is received (header decoding fails or unknown command)
8 let nack = GenericNack::new(
9 "ESME_RINVCMDID", // Status Name
10 500, // Sequence Number of the failed request
11 );
12
13 println!("Generic Nack: {:?}", nack);
14
15 // 2. Encode
16 let mut buf = Vec::new();
17 nack.encode(&mut buf).unwrap();
18 println!("Encoded {} bytes", buf.len());
19
20 // 3. Decode verification
21 let decoded = GenericNack::decode(&buf).unwrap();
22 println!("Decoded Command Status: 0x{:08X}", decoded.command_status);
23}