Skip to main content

query_sm/
query_sm.rs

1use smpp_codec::pdus::{MessageState, QuerySmRequest, QuerySmResponse};
2
3fn main() {
4    println!("=== SMPP Query SM Example ===");
5
6    // 1. Request
7    let query = QuerySmRequest::new(300, "Msg12345".to_string(), "source_addr".to_string());
8    println!("Query Request: {:?}", query);
9
10    let mut buf = Vec::new();
11    query.encode(&mut buf).unwrap();
12    println!("Encoded {} bytes", buf.len());
13
14    // 2. Response
15    let resp = QuerySmResponse::new(
16        300,
17        "ESME_ROK",
18        "Msg12345".to_string(),
19        String::new(), // final_date
20        MessageState::Delivered as u8,
21        0, // error_code
22    );
23    println!("Query Response: {:?}", resp);
24}