huawei-modem 0.2.2

A set of utilities for interfacing with USB 3G/HSDPA/UMTS modems (particularly Huawei models) that use the Hayes/AT command set.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
use huawei_modem::pdu::{DeliverPdu, HexData};
use std::convert::TryFrom;
use std::io::prelude::*;

fn main() {
    println!("Input PDUs");
    let stdin = ::std::io::stdin();
    let lock = stdin.lock();
    for ln in lock.lines() {
        let ln = ln.unwrap();
        let bytes = HexData::decode(&ln).unwrap();
        let pdu = DeliverPdu::try_from(&bytes as &[u8]).unwrap();
        println!("PDU: {:?}", pdu);
        let data = pdu.get_message_data().decode_message();
        println!("Sender: {}", pdu.originating_address);
        println!("Message: {:?}", data);
    }
}