Skip to main content

Crate smpp34

Crate smpp34 

Source
Expand description

§smpp34

A pure-Rust implementation of the SMPP 3.4 protocol (Short Message Peer-to-Peer): PDU codec plus async (tokio) client and server built on a listener-trait model.

  • SmppClient binds to an SMSC as an ESME (TX / RX / TRX) and sends submit_sm / data_sm; inbound deliver_sm and lifecycle events are delivered to your SmppClientListener.
  • SmppServer accepts ESME binds and dispatches submit_sm, data_sm, cancel_sm, etc. to your SmppServerListener; the ESME handle sends deliver_sm.
  • The wire codec for every PDU lives in common, including optional Tlv parameters.

Sessions manage the SMPP timers (session_init, enquire_link, inactivity, response), sequence-number windowing, and (optionally) TLS.

See the crate README for a runnable bind → submit_sm example.

Re-exports§

pub use server::SmppServer;
pub use server::SmppServerListener;
pub use common::tlv::decode_tlvs;
pub use common::tlv::encode_tlvs;
pub use common::tlv::tlvs_encoded_len;
pub use common::tlv::Tlv;
pub use common::tlv::TlvList;
pub use common::tlv::TlvTag;
pub use common::*;

Modules§

client
common
server